From 56036e8d85696d5bc902635a4cd695d277edf66e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 4 Jul 2023 17:37:24 +0000 Subject: [PATCH] update dist --- dist/chrome/background.js | 24 +++-- dist/chrome/content_script.js | 97 +++++++++++------- dist/chrome/libs/foliate-js/make.js | 14 ++- dist/chrome/libs/subtitle/subtitle.js | 2 +- dist/chrome/manifest.json | 5 +- dist/chrome/options.js | 95 ++++++++++------- dist/chrome/popup.js | 107 ++++++++++++-------- dist/chrome/styles/input.css | 8 ++ dist/firefox/background.js | 24 +++-- dist/firefox/content_script.js | 97 +++++++++++------- dist/firefox/libs/foliate-js/make.js | 14 ++- dist/firefox/libs/subtitle/subtitle.js | 2 +- dist/firefox/manifest.json | 2 +- dist/firefox/options.js | 95 ++++++++++------- dist/firefox/popup.js | 107 ++++++++++++-------- dist/firefox/styles/input.css | 8 ++ dist/userscript/immersive-translate.user.js | 101 ++++++++++-------- docs/options/index.html | 2 +- docs/options/options.js | 97 +++++++++++------- docs/options/styles/input.css | 8 ++ docs/styles/input.css | 8 ++ 21 files changed, 567 insertions(+), 350 deletions(-) diff --git a/dist/chrome/background.js b/dist/chrome/background.js index b90838123..9d1a8cfe0 100644 --- a/dist/chrome/background.js +++ b/dist/chrome/background.js @@ -1,4 +1,4 @@ -(()=>{var Ga=Object.defineProperty;var Va=(e,t)=>{for(var r in t)Ga(e,r,{get:t[r],enumerable:!0})};var w={BUILD_TIME:"2023-07-04T16:25:26.171Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Ga=Object.defineProperty;var Va=(e,t)=>{for(var r in t)Ga(e,r,{get:t[r],enumerable:!0})};var y={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,10 +4067,10 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var Ya=Object.create,ir=Object.defineProperty,Xa=Object.getOwnPropertyDescriptor,sn=Object.getOwnPropertyNames,Ja=Object.getPrototypeOf,Za=Object.prototype.hasOwnProperty,Qa=(e,t)=>function(){return t||(0,e[sn(e)[0]])((t={exports:{}}).exports,t),t.exports},eo=(e,t)=>{for(var r in t)ir(e,r,{get:t[r],enumerable:!0})},sr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of sn(t))!Za.call(e,a)&&a!==r&&ir(e,a,{get:()=>t[a],enumerable:!(n=Xa(t,a))||n.enumerable});return e},to=(e,t,r)=>(sr(e,t,"default"),r&&sr(r,t,"default")),ln=(e,t,r)=>(r=e!=null?Ya(Ja(e)):{},sr(t||!e||!e.__esModule?ir(r,"default",{value:e,enumerable:!0}):r,e)),cn=Qa({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/.pnpm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(r,n){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],n);else if(typeof e<"u")n(t);else{var a={exports:{}};n(a),r.browser=a.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(r){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let n="The message port closed before a response was received.",a=i=>{let c={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(c).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class o extends WeakMap{constructor(S,f=void 0){super(f),this.createItem=S}get(S){return this.has(S)||this.set(S,this.createItem(S)),super.get(S)}}let l=x=>x&&typeof x=="object"&&typeof x.then=="function",u=(x,S)=>(...f)=>{i.runtime.lastError?x.reject(new Error(i.runtime.lastError.message)):S.singleCallbackArg||f.length<=1&&S.singleCallbackArg!==!1?x.resolve(f[0]):x.resolve(f)},d=x=>x==1?"argument":"arguments",T=(x,S)=>function(A,..._){if(_.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${d(S.maxArgs)} for ${x}(), got ${_.length}`);return new Promise(($,W)=>{if(S.fallbackToNoCallback)try{A[x](..._,u({resolve:$,reject:W},S))}catch{A[x](..._),S.fallbackToNoCallback=!1,S.noCallback=!0,$()}else S.noCallback?(A[x](..._),$()):A[x](..._,u({resolve:$,reject:W},S))})},L=(x,S,f)=>new Proxy(S,{apply(A,_,$){return f.call(_,x,...$)}}),C=Function.call.bind(Object.prototype.hasOwnProperty),b=(x,S={},f={})=>{let A=Object.create(null),_={has(W,R){return R in x||R in A},get(W,R,J){if(R in A)return A[R];if(!(R in x))return;let F=x[R];if(typeof F=="function")if(typeof S[R]=="function")F=L(x,x[R],S[R]);else if(C(f,R)){let Te=T(R,f[R]);F=L(x,x[R],Te)}else F=F.bind(x);else if(typeof F=="object"&&F!==null&&(C(S,R)||C(f,R)))F=b(F,S[R],f[R]);else if(C(f,"*"))F=b(F,S[R],f["*"]);else return Object.defineProperty(A,R,{configurable:!0,enumerable:!0,get(){return x[R]},set(Te){x[R]=Te}}),F;return A[R]=F,F},set(W,R,J,F){return R in A?A[R]=J:x[R]=J,!0},defineProperty(W,R,J){return Reflect.defineProperty(A,R,J)},deleteProperty(W,R){return Reflect.deleteProperty(A,R)}},$=Object.create(x);return new Proxy($,_)},Z=x=>({addListener(S,f,...A){S.addListener(x.get(f),...A)},hasListener(S,f){return S.hasListener(x.get(f))},removeListener(S,f){S.removeListener(x.get(f))}}),te=new o(x=>typeof x!="function"?x:function(f){let A=b(f,{},{getContent:{minArgs:0,maxArgs:0}});x(A)}),m=new o(x=>typeof x!="function"?x:function(f,A,_){let $=!1,W,R=new Promise(ve=>{W=function(we){$=!0,ve(we)}}),J;try{J=x(f,A,W)}catch(ve){J=Promise.reject(ve)}let F=J!==!0&&l(J);if(J!==!0&&!F&&!$)return!1;let Te=ve=>{ve.then(we=>{_(we)},we=>{let Q;we&&(we instanceof Error||typeof we.message=="string")?Q=we.message:Q="An unexpected error occurred",_({__mozWebExtensionPolyfillReject__:!0,message:Q})}).catch(we=>{})};return Te(F?J:R),!0}),k=({reject:x,resolve:S},f)=>{i.runtime.lastError?i.runtime.lastError.message===n?S():x(new Error(i.runtime.lastError.message)):f&&f.__mozWebExtensionPolyfillReject__?x(new Error(f.message)):S(f)},G=(x,S,f,...A)=>{if(A.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${d(S.maxArgs)} for ${x}(), got ${A.length}`);return new Promise((_,$)=>{let W=k.bind(null,{resolve:_,reject:$});A.push(W),f.sendMessage(...A)})},Y={devtools:{network:{onRequestFinished:Z(te)}},runtime:{onMessage:Z(m),onMessageExternal:Z(m),sendMessage:G.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:G.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},me={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return c.privacy={network:{"*":me},services:{"*":me},websites:{"*":me}},b(i,Y,c)};r.exports=a(chrome)}else r.exports=globalThis.browser})}}),un={};eo(un,{default:()=>Bt});var ro=ln(cn());to(un,ln(cn()));var{default:on,...no}=ro,Bt=on!==void 0?on:no;globalThis.immersiveTranslateBrowserAPI=Bt;function wt(){let e,t="pending",r=new Promise((n,a)=>{e={async resolve(i){await i,t="fulfilled",n(i)},reject(i){t="rejected",a(i)}}});return Object.defineProperty(r,"state",{get:()=>t}),Object.assign(r,e)}function lr(e,t={}){let{signal:r,persistent:n}=t;return r?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((a,i)=>{let c=()=>{clearTimeout(l),i(new DOMException("Delay was aborted.","AbortError"))},l=setTimeout(()=>{r?.removeEventListener("abort",c),a()},e);if(r?.addEventListener("abort",c,{once:!0}),n===!1)try{Deno.unrefTimer(l)}catch(u){if(!(u instanceof ReferenceError))throw u}})}var dn=class{#e=0;#t=[];#r=[];#n=wt();add(t){++this.#e,this.#a(t[Symbol.asyncIterator]())}async#a(t){try{let{value:r,done:n}=await t.next();n?--this.#e:this.#t.push({iterator:t,value:r})}catch(r){this.#r.push(r)}this.#n.resolve()}async*iterate(){for(;this.#e>0;){await this.#n;for(let t=0;tPo,bgBlue:()=>Do,bgBrightBlack:()=>Fo,bgBrightBlue:()=>qo,bgBrightCyan:()=>zo,bgBrightGreen:()=>Wo,bgBrightMagenta:()=>Ko,bgBrightRed:()=>jo,bgBrightWhite:()=>Go,bgBrightYellow:()=>Ho,bgCyan:()=>Bo,bgGreen:()=>Io,bgMagenta:()=>No,bgRed:()=>Ro,bgRgb24:()=>Xo,bgRgb8:()=>$o,bgWhite:()=>Uo,bgYellow:()=>Oo,black:()=>ho,blue:()=>yo,bold:()=>io,brightBlack:()=>pn,brightBlue:()=>Eo,brightCyan:()=>Lo,brightGreen:()=>Ao,brightMagenta:()=>Mo,brightRed:()=>So,brightWhite:()=>_o,brightYellow:()=>ko,cyan:()=>xo,dim:()=>lo,getColorEnabled:()=>oo,gray:()=>Co,green:()=>bo,hidden:()=>go,inverse:()=>mo,italic:()=>co,magenta:()=>wo,red:()=>fo,reset:()=>so,rgb24:()=>Yo,rgb8:()=>Vo,setColorEnabled:()=>ao,strikethrough:()=>po,stripColor:()=>Zo,underline:()=>uo,white:()=>vo,yellow:()=>To});var{Deno:mn}=globalThis,gn=typeof mn?.noColor=="boolean"?mn.noColor:!0,cr=!gn;function ao(e){gn||(cr=e)}function oo(){return cr}function N(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function B(e,t){return cr?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function so(e){return B(e,N([0],0))}function io(e){return B(e,N([1],22))}function lo(e){return B(e,N([2],22))}function co(e){return B(e,N([3],23))}function uo(e){return B(e,N([4],24))}function mo(e){return B(e,N([7],27))}function go(e){return B(e,N([8],28))}function po(e){return B(e,N([9],29))}function ho(e){return B(e,N([30],39))}function fo(e){return B(e,N([31],39))}function bo(e){return B(e,N([32],39))}function To(e){return B(e,N([33],39))}function yo(e){return B(e,N([34],39))}function wo(e){return B(e,N([35],39))}function xo(e){return B(e,N([36],39))}function vo(e){return B(e,N([37],39))}function Co(e){return pn(e)}function pn(e){return B(e,N([90],39))}function So(e){return B(e,N([91],39))}function Ao(e){return B(e,N([92],39))}function ko(e){return B(e,N([93],39))}function Eo(e){return B(e,N([94],39))}function Mo(e){return B(e,N([95],39))}function Lo(e){return B(e,N([96],39))}function _o(e){return B(e,N([97],39))}function Po(e){return B(e,N([40],49))}function Ro(e){return B(e,N([41],49))}function Io(e){return B(e,N([42],49))}function Oo(e){return B(e,N([43],49))}function Do(e){return B(e,N([44],49))}function No(e){return B(e,N([45],49))}function Bo(e){return B(e,N([46],49))}function Uo(e){return B(e,N([47],49))}function Fo(e){return B(e,N([100],49))}function jo(e){return B(e,N([101],49))}function Wo(e){return B(e,N([102],49))}function Ho(e){return B(e,N([103],49))}function qo(e){return B(e,N([104],49))}function Ko(e){return B(e,N([105],49))}function zo(e){return B(e,N([106],49))}function Go(e){return B(e,N([107],49))}function et(e,t=255,r=0){return Math.trunc(Math.max(Math.min(e,t),r))}function Vo(e,t){return B(e,N([38,5,et(t)],39))}function $o(e,t){return B(e,N([48,5,et(t)],49))}function Yo(e,t){return typeof t=="number"?B(e,N([38,2,t>>16&255,t>>8&255,t&255],39)):B(e,N([38,2,et(t.r),et(t.g),et(t.b)],39))}function Xo(e,t){return typeof t=="number"?B(e,N([48,2,t>>16&255,t>>8&255,t&255],49)):B(e,N([48,2,et(t.r),et(t.g),et(t.b)],49))}var Jo=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function Zo(e){return e.replace(Jo,"")}var ur=class extends Error{constructor(t,r){super(`Exceeded max retry count (${r})`),this.name="RetryError",this.cause=t}},Qo={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function dr(e,t){let r={...Qo,...t};if(r.maxTimeout>=0&&r.minTimeout>r.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let n=r.minTimeout,a;for(let i=0;isetTimeout(o,n)),n*=r.multiplier,n=Math.max(n,r.minTimeout),r.maxTimeout>=0&&(n=Math.min(n,r.maxTimeout)),a=c}throw new ur(a,r.maxAttempts)}var Ol=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var Ut=globalThis||(typeof window<"u"?window:self),ts=Object.create,gr=Object.defineProperty,rs=Object.getOwnPropertyDescriptor,ns=Object.getOwnPropertyNames,as=Object.getPrototypeOf,os=Object.prototype.hasOwnProperty,ss=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),is=(e,t)=>{for(var r in t)gr(e,r,{get:t[r],enumerable:!0})},mr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of ns(t))!os.call(e,a)&&a!==r&&gr(e,a,{get:()=>t[a],enumerable:!(n=rs(t,a))||n.enumerable});return e},ls=(e,t,r)=>(mr(e,t,"default"),r&&mr(r,t,"default")),fn=(e,t,r)=>(r=e!=null?ts(as(e)):{},mr(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e)),bn=ss((e,t)=>{var r="Expected a function",n=NaN,a="[object Symbol]",i=/^\s+|\s+$/g,c=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt,d=typeof Ut=="object"&&Ut&&Ut.Object===Object&&Ut,T=typeof self=="object"&&self&&self.Object===Object&&self,L=d||T||Function("return this")(),C=Object.prototype,b=C.toString,Z=Math.max,te=Math.min,m=function(){return L.Date.now()};function k(f,A,_){var $,W,R,J,F,Te,ve=0,we=!1,Q=!1,Qe=!0;if(typeof f!="function")throw new TypeError(r);A=S(A)||0,Y(_)&&(we=!!_.leading,Q="maxWait"in _,R=Q?Z(S(_.maxWait)||0,A):R,Qe="trailing"in _?!!_.trailing:Qe);function oe(D){var U=$,K=W;return $=W=void 0,ve=D,J=f.apply(K,U),J}function g(D){return ve=D,F=setTimeout(V,A),we?oe(D):J}function v(D){var U=D-Te,K=D-ve,X=A-U;return Q?te(X,R-K):X}function E(D){var U=D-Te,K=D-ve;return Te===void 0||U>=A||U<0||Q&&K>=R}function V(){var D=m();if(E(D))return O(D);F=setTimeout(V,v(D))}function O(D){return F=void 0,Qe&&$?oe(D):($=W=void 0,J)}function se(){F!==void 0&&clearTimeout(F),ve=0,$=Te=W=F=void 0}function ge(){return F===void 0?J:O(m())}function ue(){var D=m(),U=E(D);if($=arguments,W=this,Te=D,U){if(F===void 0)return g(Te);if(Q)return F=setTimeout(V,A),oe(Te)}return F===void 0&&(F=setTimeout(V,A)),J}return ue.cancel=se,ue.flush=ge,ue}function G(f,A,_){var $=!0,W=!0;if(typeof f!="function")throw new TypeError(r);return Y(_)&&($="leading"in _?!!_.leading:$,W="trailing"in _?!!_.trailing:W),k(f,A,{leading:$,maxWait:A,trailing:W})}function Y(f){var A=typeof f;return!!f&&(A=="object"||A=="function")}function me(f){return!!f&&typeof f=="object"}function x(f){return typeof f=="symbol"||me(f)&&b.call(f)==a}function S(f){if(typeof f=="number")return f;if(x(f))return n;if(Y(f)){var A=typeof f.valueOf=="function"?f.valueOf():f;f=Y(A)?A+"":A}if(typeof f!="string")return f===0?f:+f;f=f.replace(i,"");var _=o.test(f);return _||l.test(f)?u(f.slice(2),_?2:8):c.test(f)?n:+f}t.exports=G}),Tn={};is(Tn,{default:()=>pr});var cs=fn(bn());ls(Tn,fn(bn()));var{default:hn,...us}=cs,pr=hn!==void 0?hn:us;var ds=Object.create,fr=Object.defineProperty,ms=Object.getOwnPropertyDescriptor,gs=Object.getOwnPropertyNames,ps=Object.getPrototypeOf,hs=Object.prototype.hasOwnProperty,fs=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),bs=(e,t)=>{for(var r in t)fr(e,r,{get:t[r],enumerable:!0})},hr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of gs(t))!hs.call(e,a)&&a!==r&&fr(e,a,{get:()=>t[a],enumerable:!(n=ms(t,a))||n.enumerable});return e},Ts=(e,t,r)=>(hr(e,t,"default"),r&&hr(r,t,"default")),wn=(e,t,r)=>(r=e!=null?ds(ps(e)):{},hr(t||!e||!e.__esModule?fr(r,"default",{value:e,enumerable:!0}):r,e)),xn=fs((e,t)=>{(function(r,n){typeof e=="object"&&typeof t=="object"?t.exports=n():typeof define=="function"&&define.amd?define([],n):typeof e=="object"?e.notie=n():r.notie=n()})(e,function(){return function(r){function n(i){if(a[i])return a[i].exports;var c=a[i]={i,l:!1,exports:{}};return r[i].call(c.exports,c,c.exports,n),c.l=!0,c.exports}var a={};return n.m=r,n.c=a,n.i=function(i){return i},n.d=function(i,c,o){n.o(i,c)||Object.defineProperty(i,c,{configurable:!1,enumerable:!0,get:o})},n.n=function(i){var c=i&&i.__esModule?function(){return i.default}:function(){return i};return n.d(c,"a",c),c},n.o=function(i,c){return Object.prototype.hasOwnProperty.call(i,c)},n.p="",n(n.s=1)}([function(r,n){r.exports=function(a){return a.webpackPolyfill||(a.deprecate=function(){},a.paths=[],a.children||(a.children=[]),Object.defineProperty(a,"loaded",{enumerable:!0,get:function(){return a.l}}),Object.defineProperty(a,"id",{enumerable:!0,get:function(){return a.i}}),a.webpackPolyfill=1),a}},function(r,n,a){"use strict";(function(i){var c,o,l,u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(d){return typeof d}:function(d){return d&&typeof Symbol=="function"&&d.constructor===Symbol&&d!==Symbol.prototype?"symbol":typeof d};(function(d,T){u(n)==="object"&&u(i)==="object"?i.exports=T():(o=[],c=T,l=typeof c=="function"?c.apply(n,o):c,l!==void 0&&(i.exports=l))})(void 0,function(){return function(d){function T(C){if(L[C])return L[C].exports;var b=L[C]={i:C,l:!1,exports:{}};return d[C].call(b.exports,b,b.exports,T),b.l=!0,b.exports}var L={};return T.m=d,T.c=L,T.i=function(C){return C},T.d=function(C,b,Z){T.o(C,b)||Object.defineProperty(C,b,{configurable:!1,enumerable:!0,get:Z})},T.n=function(C){var b=C&&C.__esModule?function(){return C.default}:function(){return C};return T.d(b,"a",b),b},T.o=function(C,b){return Object.prototype.hasOwnProperty.call(C,b)},T.p="",T(T.s=0)}([function(d,T,L){function C(g,v){var E={};for(var V in g)v.indexOf(V)>=0||Object.prototype.hasOwnProperty.call(g,V)&&(E[V]=g[V]);return E}Object.defineProperty(T,"__esModule",{value:!0});var b=typeof Symbol=="function"&&u(Symbol.iterator)==="symbol"?function(g){return typeof g>"u"?"undefined":u(g)}:function(g){return g&&typeof Symbol=="function"&&g.constructor===Symbol&&g!==Symbol.prototype?"symbol":typeof g>"u"?"undefined":u(g)},Z=Object.assign||function(g){for(var v=1;v'+V+"",K.onclick=function(){return W(X,U)},K.listener=function(M){(A(M)||_(M))&&F()},$(K,U),se&&se<1&&(se=1),!ue&&se&&Y(se).then(function(){return W(X,U)})},ve=T.force=function(g,v){var E=g.type,V=E===void 0?5:E,O=g.text,se=g.buttonText,ge=se===void 0?"OK":se,ue=g.callback,D=g.position,U=D===void 0?m.positions.force||U.top:D;me(),F();var K=document.createElement("div"),X=x();K.id=X;var M=document.createElement("div");M.classList.add(m.classes.textbox),M.classList.add(m.classes.backgroundInfo),M.innerHTML='
'+O+"
";var z=document.createElement("div");z.classList.add(m.classes.button),z.classList.add(S[V]),z.innerHTML=ge,z.onclick=function(){W(X,U),J(),ue?ue():v&&v()},K.appendChild(M),K.appendChild(z),K.listener=function(ie){A(ie)&&z.click()},$(K,U),R()},we=T.confirm=function(g,v,E){var V=g.text,O=g.submitText,se=O===void 0?"Yes":O,ge=g.cancelText,ue=ge===void 0?"Cancel":ge,D=g.submitCallback,U=g.cancelCallback,K=g.position,X=K===void 0?m.positions.confirm||X.top:K;me(),F();var M=document.createElement("div"),z=x();M.id=z;var ie=document.createElement("div");ie.classList.add(m.classes.textbox),ie.classList.add(m.classes.backgroundInfo),ie.innerHTML='
'+V+"
";var ne=document.createElement("div");ne.classList.add(m.classes.button),ne.classList.add(m.classes.elementHalf),ne.classList.add(m.classes.backgroundSuccess),ne.innerHTML=se,ne.onclick=function(){W(z,X),J(),D?D():v&&v()};var I=document.createElement("div");I.classList.add(m.classes.button),I.classList.add(m.classes.elementHalf),I.classList.add(m.classes.backgroundError),I.innerHTML=ue,I.onclick=function(){W(z,X),J(),U?U():E&&E()},M.appendChild(ie),M.appendChild(ne),M.appendChild(I),M.listener=function(fe){A(fe)?ne.click():_(fe)&&I.click()},$(M,X),R(M,X)},Q=function(g,v,E){var V=g.text,O=g.submitText,se=O===void 0?"Submit":O,ge=g.cancelText,ue=ge===void 0?"Cancel":ge,D=g.submitCallback,U=g.cancelCallback,K=g.position,X=K===void 0?m.positions.input||X.top:K,M=C(g,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);me(),F();var z=document.createElement("div"),ie=x();z.id=ie;var ne=document.createElement("div");ne.classList.add(m.classes.textbox),ne.classList.add(m.classes.backgroundInfo),ne.innerHTML='
'+V+"
";var I=document.createElement("input");I.classList.add(m.classes.inputField),I.setAttribute("autocapitalize",M.autocapitalize||"none"),I.setAttribute("autocomplete",M.autocomplete||"off"),I.setAttribute("autocorrect",M.autocorrect||"off"),I.setAttribute("autofocus",M.autofocus||"true"),I.setAttribute("inputmode",M.inputmode||"verbatim"),I.setAttribute("max",M.max||""),I.setAttribute("maxlength",M.maxlength||""),I.setAttribute("min",M.min||""),I.setAttribute("minlength",M.minlength||""),I.setAttribute("placeholder",M.placeholder||""),I.setAttribute("spellcheck",M.spellcheck||"default"),I.setAttribute("step",M.step||"any"),I.setAttribute("type",M.type||"text"),I.value=M.value||"",M.allowed&&(I.oninput=function(){var ce=void 0;if(Array.isArray(M.allowed)){for(var de="",_e=M.allowed,Fe=0;Fe<_e.length;Fe++)_e[Fe]==="an"?de+="0-9a-zA-Z":_e[Fe]==="a"?de+="a-zA-Z":_e[Fe]==="n"&&(de+="0-9"),_e[Fe]==="s"&&(de+=" ");ce=new RegExp("[^"+de+"]","g")}else b(M.allowed)==="object"&&(ce=M.allowed);I.value=I.value.replace(ce,"")});var fe=document.createElement("div");fe.classList.add(m.classes.button),fe.classList.add(m.classes.elementHalf),fe.classList.add(m.classes.backgroundSuccess),fe.innerHTML=se,fe.onclick=function(){W(ie,X),J(),D?D(I.value):v&&v(I.value)};var Le=document.createElement("div");Le.classList.add(m.classes.button),Le.classList.add(m.classes.elementHalf),Le.classList.add(m.classes.backgroundError),Le.innerHTML=ue,Le.onclick=function(){W(ie,X),J(),U?U(I.value):E&&E(I.value)},z.appendChild(ne),z.appendChild(I),z.appendChild(fe),z.appendChild(Le),z.listener=function(ce){A(ce)?fe.click():_(ce)&&Le.click()},$(z,X),I.focus(),R(z,X)};T.input=Q;var Qe=T.select=function(g,v){var E=g.text,V=g.cancelText,O=V===void 0?"Cancel":V,se=g.cancelCallback,ge=g.choices,ue=g.position,D=ue===void 0?m.positions.select||D.top:ue;me(),F();var U=document.createElement("div"),K=x();U.id=K;var X=document.createElement("div");X.classList.add(m.classes.textbox),X.classList.add(m.classes.backgroundInfo),X.innerHTML='
'+E+"
",U.appendChild(X),ge.forEach(function(z,ie){var ne=z.type,I=ne===void 0?1:ne,fe=z.text,Le=z.handler,ce=document.createElement("div");ce.classList.add(S[I]),ce.classList.add(m.classes.button),ce.classList.add(m.classes.selectChoice);var de=ge[ie+1];de&&!de.type&&(de.type=1),de&&de.type===I&&ce.classList.add(m.classes.selectChoiceRepeated),ce.innerHTML=fe,ce.onclick=function(){W(K,D),J(),Le()},U.appendChild(ce)});var M=document.createElement("div");M.classList.add(m.classes.backgroundNeutral),M.classList.add(m.classes.button),M.innerHTML=O,M.onclick=function(){W(K,D),J(),se?se():v&&v()},U.appendChild(M),U.listener=function(z){_(z)&&M.click()},$(U,D),R(U,D)},oe=T.date=function(g,v,E){var V=g.value,O=V===void 0?new Date:V,se=g.submitText,ge=se===void 0?"OK":se,ue=g.cancelText,D=ue===void 0?"Cancel":ue,U=g.submitCallback,K=g.cancelCallback,X=g.position,M=X===void 0?m.positions.date||M.top:X;me(),F();var z="▾",ie=document.createElement("div"),ne=document.createElement("div"),I=document.createElement("div"),fe=function(le){ie.innerHTML=m.dateMonths[le.getMonth()],ne.innerHTML=le.getDate(),I.innerHTML=le.getFullYear()},Le=function(le){var re=new Date(O.getFullYear(),O.getMonth()+1,0).getDate(),Be=le.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Be)>re&&(Be=re.toString()),le.target.textContent=Be,Number(Be)<1&&(Be="1"),O.setDate(Number(Be))},ce=function(le){var re=le.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);le.target.textContent=re,O.setFullYear(Number(re))},de=function(le){fe(O)},_e=function(le){var re=new Date(O.getFullYear(),O.getMonth()+le+1,0).getDate();O.getDate()>re&&O.setDate(re),O.setMonth(O.getMonth()+le),fe(O)},Fe=function(le){O.setDate(O.getDate()+le),fe(O)},yt=function(le){var re=O.getFullYear()+le;re<0?O.setFullYear(0):O.setFullYear(O.getFullYear()+le),fe(O)},Ge=document.createElement("div"),at=x();Ge.id=at;var ct=document.createElement("div");ct.classList.add(m.classes.backgroundInfo);var Ce=document.createElement("div");Ce.classList.add(m.classes.dateSelectorInner);var qe=document.createElement("div");qe.classList.add(m.classes.button),qe.classList.add(m.classes.elementThird),qe.classList.add(m.classes.dateSelectorUp),qe.innerHTML=z;var Se=document.createElement("div");Se.classList.add(m.classes.button),Se.classList.add(m.classes.elementThird),Se.classList.add(m.classes.dateSelectorUp),Se.innerHTML=z;var Ne=document.createElement("div");Ne.classList.add(m.classes.button),Ne.classList.add(m.classes.elementThird),Ne.classList.add(m.classes.dateSelectorUp),Ne.innerHTML=z,ie.classList.add(m.classes.element),ie.classList.add(m.classes.elementThird),ie.innerHTML=m.dateMonths[O.getMonth()],ne.classList.add(m.classes.element),ne.classList.add(m.classes.elementThird),ne.setAttribute("contentEditable",!0),ne.addEventListener("input",Le),ne.addEventListener("blur",de),ne.innerHTML=O.getDate(),I.classList.add(m.classes.element),I.classList.add(m.classes.elementThird),I.setAttribute("contentEditable",!0),I.addEventListener("input",ce),I.addEventListener("blur",de),I.innerHTML=O.getFullYear();var Ye=document.createElement("div");Ye.classList.add(m.classes.button),Ye.classList.add(m.classes.elementThird),Ye.innerHTML=z;var Xe=document.createElement("div");Xe.classList.add(m.classes.button),Xe.classList.add(m.classes.elementThird),Xe.innerHTML=z;var ot=document.createElement("div");ot.classList.add(m.classes.button),ot.classList.add(m.classes.elementThird),ot.innerHTML=z,qe.onclick=function(){return _e(1)},Se.onclick=function(){return Fe(1)},Ne.onclick=function(){return yt(1)},Ye.onclick=function(){return _e(-1)},Xe.onclick=function(){return Fe(-1)},ot.onclick=function(){return yt(-1)};var Pe=document.createElement("div");Pe.classList.add(m.classes.button),Pe.classList.add(m.classes.elementHalf),Pe.classList.add(m.classes.backgroundSuccess),Pe.innerHTML=ge,Pe.onclick=function(){W(at,M),J(),U?U(O):v&&v(O)};var Je=document.createElement("div");Je.classList.add(m.classes.button),Je.classList.add(m.classes.elementHalf),Je.classList.add(m.classes.backgroundError),Je.innerHTML=D,Je.onclick=function(){W(at,M),J(),K?K(O):E&&E(O)},Ce.appendChild(qe),Ce.appendChild(Se),Ce.appendChild(Ne),Ce.appendChild(ie),Ce.appendChild(ne),Ce.appendChild(I),Ce.appendChild(Ye),Ce.appendChild(Xe),Ce.appendChild(ot),ct.appendChild(Ce),Ge.appendChild(ct),Ge.appendChild(Pe),Ge.appendChild(Je),Ge.listener=function(le){A(le)?Pe.click():_(le)&&Je.click()},$(Ge,M),R(Ge,M)};T.default={alert:Te,force:ve,confirm:we,input:Q,select:Qe,date:oe,setOptions:k,hideAlerts:F}}])})}).call(n,a(0)(r))}])})}),vn={};bs(vn,{default:()=>Ft});var ys=wn(xn());Ts(vn,wn(xn()));var{default:yn,...ws}=ys,Ft=yn!==void 0?yn:ws;var br=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function Tr(e,t,r,n){e.addEventListener?e.addEventListener(t,r,n):e.attachEvent&&e.attachEvent("on".concat(t),function(){r(window.event)})}function En(e,t){for(var r=t.slice(0,t.length-1),n=0;n=0;)t[r-1]+=",",t.splice(r,1),r=t.lastIndexOf("");return t}function xs(e,t){for(var r=e.length>=t.length?e:t,n=e.length>=t.length?t:e,a=!0,i=0;i=0&&ae.splice(r,1),e.key&&e.key.toLowerCase()==="meta"&&ae.splice(0,ae.length),(t===93||t===224)&&(t=91),t in xe){xe[t]=!1;for(var n in $e)$e[n]===t&&(Ve[n]=!1)}}function _s(e){if(typeof e>"u")Object.keys(pe).forEach(function(c){return delete pe[c]});else if(Array.isArray(e))e.forEach(function(c){c.key&&yr(c)});else if(typeof e=="object")e.key&&yr(e);else if(typeof e=="string"){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n1?En($e,l):[];pe[T]=pe[T].filter(function(C){var b=n?C.method===n:!0;return!(b&&C.scope===r&&xs(C.mods,L))})}})};function Sn(e,t,r,n){if(t.element===n){var a;if(t.scope===r||t.scope==="all"){a=t.mods.length>0;for(var i in xe)Object.prototype.hasOwnProperty.call(xe,i)&&(!xe[i]&&t.mods.indexOf(+i)>-1||xe[i]&&t.mods.indexOf(+i)===-1)&&(a=!1);(t.mods.length===0&&!xe[16]&&!xe[18]&&!xe[17]&&!xe[91]||a||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function An(e,t){var r=pe["*"],n=e.keyCode||e.which||e.charCode;if(Ve.filter.call(this,e)){if((n===93||n===224)&&(n=91),ae.indexOf(n)===-1&&n!==229&&ae.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(b){var Z=xr[b];e[b]&&ae.indexOf(Z)===-1?ae.push(Z):!e[b]&&ae.indexOf(Z)>-1?ae.splice(ae.indexOf(Z),1):b==="metaKey"&&e[b]&&ae.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(ae=ae.slice(ae.indexOf(Z))))}),n in xe){xe[n]=!0;for(var a in $e)$e[a]===n&&(Ve[a]=!0);if(!r)return}for(var i in xe)Object.prototype.hasOwnProperty.call(xe,i)&&(xe[i]=e[xr[i]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(ae.indexOf(17)===-1&&ae.push(17),ae.indexOf(18)===-1&&ae.push(18),xe[17]=!0,xe[18]=!0);var c=Ct();if(r)for(var o=0;o-1}function Ve(e,t,r){ae=[];var n=Mn(e),a=[],i="all",c=document,o=0,l=!1,u=!0,d="+",T=!1;for(r===void 0&&typeof t=="function"&&(r=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(i=t.scope),t.element&&(c=t.element),t.keyup&&(l=t.keyup),t.keydown!==void 0&&(u=t.keydown),t.capture!==void 0&&(T=t.capture),typeof t.splitKey=="string"&&(d=t.splitKey)),typeof t=="string"&&(i=t);o1&&(a=En($e,e)),e=e[e.length-1],e=e==="*"?"*":Wt(e),e in pe||(pe[e]=[]),pe[e].push({keyup:l,keydown:u,scope:i,mods:a,shortcut:n[o],method:r,key:n[o],splitKey:d,element:c});typeof c<"u"&&!Ps(c)&&window&&(_n.push(c),Tr(c,"keydown",function(L){An(L,c)},T),Cn||(Cn=!0,Tr(window,"focus",function(){ae=[]},T)),Tr(c,"keyup",function(L){An(L,c),Ls(L)},T))}function Rs(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(pe).forEach(function(r){var n=pe[r].filter(function(a){return a.scope===t&&a.shortcut===e});n.forEach(function(a){a&&a.method&&a.method()})})}var wr={getPressedKeyString:As,setScope:Pn,getScope:Ct,deleteScope:Ms,getPressedKeyCodes:Ss,isPressed:Es,filter:ks,trigger:Rs,unbind:_s,keyMap:vt,modifier:$e,modifierMap:xr};for(jt in wr)Object.prototype.hasOwnProperty.call(wr,jt)&&(Ve[jt]=wr[jt]);var jt;typeof document<"u"&&(kn=window.hotkeys,Ve.noConflict=function(e){return e&&window.hotkeys===Ve&&(window.hotkeys=kn),Ve},window.hotkeys=Ve);var kn;var Is=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),r=Math.round(t-this.#e);this.#e=t}},Os=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Is:{reset:()=>{},stop:()=>{}}}},oc=new Os,Ds="poegempjloogba",Ns="ension://";var Bs="rome-ext";var sc="ch"+Bs+Ns+"cofdb"+Ds+"gkncekinflcnj";var{entries:Fn,setPrototypeOf:Rn,isFrozen:Fs,getPrototypeOf:js,getOwnPropertyDescriptor:Ws}=Object,{freeze:Ie,seal:ze,create:Hs}=Object,{apply:Er,construct:Mr}=typeof Reflect<"u"&&Reflect;Er||(Er=function(e,t,r){return e.apply(t,r)});Ie||(Ie=function(e){return e});ze||(ze=function(e){return e});Mr||(Mr=function(e,t){return new e(...t)});var qs=We(Array.prototype.forEach),In=We(Array.prototype.pop),St=We(Array.prototype.push),Kt=We(String.prototype.toLowerCase),vr=We(String.prototype.toString),Ks=We(String.prototype.match),Ke=We(String.prototype.replace),zs=We(String.prototype.indexOf),Gs=We(String.prototype.trim),Ue=We(RegExp.prototype.test),At=Vs(TypeError);function We(e){return function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),a=1;a/gm),Zs=ze(/\${[\w\W]*}/gm),Qs=ze(/^data-[\-\w.\u00B7-\uFFFF]/),ei=ze(/^aria-[\-\w]+$/),jn=ze(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),ti=ze(/^(?:\w+script|data):/i),ri=ze(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Wn=ze(/^html$/i),Un=Object.freeze({__proto__:null,MUSTACHE_EXPR:Xs,ERB_EXPR:Js,TMPLIT_EXPR:Zs,DATA_ATTR:Qs,ARIA_ATTR:ei,IS_ALLOWED_URI:jn,IS_SCRIPT_OR_DATA:ti,ATTR_WHITESPACE:ri,DOCTYPE_NAME:Wn}),ni=()=>typeof window>"u"?null:window,ai=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let r=null,n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(r=t.getAttribute(n));let a="dompurify"+(r?"#"+r:"");try{return e.createPolicy(a,{createHTML(i){return i},createScriptURL(i){return i}})}catch{return null}};function Hn(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ni(),t=s=>Hn(s);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let r=e.document,n=r.currentScript,{document:a}=e,{DocumentFragment:i,HTMLTemplateElement:c,Node:o,Element:l,NodeFilter:u,NamedNodeMap:d=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:T,DOMParser:L,trustedTypes:C}=e,b=l.prototype,Z=Ht(b,"cloneNode"),te=Ht(b,"nextSibling"),m=Ht(b,"childNodes"),k=Ht(b,"parentNode");if(typeof c=="function"){let s=a.createElement("template");s.content&&s.content.ownerDocument&&(a=s.content.ownerDocument)}let G,Y="",{implementation:me,createNodeIterator:x,createDocumentFragment:S,getElementsByTagName:f}=a,{importNode:A}=r,_={};t.isSupported=typeof Fn=="function"&&typeof k=="function"&&me&&me.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:$,ERB_EXPR:W,TMPLIT_EXPR:R,DATA_ATTR:J,ARIA_ATTR:F,IS_SCRIPT_OR_DATA:Te,ATTR_WHITESPACE:ve}=Un,{IS_ALLOWED_URI:we}=Un,Q=null,Qe=H({},[...On,...Cr,...Sr,...Ar,...Dn]),oe=null,g=H({},[...Nn,...kr,...Bn,...qt]),v=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),E=null,V=null,O=!0,se=!0,ge=!1,ue=!0,D=!1,U=!1,K=!1,X=!1,M=!1,z=!1,ie=!1,ne=!0,I=!1,fe="user-content-",Le=!0,ce=!1,de={},_e=null,Fe=H({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),yt=null,Ge=H({},["audio","video","img","source","image","track"]),at=null,ct=H({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ce="http://www.w3.org/1998/Math/MathML",qe="http://www.w3.org/2000/svg",Se="http://www.w3.org/1999/xhtml",Ne=Se,Ye=!1,Xe=null,ot=H({},[Ce,qe,Se],vr),Pe,Je=["application/xhtml+xml","text/html"],le="text/html",re,Be=null,Wa=a.createElement("form"),Yr=function(s){return s instanceof RegExp||s instanceof Function},nr=function(s){if(!(Be&&Be===s)){if((!s||typeof s!="object")&&(s={}),s=mt(s),Pe=Je.indexOf(s.PARSER_MEDIA_TYPE)===-1?Pe=le:Pe=s.PARSER_MEDIA_TYPE,re=Pe==="application/xhtml+xml"?vr:Kt,Q="ALLOWED_TAGS"in s?H({},s.ALLOWED_TAGS,re):Qe,oe="ALLOWED_ATTR"in s?H({},s.ALLOWED_ATTR,re):g,Xe="ALLOWED_NAMESPACES"in s?H({},s.ALLOWED_NAMESPACES,vr):ot,at="ADD_URI_SAFE_ATTR"in s?H(mt(ct),s.ADD_URI_SAFE_ATTR,re):ct,yt="ADD_DATA_URI_TAGS"in s?H(mt(Ge),s.ADD_DATA_URI_TAGS,re):Ge,_e="FORBID_CONTENTS"in s?H({},s.FORBID_CONTENTS,re):Fe,E="FORBID_TAGS"in s?H({},s.FORBID_TAGS,re):{},V="FORBID_ATTR"in s?H({},s.FORBID_ATTR,re):{},de="USE_PROFILES"in s?s.USE_PROFILES:!1,O=s.ALLOW_ARIA_ATTR!==!1,se=s.ALLOW_DATA_ATTR!==!1,ge=s.ALLOW_UNKNOWN_PROTOCOLS||!1,ue=s.ALLOW_SELF_CLOSE_IN_ATTR!==!1,D=s.SAFE_FOR_TEMPLATES||!1,U=s.WHOLE_DOCUMENT||!1,M=s.RETURN_DOM||!1,z=s.RETURN_DOM_FRAGMENT||!1,ie=s.RETURN_TRUSTED_TYPE||!1,X=s.FORCE_BODY||!1,ne=s.SANITIZE_DOM!==!1,I=s.SANITIZE_NAMED_PROPS||!1,Le=s.KEEP_CONTENT!==!1,ce=s.IN_PLACE||!1,we=s.ALLOWED_URI_REGEXP||jn,Ne=s.NAMESPACE||Se,v=s.CUSTOM_ELEMENT_HANDLING||{},s.CUSTOM_ELEMENT_HANDLING&&Yr(s.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(v.tagNameCheck=s.CUSTOM_ELEMENT_HANDLING.tagNameCheck),s.CUSTOM_ELEMENT_HANDLING&&Yr(s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(v.attributeNameCheck=s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),s.CUSTOM_ELEMENT_HANDLING&&typeof s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(v.allowCustomizedBuiltInElements=s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),D&&(se=!1),z&&(M=!0),de&&(Q=H({},[...Dn]),oe=[],de.html===!0&&(H(Q,On),H(oe,Nn)),de.svg===!0&&(H(Q,Cr),H(oe,kr),H(oe,qt)),de.svgFilters===!0&&(H(Q,Sr),H(oe,kr),H(oe,qt)),de.mathMl===!0&&(H(Q,Ar),H(oe,Bn),H(oe,qt))),s.ADD_TAGS&&(Q===Qe&&(Q=mt(Q)),H(Q,s.ADD_TAGS,re)),s.ADD_ATTR&&(oe===g&&(oe=mt(oe)),H(oe,s.ADD_ATTR,re)),s.ADD_URI_SAFE_ATTR&&H(at,s.ADD_URI_SAFE_ATTR,re),s.FORBID_CONTENTS&&(_e===Fe&&(_e=mt(_e)),H(_e,s.FORBID_CONTENTS,re)),Le&&(Q["#text"]=!0),U&&H(Q,["html","head","body"]),Q.table&&(H(Q,["tbody"]),delete E.tbody),s.TRUSTED_TYPES_POLICY){if(typeof s.TRUSTED_TYPES_POLICY.createHTML!="function")throw At('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof s.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw At('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');G=s.TRUSTED_TYPES_POLICY,Y=G.createHTML("")}else G===void 0&&(G=ai(C,n)),G!==null&&typeof Y=="string"&&(Y=G.createHTML(""));Ie&&Ie(s),Be=s}},Xr=H({},["mi","mo","mn","ms","mtext"]),Jr=H({},["foreignobject","desc","title","annotation-xml"]),Ha=H({},["title","style","font","a","script"]),Dt=H({},Cr);H(Dt,Sr),H(Dt,$s);let ar=H({},Ar);H(ar,Ys);let qa=function(s){let y=k(s);(!y||!y.tagName)&&(y={namespaceURI:Ne,tagName:"template"});let h=Kt(s.tagName),ee=Kt(y.tagName);return Xe[s.namespaceURI]?s.namespaceURI===qe?y.namespaceURI===Se?h==="svg":y.namespaceURI===Ce?h==="svg"&&(ee==="annotation-xml"||Xr[ee]):!!Dt[h]:s.namespaceURI===Ce?y.namespaceURI===Se?h==="math":y.namespaceURI===qe?h==="math"&&Jr[ee]:!!ar[h]:s.namespaceURI===Se?y.namespaceURI===qe&&!Jr[ee]||y.namespaceURI===Ce&&!Xr[ee]?!1:!ar[h]&&(Ha[h]||!Dt[h]):!!(Pe==="application/xhtml+xml"&&Xe[s.namespaceURI]):!1},ut=function(s){St(t.removed,{element:s});try{s.parentNode.removeChild(s)}catch{s.remove()}},or=function(s,y){try{St(t.removed,{attribute:y.getAttributeNode(s),from:y})}catch{St(t.removed,{attribute:null,from:y})}if(y.removeAttribute(s),s==="is"&&!oe[s])if(M||z)try{ut(y)}catch{}else try{y.setAttribute(s,"")}catch{}},Zr=function(s){let y,h;if(X)s=""+s;else{let Re=Ks(s,/^[\r\n\t ]+/);h=Re&&Re[0]}Pe==="application/xhtml+xml"&&Ne===Se&&(s=''+s+"");let ee=G?G.createHTML(s):s;if(Ne===Se)try{y=new L().parseFromString(ee,Pe)}catch{}if(!y||!y.documentElement){y=me.createDocument(Ne,"template",null);try{y.documentElement.innerHTML=Ye?Y:ee}catch{}}let be=y.body||y.documentElement;return s&&h&&be.insertBefore(a.createTextNode(h),be.childNodes[0]||null),Ne===Se?f.call(y,U?"html":"body")[0]:U?y.documentElement:be},Qr=function(s){return x.call(s.ownerDocument||s,s,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT,null,!1)},Ka=function(s){return s instanceof T&&(typeof s.nodeName!="string"||typeof s.textContent!="string"||typeof s.removeChild!="function"||!(s.attributes instanceof d)||typeof s.removeAttribute!="function"||typeof s.setAttribute!="function"||typeof s.namespaceURI!="string"||typeof s.insertBefore!="function"||typeof s.hasChildNodes!="function")},Nt=function(s){return typeof o=="object"?s instanceof o:s&&typeof s=="object"&&typeof s.nodeType=="number"&&typeof s.nodeName=="string"},Ze=function(s,y,h){_[s]&&qs(_[s],ee=>{ee.call(t,y,h,Be)})},en=function(s){let y;if(Ze("beforeSanitizeElements",s,null),Ka(s))return ut(s),!0;let h=re(s.nodeName);if(Ze("uponSanitizeElement",s,{tagName:h,allowedTags:Q}),s.hasChildNodes()&&!Nt(s.firstElementChild)&&(!Nt(s.content)||!Nt(s.content.firstElementChild))&&Ue(/<[/\w]/g,s.innerHTML)&&Ue(/<[/\w]/g,s.textContent))return ut(s),!0;if(!Q[h]||E[h]){if(!E[h]&&rn(h)&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,h)||v.tagNameCheck instanceof Function&&v.tagNameCheck(h)))return!1;if(Le&&!_e[h]){let ee=k(s)||s.parentNode,be=m(s)||s.childNodes;if(be&&ee){let Re=be.length;for(let De=Re-1;De>=0;--De)ee.insertBefore(Z(be[De],!0),te(s))}}return ut(s),!0}return s instanceof l&&!qa(s)||(h==="noscript"||h==="noembed")&&Ue(/<\/no(script|embed)/i,s.innerHTML)?(ut(s),!0):(D&&s.nodeType===3&&(y=s.textContent,y=Ke(y,$," "),y=Ke(y,W," "),y=Ke(y,R," "),s.textContent!==y&&(St(t.removed,{element:s.cloneNode()}),s.textContent=y)),Ze("afterSanitizeElements",s,null),!1)},tn=function(s,y,h){if(ne&&(y==="id"||y==="name")&&(h in a||h in Wa))return!1;if(!(se&&!V[y]&&Ue(J,y))&&!(O&&Ue(F,y))){if(!oe[y]||V[y]){if(!(rn(s)&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,s)||v.tagNameCheck instanceof Function&&v.tagNameCheck(s))&&(v.attributeNameCheck instanceof RegExp&&Ue(v.attributeNameCheck,y)||v.attributeNameCheck instanceof Function&&v.attributeNameCheck(y))||y==="is"&&v.allowCustomizedBuiltInElements&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,h)||v.tagNameCheck instanceof Function&&v.tagNameCheck(h))))return!1}else if(!at[y]&&!Ue(we,Ke(h,ve,""))&&!((y==="src"||y==="xlink:href"||y==="href")&&s!=="script"&&zs(h,"data:")===0&&yt[s])&&!(ge&&!Ue(Te,Ke(h,ve,"")))&&h)return!1}return!0},rn=function(s){return s.indexOf("-")>0},nn=function(s){let y,h,ee,be;Ze("beforeSanitizeAttributes",s,null);let{attributes:Re}=s;if(!Re)return;let De={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:oe};for(be=Re.length;be--;){y=Re[be];let{name:ye,namespaceURI:dt}=y;if(h=ye==="value"?y.value:Gs(y.value),ee=re(ye),De.attrName=ee,De.attrValue=h,De.keepAttr=!0,De.forceKeepAttr=void 0,Ze("uponSanitizeAttribute",s,De),h=De.attrValue,De.forceKeepAttr||(or(ye,s),!De.keepAttr))continue;if(!ue&&Ue(/\/>/i,h)){or(ye,s);continue}D&&(h=Ke(h,$," "),h=Ke(h,W," "),h=Ke(h,R," "));let an=re(s.nodeName);if(tn(an,ee,h)){if(I&&(ee==="id"||ee==="name")&&(or(ye,s),h=fe+h),G&&typeof C=="object"&&typeof C.getAttributeType=="function"&&!dt)switch(C.getAttributeType(an,ee)){case"TrustedHTML":{h=G.createHTML(h);break}case"TrustedScriptURL":{h=G.createScriptURL(h);break}}try{dt?s.setAttributeNS(dt,ye,h):s.setAttribute(ye,h),In(t.removed)}catch{}}}Ze("afterSanitizeAttributes",s,null)},za=function s(y){let h,ee=Qr(y);for(Ze("beforeSanitizeShadowDOM",y,null);h=ee.nextNode();)Ze("uponSanitizeShadowNode",h,null),!en(h)&&(h.content instanceof i&&s(h.content),nn(h));Ze("afterSanitizeShadowDOM",y,null)};return t.sanitize=function(s){let y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},h,ee,be,Re;if(Ye=!s,Ye&&(s=""),typeof s!="string"&&!Nt(s))if(typeof s.toString=="function"){if(s=s.toString(),typeof s!="string")throw At("dirty is not a string, aborting")}else throw At("toString is not a function");if(!t.isSupported)return s;if(K||nr(y),t.removed=[],typeof s=="string"&&(ce=!1),ce){if(s.nodeName){let dt=re(s.nodeName);if(!Q[dt]||E[dt])throw At("root node is forbidden and cannot be sanitized in-place")}}else if(s instanceof o)h=Zr(""),ee=h.ownerDocument.importNode(s,!0),ee.nodeType===1&&ee.nodeName==="BODY"||ee.nodeName==="HTML"?h=ee:h.appendChild(ee);else{if(!M&&!D&&!U&&s.indexOf("<")===-1)return G&&ie?G.createHTML(s):s;if(h=Zr(s),!h)return M?null:ie?Y:""}h&&X&&ut(h.firstChild);let De=Qr(ce?s:h);for(;be=De.nextNode();)en(be)||(be.content instanceof i&&za(be.content),nn(be));if(ce)return s;if(M){if(z)for(Re=S.call(h.ownerDocument);h.firstChild;)Re.appendChild(h.firstChild);else Re=h;return(oe.shadowroot||oe.shadowrootmod)&&(Re=A.call(r,Re,!0)),Re}let ye=U?h.outerHTML:h.innerHTML;return U&&Q["!doctype"]&&h.ownerDocument&&h.ownerDocument.doctype&&h.ownerDocument.doctype.name&&Ue(Wn,h.ownerDocument.doctype.name)&&(ye=" -`+ye),D&&(ye=Ke(ye,$," "),ye=Ke(ye,W," "),ye=Ke(ye,R," ")),G&&ie?G.createHTML(ye):ye},t.setConfig=function(s){nr(s),K=!0},t.clearConfig=function(){Be=null,K=!1},t.isValidAttribute=function(s,y,h){Be||nr({});let ee=re(s),be=re(y);return tn(ee,be,h)},t.addHook=function(s,y){typeof y=="function"&&(_[s]=_[s]||[],St(_[s],y))},t.removeHook=function(s){if(_[s])return In(_[s])},t.removeHooks=function(s){_[s]&&(_[s]=[])},t.removeAllHooks=function(){_={}},t}var qn=Hn();var _c=Ft.alert;var Kn={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var zn={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var Gn={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var li=[{code:"zh-CN",messages:Kn},{code:"zh-TW",messages:zn},{code:"en",messages:Gn}];var st={};for(let e of li)st[e.code]=e.messages;var it="Immersive Translate",he="immersive-translate",zt="pdf/index.html";var $n="subtitle/index.html",Yn="ebook/index.html",Xn="ebook/make/index.html",q="immersiveTranslate",Gt="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",gt=q+"GoogleAccessToken",Jn=q+"AuthFlow",Vt="immersive-translate-config-latest.json",Xc=q+"AuthState",Jc=q+"IframeMessage",Zc=q+"WaitForRateLimit",Qc=q+"DocumentMessageAsk",eu=q+"DocumentMessageTellThirdParty",tu=q+"DocumentMessageThirdPartyTell",ru=q+"DocumentMessageHandler",nu=`${q}Container`,au=`${q}SpecifiedContainer`,$t="buildinConfig",kt="localConfig",Lr="openOptionsPage";var _r="translateLocalPdfFile",Zn="donateContext",Pr="openEbookViewer",Rr="openEbookBuilder",Qn="openSubtitleBuilder",ou=`${q}PageTranslatedStatus`,su=`${q}PageUrlChanged`,iu=`${q}ReceiveCommand`,lu=q+"LastUseMouseHoverTime",cu=q+"LastUseInputTime",uu=q+"LastUseManualTranslatePageTime",du=`${q}PopupReceiveMessage`,ci="immersivetranslate.com",ui="config.immersivetranslate.com",mu=`https://${ci}/`,gu=`https://${ui}/default_config.json`,pu=`${q}Mark`;var hu=`${q}Root`,fu=`data-${he}-effect`,bu=`data-${he}-translation-element-mark`,Tu=`${q}TranslationElementMark`,yu=`${q}TranslatedMark`,wu=`${q}ParagraphId`,xu=`${q}LoadingId`,vu=`data-${he}-loading-id`,Cu=`${q}ErrorId`,Su=`data-${he}-error-id`,Au=`${q}AtomicBlockMark`,ku=`${q}ExcludeMark`,Eu=`data-${he}-exclude-mark`,Mu=`${q}StayOriginalMark`,Lu=`${q}PreWhitespaceMark`,_u=`${q}InlineMark`,Pu=`${q}BlockMark`,Ru=`${q}Left`,Iu=`${q}Right`,Ou=`${q}Width`,Du=`${q}Height`,Nu=`${q}Top`,Bu=`${q}FontSize`;var Uu=`${q}GlobalStyleMark`;var Fu=`${he}-target-wrapper`,ju=`${he}-pdf-target-container`,Wu=`${he}-target-inner`,Hu=`${he}-source-wrapper`,qu=`${he}-target-translation-block-wrapper`,Ku=`${he}-root-translation-theme`,zu=`${q}RootTranslationTheme`,Gu=`${he}-target-translation-vertical-block-wrapper`,Vu=`${he}-target-translation-pdf-block-wrapper`,$u=`${he}-target-translation-pre-whitespace`,Yu=`${he}-target-translation-inline-wrapper`;var Et=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"];var Yt="zh-CN";var Vn=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],di={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"chrome_zip"};var Ya=Object.create,ir=Object.defineProperty,Za=Object.getOwnPropertyDescriptor,sn=Object.getOwnPropertyNames,Xa=Object.getPrototypeOf,Ja=Object.prototype.hasOwnProperty,Qa=(e,t)=>function(){return t||(0,e[sn(e)[0]])((t={exports:{}}).exports,t),t.exports},eo=(e,t)=>{for(var r in t)ir(e,r,{get:t[r],enumerable:!0})},sr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of sn(t))!Ja.call(e,a)&&a!==r&&ir(e,a,{get:()=>t[a],enumerable:!(n=Za(t,a))||n.enumerable});return e},to=(e,t,r)=>(sr(e,t,"default"),r&&sr(r,t,"default")),ln=(e,t,r)=>(r=e!=null?Ya(Xa(e)):{},sr(t||!e||!e.__esModule?ir(r,"default",{value:e,enumerable:!0}):r,e)),cn=Qa({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(r,n){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],n);else if(typeof e<"u")n(t);else{var a={exports:{}};n(a),r.browser=a.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(r){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let n="The message port closed before a response was received.",a=i=>{let c={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(c).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class o extends WeakMap{constructor(S,f=void 0){super(f),this.createItem=S}get(S){return this.has(S)||this.set(S,this.createItem(S)),super.get(S)}}let l=x=>x&&typeof x=="object"&&typeof x.then=="function",u=(x,S)=>(...f)=>{i.runtime.lastError?x.reject(new Error(i.runtime.lastError.message)):S.singleCallbackArg||f.length<=1&&S.singleCallbackArg!==!1?x.resolve(f[0]):x.resolve(f)},d=x=>x==1?"argument":"arguments",T=(x,S)=>function(A,..._){if(_.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${d(S.maxArgs)} for ${x}(), got ${_.length}`);return new Promise(($,W)=>{if(S.fallbackToNoCallback)try{A[x](..._,u({resolve:$,reject:W},S))}catch{A[x](..._),S.fallbackToNoCallback=!1,S.noCallback=!0,$()}else S.noCallback?(A[x](..._),$()):A[x](..._,u({resolve:$,reject:W},S))})},L=(x,S,f)=>new Proxy(S,{apply(A,_,$){return f.call(_,x,...$)}}),C=Function.call.bind(Object.prototype.hasOwnProperty),b=(x,S={},f={})=>{let A=Object.create(null),_={has(W,R){return R in x||R in A},get(W,R,X){if(R in A)return A[R];if(!(R in x))return;let F=x[R];if(typeof F=="function")if(typeof S[R]=="function")F=L(x,x[R],S[R]);else if(C(f,R)){let Te=T(R,f[R]);F=L(x,x[R],Te)}else F=F.bind(x);else if(typeof F=="object"&&F!==null&&(C(S,R)||C(f,R)))F=b(F,S[R],f[R]);else if(C(f,"*"))F=b(F,S[R],f["*"]);else return Object.defineProperty(A,R,{configurable:!0,enumerable:!0,get(){return x[R]},set(Te){x[R]=Te}}),F;return A[R]=F,F},set(W,R,X,F){return R in A?A[R]=X:x[R]=X,!0},defineProperty(W,R,X){return Reflect.defineProperty(A,R,X)},deleteProperty(W,R){return Reflect.deleteProperty(A,R)}},$=Object.create(x);return new Proxy($,_)},J=x=>({addListener(S,f,...A){S.addListener(x.get(f),...A)},hasListener(S,f){return S.hasListener(x.get(f))},removeListener(S,f){S.removeListener(x.get(f))}}),te=new o(x=>typeof x!="function"?x:function(f){let A=b(f,{},{getContent:{minArgs:0,maxArgs:0}});x(A)}),m=new o(x=>typeof x!="function"?x:function(f,A,_){let $=!1,W,R=new Promise(ve=>{W=function(ye){$=!0,ve(ye)}}),X;try{X=x(f,A,W)}catch(ve){X=Promise.reject(ve)}let F=X!==!0&&l(X);if(X!==!0&&!F&&!$)return!1;let Te=ve=>{ve.then(ye=>{_(ye)},ye=>{let Q;ye&&(ye instanceof Error||typeof ye.message=="string")?Q=ye.message:Q="An unexpected error occurred",_({__mozWebExtensionPolyfillReject__:!0,message:Q})}).catch(ye=>{})};return Te(F?X:R),!0}),k=({reject:x,resolve:S},f)=>{i.runtime.lastError?i.runtime.lastError.message===n?S():x(new Error(i.runtime.lastError.message)):f&&f.__mozWebExtensionPolyfillReject__?x(new Error(f.message)):S(f)},G=(x,S,f,...A)=>{if(A.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${d(S.maxArgs)} for ${x}(), got ${A.length}`);return new Promise((_,$)=>{let W=k.bind(null,{resolve:_,reject:$});A.push(W),f.sendMessage(...A)})},Y={devtools:{network:{onRequestFinished:J(te)}},runtime:{onMessage:J(m),onMessageExternal:J(m),sendMessage:G.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:G.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},me={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return c.privacy={network:{"*":me},services:{"*":me},websites:{"*":me}},b(i,Y,c)};r.exports=a(chrome)}else r.exports=globalThis.browser})}}),un={};eo(un,{default:()=>Bt});var ro=ln(cn());to(un,ln(cn()));var{default:on,...no}=ro,Bt=on!==void 0?on:no;globalThis.immersiveTranslateBrowserAPI=Bt;function yt(){let e,t="pending",r=new Promise((n,a)=>{e={async resolve(i){await i,t="fulfilled",n(i)},reject(i){t="rejected",a(i)}}});return Object.defineProperty(r,"state",{get:()=>t}),Object.assign(r,e)}function lr(e,t={}){let{signal:r,persistent:n}=t;return r?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((a,i)=>{let c=()=>{clearTimeout(l),i(new DOMException("Delay was aborted.","AbortError"))},l=setTimeout(()=>{r?.removeEventListener("abort",c),a()},e);if(r?.addEventListener("abort",c,{once:!0}),n===!1)try{Deno.unrefTimer(l)}catch(u){if(!(u instanceof ReferenceError))throw u}})}var dn=class{#e=0;#t=[];#r=[];#n=yt();add(t){++this.#e,this.#a(t[Symbol.asyncIterator]())}async#a(t){try{let{value:r,done:n}=await t.next();n?--this.#e:this.#t.push({iterator:t,value:r})}catch(r){this.#r.push(r)}this.#n.resolve()}async*iterate(){for(;this.#e>0;){await this.#n;for(let t=0;tPo,bgBlue:()=>Do,bgBrightBlack:()=>Fo,bgBrightBlue:()=>qo,bgBrightCyan:()=>Ko,bgBrightGreen:()=>Wo,bgBrightMagenta:()=>zo,bgBrightRed:()=>jo,bgBrightWhite:()=>Go,bgBrightYellow:()=>Ho,bgCyan:()=>Bo,bgGreen:()=>Io,bgMagenta:()=>No,bgRed:()=>Ro,bgRgb24:()=>Zo,bgRgb8:()=>$o,bgWhite:()=>Uo,bgYellow:()=>Oo,black:()=>ho,blue:()=>wo,bold:()=>io,brightBlack:()=>pn,brightBlue:()=>Eo,brightCyan:()=>Lo,brightGreen:()=>Ao,brightMagenta:()=>Mo,brightRed:()=>So,brightWhite:()=>_o,brightYellow:()=>ko,cyan:()=>xo,dim:()=>lo,getColorEnabled:()=>oo,gray:()=>Co,green:()=>bo,hidden:()=>go,inverse:()=>mo,italic:()=>co,magenta:()=>yo,red:()=>fo,reset:()=>so,rgb24:()=>Yo,rgb8:()=>Vo,setColorEnabled:()=>ao,strikethrough:()=>po,stripColor:()=>Jo,underline:()=>uo,white:()=>vo,yellow:()=>To});var{Deno:mn}=globalThis,gn=typeof mn?.noColor=="boolean"?mn.noColor:!0,cr=!gn;function ao(e){gn||(cr=e)}function oo(){return cr}function N(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function B(e,t){return cr?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function so(e){return B(e,N([0],0))}function io(e){return B(e,N([1],22))}function lo(e){return B(e,N([2],22))}function co(e){return B(e,N([3],23))}function uo(e){return B(e,N([4],24))}function mo(e){return B(e,N([7],27))}function go(e){return B(e,N([8],28))}function po(e){return B(e,N([9],29))}function ho(e){return B(e,N([30],39))}function fo(e){return B(e,N([31],39))}function bo(e){return B(e,N([32],39))}function To(e){return B(e,N([33],39))}function wo(e){return B(e,N([34],39))}function yo(e){return B(e,N([35],39))}function xo(e){return B(e,N([36],39))}function vo(e){return B(e,N([37],39))}function Co(e){return pn(e)}function pn(e){return B(e,N([90],39))}function So(e){return B(e,N([91],39))}function Ao(e){return B(e,N([92],39))}function ko(e){return B(e,N([93],39))}function Eo(e){return B(e,N([94],39))}function Mo(e){return B(e,N([95],39))}function Lo(e){return B(e,N([96],39))}function _o(e){return B(e,N([97],39))}function Po(e){return B(e,N([40],49))}function Ro(e){return B(e,N([41],49))}function Io(e){return B(e,N([42],49))}function Oo(e){return B(e,N([43],49))}function Do(e){return B(e,N([44],49))}function No(e){return B(e,N([45],49))}function Bo(e){return B(e,N([46],49))}function Uo(e){return B(e,N([47],49))}function Fo(e){return B(e,N([100],49))}function jo(e){return B(e,N([101],49))}function Wo(e){return B(e,N([102],49))}function Ho(e){return B(e,N([103],49))}function qo(e){return B(e,N([104],49))}function zo(e){return B(e,N([105],49))}function Ko(e){return B(e,N([106],49))}function Go(e){return B(e,N([107],49))}function et(e,t=255,r=0){return Math.trunc(Math.max(Math.min(e,t),r))}function Vo(e,t){return B(e,N([38,5,et(t)],39))}function $o(e,t){return B(e,N([48,5,et(t)],49))}function Yo(e,t){return typeof t=="number"?B(e,N([38,2,t>>16&255,t>>8&255,t&255],39)):B(e,N([38,2,et(t.r),et(t.g),et(t.b)],39))}function Zo(e,t){return typeof t=="number"?B(e,N([48,2,t>>16&255,t>>8&255,t&255],49)):B(e,N([48,2,et(t.r),et(t.g),et(t.b)],49))}var Xo=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function Jo(e){return e.replace(Xo,"")}var ur=class extends Error{constructor(t,r){super(`Exceeded max retry count (${r})`),this.name="RetryError",this.cause=t}},Qo={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function dr(e,t){let r={...Qo,...t};if(r.maxTimeout>=0&&r.minTimeout>r.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let n=r.minTimeout,a;for(let i=0;isetTimeout(o,n)),n*=r.multiplier,n=Math.max(n,r.minTimeout),r.maxTimeout>=0&&(n=Math.min(n,r.maxTimeout)),a=c}throw new ur(a,r.maxAttempts)}var Ol=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var Ut=globalThis||(typeof window<"u"?window:self),ts=Object.create,gr=Object.defineProperty,rs=Object.getOwnPropertyDescriptor,ns=Object.getOwnPropertyNames,as=Object.getPrototypeOf,os=Object.prototype.hasOwnProperty,ss=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),is=(e,t)=>{for(var r in t)gr(e,r,{get:t[r],enumerable:!0})},mr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of ns(t))!os.call(e,a)&&a!==r&&gr(e,a,{get:()=>t[a],enumerable:!(n=rs(t,a))||n.enumerable});return e},ls=(e,t,r)=>(mr(e,t,"default"),r&&mr(r,t,"default")),fn=(e,t,r)=>(r=e!=null?ts(as(e)):{},mr(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e)),bn=ss((e,t)=>{var r="Expected a function",n=NaN,a="[object Symbol]",i=/^\s+|\s+$/g,c=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt,d=typeof Ut=="object"&&Ut&&Ut.Object===Object&&Ut,T=typeof self=="object"&&self&&self.Object===Object&&self,L=d||T||Function("return this")(),C=Object.prototype,b=C.toString,J=Math.max,te=Math.min,m=function(){return L.Date.now()};function k(f,A,_){var $,W,R,X,F,Te,ve=0,ye=!1,Q=!1,Qe=!0;if(typeof f!="function")throw new TypeError(r);A=S(A)||0,Y(_)&&(ye=!!_.leading,Q="maxWait"in _,R=Q?J(S(_.maxWait)||0,A):R,Qe="trailing"in _?!!_.trailing:Qe);function oe(D){var U=$,z=W;return $=W=void 0,ve=D,X=f.apply(z,U),X}function g(D){return ve=D,F=setTimeout(V,A),ye?oe(D):X}function v(D){var U=D-Te,z=D-ve,Z=A-U;return Q?te(Z,R-z):Z}function E(D){var U=D-Te,z=D-ve;return Te===void 0||U>=A||U<0||Q&&z>=R}function V(){var D=m();if(E(D))return O(D);F=setTimeout(V,v(D))}function O(D){return F=void 0,Qe&&$?oe(D):($=W=void 0,X)}function se(){F!==void 0&&clearTimeout(F),ve=0,$=Te=W=F=void 0}function ge(){return F===void 0?X:O(m())}function ue(){var D=m(),U=E(D);if($=arguments,W=this,Te=D,U){if(F===void 0)return g(Te);if(Q)return F=setTimeout(V,A),oe(Te)}return F===void 0&&(F=setTimeout(V,A)),X}return ue.cancel=se,ue.flush=ge,ue}function G(f,A,_){var $=!0,W=!0;if(typeof f!="function")throw new TypeError(r);return Y(_)&&($="leading"in _?!!_.leading:$,W="trailing"in _?!!_.trailing:W),k(f,A,{leading:$,maxWait:A,trailing:W})}function Y(f){var A=typeof f;return!!f&&(A=="object"||A=="function")}function me(f){return!!f&&typeof f=="object"}function x(f){return typeof f=="symbol"||me(f)&&b.call(f)==a}function S(f){if(typeof f=="number")return f;if(x(f))return n;if(Y(f)){var A=typeof f.valueOf=="function"?f.valueOf():f;f=Y(A)?A+"":A}if(typeof f!="string")return f===0?f:+f;f=f.replace(i,"");var _=o.test(f);return _||l.test(f)?u(f.slice(2),_?2:8):c.test(f)?n:+f}t.exports=G}),Tn={};is(Tn,{default:()=>pr});var cs=fn(bn());ls(Tn,fn(bn()));var{default:hn,...us}=cs,pr=hn!==void 0?hn:us;var ds=Object.create,fr=Object.defineProperty,ms=Object.getOwnPropertyDescriptor,gs=Object.getOwnPropertyNames,ps=Object.getPrototypeOf,hs=Object.prototype.hasOwnProperty,fs=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),bs=(e,t)=>{for(var r in t)fr(e,r,{get:t[r],enumerable:!0})},hr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of gs(t))!hs.call(e,a)&&a!==r&&fr(e,a,{get:()=>t[a],enumerable:!(n=ms(t,a))||n.enumerable});return e},Ts=(e,t,r)=>(hr(e,t,"default"),r&&hr(r,t,"default")),yn=(e,t,r)=>(r=e!=null?ds(ps(e)):{},hr(t||!e||!e.__esModule?fr(r,"default",{value:e,enumerable:!0}):r,e)),xn=fs((e,t)=>{(function(r,n){typeof e=="object"&&typeof t=="object"?t.exports=n():typeof define=="function"&&define.amd?define([],n):typeof e=="object"?e.notie=n():r.notie=n()})(e,function(){return function(r){function n(i){if(a[i])return a[i].exports;var c=a[i]={i,l:!1,exports:{}};return r[i].call(c.exports,c,c.exports,n),c.l=!0,c.exports}var a={};return n.m=r,n.c=a,n.i=function(i){return i},n.d=function(i,c,o){n.o(i,c)||Object.defineProperty(i,c,{configurable:!1,enumerable:!0,get:o})},n.n=function(i){var c=i&&i.__esModule?function(){return i.default}:function(){return i};return n.d(c,"a",c),c},n.o=function(i,c){return Object.prototype.hasOwnProperty.call(i,c)},n.p="",n(n.s=1)}([function(r,n){r.exports=function(a){return a.webpackPolyfill||(a.deprecate=function(){},a.paths=[],a.children||(a.children=[]),Object.defineProperty(a,"loaded",{enumerable:!0,get:function(){return a.l}}),Object.defineProperty(a,"id",{enumerable:!0,get:function(){return a.i}}),a.webpackPolyfill=1),a}},function(r,n,a){"use strict";(function(i){var c,o,l,u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(d){return typeof d}:function(d){return d&&typeof Symbol=="function"&&d.constructor===Symbol&&d!==Symbol.prototype?"symbol":typeof d};(function(d,T){u(n)==="object"&&u(i)==="object"?i.exports=T():(o=[],c=T,l=typeof c=="function"?c.apply(n,o):c,l!==void 0&&(i.exports=l))})(void 0,function(){return function(d){function T(C){if(L[C])return L[C].exports;var b=L[C]={i:C,l:!1,exports:{}};return d[C].call(b.exports,b,b.exports,T),b.l=!0,b.exports}var L={};return T.m=d,T.c=L,T.i=function(C){return C},T.d=function(C,b,J){T.o(C,b)||Object.defineProperty(C,b,{configurable:!1,enumerable:!0,get:J})},T.n=function(C){var b=C&&C.__esModule?function(){return C.default}:function(){return C};return T.d(b,"a",b),b},T.o=function(C,b){return Object.prototype.hasOwnProperty.call(C,b)},T.p="",T(T.s=0)}([function(d,T,L){function C(g,v){var E={};for(var V in g)v.indexOf(V)>=0||Object.prototype.hasOwnProperty.call(g,V)&&(E[V]=g[V]);return E}Object.defineProperty(T,"__esModule",{value:!0});var b=typeof Symbol=="function"&&u(Symbol.iterator)==="symbol"?function(g){return typeof g>"u"?"undefined":u(g)}:function(g){return g&&typeof Symbol=="function"&&g.constructor===Symbol&&g!==Symbol.prototype?"symbol":typeof g>"u"?"undefined":u(g)},J=Object.assign||function(g){for(var v=1;v'+V+"",z.onclick=function(){return W(Z,U)},z.listener=function(M){(A(M)||_(M))&&F()},$(z,U),se&&se<1&&(se=1),!ue&&se&&Y(se).then(function(){return W(Z,U)})},ve=T.force=function(g,v){var E=g.type,V=E===void 0?5:E,O=g.text,se=g.buttonText,ge=se===void 0?"OK":se,ue=g.callback,D=g.position,U=D===void 0?m.positions.force||U.top:D;me(),F();var z=document.createElement("div"),Z=x();z.id=Z;var M=document.createElement("div");M.classList.add(m.classes.textbox),M.classList.add(m.classes.backgroundInfo),M.innerHTML='
'+O+"
";var K=document.createElement("div");K.classList.add(m.classes.button),K.classList.add(S[V]),K.innerHTML=ge,K.onclick=function(){W(Z,U),X(),ue?ue():v&&v()},z.appendChild(M),z.appendChild(K),z.listener=function(ie){A(ie)&&K.click()},$(z,U),R()},ye=T.confirm=function(g,v,E){var V=g.text,O=g.submitText,se=O===void 0?"Yes":O,ge=g.cancelText,ue=ge===void 0?"Cancel":ge,D=g.submitCallback,U=g.cancelCallback,z=g.position,Z=z===void 0?m.positions.confirm||Z.top:z;me(),F();var M=document.createElement("div"),K=x();M.id=K;var ie=document.createElement("div");ie.classList.add(m.classes.textbox),ie.classList.add(m.classes.backgroundInfo),ie.innerHTML='
'+V+"
";var ne=document.createElement("div");ne.classList.add(m.classes.button),ne.classList.add(m.classes.elementHalf),ne.classList.add(m.classes.backgroundSuccess),ne.innerHTML=se,ne.onclick=function(){W(K,Z),X(),D?D():v&&v()};var I=document.createElement("div");I.classList.add(m.classes.button),I.classList.add(m.classes.elementHalf),I.classList.add(m.classes.backgroundError),I.innerHTML=ue,I.onclick=function(){W(K,Z),X(),U?U():E&&E()},M.appendChild(ie),M.appendChild(ne),M.appendChild(I),M.listener=function(fe){A(fe)?ne.click():_(fe)&&I.click()},$(M,Z),R(M,Z)},Q=function(g,v,E){var V=g.text,O=g.submitText,se=O===void 0?"Submit":O,ge=g.cancelText,ue=ge===void 0?"Cancel":ge,D=g.submitCallback,U=g.cancelCallback,z=g.position,Z=z===void 0?m.positions.input||Z.top:z,M=C(g,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);me(),F();var K=document.createElement("div"),ie=x();K.id=ie;var ne=document.createElement("div");ne.classList.add(m.classes.textbox),ne.classList.add(m.classes.backgroundInfo),ne.innerHTML='
'+V+"
";var I=document.createElement("input");I.classList.add(m.classes.inputField),I.setAttribute("autocapitalize",M.autocapitalize||"none"),I.setAttribute("autocomplete",M.autocomplete||"off"),I.setAttribute("autocorrect",M.autocorrect||"off"),I.setAttribute("autofocus",M.autofocus||"true"),I.setAttribute("inputmode",M.inputmode||"verbatim"),I.setAttribute("max",M.max||""),I.setAttribute("maxlength",M.maxlength||""),I.setAttribute("min",M.min||""),I.setAttribute("minlength",M.minlength||""),I.setAttribute("placeholder",M.placeholder||""),I.setAttribute("spellcheck",M.spellcheck||"default"),I.setAttribute("step",M.step||"any"),I.setAttribute("type",M.type||"text"),I.value=M.value||"",M.allowed&&(I.oninput=function(){var ce=void 0;if(Array.isArray(M.allowed)){for(var de="",_e=M.allowed,Fe=0;Fe<_e.length;Fe++)_e[Fe]==="an"?de+="0-9a-zA-Z":_e[Fe]==="a"?de+="a-zA-Z":_e[Fe]==="n"&&(de+="0-9"),_e[Fe]==="s"&&(de+=" ");ce=new RegExp("[^"+de+"]","g")}else b(M.allowed)==="object"&&(ce=M.allowed);I.value=I.value.replace(ce,"")});var fe=document.createElement("div");fe.classList.add(m.classes.button),fe.classList.add(m.classes.elementHalf),fe.classList.add(m.classes.backgroundSuccess),fe.innerHTML=se,fe.onclick=function(){W(ie,Z),X(),D?D(I.value):v&&v(I.value)};var Le=document.createElement("div");Le.classList.add(m.classes.button),Le.classList.add(m.classes.elementHalf),Le.classList.add(m.classes.backgroundError),Le.innerHTML=ue,Le.onclick=function(){W(ie,Z),X(),U?U(I.value):E&&E(I.value)},K.appendChild(ne),K.appendChild(I),K.appendChild(fe),K.appendChild(Le),K.listener=function(ce){A(ce)?fe.click():_(ce)&&Le.click()},$(K,Z),I.focus(),R(K,Z)};T.input=Q;var Qe=T.select=function(g,v){var E=g.text,V=g.cancelText,O=V===void 0?"Cancel":V,se=g.cancelCallback,ge=g.choices,ue=g.position,D=ue===void 0?m.positions.select||D.top:ue;me(),F();var U=document.createElement("div"),z=x();U.id=z;var Z=document.createElement("div");Z.classList.add(m.classes.textbox),Z.classList.add(m.classes.backgroundInfo),Z.innerHTML='
'+E+"
",U.appendChild(Z),ge.forEach(function(K,ie){var ne=K.type,I=ne===void 0?1:ne,fe=K.text,Le=K.handler,ce=document.createElement("div");ce.classList.add(S[I]),ce.classList.add(m.classes.button),ce.classList.add(m.classes.selectChoice);var de=ge[ie+1];de&&!de.type&&(de.type=1),de&&de.type===I&&ce.classList.add(m.classes.selectChoiceRepeated),ce.innerHTML=fe,ce.onclick=function(){W(z,D),X(),Le()},U.appendChild(ce)});var M=document.createElement("div");M.classList.add(m.classes.backgroundNeutral),M.classList.add(m.classes.button),M.innerHTML=O,M.onclick=function(){W(z,D),X(),se?se():v&&v()},U.appendChild(M),U.listener=function(K){_(K)&&M.click()},$(U,D),R(U,D)},oe=T.date=function(g,v,E){var V=g.value,O=V===void 0?new Date:V,se=g.submitText,ge=se===void 0?"OK":se,ue=g.cancelText,D=ue===void 0?"Cancel":ue,U=g.submitCallback,z=g.cancelCallback,Z=g.position,M=Z===void 0?m.positions.date||M.top:Z;me(),F();var K="▾",ie=document.createElement("div"),ne=document.createElement("div"),I=document.createElement("div"),fe=function(le){ie.innerHTML=m.dateMonths[le.getMonth()],ne.innerHTML=le.getDate(),I.innerHTML=le.getFullYear()},Le=function(le){var re=new Date(O.getFullYear(),O.getMonth()+1,0).getDate(),Be=le.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Be)>re&&(Be=re.toString()),le.target.textContent=Be,Number(Be)<1&&(Be="1"),O.setDate(Number(Be))},ce=function(le){var re=le.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);le.target.textContent=re,O.setFullYear(Number(re))},de=function(le){fe(O)},_e=function(le){var re=new Date(O.getFullYear(),O.getMonth()+le+1,0).getDate();O.getDate()>re&&O.setDate(re),O.setMonth(O.getMonth()+le),fe(O)},Fe=function(le){O.setDate(O.getDate()+le),fe(O)},wt=function(le){var re=O.getFullYear()+le;re<0?O.setFullYear(0):O.setFullYear(O.getFullYear()+le),fe(O)},Ge=document.createElement("div"),at=x();Ge.id=at;var ct=document.createElement("div");ct.classList.add(m.classes.backgroundInfo);var Ce=document.createElement("div");Ce.classList.add(m.classes.dateSelectorInner);var qe=document.createElement("div");qe.classList.add(m.classes.button),qe.classList.add(m.classes.elementThird),qe.classList.add(m.classes.dateSelectorUp),qe.innerHTML=K;var Se=document.createElement("div");Se.classList.add(m.classes.button),Se.classList.add(m.classes.elementThird),Se.classList.add(m.classes.dateSelectorUp),Se.innerHTML=K;var Ne=document.createElement("div");Ne.classList.add(m.classes.button),Ne.classList.add(m.classes.elementThird),Ne.classList.add(m.classes.dateSelectorUp),Ne.innerHTML=K,ie.classList.add(m.classes.element),ie.classList.add(m.classes.elementThird),ie.innerHTML=m.dateMonths[O.getMonth()],ne.classList.add(m.classes.element),ne.classList.add(m.classes.elementThird),ne.setAttribute("contentEditable",!0),ne.addEventListener("input",Le),ne.addEventListener("blur",de),ne.innerHTML=O.getDate(),I.classList.add(m.classes.element),I.classList.add(m.classes.elementThird),I.setAttribute("contentEditable",!0),I.addEventListener("input",ce),I.addEventListener("blur",de),I.innerHTML=O.getFullYear();var Ye=document.createElement("div");Ye.classList.add(m.classes.button),Ye.classList.add(m.classes.elementThird),Ye.innerHTML=K;var Ze=document.createElement("div");Ze.classList.add(m.classes.button),Ze.classList.add(m.classes.elementThird),Ze.innerHTML=K;var ot=document.createElement("div");ot.classList.add(m.classes.button),ot.classList.add(m.classes.elementThird),ot.innerHTML=K,qe.onclick=function(){return _e(1)},Se.onclick=function(){return Fe(1)},Ne.onclick=function(){return wt(1)},Ye.onclick=function(){return _e(-1)},Ze.onclick=function(){return Fe(-1)},ot.onclick=function(){return wt(-1)};var Pe=document.createElement("div");Pe.classList.add(m.classes.button),Pe.classList.add(m.classes.elementHalf),Pe.classList.add(m.classes.backgroundSuccess),Pe.innerHTML=ge,Pe.onclick=function(){W(at,M),X(),U?U(O):v&&v(O)};var Xe=document.createElement("div");Xe.classList.add(m.classes.button),Xe.classList.add(m.classes.elementHalf),Xe.classList.add(m.classes.backgroundError),Xe.innerHTML=D,Xe.onclick=function(){W(at,M),X(),z?z(O):E&&E(O)},Ce.appendChild(qe),Ce.appendChild(Se),Ce.appendChild(Ne),Ce.appendChild(ie),Ce.appendChild(ne),Ce.appendChild(I),Ce.appendChild(Ye),Ce.appendChild(Ze),Ce.appendChild(ot),ct.appendChild(Ce),Ge.appendChild(ct),Ge.appendChild(Pe),Ge.appendChild(Xe),Ge.listener=function(le){A(le)?Pe.click():_(le)&&Xe.click()},$(Ge,M),R(Ge,M)};T.default={alert:Te,force:ve,confirm:ye,input:Q,select:Qe,date:oe,setOptions:k,hideAlerts:F}}])})}).call(n,a(0)(r))}])})}),vn={};bs(vn,{default:()=>Ft});var ws=yn(xn());Ts(vn,yn(xn()));var{default:wn,...ys}=ws,Ft=wn!==void 0?wn:ys;var br=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function Tr(e,t,r,n){e.addEventListener?e.addEventListener(t,r,n):e.attachEvent&&e.attachEvent("on".concat(t),function(){r(window.event)})}function En(e,t){for(var r=t.slice(0,t.length-1),n=0;n=0;)t[r-1]+=",",t.splice(r,1),r=t.lastIndexOf("");return t}function xs(e,t){for(var r=e.length>=t.length?e:t,n=e.length>=t.length?t:e,a=!0,i=0;i=0&&ae.splice(r,1),e.key&&e.key.toLowerCase()==="meta"&&ae.splice(0,ae.length),(t===93||t===224)&&(t=91),t in xe){xe[t]=!1;for(var n in $e)$e[n]===t&&(Ve[n]=!1)}}function _s(e){if(typeof e>"u")Object.keys(pe).forEach(function(c){return delete pe[c]});else if(Array.isArray(e))e.forEach(function(c){c.key&&wr(c)});else if(typeof e=="object")e.key&&wr(e);else if(typeof e=="string"){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n1?En($e,l):[];pe[T]=pe[T].filter(function(C){var b=n?C.method===n:!0;return!(b&&C.scope===r&&xs(C.mods,L))})}})};function Sn(e,t,r,n){if(t.element===n){var a;if(t.scope===r||t.scope==="all"){a=t.mods.length>0;for(var i in xe)Object.prototype.hasOwnProperty.call(xe,i)&&(!xe[i]&&t.mods.indexOf(+i)>-1||xe[i]&&t.mods.indexOf(+i)===-1)&&(a=!1);(t.mods.length===0&&!xe[16]&&!xe[18]&&!xe[17]&&!xe[91]||a||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function An(e,t){var r=pe["*"],n=e.keyCode||e.which||e.charCode;if(Ve.filter.call(this,e)){if((n===93||n===224)&&(n=91),ae.indexOf(n)===-1&&n!==229&&ae.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(b){var J=xr[b];e[b]&&ae.indexOf(J)===-1?ae.push(J):!e[b]&&ae.indexOf(J)>-1?ae.splice(ae.indexOf(J),1):b==="metaKey"&&e[b]&&ae.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(ae=ae.slice(ae.indexOf(J))))}),n in xe){xe[n]=!0;for(var a in $e)$e[a]===n&&(Ve[a]=!0);if(!r)return}for(var i in xe)Object.prototype.hasOwnProperty.call(xe,i)&&(xe[i]=e[xr[i]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(ae.indexOf(17)===-1&&ae.push(17),ae.indexOf(18)===-1&&ae.push(18),xe[17]=!0,xe[18]=!0);var c=Ct();if(r)for(var o=0;o-1}function Ve(e,t,r){ae=[];var n=Mn(e),a=[],i="all",c=document,o=0,l=!1,u=!0,d="+",T=!1;for(r===void 0&&typeof t=="function"&&(r=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(i=t.scope),t.element&&(c=t.element),t.keyup&&(l=t.keyup),t.keydown!==void 0&&(u=t.keydown),t.capture!==void 0&&(T=t.capture),typeof t.splitKey=="string"&&(d=t.splitKey)),typeof t=="string"&&(i=t);o1&&(a=En($e,e)),e=e[e.length-1],e=e==="*"?"*":Wt(e),e in pe||(pe[e]=[]),pe[e].push({keyup:l,keydown:u,scope:i,mods:a,shortcut:n[o],method:r,key:n[o],splitKey:d,element:c});typeof c<"u"&&!Ps(c)&&window&&(_n.push(c),Tr(c,"keydown",function(L){An(L,c)},T),Cn||(Cn=!0,Tr(window,"focus",function(){ae=[]},T)),Tr(c,"keyup",function(L){An(L,c),Ls(L)},T))}function Rs(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(pe).forEach(function(r){var n=pe[r].filter(function(a){return a.scope===t&&a.shortcut===e});n.forEach(function(a){a&&a.method&&a.method()})})}var yr={getPressedKeyString:As,setScope:Pn,getScope:Ct,deleteScope:Ms,getPressedKeyCodes:Ss,isPressed:Es,filter:ks,trigger:Rs,unbind:_s,keyMap:vt,modifier:$e,modifierMap:xr};for(jt in yr)Object.prototype.hasOwnProperty.call(yr,jt)&&(Ve[jt]=yr[jt]);var jt;typeof document<"u"&&(kn=window.hotkeys,Ve.noConflict=function(e){return e&&window.hotkeys===Ve&&(window.hotkeys=kn),Ve},window.hotkeys=Ve);var kn;var Is=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),r=Math.round(t-this.#e);this.#e=t}},Os=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Is:{reset:()=>{},stop:()=>{}}}},oc=new Os,Ds="poegempjloogba",Ns="ension://";var Bs="rome-ext";var sc="ch"+Bs+Ns+"cofdb"+Ds+"gkncekinflcnj";var{entries:Fn,setPrototypeOf:Rn,isFrozen:Fs,getPrototypeOf:js,getOwnPropertyDescriptor:Ws}=Object,{freeze:Ie,seal:Ke,create:Hs}=Object,{apply:Er,construct:Mr}=typeof Reflect<"u"&&Reflect;Er||(Er=function(e,t,r){return e.apply(t,r)});Ie||(Ie=function(e){return e});Ke||(Ke=function(e){return e});Mr||(Mr=function(e,t){return new e(...t)});var qs=We(Array.prototype.forEach),In=We(Array.prototype.pop),St=We(Array.prototype.push),zt=We(String.prototype.toLowerCase),vr=We(String.prototype.toString),zs=We(String.prototype.match),ze=We(String.prototype.replace),Ks=We(String.prototype.indexOf),Gs=We(String.prototype.trim),Ue=We(RegExp.prototype.test),At=Vs(TypeError);function We(e){return function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),a=1;a/gm),Js=Ke(/\${[\w\W]*}/gm),Qs=Ke(/^data-[\-\w.\u00B7-\uFFFF]/),ei=Ke(/^aria-[\-\w]+$/),jn=Ke(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),ti=Ke(/^(?:\w+script|data):/i),ri=Ke(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Wn=Ke(/^html$/i),Un=Object.freeze({__proto__:null,MUSTACHE_EXPR:Zs,ERB_EXPR:Xs,TMPLIT_EXPR:Js,DATA_ATTR:Qs,ARIA_ATTR:ei,IS_ALLOWED_URI:jn,IS_SCRIPT_OR_DATA:ti,ATTR_WHITESPACE:ri,DOCTYPE_NAME:Wn}),ni=()=>typeof window>"u"?null:window,ai=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let r=null,n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(r=t.getAttribute(n));let a="dompurify"+(r?"#"+r:"");try{return e.createPolicy(a,{createHTML(i){return i},createScriptURL(i){return i}})}catch{return null}};function Hn(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ni(),t=s=>Hn(s);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let r=e.document,n=r.currentScript,{document:a}=e,{DocumentFragment:i,HTMLTemplateElement:c,Node:o,Element:l,NodeFilter:u,NamedNodeMap:d=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:T,DOMParser:L,trustedTypes:C}=e,b=l.prototype,J=Ht(b,"cloneNode"),te=Ht(b,"nextSibling"),m=Ht(b,"childNodes"),k=Ht(b,"parentNode");if(typeof c=="function"){let s=a.createElement("template");s.content&&s.content.ownerDocument&&(a=s.content.ownerDocument)}let G,Y="",{implementation:me,createNodeIterator:x,createDocumentFragment:S,getElementsByTagName:f}=a,{importNode:A}=r,_={};t.isSupported=typeof Fn=="function"&&typeof k=="function"&&me&&me.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:$,ERB_EXPR:W,TMPLIT_EXPR:R,DATA_ATTR:X,ARIA_ATTR:F,IS_SCRIPT_OR_DATA:Te,ATTR_WHITESPACE:ve}=Un,{IS_ALLOWED_URI:ye}=Un,Q=null,Qe=H({},[...On,...Cr,...Sr,...Ar,...Dn]),oe=null,g=H({},[...Nn,...kr,...Bn,...qt]),v=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),E=null,V=null,O=!0,se=!0,ge=!1,ue=!0,D=!1,U=!1,z=!1,Z=!1,M=!1,K=!1,ie=!1,ne=!0,I=!1,fe="user-content-",Le=!0,ce=!1,de={},_e=null,Fe=H({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),wt=null,Ge=H({},["audio","video","img","source","image","track"]),at=null,ct=H({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ce="http://www.w3.org/1998/Math/MathML",qe="http://www.w3.org/2000/svg",Se="http://www.w3.org/1999/xhtml",Ne=Se,Ye=!1,Ze=null,ot=H({},[Ce,qe,Se],vr),Pe,Xe=["application/xhtml+xml","text/html"],le="text/html",re,Be=null,Wa=a.createElement("form"),Yr=function(s){return s instanceof RegExp||s instanceof Function},nr=function(s){if(!(Be&&Be===s)){if((!s||typeof s!="object")&&(s={}),s=mt(s),Pe=Xe.indexOf(s.PARSER_MEDIA_TYPE)===-1?Pe=le:Pe=s.PARSER_MEDIA_TYPE,re=Pe==="application/xhtml+xml"?vr:zt,Q="ALLOWED_TAGS"in s?H({},s.ALLOWED_TAGS,re):Qe,oe="ALLOWED_ATTR"in s?H({},s.ALLOWED_ATTR,re):g,Ze="ALLOWED_NAMESPACES"in s?H({},s.ALLOWED_NAMESPACES,vr):ot,at="ADD_URI_SAFE_ATTR"in s?H(mt(ct),s.ADD_URI_SAFE_ATTR,re):ct,wt="ADD_DATA_URI_TAGS"in s?H(mt(Ge),s.ADD_DATA_URI_TAGS,re):Ge,_e="FORBID_CONTENTS"in s?H({},s.FORBID_CONTENTS,re):Fe,E="FORBID_TAGS"in s?H({},s.FORBID_TAGS,re):{},V="FORBID_ATTR"in s?H({},s.FORBID_ATTR,re):{},de="USE_PROFILES"in s?s.USE_PROFILES:!1,O=s.ALLOW_ARIA_ATTR!==!1,se=s.ALLOW_DATA_ATTR!==!1,ge=s.ALLOW_UNKNOWN_PROTOCOLS||!1,ue=s.ALLOW_SELF_CLOSE_IN_ATTR!==!1,D=s.SAFE_FOR_TEMPLATES||!1,U=s.WHOLE_DOCUMENT||!1,M=s.RETURN_DOM||!1,K=s.RETURN_DOM_FRAGMENT||!1,ie=s.RETURN_TRUSTED_TYPE||!1,Z=s.FORCE_BODY||!1,ne=s.SANITIZE_DOM!==!1,I=s.SANITIZE_NAMED_PROPS||!1,Le=s.KEEP_CONTENT!==!1,ce=s.IN_PLACE||!1,ye=s.ALLOWED_URI_REGEXP||jn,Ne=s.NAMESPACE||Se,v=s.CUSTOM_ELEMENT_HANDLING||{},s.CUSTOM_ELEMENT_HANDLING&&Yr(s.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(v.tagNameCheck=s.CUSTOM_ELEMENT_HANDLING.tagNameCheck),s.CUSTOM_ELEMENT_HANDLING&&Yr(s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(v.attributeNameCheck=s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),s.CUSTOM_ELEMENT_HANDLING&&typeof s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(v.allowCustomizedBuiltInElements=s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),D&&(se=!1),K&&(M=!0),de&&(Q=H({},[...Dn]),oe=[],de.html===!0&&(H(Q,On),H(oe,Nn)),de.svg===!0&&(H(Q,Cr),H(oe,kr),H(oe,qt)),de.svgFilters===!0&&(H(Q,Sr),H(oe,kr),H(oe,qt)),de.mathMl===!0&&(H(Q,Ar),H(oe,Bn),H(oe,qt))),s.ADD_TAGS&&(Q===Qe&&(Q=mt(Q)),H(Q,s.ADD_TAGS,re)),s.ADD_ATTR&&(oe===g&&(oe=mt(oe)),H(oe,s.ADD_ATTR,re)),s.ADD_URI_SAFE_ATTR&&H(at,s.ADD_URI_SAFE_ATTR,re),s.FORBID_CONTENTS&&(_e===Fe&&(_e=mt(_e)),H(_e,s.FORBID_CONTENTS,re)),Le&&(Q["#text"]=!0),U&&H(Q,["html","head","body"]),Q.table&&(H(Q,["tbody"]),delete E.tbody),s.TRUSTED_TYPES_POLICY){if(typeof s.TRUSTED_TYPES_POLICY.createHTML!="function")throw At('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof s.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw At('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');G=s.TRUSTED_TYPES_POLICY,Y=G.createHTML("")}else G===void 0&&(G=ai(C,n)),G!==null&&typeof Y=="string"&&(Y=G.createHTML(""));Ie&&Ie(s),Be=s}},Zr=H({},["mi","mo","mn","ms","mtext"]),Xr=H({},["foreignobject","desc","title","annotation-xml"]),Ha=H({},["title","style","font","a","script"]),Dt=H({},Cr);H(Dt,Sr),H(Dt,$s);let ar=H({},Ar);H(ar,Ys);let qa=function(s){let w=k(s);(!w||!w.tagName)&&(w={namespaceURI:Ne,tagName:"template"});let h=zt(s.tagName),ee=zt(w.tagName);return Ze[s.namespaceURI]?s.namespaceURI===qe?w.namespaceURI===Se?h==="svg":w.namespaceURI===Ce?h==="svg"&&(ee==="annotation-xml"||Zr[ee]):!!Dt[h]:s.namespaceURI===Ce?w.namespaceURI===Se?h==="math":w.namespaceURI===qe?h==="math"&&Xr[ee]:!!ar[h]:s.namespaceURI===Se?w.namespaceURI===qe&&!Xr[ee]||w.namespaceURI===Ce&&!Zr[ee]?!1:!ar[h]&&(Ha[h]||!Dt[h]):!!(Pe==="application/xhtml+xml"&&Ze[s.namespaceURI]):!1},ut=function(s){St(t.removed,{element:s});try{s.parentNode.removeChild(s)}catch{s.remove()}},or=function(s,w){try{St(t.removed,{attribute:w.getAttributeNode(s),from:w})}catch{St(t.removed,{attribute:null,from:w})}if(w.removeAttribute(s),s==="is"&&!oe[s])if(M||K)try{ut(w)}catch{}else try{w.setAttribute(s,"")}catch{}},Jr=function(s){let w,h;if(Z)s=""+s;else{let Re=zs(s,/^[\r\n\t ]+/);h=Re&&Re[0]}Pe==="application/xhtml+xml"&&Ne===Se&&(s=''+s+"");let ee=G?G.createHTML(s):s;if(Ne===Se)try{w=new L().parseFromString(ee,Pe)}catch{}if(!w||!w.documentElement){w=me.createDocument(Ne,"template",null);try{w.documentElement.innerHTML=Ye?Y:ee}catch{}}let be=w.body||w.documentElement;return s&&h&&be.insertBefore(a.createTextNode(h),be.childNodes[0]||null),Ne===Se?f.call(w,U?"html":"body")[0]:U?w.documentElement:be},Qr=function(s){return x.call(s.ownerDocument||s,s,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT,null,!1)},za=function(s){return s instanceof T&&(typeof s.nodeName!="string"||typeof s.textContent!="string"||typeof s.removeChild!="function"||!(s.attributes instanceof d)||typeof s.removeAttribute!="function"||typeof s.setAttribute!="function"||typeof s.namespaceURI!="string"||typeof s.insertBefore!="function"||typeof s.hasChildNodes!="function")},Nt=function(s){return typeof o=="object"?s instanceof o:s&&typeof s=="object"&&typeof s.nodeType=="number"&&typeof s.nodeName=="string"},Je=function(s,w,h){_[s]&&qs(_[s],ee=>{ee.call(t,w,h,Be)})},en=function(s){let w;if(Je("beforeSanitizeElements",s,null),za(s))return ut(s),!0;let h=re(s.nodeName);if(Je("uponSanitizeElement",s,{tagName:h,allowedTags:Q}),s.hasChildNodes()&&!Nt(s.firstElementChild)&&(!Nt(s.content)||!Nt(s.content.firstElementChild))&&Ue(/<[/\w]/g,s.innerHTML)&&Ue(/<[/\w]/g,s.textContent))return ut(s),!0;if(!Q[h]||E[h]){if(!E[h]&&rn(h)&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,h)||v.tagNameCheck instanceof Function&&v.tagNameCheck(h)))return!1;if(Le&&!_e[h]){let ee=k(s)||s.parentNode,be=m(s)||s.childNodes;if(be&&ee){let Re=be.length;for(let De=Re-1;De>=0;--De)ee.insertBefore(J(be[De],!0),te(s))}}return ut(s),!0}return s instanceof l&&!qa(s)||(h==="noscript"||h==="noembed")&&Ue(/<\/no(script|embed)/i,s.innerHTML)?(ut(s),!0):(D&&s.nodeType===3&&(w=s.textContent,w=ze(w,$," "),w=ze(w,W," "),w=ze(w,R," "),s.textContent!==w&&(St(t.removed,{element:s.cloneNode()}),s.textContent=w)),Je("afterSanitizeElements",s,null),!1)},tn=function(s,w,h){if(ne&&(w==="id"||w==="name")&&(h in a||h in Wa))return!1;if(!(se&&!V[w]&&Ue(X,w))&&!(O&&Ue(F,w))){if(!oe[w]||V[w]){if(!(rn(s)&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,s)||v.tagNameCheck instanceof Function&&v.tagNameCheck(s))&&(v.attributeNameCheck instanceof RegExp&&Ue(v.attributeNameCheck,w)||v.attributeNameCheck instanceof Function&&v.attributeNameCheck(w))||w==="is"&&v.allowCustomizedBuiltInElements&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,h)||v.tagNameCheck instanceof Function&&v.tagNameCheck(h))))return!1}else if(!at[w]&&!Ue(ye,ze(h,ve,""))&&!((w==="src"||w==="xlink:href"||w==="href")&&s!=="script"&&Ks(h,"data:")===0&&wt[s])&&!(ge&&!Ue(Te,ze(h,ve,"")))&&h)return!1}return!0},rn=function(s){return s.indexOf("-")>0},nn=function(s){let w,h,ee,be;Je("beforeSanitizeAttributes",s,null);let{attributes:Re}=s;if(!Re)return;let De={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:oe};for(be=Re.length;be--;){w=Re[be];let{name:we,namespaceURI:dt}=w;if(h=we==="value"?w.value:Gs(w.value),ee=re(we),De.attrName=ee,De.attrValue=h,De.keepAttr=!0,De.forceKeepAttr=void 0,Je("uponSanitizeAttribute",s,De),h=De.attrValue,De.forceKeepAttr||(or(we,s),!De.keepAttr))continue;if(!ue&&Ue(/\/>/i,h)){or(we,s);continue}D&&(h=ze(h,$," "),h=ze(h,W," "),h=ze(h,R," "));let an=re(s.nodeName);if(tn(an,ee,h)){if(I&&(ee==="id"||ee==="name")&&(or(we,s),h=fe+h),G&&typeof C=="object"&&typeof C.getAttributeType=="function"&&!dt)switch(C.getAttributeType(an,ee)){case"TrustedHTML":{h=G.createHTML(h);break}case"TrustedScriptURL":{h=G.createScriptURL(h);break}}try{dt?s.setAttributeNS(dt,we,h):s.setAttribute(we,h),In(t.removed)}catch{}}}Je("afterSanitizeAttributes",s,null)},Ka=function s(w){let h,ee=Qr(w);for(Je("beforeSanitizeShadowDOM",w,null);h=ee.nextNode();)Je("uponSanitizeShadowNode",h,null),!en(h)&&(h.content instanceof i&&s(h.content),nn(h));Je("afterSanitizeShadowDOM",w,null)};return t.sanitize=function(s){let w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},h,ee,be,Re;if(Ye=!s,Ye&&(s=""),typeof s!="string"&&!Nt(s))if(typeof s.toString=="function"){if(s=s.toString(),typeof s!="string")throw At("dirty is not a string, aborting")}else throw At("toString is not a function");if(!t.isSupported)return s;if(z||nr(w),t.removed=[],typeof s=="string"&&(ce=!1),ce){if(s.nodeName){let dt=re(s.nodeName);if(!Q[dt]||E[dt])throw At("root node is forbidden and cannot be sanitized in-place")}}else if(s instanceof o)h=Jr(""),ee=h.ownerDocument.importNode(s,!0),ee.nodeType===1&&ee.nodeName==="BODY"||ee.nodeName==="HTML"?h=ee:h.appendChild(ee);else{if(!M&&!D&&!U&&s.indexOf("<")===-1)return G&&ie?G.createHTML(s):s;if(h=Jr(s),!h)return M?null:ie?Y:""}h&&Z&&ut(h.firstChild);let De=Qr(ce?s:h);for(;be=De.nextNode();)en(be)||(be.content instanceof i&&Ka(be.content),nn(be));if(ce)return s;if(M){if(K)for(Re=S.call(h.ownerDocument);h.firstChild;)Re.appendChild(h.firstChild);else Re=h;return(oe.shadowroot||oe.shadowrootmod)&&(Re=A.call(r,Re,!0)),Re}let we=U?h.outerHTML:h.innerHTML;return U&&Q["!doctype"]&&h.ownerDocument&&h.ownerDocument.doctype&&h.ownerDocument.doctype.name&&Ue(Wn,h.ownerDocument.doctype.name)&&(we=" +`+we),D&&(we=ze(we,$," "),we=ze(we,W," "),we=ze(we,R," ")),G&&ie?G.createHTML(we):we},t.setConfig=function(s){nr(s),z=!0},t.clearConfig=function(){Be=null,z=!1},t.isValidAttribute=function(s,w,h){Be||nr({});let ee=re(s),be=re(w);return tn(ee,be,h)},t.addHook=function(s,w){typeof w=="function"&&(_[s]=_[s]||[],St(_[s],w))},t.removeHook=function(s){if(_[s])return In(_[s])},t.removeHooks=function(s){_[s]&&(_[s]=[])},t.removeAllHooks=function(){_={}},t}var qn=Hn();var _c=Ft.alert;var zn={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var Kn={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var Gn={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var li=[{code:"zh-CN",messages:zn},{code:"zh-TW",messages:Kn},{code:"en",messages:Gn}];var st={};for(let e of li)st[e.code]=e.messages;var it="Immersive Translate",he="immersive-translate",Kt="pdf/index.html";var $n="subtitle/index.html",Yn="ebook/index.html",Zn="ebook/make/index.html",q="immersiveTranslate",Gt="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",gt=q+"GoogleAccessToken",Xn=q+"AuthFlow",Vt="immersive-translate-config-latest.json",Zc=q+"AuthState",Xc=q+"IframeMessage",Jc=q+"WaitForRateLimit",Qc=q+"DocumentMessageAsk",eu=q+"DocumentMessageTellThirdParty",tu=q+"DocumentMessageThirdPartyTell",ru=q+"DocumentMessageHandler",nu=`${q}Container`,au=`${q}SpecifiedContainer`,$t="buildinConfig",kt="localConfig",Lr="openOptionsPage";var _r="translateLocalPdfFile",Jn="donateContext",Pr="openEbookViewer",Rr="openEbookBuilder",Qn="openSubtitleBuilder",ou=`${q}PageTranslatedStatus`,su=`${q}PageUrlChanged`,iu=`${q}ReceiveCommand`,lu=q+"LastUseMouseHoverTime",cu=q+"LastUseInputTime",uu=q+"LastUseManualTranslatePageTime",du=`${q}PopupReceiveMessage`,ci="immersivetranslate.com",ui="config.immersivetranslate.com",mu=`https://${ci}/`,gu=`https://${ui}/default_config.json`,pu=`${q}Mark`;var hu=`${q}Root`,fu=`data-${he}-effect`,bu=`data-${he}-translation-element-mark`,Tu=`${q}TranslationElementMark`,wu=`${q}TranslatedMark`,yu=`${q}ParagraphId`,xu=`${q}LoadingId`,vu=`data-${he}-loading-id`,Cu=`${q}ErrorId`,Su=`data-${he}-error-id`,Au=`${q}AtomicBlockMark`,ku=`${q}ExcludeMark`,Eu=`data-${he}-exclude-mark`,Mu=`${q}StayOriginalMark`,Lu=`${q}PreWhitespaceMark`,_u=`${q}InlineMark`,Pu=`${q}BlockMark`,Ru=`${q}Left`,Iu=`${q}Right`,Ou=`${q}Width`,Du=`${q}Height`,Nu=`${q}Top`,Bu=`${q}FontSize`;var Uu=`${q}GlobalStyleMark`;var Fu=`${he}-target-wrapper`,ju=`${he}-pdf-target-container`,Wu=`${he}-target-inner`,Hu=`${he}-source-wrapper`,qu=`${he}-target-translation-block-wrapper`,zu=`${he}-root-translation-theme`,Ku=`${q}RootTranslationTheme`,Gu=`${he}-target-translation-vertical-block-wrapper`,Vu=`${he}-target-translation-pdf-block-wrapper`,$u=`${he}-target-translation-pre-whitespace`,Yu=`${he}-target-translation-inline-wrapper`;var Et=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"];var Yt="zh-CN";var Vn=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],di={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...Vn,{type:"password",name:"apikey",required:!0}],props:Vn},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},Xu={type:q+"ChildFrameToRootFrameIdentifier"};var pt=console,Ir=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let r=performance.now(),n=Math.round(r-this.#e),a=je.green;n>1e4?a=je.red:n>1e3&&(a=je.yellow),pt.debug(je.dim(it+" TIMING:"),t,"in",a(n+"ms")),this.#e=r}},Mt=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pt.log(je.dim(it+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pt.log(je.green(it+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pt.warn(je.yellow(it+" WARN:"),...t)}error(...t){this.#e<=3&&pt.error(je.red(it+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pt.error(je.red(it+" FATAL:"),...t)}timing(){return this.level===0?new Ir:{reset:()=>{},stop:()=>{}}}},P=new Mt;function ht(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let r=Et.map(a=>a.toLowerCase()),n=r.indexOf(t);if(n===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let a=r.indexOf(t);return a===-1?"auto":Et[a]}else return"auto";else return Et[n]}function Oe(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():w}var j=Oe();function Or(){return j.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function He(){if(j.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}var cd=Oe().PROD==="1",ud=Oe().PROD!=="1";function Dr(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}var Nr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...Vn,{type:"password",name:"apikey",required:!0}],props:Vn},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},Zu={type:q+"ChildFrameToRootFrameIdentifier"};var pt=console,Ir=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let r=performance.now(),n=Math.round(r-this.#e),a=je.green;n>1e4?a=je.red:n>1e3&&(a=je.yellow),pt.debug(je.dim(it+" TIMING:"),t,"in",a(n+"ms")),this.#e=r}},Mt=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pt.log(je.dim(it+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pt.log(je.green(it+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pt.warn(je.yellow(it+" WARN:"),...t)}error(...t){this.#e<=3&&pt.error(je.red(it+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pt.error(je.red(it+" FATAL:"),...t)}timing(){return this.level===0?new Ir:{reset:()=>{},stop:()=>{}}}},P=new Mt;function ht(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let r=Et.map(a=>a.toLowerCase()),n=r.indexOf(t);if(n===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let a=r.indexOf(t);return a===-1?"auto":Et[a]}else return"auto";else return Et[n]}function Oe(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():y}var j=Oe();function Or(){return j.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function He(){if(j.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}var cd=Oe().PROD==="1",ud=Oe().PROD!=="1";function Dr(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}var Nr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4082,12 +4090,12 @@ body { ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};var Br="DENO",Xt="CHROME",Jt="FIREFOX";function ea(e){let t=Xt;try{let r=navigator?.userAgent||"";/firefox/i.test(r)||typeof InstallTrigger<"u"?t=Jt:/deno/i.test(r)&&(t=Br)}catch{}return e===Xt&&t===Xt||e===Jt&&t===Jt||e===Br&&t===Br}function ta(){return ea(Xt)}function ra(){return typeof Deno<"u"}function na(){return ea(Jt)}var aa={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},oa={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:aa,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:aa,query:()=>{},sendMessage:()=>{}}};var p;ra()?p=oa:p=globalThis.immersiveTranslateBrowserAPI;function Ur(e){return Array.isArray(e)?e:e?[e]:[]}function sa(e,t){let r=[],n=Object.keys(e);for(let c of n){let o=e[c];Array.isArray(o)&&r.push(c)}let a={...e};return Object.keys(t).forEach(c=>{let o=t[c];if(o!==void 0)if(!r.includes(c))a[c]=o;else if(c.startsWith("additional")){let l=Ur(o);a[c]=Array.from(new Set([...a[c],...l]))}else a[c]=Ur(o)}),a}function gi(){if(j.PROD==="1")return{};let e={};if(j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(j.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:j.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(j.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:j.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(j.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&j.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:j.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:j.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(j.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:j.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(j.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=j.DEEPL_PROXY_ENDPOINT),j.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=j.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),j.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:j.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return j.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),j.MOCK==="1"&&(e.translationService="mock"),j.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=j.IMMERSIVE_TRANSLATE_SERVICE),e}async function Lt(){let e=await p.storage.local.get(kt);if(e[kt]){let t=e[kt],r=t.tempTranslationUrlMatches||[],n=r.filter(c=>c.expiredAt>Date.now()),a=!1;n.length!==r.length&&(r=n,a=!0);let i={...t,tempTranslationUrlMatches:[...r]};return a&&await ft(i),i}else return{}}async function ft(e){await p.storage.local.set({[kt]:e})}async function tt(){let e=await p.storage.local.get($t),t={...Nr,buildinConfigUpdatedAt:j.BUILD_TIME};if(e[$t]){let m=e[$t];if(m&&m.buildinConfigUpdatedAt){let k=new Date(m.buildinConfigUpdatedAt),G=new Date(t.buildinConfigUpdatedAt);k>G&&(t=m)}}let r={};if(!Or()&&p.commands&&p.commands.getAll){let m=await p.commands.getAll();for(let k of m)k.name&&k.shortcut&&(r[k.name]=k.shortcut)}let n=hi(),a=gi(),i=await _t(),c=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},o=await Lt(),l=new Date;if(o&&o.tempTranslationUrlMatches&&o.tempTranslationUrlMatches.length>0){let m=o.tempTranslationUrlMatches.filter(k=>new Date(k.expiredAt)>l);if(m.length>0){let k=i.translationUrlPattern?i.translationUrlPattern?.matches||[]:[],G=Array.isArray(k)?k:[k],Y=Array.from(new Set(G.concat(m.map(me=>me.match))));i.translationUrlPattern={...i.translationUrlPattern,matches:Y}}}let u=Object.assign({},c,a,i);if(!u.interfaceLanguage){let m=await pi();u.interfaceLanguage=m}let d=u.interfaceLanguage==="en",T=u.targetLanguage==="en",L=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,C=["bing","google","transmart","mock"].includes(u.translationService)||!u.translationService;!d&&!T&&!L&&C?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let b=Object.assign(n,t),Z=Object.keys(b),te=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let m of Z){let k=m;if(k==="generalRule")typeof u[k]=="object"&&(b[k]=sa(n[k],u[k]));else if(k==="translationServices"){let G=u[k]||{},Y=t[k]||{},me=Object.keys(Y),x=Object.keys(G),S=[...new Set([...me,...x])],f={};for(let A of S)f[A]={...Y[A],...G[A]};b[k]=f}else if(typeof u[k]!="string"&&typeof u[k]!="boolean"&&typeof u[k]!="number"&&te.includes(k))u[k]&&(b[k]=Object.assign(b[k],u[k])),k==="shortcuts"&&(Or()||He()?b[k]={...b[k],...r}:b[k]={...r});else if(k==="rules"){if(Array.isArray(u[k])&&(b[k]=[...u[k],...b[k]]),j.PROD==="0"&&j.DEV_RULES){let G=JSON.parse(j.DEV_RULES);b[k]=[...G,...b[k]]}}else u[k]!==void 0&&(b[k]=u[k])}return b.donateUrl=t.donateUrl,b.minVersion=t.minVersion,b.feedbackUrl=t.feedbackUrl,b}async function _t(){return(await p.storage.sync.get("userConfig")||{}).userConfig||{}}async function bt(e){await p.storage.sync.set({userConfig:e})}var pi=async()=>{let e=["zh-CN"];try{e=await p.i18n.getAcceptLanguages()}catch(n){P.warn("get browser language error:",n)}let r=e.map(n=>ht(n)).find(n=>st[n]);return r||"en"},hi=()=>{let e={...Nr,buildinConfigUpdatedAt:j.BUILD_TIME};return{...e,targetLanguage:Yt,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function ia(e){let t=p.runtime.getURL(zt),r=new URL(t);return(e.startsWith("http")||!na())&&r.searchParams.set("file",e),r.href}function la(e){return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}var lt=class extends Error{constructor(r,n,a){super(n);this.name=r,a&&(this.details=a)}};async function ua(e){let t;if(e&&e.retry&&e.retry>0)try{t=await dr(ca.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(r){throw r&&r.name==="RetryError"&&r.cause?r.cause:r}else t=await ca(e);return t}async function ca(e){e.body;let{url:t,responseType:r,...n}=e;r||(r="json"),n={mode:"cors",...n};let a=!0;e.fetchPolyfill&&(a=!1);let i=e.fetchPolyfill||fetch,c=12e4;if(e.timeout&&(c=e.timeout),a){let l=new AbortController,u=l.signal;setTimeout(()=>{l.abort()},c),n.signal=u}let o;try{o=await i(t,n)}catch(l){P.error("fetch error",l);let u=l.message||"";throw l.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+u,l}if(o.ok&&o.status>=200&&o.status<400){if(r==="json")return await o.json();if(r==="text")return await o.text();if(r==="raw"){let l=await o.text(),u=Object.fromEntries([...o.headers.entries()]),d=o.url;return d||(o.headers.get("X-Final-URL")?d=o.headers.get("X-Final-URL"):d=t),{body:l,headers:u,status:o.status,statusText:o.statusText,url:d}}else if(r==="stream"){let l="",u;if(o.body&&o.body instanceof ReadableStream)for await(let d of fi(o.body)){let T=new TextDecoder().decode(d);l+=T;let L;for(;(L=l.indexOf(` -`))>=0;){let C=l.slice(0,L).trim();if(l=l.slice(L+1),C.startsWith("event:")||C==="")continue;let b="";if(C.startsWith("data:")&&(b=C.slice(5).trim()),b==="[DONE]")break;let Z;try{Z=JSON.parse(b??"")}catch(te){P.debug("json error",te);continue}u=Z}}return u}}else{let l;try{l=await o.text()}catch(T){P.error("parse response failed",T)}l&&P.error("fail response",l);let u="";l&&(u=l.slice(0,280));let d="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+o.status+": "+(o.statusText||"")+u;throw o.status===429?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${u}`:o.status===403?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${u}`:o.status===400?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${u}`:o.status===502&&(d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${u}`),new lt("fetchError",d,l)}}async function*fi(e){let t=e.getReader();try{for(;;){let{done:r,value:n}=await t.read();if(r)return;yield n}}finally{t.releaseLock()}}var da=["*://*/*","*","*://*"],ga="immersive-translate-wildcard-placeholder.com";function bi(e,t){let r=[];if(!t||(t&&!Array.isArray(t)?r=[t]:r=t,r.length===0))return null;if(r.some(c=>da.includes(c)))return e;let n=new URL(e);n.hash="",n.search="";let a=n.href,i=n.hostname;if(r&&r.length>0){let c=r.find(o=>{let l=o;if(o===i)return!0;if(da.includes(o))return!0;if(!o.includes("*")&&o.includes("://")){try{let u=new URL(o);return u.pathname==="/"&&!o.endsWith("/")?u.hostname===i:yi(a,o)}catch{}return!1}else{let u,d=o;if(o.includes("://")){let te=o.split("://");u=te[0],u==="*"&&te.length>1&&(u="*",o="https://"+te[1])}else u="*",o="https://"+o;let T=o.replace(/\*/g,ga),L;try{L=new URL(T)}catch{return P.debug("invalid match pattern",T,"raw match value:",d),!1}let C=L.hostname,b=L.pathname;b==="/"&&(d.replace("://","").includes("/")||(b="/*"));let Z=Ti(u+":",ma(C),ma(b));if(Z){let te=new URL(a);return te.port="",Z.test(te.href)}else return!1}});if(c)return c}return null}function ma(e){return e.replaceAll(ga,"*")}function Ti(e,t,r){let n="^";return e==="*:"?n+="(http:|https:|file:)":n+=e,n+="//",t&&(e==="file:"||(t==="*"?n+="[^/]+?":(t.match(/^\*\./)&&(n+="[^/]*?",t=t.substring(2)),n+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),r?r==="*"||r==="/*"?n+="(/.*)?":r.includes("*")?(n+=r.replace(/\*/g,".*?"),n+="/?"):n+=r.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):n+="/?",n+="$",new RegExp(n)}function pa(e,t){return bi(e,t)!==null}function yi(e,t){let r=new URL(e),n=new URL(t);return r.hostname===n.hostname&&r.pathname===n.pathname&&r.protocol===n.protocol&&r.port===n.port}var Zt=class{constructor(t){this.accessToken=t}async listAll(){let t=[],r="";do{let{nextPageToken:n,files:a}=await this.list(r).catch(i=>{throw i});t.push(...a),r=n||""}while(r);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){return P.error("get config error, use default",r),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,r=Vt){let n=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:r,parents:["appDataFolder"],mimeType:"application/json"},n)}updateConfig(t,r){let n=new Blob([JSON.stringify(r,null,2)],{type:"application/json"});return this.updateContent(t,n)}async upload(t,r){let n=new FormData;n.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),n.append("file",r);let a=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:n});return a.ok?await a.json():Promise.reject(a.text())}async list(t,r){let n=new URL("https://www.googleapis.com/drive/v3/files");t&&n.searchParams.append("pageToken",t),r&&n.searchParams.append("q",r),n.searchParams.append("spaces","appDataFolder"),n.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),n.searchParams.append("pageSize","100"),n.searchParams.append("orderBy","createdTime desc");try{return P.debug("list api:",n.toString(),this.accessToken),await(await fetch(n.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(a){throw P.error("fetch google ip error",a),a}}async updateContent(t,r){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:r})).text()}};function ha(e,t){let r=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${Gt}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(r.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function fa(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function ba(e,t,r,n,a,i,c){P.debug(`autoSyncStrategy accessToken: ${e}`);let o=new Zt(e);try{let l=(await o.findByName(Vt)).files;P.debug("files",l);let u=l[0]?.id,d=null;if(u&&(d=await o.getConfig(u).then(T=>({fileId:u,config:T}))),d){let{config:T,fileId:L}=d,C=T.updatedAt?new Date(T.updatedAt):new Date(0),b=t.updatedAt?new Date(t.updatedAt):new Date(0);if(P.debug("remoteUpdatedAt",C,"localUpdatedAt",b),C>b)P.debug("remote is newer, update local config",T),r(T),i&&i(!0);else if(C.getTime()===b.getTime())P.debug("remote and local are the same, do nothing"),i&&i(!1);else if(C(await rt.removeAuthInfo(),Dr()&&globalThis.location.reload(),n))}static async getAuthInfo(){let t=await p.storage.local.get(gt);if(t[gt])return t[gt]}static async removeAuthInfo(){return await p.storage.local.remove(gt)}static setAuthInfo(t){return p.storage.local.set({[gt]:t})}async auth(t=!1){let r=await rt.getAuthInfo();if(P.debug(this.CLASSNAME,"token from cache:",r),r&&r.access_token&&await Ta(r.access_token).then(i=>!0).catch(i=>!1))return Promise.resolve(r);let n=ha(this._state,this._redirectUrl);return P.debug(this.CLASSNAME,"auth url: "+n),Dr()?this.userscriptAuthWorkflow(n,t):this.extensionAuthWorkflow(n).then(a=>(rt.setAuthInfo(a),a))}async userscriptAuthWorkflow(t,r){return r&&await p.storage.local.set({[Jn]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let r,n=!1;return new Promise((a,i)=>{let c=()=>{p.tabs.onUpdated.removeListener(o),p.tabs.onRemoved.removeListener(l)},o=(L,C,b)=>{if(P.debug(this.CLASSNAME,"create tab onUpdated: "+b.url),r===L){let Z=new URL(b.url||""),te=fa(b.url);Z.pathname.startsWith("/auth-done")&&te?.access_token&&(P.debug(this.CLASSNAME,"auth done: "+b.url),a({access_token:te.access_token}),n=!0,p.tabs.remove(L),c())}},l=(L,C)=>{P.debug(this.CLASSNAME,"create tab onRemoved: "+L),(L===r||!n)&&(c(),i(new Error("auth failed")))},u=Math.min(500,screen.availWidth),d=Math.min(650,screen.availHeight),T;p.windows===void 0?T=p.tabs.create({url:t}).then(L=>{r=L.id}):T=p.windows.create({url:t,type:"popup",width:u,height:d,left:Math.round((screen.width-u)/2),top:Math.round((screen.height-d)/2)}).then(L=>{r=L.tabs[0].id}),T.then(()=>{p.tabs.onUpdated.addListener(o),p.tabs.onRemoved.addListener(l)}).catch(L=>{P.debug(this.CLASSNAME,"create tab failed: "+L),i(L)})})}};var xi="https://www.googleapis.com/oauth2/v3/tokeninfo",vi=Gt,Ci=Oe().REDIRECT_URL;function Ta(e){if(!e)throw"Authorization failure";let t=`${xi}?access_token=${e}`,r=new Request(t,{method:"GET"});function n(a){return new Promise((i,c)=>{a.status!=200&&c("Token validation error"),a.json().then(o=>{o.aud&&o.aud===vi?i(e):c("Token validation error")})})}return fetch(r).then(n)}function ya(e,t=!1){let r=Ci;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let a=window.location.hostname,i=window.location.port;r=`${window.location.protocol}//${a}${i?`:${i}`:""}/auth-done/`}return new rt(e,r).auth(t)}async function wa(){}function xa(e,t){let r=new Map;for(let i of t)r.set(i.header.toLowerCase(),i);let n=[],a=e.filter(i=>{let c=r.get(i.name.toLowerCase());if(c){if(c.operation==="remove")return!1;if(c.operation==="set")return!1}return!0});for(let i of t)i.operation==="set"&&n.push({name:i.header,value:i.value||""});return a.concat(n)}var Qt=[{id:1,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://httpstat.us/429"},{header:"origin",operation:"set",value:"https://httpstat.us/429"},{header:"DNT",operation:"set",value:"1"}]},condition:{urlFilter:"https://httpstat.us/429",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:2,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"https://www.deepl.com"},{header:"DNT",operation:"set",value:"1"},{header:"cookie",operation:"remove"}]},condition:{urlFilter:"https://www2.deepl.com/jsonrpc*",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:200,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"chrome-extension://cofdbpoegempjloogbagkncekinflcnj"},{header:"DNT",operation:"set",value:"1"}]},condition:{urlFilter:"https://api.deepl.com/jsonrpc*",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:201,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"chrome-extension://cofdbpoegempjloogbagkncekinflcnj"}]},condition:{urlFilter:"https://w.deepl.com/oidc/token",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:3,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"origin",operation:"set",value:"chrome-extension://lkjkfecdnfjopaeaibboihfkmhdjmanm"}]},condition:{urlFilter:"https://transmart.qq.com/api/imt",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:4,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"origin",operation:"set",value:"chrome-extension://lkjkfecdnfjopaeaibboihfkmhdjmanm"}]},condition:{urlFilter:"https://translate.volcengine.com/crx/translate/v1/",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}}];var Pt=new Map,Rt=class{constructor(t,r=!1){this.logger=new Mt,r&&this.logger.setLevel("debug"),this.fromType=t,Pt.has(t)||(Pt.set(t,new Map),p.runtime.onMessage.addListener((n,a,i)=>{let c=n.from,o=n.to,l,u,d;a.tab&&a.tab.id&&(l=a.tab.id,c=`${c}:${l}`,u=a.tab.url,d=a.tab.active),this.logger.debug(`${n.to} received message [${n.payload.method}] from ${n.from}`,n.payload.data?n.payload.data:" ");let T=jr(o),{type:L,name:C}=T;if(L!==t)return!1;let b=jr(c),te=Pt.get(L).get(C);if(!te)return this.logger.debug(`no message handler for ${L}:${o}, but it's ok`),!1;let{messageHandler:m,sync:k}=te,G={type:t,name:b.name,id:l,url:u,active:d};if(k){try{let Y=m(n.payload,G);i({ok:!0,data:Y})}catch(Y){i({ok:!1,errorName:Y.name,errorMessage:Y.message,errorDetails:Y.details})}return!1}else return m(n.payload,G).then(Y=>{i({ok:!0,data:Y})}).catch(Y=>{i({ok:!1,errorName:Y.name,errorMessage:Y.message,errorDetails:Y.details})}),!0}))}getConnection(t,r,n){let a=!1;n&&n.sync&&(a=!0);let i=this.fromType,c=Pt.get(i);if(c.has(t))return c.get(t).connectionInstance;{let o=new Fr(`${i}:${t}`,this.logger);return Pt.get(i).set(t,{messageHandler:r,sync:a,connectionInstance:o}),o}}},Fr=class{constructor(t,r){this.from=t,this.logger=r}async sendMessage(t,r){let n=jr(t),{type:a,id:i}=n;if(a!=="content_script"){let c={to:t,from:this.from,payload:r};this.logger.debug(`${c.from} send message [${c.payload.method}] to ${c.to}`,c.payload.data?c.payload.data:" ");try{let o=await p.runtime.sendMessage(c);return va(c,o,this.logger)}catch(o){if(a==="popup"){let l=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(r)}`;return this.logger.debug(l,r,t,o),Promise.resolve({message:l})}else throw o}}else{let c={from:this.from,to:t,payload:r};this.logger.debug(`${c.from} send message [${c.payload.method}] to ${c.to}`,c.payload.data?c.payload.data:" ");let o=await p.tabs.sendMessage(i,c);return va(c,o,this.logger)}}};function va(e,t,r){if(t){if(t.ok)return r.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new lt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new lt("noResponse","Unknown error")}function jr(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let r={type:t[0],name:t[1]};if(t[0]==="content_script"){let n=parseInt(t[2]);if(!isNaN(n))r.id=n;else throw new Error("tab id not a valid number")}return r}function nt(e,t){var r=(e&65535)+(t&65535),n=(e>>16)+(t>>16)+(r>>16);return n<<16|r&65535}function Ai(e,t){return e<>>32-t}function tr(e,t,r,n,a,i){return nt(Ai(nt(nt(t,e),nt(n,i)),a),r)}function Ae(e,t,r,n,a,i,c){return tr(t&r|~t&n,e,t,a,i,c)}function ke(e,t,r,n,a,i,c){return tr(t&n|r&~n,e,t,a,i,c)}function Ee(e,t,r,n,a,i,c){return tr(t^r^n,e,t,a,i,c)}function Me(e,t,r,n,a,i,c){return tr(r^(t|~n),e,t,a,i,c)}function er(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var r,n,a,i,c,o=1732584193,l=-271733879,u=-1732584194,d=271733878;for(r=0;r>5]>>>t%32&255);return r}function Wr(e){var t,r=[];for(r[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(n=er(n,e.length*8)),r=0;r<16;r+=1)a[r]=n[r]^909522486,i[r]=n[r]^1549556828;return c=er(a.concat(Wr(t)),512+t.length*8),Ca(er(i.concat(c),512+128))}function Sa(e){var t="0123456789abcdef",r="",n,a;for(a=0;a>>4&15)+t.charAt(n&15);return r}function Hr(e){return unescape(encodeURIComponent(e))}function Aa(e){return ki(Hr(e))}function Mi(e){return Sa(Aa(e))}function ka(e,t){return Ei(Hr(e),Hr(t))}function Li(e,t){return Sa(ka(e,t))}function Ea(e,t,r){return t?r?ka(t,e):Li(t,e):r?Aa(e):Mi(e)}function qr(e){if(Math.abs(e)<1024)return e+" Byte";let r=["KB","MB","GB","TB","PB","EB","ZB","YB"],n=-1;do e/=1024,++n;while(Math.abs(e)>=1024&&n{let a=e,i=1,c=indexedDB.open(a,i);c.onsuccess=o=>{r(c.result)},c.onerror=o=>{n()},c.onupgradeneeded=o=>{let l=c.result,u=t||"cache";l.createObjectStore(u,{keyPath:"key"})}})}async function Ma(e){let t=`${he}-${e.service}@${e.from}->${e.to}`;return await Pi(t,e)}async function La(e){let t=Ea(e.originalText),r=`${he}-${e.service}@${e.from}->${e.to}`;return await _i(r,t)}async function _i(e,t){let r=await It(e);return await new Promise((n,a)=>{if(!r)return a();let i="cache",o=r.transaction([i],"readonly").objectStore(i).get(t);o.onsuccess=l=>{r.close();let u=o.result;n(u)},o.onerror=l=>{r.close(),a()}})}async function Pi(e,t){let r=await It(e);return(await _a()).includes(e)||await Ri(e),await new Promise(a=>{if(!r)return a(!1);let i="cache",o=r.transaction([i],"readwrite").objectStore(i).put(t);o.onsuccess=l=>{r.close(),a(!0)},o.onerror=l=>{r.close(),a(!1)}})}async function Ri(e){let t="cache_list",r=await It(he+"-cacheList",t),a=r.transaction([t],"readwrite").objectStore(t).put({key:e});a.onsuccess=i=>{r.close(),Tt.push(e)},a.onerror=i=>{r.close()}}async function _a(){if(Tt&&Tt.length>0)return Tt;let e=await It(he+"-cacheList","cache_list");return Tt=await new Promise(t=>{let r="cache_list",a=e.transaction([r],"readonly").objectStore(r).getAllKeys();a.onsuccess=i=>{e.close(),t(a.result)},a.onerror=i=>{e.close(),t([])}}),Tt}async function Pa(){try{let e=[];(await _a()).forEach(n=>{e.push(Ii(n))});let r=await Promise.all(e);return qr(r.reduce((n,a)=>n+a,0))}catch{return qr(0)}}async function Ii(e){let t=await It(e),n=[...t.objectStoreNames].reduce((c,o)=>{let l=Oi(t,o);return c.push(l),c},[]),a=await Promise.all(n);return t.close(),a.reduce((c,o)=>c+o,0)}async function Oi(e,t){return await new Promise((r,n)=>{if(e==null)return n();let a=0,i=e.transaction([t]).objectStore(t).openCursor();i.onsuccess=c=>{let o=i.result;if(o){let l=o.value,u=JSON.stringify(l);a+=u.length,o.continue()}else r(a)},i.onerror=c=>n("error in "+t+": "+c)})}var rr,Di=async function(e,t){let{method:r,data:n}=e;if(P.debug("background received message",r,n||" "),r==="mock")await lr(150);else{if(r==="queryParagraphCache")return La(n);if(r==="setParagraphCache")return Ma(n);if(r==="calculateSize")return Pa();if(r==="fetch")return ua(n);if(r==="getConfig")return tt();if(r==="getLocalConfig")return Lt();if(r==="openOptionsPage")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i})}else{let a=p.runtime.getURL("options.html"),i=n&&n.pageRoute?n.pageRoute:"";i=i||"",p.tabs.create({url:a+i})}else if(r==="openAboutPage")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i+"#about"})}else p.tabs.create({url:p.runtime.getURL("options.html#about")});else if(r=="openSearchEnhancement")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i+"#advanced"})}else p.tabs.create({url:p.runtime.getURL("options.html#advanced")});else if(r==="openEbookViewerPage")p.tabs.create({url:p.runtime.getURL("ebook/index.html")});else if(r==="openSubtitleBuilderPage"){let a=p.runtime.getURL("ebook/subtitle/index.html");He()&&(a=Oe().SUBTITLE_BUILDER_URL),p.tabs.create({url:a})}else if(r==="openEbookBuilderPage"){let a=p.runtime.getURL("ebook/make/index.html");He()&&(a=Oe().EBOOK_BUILDER_URL),p.tabs.create({url:a})}else if(r==="openHtmlViewerPage"){let a=p.runtime.getURL("html/index.html");p.tabs.create({url:a})}else if(r==="openPdfViewerPage"){let a=p.runtime.getURL("pdf/index.html");p.tabs.create({url:a})}else{if(r==="setLocalConfig")return ft(n);if(r=="getUserConfig")return _t();if(r=="setUserConfig")return bt(n);if(r==="detectLanguage"){let{text:a,minLength:i}=n;if(!i&&i!==0&&(i=50),a.length<=i)return"auto";if(p.i18n&&p.i18n.detectLanguage)try{let c=await p.i18n.detectLanguage(a);return c.languages.length>0?ht(c.languages[0].language):"auto"}catch(c){return P.debug("detect language error",c),"auto"}else return"auto"}else if(r==="detectTabLanguage")try{let a=await p.tabs.detectLanguage(t.id);return ht(a)}catch(a){return P.debug("detect tab language error, use auto ",a),"auto"}else if(r==="autoSyncLatestConfig"){try{await wa()}catch(a){P.debug("auto sync latest config error",a)}return""}}}};function Ra(){Kr();let e=p.runtime.getManifest();if(e.manifest_version>2,e.manifest_version===2&&p.webRequest&&p.webRequest.onBeforeSendHeaders){let t=Qt.map(n=>n.condition.urlFilter),r=Qt.reduce((n,a)=>(a.condition.resourceTypes.forEach(i=>{n.includes(i)||n.push(i)}),n),[]);p.webRequest.onBeforeSendHeaders.addListener(function(n){if(!(n.originUrl&&n.originUrl.startsWith("http"))&&n.originUrl&&n.requestHeaders)for(let a=0;a{if(P.debug(`received command: ${e}`),["toggleTranslatePage"].includes(e)){let t=await p.tabs.query({active:!0,currentWindow:!0});if(t.length===0||typeof t[0].id>"u")return;let n=t[0].url;if(la(n)){p.tabs.create({url:ia(n)});return}}await zr({method:e})})}async function zr(e){let r=(await p.tabs.query({currentWindow:!0,active:!0}))[0].id;Kr().sendMessage(`content_script:main:${r}`,e).catch(a=>{P.error("send content message request failed",e,a)})}function Ni(e,t){let r=e;return t&&Object.keys(t).forEach(n=>{let a=t[n],i=Bi(n);if(typeof a=="object"||i){let c=a;i&&typeof c=="string"&&(c={tag:"a",href:c,target:"_blank"});let o=`<${n}>`,l=r.indexOf(o);if(l!==-1){let u=c.tag||"a",d=r.indexOf(``);if(d!==-1){let T=r.substring(l+o.length,d),L=Object.keys(c).filter(C=>C!=="tag").map(C=>`${C}="${c[C]}"`).join(" ");r=r.replace(`${o}${T}`,`<${u} ${L}>${T}`)}}}else{let c=new RegExp("{"+n+"}","gm");r=r.replace(c,a.toString())}}),r}function Oa(e,t,r){let n=e[t];if(!n)return r;let a=r.split("."),i="";do{i+=a.shift();let c=n[i];c!==void 0&&(typeof c=="object"||!a.length)?(n=c,i=""):a.length?i+=".":n=r}while(a.length);return n}function Da(e,t,r,n,a){if(!e.hasOwnProperty(r))return t;let i=Oa(e,r,t);return i===t&&r!==n&&(i=Oa(e,n,t)),Ni(i,a)}function Bi(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}var Na={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},Ui={...st,"zh-CN":{...Na["zh-CN"],...st["zh-CN"]},"zh-TW":{...Na["zh-TW"],...st["zh-TW"]}};function Ba(e,t,r){return Da(Ui,e,t,Yt,r)}var Ot=ta()?["action"]:["browser_action","page_action"],Ua=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...Ot]},{id:Lr,contexts:Ot},{id:Pr,contexts:Ot},{id:Rr,contexts:Ot},{id:_r,contexts:Ot}];async function Gr(e){P.debug("createContextMenu",Ua);for(let t of Ua){let r=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(r=!1);try{p.contextMenus.create({id:t.id,title:Ba(`browser.${t.id}`,e.interfaceLanguage),contexts:t.contexts,visible:r},()=>p.runtime.lastError)}catch(n){P.debug("create context menu error, it's ok!!",n,`menu id: ${t.id}`)}}}function Fa(){p.contextMenus.onClicked.addListener(e=>{if(e.menuItemId===Lr)if(He()){let r=Oe().OPTIONS_URL;p.tabs.create({url:r})}else p.runtime.openOptionsPage();else if(e.menuItemId===_r){let t=p.runtime.getURL(zt);p.tabs.create({url:t})}else if(e.menuItemId===Rr){let t=p.runtime.getURL(Xn);He()&&(t=Oe().EBOOK_BUILDER_URL),p.tabs.create({url:t})}else if(e.menuItemId===Pr)p.tabs.create({url:p.runtime.getURL(Yn)});else if(e.menuItemId===Qn){let t=p.runtime.getURL($n);He()&&(t=Oe().SUBTITLE_BUILDER_URL),p.tabs.create({url:t})}else e.menuItemId===Zn?p.tabs.create({url:"https://immersivetranslate.com/docs/donate/"}):zr({method:e.menuItemId})})}function Vr(){tt().then(e=>{e.uninstallUrl&&p.runtime.setUninstallURL&&p.runtime.setUninstallURL(e.uninstallUrl),$r(e)}).catch(e=>{P.error("create menu error",e)})}function $r(e){e?Gr(e):tt().then(t=>{Gr(t)}).catch(t=>{P.error("create menu error",t)})}function ja(){p.runtime.onInstalled.addListener(e=>{P.debug(`onInstalled reason: ${e.reason}`),P.debug(e),e.reason=="install"?(async()=>{let t="https://onboarding.immersivetranslate.com/",n=p.runtime.getURL("").startsWith("safari"),a=!1,i=!1;try{let c=await p.runtime.getPlatformInfo();n?c.os==="mac"?a=!0:c.os==="ios"&&(i=!0):c.os==="android"&&(t="https://onboarding.immersivetranslate.com/mobile/")}catch{}a?t="https://onboarding.immersivetranslate.com/mac-safari/":i&&(t="https://onboarding.immersivetranslate.com/ios/step-2/"),p.tabs.create({url:t}),Vr()})():(e.reason=="update"&&p.runtime.getManifest().version!=e.previousVersion,Vr())})}Ra();ja();Ia();p.contextMenus&&Fa();async function Fi(){p.contextMenus&&$r(),(await tt()).debug&&P.setLevel("debug")}Fi().catch(e=>{});})(); +`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};var Br="DENO",Zt="CHROME",Xt="FIREFOX";function ea(e){let t=Zt;try{let r=navigator?.userAgent||"";/firefox/i.test(r)||typeof InstallTrigger<"u"?t=Xt:/deno/i.test(r)&&(t=Br)}catch{}return e===Zt&&t===Zt||e===Xt&&t===Xt||e===Br&&t===Br}function ta(){return ea(Zt)}function ra(){return typeof Deno<"u"}function na(){return ea(Xt)}var aa={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},oa={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:aa,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:aa,query:()=>{},sendMessage:()=>{}}};var p;ra()?p=oa:p=globalThis.immersiveTranslateBrowserAPI;function Ur(e){return Array.isArray(e)?e:e?[e]:[]}function sa(e,t){let r=[],n=Object.keys(e);for(let c of n){let o=e[c];Array.isArray(o)&&r.push(c)}let a={...e};return Object.keys(t).forEach(c=>{let o=t[c];if(o!==void 0)if(!r.includes(c))a[c]=o;else if(c.startsWith("additional")){let l=Ur(o);a[c]=Array.from(new Set([...a[c],...l]))}else a[c]=Ur(o)}),a}function gi(){if(j.PROD==="1")return{};let e={};if(j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(j.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:j.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(j.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:j.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(j.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&j.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:j.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:j.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(j.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:j.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(j.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=j.DEEPL_PROXY_ENDPOINT),j.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=j.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),j.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:j.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return j.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),j.MOCK==="1"&&(e.translationService="mock"),j.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=j.IMMERSIVE_TRANSLATE_SERVICE),e}async function Lt(){let e=await p.storage.local.get(kt);if(e[kt]){let t=e[kt],r=t.tempTranslationUrlMatches||[],n=r.filter(c=>c.expiredAt>Date.now()),a=!1;n.length!==r.length&&(r=n,a=!0);let i={...t,tempTranslationUrlMatches:[...r]};return a&&await ft(i),i}else return{}}async function ft(e){await p.storage.local.set({[kt]:e})}async function tt(){let e=await p.storage.local.get($t),t={...Nr,buildinConfigUpdatedAt:j.BUILD_TIME};if(e[$t]){let m=e[$t];if(m&&m.buildinConfigUpdatedAt){let k=new Date(m.buildinConfigUpdatedAt),G=new Date(t.buildinConfigUpdatedAt);k>G&&(t=m)}}let r={};if(!Or()&&p.commands&&p.commands.getAll){let m=await p.commands.getAll();for(let k of m)k.name&&k.shortcut&&(r[k.name]=k.shortcut)}let n=hi(),a=gi(),i=await _t(),c=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},o=await Lt(),l=new Date;if(o&&o.tempTranslationUrlMatches&&o.tempTranslationUrlMatches.length>0){let m=o.tempTranslationUrlMatches.filter(k=>new Date(k.expiredAt)>l);if(m.length>0){let k=i.translationUrlPattern?i.translationUrlPattern?.matches||[]:[],G=Array.isArray(k)?k:[k],Y=Array.from(new Set(G.concat(m.map(me=>me.match))));i.translationUrlPattern={...i.translationUrlPattern,matches:Y}}}let u=Object.assign({},c,a,i);if(!u.interfaceLanguage){let m=await pi();u.interfaceLanguage=m}let d=u.interfaceLanguage==="en",T=u.targetLanguage==="en",L=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,C=["bing","google","transmart","mock"].includes(u.translationService)||!u.translationService;!d&&!T&&!L&&C?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let b=Object.assign(n,t),J=Object.keys(b),te=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let m of J){let k=m;if(k==="generalRule")typeof u[k]=="object"&&(b[k]=sa(n[k],u[k]));else if(k==="translationServices"){let G=u[k]||{},Y=t[k]||{},me=Object.keys(Y),x=Object.keys(G),S=[...new Set([...me,...x])],f={};for(let A of S)f[A]={...Y[A],...G[A]};b[k]=f}else if(typeof u[k]!="string"&&typeof u[k]!="boolean"&&typeof u[k]!="number"&&te.includes(k))u[k]&&(b[k]=Object.assign(b[k],u[k])),k==="shortcuts"&&(Or()||He()?b[k]={...b[k],...r}:b[k]={...r});else if(k==="rules"){if(Array.isArray(u[k])&&(b[k]=[...u[k],...b[k]]),j.PROD==="0"&&j.DEV_RULES){let G=JSON.parse(j.DEV_RULES);b[k]=[...G,...b[k]]}}else u[k]!==void 0&&(b[k]=u[k])}return b.donateUrl=t.donateUrl,b.minVersion=t.minVersion,b.feedbackUrl=t.feedbackUrl,b}async function _t(){return(await p.storage.sync.get("userConfig")||{}).userConfig||{}}async function bt(e){await p.storage.sync.set({userConfig:e})}var pi=async()=>{let e=["zh-CN"];try{e=await p.i18n.getAcceptLanguages()}catch(n){P.warn("get browser language error:",n)}let r=e.map(n=>ht(n)).find(n=>st[n]);return r||"en"},hi=()=>{let e={...Nr,buildinConfigUpdatedAt:j.BUILD_TIME};return{...e,targetLanguage:Yt,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function ia(e){let t=p.runtime.getURL(Kt),r=new URL(t);return(e.startsWith("http")||!na())&&r.searchParams.set("file",e),r.href}function la(e){return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}var lt=class extends Error{constructor(r,n,a){super(n);this.name=r,a&&(this.details=a)}};async function ua(e){let t;if(e&&e.retry&&e.retry>0)try{t=await dr(ca.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(r){throw r&&r.name==="RetryError"&&r.cause?r.cause:r}else t=await ca(e);return t}async function ca(e){e.body;let{url:t,responseType:r,...n}=e;r||(r="json"),n={mode:"cors",...n};let a=!0;e.fetchPolyfill&&(a=!1);let i=e.fetchPolyfill||fetch,c=12e4;if(e.timeout&&(c=e.timeout),a){let l=new AbortController,u=l.signal;setTimeout(()=>{l.abort()},c),n.signal=u}let o;try{o=await i(t,n)}catch(l){P.error("fetch error",l);let u=l.message||"";throw l.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+u,l}if(o.ok&&o.status>=200&&o.status<400){if(r==="json")return await o.json();if(r==="text")return await o.text();if(r==="raw"){let l=await o.text(),u=Object.fromEntries([...o.headers.entries()]),d=o.url;return d||(o.headers.get("X-Final-URL")?d=o.headers.get("X-Final-URL"):d=t),{body:l,headers:u,status:o.status,statusText:o.statusText,url:d}}else if(r==="stream"){let l="",u;if(o.body&&o.body instanceof ReadableStream)for await(let d of fi(o.body)){let T=new TextDecoder().decode(d);l+=T;let L;for(;(L=l.indexOf(` +`))>=0;){let C=l.slice(0,L).trim();if(l=l.slice(L+1),C.startsWith("event:")||C==="")continue;let b="";if(C.startsWith("data:")&&(b=C.slice(5).trim()),b==="[DONE]")break;let J;try{J=JSON.parse(b??"")}catch(te){P.debug("json error",te);continue}u=J}}return u}}else{let l;try{l=await o.text()}catch(T){P.error("parse response failed",T)}l&&P.error("fail response",l);let u="";l&&(u=l.slice(0,280));let d="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+o.status+": "+(o.statusText||"")+u;throw o.status===429?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${u}`:o.status===403?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${u}`:o.status===400?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${u}`:o.status===502&&(d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${u}`),new lt("fetchError",d,l)}}async function*fi(e){let t=e.getReader();try{for(;;){let{done:r,value:n}=await t.read();if(r)return;yield n}}finally{t.releaseLock()}}var da=["*://*/*","*","*://*"],ga="immersive-translate-wildcard-placeholder.com";function bi(e,t){let r=[];if(!t||(t&&!Array.isArray(t)?r=[t]:r=t,r.length===0))return null;if(r.some(c=>da.includes(c)))return e;let n=new URL(e);n.hash="",n.search="";let a=n.href,i=n.hostname;if(r&&r.length>0){let c=r.find(o=>{let l=o;if(o===i)return!0;if(da.includes(o))return!0;if(!o.includes("*")&&o.includes("://")){try{let u=new URL(o);return u.pathname==="/"&&!o.endsWith("/")?u.hostname===i:wi(a,o)}catch{}return!1}else{let u,d=o;if(o.includes("://")){let te=o.split("://");u=te[0],u==="*"&&te.length>1&&(u="*",o="https://"+te[1])}else u="*",o="https://"+o;let T=o.replace(/\*/g,ga),L;try{L=new URL(T)}catch{return P.debug("invalid match pattern",T,"raw match value:",d),!1}let C=L.hostname,b=L.pathname;b==="/"&&(d.replace("://","").includes("/")||(b="/*"));let J=Ti(u+":",ma(C),ma(b));if(J){let te=new URL(a);return te.port="",J.test(te.href)}else return!1}});if(c)return c}return null}function ma(e){return e.replaceAll(ga,"*")}function Ti(e,t,r){let n="^";return e==="*:"?n+="(http:|https:|file:)":n+=e,n+="//",t&&(e==="file:"||(t==="*"?n+="[^/]+?":(t.match(/^\*\./)&&(n+="[^/]*?",t=t.substring(2)),n+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),r?r==="*"||r==="/*"?n+="(/.*)?":r.includes("*")?(n+=r.replace(/\*/g,".*?"),n+="/?"):n+=r.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):n+="/?",n+="$",new RegExp(n)}function pa(e,t){return bi(e,t)!==null}function wi(e,t){let r=new URL(e),n=new URL(t);return r.hostname===n.hostname&&r.pathname===n.pathname&&r.protocol===n.protocol&&r.port===n.port}var Jt=class{constructor(t){this.accessToken=t}async listAll(){let t=[],r="";do{let{nextPageToken:n,files:a}=await this.list(r).catch(i=>{throw i});t.push(...a),r=n||""}while(r);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){return P.error("get config error, use default",r),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,r=Vt){let n=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:r,parents:["appDataFolder"],mimeType:"application/json"},n)}updateConfig(t,r){let n=new Blob([JSON.stringify(r,null,2)],{type:"application/json"});return this.updateContent(t,n)}async upload(t,r){let n=new FormData;n.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),n.append("file",r);let a=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:n});return a.ok?await a.json():Promise.reject(a.text())}async list(t,r){let n=new URL("https://www.googleapis.com/drive/v3/files");t&&n.searchParams.append("pageToken",t),r&&n.searchParams.append("q",r),n.searchParams.append("spaces","appDataFolder"),n.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),n.searchParams.append("pageSize","100"),n.searchParams.append("orderBy","createdTime desc");try{return P.debug("list api:",n.toString(),this.accessToken),await(await fetch(n.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(a){throw P.error("fetch google ip error",a),a}}async updateContent(t,r){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:r})).text()}};function ha(e,t){let r=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${Gt}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(r.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function fa(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function ba(e,t,r,n,a,i,c){P.debug(`autoSyncStrategy accessToken: ${e}`);let o=new Jt(e);try{let l=(await o.findByName(Vt)).files;P.debug("files",l);let u=l[0]?.id,d=null;if(u&&(d=await o.getConfig(u).then(T=>({fileId:u,config:T}))),d){let{config:T,fileId:L}=d,C=T.updatedAt?new Date(T.updatedAt):new Date(0),b=t.updatedAt?new Date(t.updatedAt):new Date(0);if(P.debug("remoteUpdatedAt",C,"localUpdatedAt",b),C>b)P.debug("remote is newer, update local config",T),r(T),i&&i(!0);else if(C.getTime()===b.getTime())P.debug("remote and local are the same, do nothing"),i&&i(!1);else if(C(await rt.removeAuthInfo(),Dr()&&globalThis.location.reload(),n))}static async getAuthInfo(){let t=await p.storage.local.get(gt);if(t[gt])return t[gt]}static async removeAuthInfo(){return await p.storage.local.remove(gt)}static setAuthInfo(t){return p.storage.local.set({[gt]:t})}async auth(t=!1){let r=await rt.getAuthInfo();if(P.debug(this.CLASSNAME,"token from cache:",r),r&&r.access_token&&await Ta(r.access_token).then(i=>!0).catch(i=>!1))return Promise.resolve(r);let n=ha(this._state,this._redirectUrl);return P.debug(this.CLASSNAME,"auth url: "+n),Dr()?this.userscriptAuthWorkflow(n,t):this.extensionAuthWorkflow(n).then(a=>(rt.setAuthInfo(a),a))}async userscriptAuthWorkflow(t,r){return r&&await p.storage.local.set({[Xn]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let r,n=!1;return new Promise((a,i)=>{let c=()=>{p.tabs.onUpdated.removeListener(o),p.tabs.onRemoved.removeListener(l)},o=(L,C,b)=>{if(P.debug(this.CLASSNAME,"create tab onUpdated: "+b.url),r===L){let J=new URL(b.url||""),te=fa(b.url);J.pathname.startsWith("/auth-done")&&te?.access_token&&(P.debug(this.CLASSNAME,"auth done: "+b.url),a({access_token:te.access_token}),n=!0,p.tabs.remove(L),c())}},l=(L,C)=>{P.debug(this.CLASSNAME,"create tab onRemoved: "+L),(L===r||!n)&&(c(),i(new Error("auth failed")))},u=Math.min(500,screen.availWidth),d=Math.min(650,screen.availHeight),T;p.windows===void 0?T=p.tabs.create({url:t}).then(L=>{r=L.id}):T=p.windows.create({url:t,type:"popup",width:u,height:d,left:Math.round((screen.width-u)/2),top:Math.round((screen.height-d)/2)}).then(L=>{r=L.tabs[0].id}),T.then(()=>{p.tabs.onUpdated.addListener(o),p.tabs.onRemoved.addListener(l)}).catch(L=>{P.debug(this.CLASSNAME,"create tab failed: "+L),i(L)})})}};var xi="https://www.googleapis.com/oauth2/v3/tokeninfo",vi=Gt,Ci=Oe().REDIRECT_URL;function Ta(e){if(!e)throw"Authorization failure";let t=`${xi}?access_token=${e}`,r=new Request(t,{method:"GET"});function n(a){return new Promise((i,c)=>{a.status!=200&&c("Token validation error"),a.json().then(o=>{o.aud&&o.aud===vi?i(e):c("Token validation error")})})}return fetch(r).then(n)}function wa(e,t=!1){let r=Ci;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let a=window.location.hostname,i=window.location.port;r=`${window.location.protocol}//${a}${i?`:${i}`:""}/auth-done/`}return new rt(e,r).auth(t)}async function ya(){}function xa(e,t){let r=new Map;for(let i of t)r.set(i.header.toLowerCase(),i);let n=[],a=e.filter(i=>{let c=r.get(i.name.toLowerCase());if(c){if(c.operation==="remove")return!1;if(c.operation==="set")return!1}return!0});for(let i of t)i.operation==="set"&&n.push({name:i.header,value:i.value||""});return a.concat(n)}var Qt=[{id:1,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://httpstat.us/429"},{header:"origin",operation:"set",value:"https://httpstat.us/429"},{header:"DNT",operation:"set",value:"1"}]},condition:{urlFilter:"https://httpstat.us/429",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:2,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"https://www.deepl.com"},{header:"DNT",operation:"set",value:"1"},{header:"cookie",operation:"remove"}]},condition:{urlFilter:"https://www2.deepl.com/jsonrpc*",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:200,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"chrome-extension://cofdbpoegempjloogbagkncekinflcnj"},{header:"DNT",operation:"set",value:"1"}]},condition:{urlFilter:"https://api.deepl.com/jsonrpc*",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:201,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"chrome-extension://cofdbpoegempjloogbagkncekinflcnj"}]},condition:{urlFilter:"https://w.deepl.com/oidc/token",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:3,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"origin",operation:"set",value:"chrome-extension://lkjkfecdnfjopaeaibboihfkmhdjmanm"}]},condition:{urlFilter:"https://transmart.qq.com/api/imt",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:4,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"origin",operation:"set",value:"chrome-extension://lkjkfecdnfjopaeaibboihfkmhdjmanm"}]},condition:{urlFilter:"https://translate.volcengine.com/crx/translate/v1/",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}}];var Pt=new Map,Rt=class{constructor(t,r=!1){this.logger=new Mt,r&&this.logger.setLevel("debug"),this.fromType=t,Pt.has(t)||(Pt.set(t,new Map),p.runtime.onMessage.addListener((n,a,i)=>{let c=n.from,o=n.to,l,u,d;a.tab&&a.tab.id&&(l=a.tab.id,c=`${c}:${l}`,u=a.tab.url,d=a.tab.active),this.logger.debug(`${n.to} received message [${n.payload.method}] from ${n.from}`,n.payload.data?n.payload.data:" ");let T=jr(o),{type:L,name:C}=T;if(L!==t)return!1;let b=jr(c),te=Pt.get(L).get(C);if(!te)return this.logger.debug(`no message handler for ${L}:${o}, but it's ok`),!1;let{messageHandler:m,sync:k}=te,G={type:t,name:b.name,id:l,url:u,active:d};if(k){try{let Y=m(n.payload,G);i({ok:!0,data:Y})}catch(Y){i({ok:!1,errorName:Y.name,errorMessage:Y.message,errorDetails:Y.details})}return!1}else return m(n.payload,G).then(Y=>{i({ok:!0,data:Y})}).catch(Y=>{i({ok:!1,errorName:Y.name,errorMessage:Y.message,errorDetails:Y.details})}),!0}))}getConnection(t,r,n){let a=!1;n&&n.sync&&(a=!0);let i=this.fromType,c=Pt.get(i);if(c.has(t))return c.get(t).connectionInstance;{let o=new Fr(`${i}:${t}`,this.logger);return Pt.get(i).set(t,{messageHandler:r,sync:a,connectionInstance:o}),o}}},Fr=class{constructor(t,r){this.from=t,this.logger=r}async sendMessage(t,r){let n=jr(t),{type:a,id:i}=n;if(a!=="content_script"){let c={to:t,from:this.from,payload:r};this.logger.debug(`${c.from} send message [${c.payload.method}] to ${c.to}`,c.payload.data?c.payload.data:" ");try{let o=await p.runtime.sendMessage(c);return va(c,o,this.logger)}catch(o){if(a==="popup"){let l=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(r)}`;return this.logger.debug(l,r,t,o),Promise.resolve({message:l})}else throw o}}else{let c={from:this.from,to:t,payload:r};this.logger.debug(`${c.from} send message [${c.payload.method}] to ${c.to}`,c.payload.data?c.payload.data:" ");let o=await p.tabs.sendMessage(i,c);return va(c,o,this.logger)}}};function va(e,t,r){if(t){if(t.ok)return r.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new lt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new lt("noResponse","Unknown error")}function jr(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let r={type:t[0],name:t[1]};if(t[0]==="content_script"){let n=parseInt(t[2]);if(!isNaN(n))r.id=n;else throw new Error("tab id not a valid number")}return r}function nt(e,t){var r=(e&65535)+(t&65535),n=(e>>16)+(t>>16)+(r>>16);return n<<16|r&65535}function Ai(e,t){return e<>>32-t}function tr(e,t,r,n,a,i){return nt(Ai(nt(nt(t,e),nt(n,i)),a),r)}function Ae(e,t,r,n,a,i,c){return tr(t&r|~t&n,e,t,a,i,c)}function ke(e,t,r,n,a,i,c){return tr(t&n|r&~n,e,t,a,i,c)}function Ee(e,t,r,n,a,i,c){return tr(t^r^n,e,t,a,i,c)}function Me(e,t,r,n,a,i,c){return tr(r^(t|~n),e,t,a,i,c)}function er(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var r,n,a,i,c,o=1732584193,l=-271733879,u=-1732584194,d=271733878;for(r=0;r>5]>>>t%32&255);return r}function Wr(e){var t,r=[];for(r[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(n=er(n,e.length*8)),r=0;r<16;r+=1)a[r]=n[r]^909522486,i[r]=n[r]^1549556828;return c=er(a.concat(Wr(t)),512+t.length*8),Ca(er(i.concat(c),512+128))}function Sa(e){var t="0123456789abcdef",r="",n,a;for(a=0;a>>4&15)+t.charAt(n&15);return r}function Hr(e){return unescape(encodeURIComponent(e))}function Aa(e){return ki(Hr(e))}function Mi(e){return Sa(Aa(e))}function ka(e,t){return Ei(Hr(e),Hr(t))}function Li(e,t){return Sa(ka(e,t))}function Ea(e,t,r){return t?r?ka(t,e):Li(t,e):r?Aa(e):Mi(e)}function qr(e){if(Math.abs(e)<1024)return e+" Byte";let r=["KB","MB","GB","TB","PB","EB","ZB","YB"],n=-1;do e/=1024,++n;while(Math.abs(e)>=1024&&n{let a=e,i=1,c=indexedDB.open(a,i);c.onsuccess=o=>{r(c.result)},c.onerror=o=>{n()},c.onupgradeneeded=o=>{let l=c.result,u=t||"cache";l.createObjectStore(u,{keyPath:"key"})}})}async function Ma(e){let t=`${he}-${e.service}@${e.from}->${e.to}`;return await Pi(t,e)}async function La(e){let t=Ea(e.originalText),r=`${he}-${e.service}@${e.from}->${e.to}`;return await _i(r,t)}async function _i(e,t){let r=await It(e);return await new Promise((n,a)=>{if(!r)return a();let i="cache",o=r.transaction([i],"readonly").objectStore(i).get(t);o.onsuccess=l=>{r.close();let u=o.result;n(u)},o.onerror=l=>{r.close(),a()}})}async function Pi(e,t){let r=await It(e);return(await _a()).includes(e)||await Ri(e),await new Promise(a=>{if(!r)return a(!1);let i="cache",o=r.transaction([i],"readwrite").objectStore(i).put(t);o.onsuccess=l=>{r.close(),a(!0)},o.onerror=l=>{r.close(),a(!1)}})}async function Ri(e){let t="cache_list",r=await It(he+"-cacheList",t),a=r.transaction([t],"readwrite").objectStore(t).put({key:e});a.onsuccess=i=>{r.close(),Tt.push(e)},a.onerror=i=>{r.close()}}async function _a(){if(Tt&&Tt.length>0)return Tt;let e=await It(he+"-cacheList","cache_list");return Tt=await new Promise(t=>{let r="cache_list",a=e.transaction([r],"readonly").objectStore(r).getAllKeys();a.onsuccess=i=>{e.close(),t(a.result)},a.onerror=i=>{e.close(),t([])}}),Tt}async function Pa(){try{let e=[];(await _a()).forEach(n=>{e.push(Ii(n))});let r=await Promise.all(e);return qr(r.reduce((n,a)=>n+a,0))}catch{return qr(0)}}async function Ii(e){let t=await It(e),n=[...t.objectStoreNames].reduce((c,o)=>{let l=Oi(t,o);return c.push(l),c},[]),a=await Promise.all(n);return t.close(),a.reduce((c,o)=>c+o,0)}async function Oi(e,t){return await new Promise((r,n)=>{if(e==null)return n();let a=0,i=e.transaction([t]).objectStore(t).openCursor();i.onsuccess=c=>{let o=i.result;if(o){let l=o.value,u=JSON.stringify(l);a+=u.length,o.continue()}else r(a)},i.onerror=c=>n("error in "+t+": "+c)})}var rr,Di=async function(e,t){let{method:r,data:n}=e;if(P.debug("background received message",r,n||" "),r==="mock")await lr(150);else{if(r==="queryParagraphCache")return La(n);if(r==="setParagraphCache")return Ma(n);if(r==="calculateSize")return Pa();if(r==="fetch")return ua(n);if(r==="getConfig")return tt();if(r==="getLocalConfig")return Lt();if(r==="openOptionsPage")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i})}else{let a=p.runtime.getURL("options.html"),i=n&&n.pageRoute?n.pageRoute:"";i=i||"",p.tabs.create({url:a+i})}else if(r==="openAboutPage")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i+"#about"})}else p.tabs.create({url:p.runtime.getURL("options.html#about")});else if(r=="openSearchEnhancement")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i+"#advanced"})}else p.tabs.create({url:p.runtime.getURL("options.html#advanced")});else if(r==="openEbookViewerPage")p.tabs.create({url:p.runtime.getURL("ebook/index.html")});else if(r==="openSubtitleBuilderPage"){let a=p.runtime.getURL("ebook/subtitle/index.html");He()&&(a=Oe().SUBTITLE_BUILDER_URL),p.tabs.create({url:a})}else if(r==="openEbookBuilderPage"){let a=p.runtime.getURL("ebook/make/index.html");He()&&(a=Oe().EBOOK_BUILDER_URL),p.tabs.create({url:a})}else if(r==="openHtmlViewerPage"){let a=p.runtime.getURL("html/index.html");p.tabs.create({url:a})}else if(r==="openPdfViewerPage"){let a=p.runtime.getURL("pdf/index.html");p.tabs.create({url:a})}else{if(r==="setLocalConfig")return ft(n);if(r=="getUserConfig")return _t();if(r=="setUserConfig")return bt(n);if(r==="detectLanguage"){let{text:a,minLength:i}=n;if(!i&&i!==0&&(i=50),a.length<=i)return"auto";if(p.i18n&&p.i18n.detectLanguage)try{let c=await p.i18n.detectLanguage(a);return c.languages.length>0?ht(c.languages[0].language):"auto"}catch(c){return P.debug("detect language error",c),"auto"}else return"auto"}else if(r==="detectTabLanguage")try{let a=await p.tabs.detectLanguage(t.id);return ht(a)}catch(a){return P.debug("detect tab language error, use auto ",a),"auto"}else if(r==="autoSyncLatestConfig"){try{await ya()}catch(a){P.debug("auto sync latest config error",a)}return""}}}};function Ra(){zr();let e=p.runtime.getManifest();if(e.manifest_version>2,e.manifest_version===2&&p.webRequest&&p.webRequest.onBeforeSendHeaders){let t=Qt.map(n=>n.condition.urlFilter),r=Qt.reduce((n,a)=>(a.condition.resourceTypes.forEach(i=>{n.includes(i)||n.push(i)}),n),[]);p.webRequest.onBeforeSendHeaders.addListener(function(n){if(!(n.originUrl&&n.originUrl.startsWith("http"))&&n.originUrl&&n.requestHeaders)for(let a=0;a{if(P.debug(`received command: ${e}`),["toggleTranslatePage"].includes(e)){let t=await p.tabs.query({active:!0,currentWindow:!0});if(t.length===0||typeof t[0].id>"u")return;let n=t[0].url;if(la(n)){p.tabs.create({url:ia(n)});return}}await Kr({method:e})})}async function Kr(e){let r=(await p.tabs.query({currentWindow:!0,active:!0}))[0].id;zr().sendMessage(`content_script:main:${r}`,e).catch(a=>{P.error("send content message request failed",e,a)})}function Ni(e,t){let r=e;return t&&Object.keys(t).forEach(n=>{let a=t[n],i=Bi(n);if(typeof a=="object"||i){let c=a;i&&typeof c=="string"&&(c={tag:"a",href:c,target:"_blank"});let o=`<${n}>`,l=r.indexOf(o);if(l!==-1){let u=c.tag||"a",d=r.indexOf(``);if(d!==-1){let T=r.substring(l+o.length,d),L=Object.keys(c).filter(C=>C!=="tag").map(C=>`${C}="${c[C]}"`).join(" ");r=r.replace(`${o}${T}`,`<${u} ${L}>${T}`)}}}else{let c=new RegExp("{"+n+"}","gm");r=r.replace(c,a.toString())}}),r}function Oa(e,t,r){let n=e[t];if(!n)return r;let a=r.split("."),i="";do{i+=a.shift();let c=n[i];c!==void 0&&(typeof c=="object"||!a.length)?(n=c,i=""):a.length?i+=".":n=r}while(a.length);return n}function Da(e,t,r,n,a){if(!e.hasOwnProperty(r))return t;let i=Oa(e,r,t);return i===t&&r!==n&&(i=Oa(e,n,t)),Ni(i,a)}function Bi(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}var Na={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},Ui={...st,"zh-CN":{...Na["zh-CN"],...st["zh-CN"]},"zh-TW":{...Na["zh-TW"],...st["zh-TW"]}};function Ba(e,t,r){return Da(Ui,e,t,Yt,r)}var Ot=ta()?["action"]:["browser_action","page_action"],Ua=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...Ot]},{id:Lr,contexts:Ot},{id:Pr,contexts:Ot},{id:Rr,contexts:Ot},{id:_r,contexts:Ot}];async function Gr(e){P.debug("createContextMenu",Ua);for(let t of Ua){let r=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(r=!1);try{p.contextMenus.create({id:t.id,title:Ba(`browser.${t.id}`,e.interfaceLanguage),contexts:t.contexts,visible:r},()=>p.runtime.lastError)}catch(n){P.debug("create context menu error, it's ok!!",n,`menu id: ${t.id}`)}}}function Fa(){p.contextMenus.onClicked.addListener(e=>{if(e.menuItemId===Lr)if(He()){let r=Oe().OPTIONS_URL;p.tabs.create({url:r})}else p.runtime.openOptionsPage();else if(e.menuItemId===_r){let t=p.runtime.getURL(Kt);p.tabs.create({url:t})}else if(e.menuItemId===Rr){let t=p.runtime.getURL(Zn);He()&&(t=Oe().EBOOK_BUILDER_URL),p.tabs.create({url:t})}else if(e.menuItemId===Pr)p.tabs.create({url:p.runtime.getURL(Yn)});else if(e.menuItemId===Qn){let t=p.runtime.getURL($n);He()&&(t=Oe().SUBTITLE_BUILDER_URL),p.tabs.create({url:t})}else e.menuItemId===Jn?p.tabs.create({url:"https://immersivetranslate.com/docs/donate/"}):Kr({method:e.menuItemId})})}function Vr(){tt().then(e=>{e.uninstallUrl&&p.runtime.setUninstallURL&&p.runtime.setUninstallURL(e.uninstallUrl),$r(e)}).catch(e=>{P.error("create menu error",e)})}function $r(e){e?Gr(e):tt().then(t=>{Gr(t)}).catch(t=>{P.error("create menu error",t)})}function ja(){p.runtime.onInstalled.addListener(e=>{P.debug(`onInstalled reason: ${e.reason}`),P.debug(e),e.reason=="install"?(async()=>{let t="https://onboarding.immersivetranslate.com/",n=p.runtime.getURL("").startsWith("safari"),a=!1,i=!1;try{let c=await p.runtime.getPlatformInfo();n?c.os==="mac"?a=!0:c.os==="ios"&&(i=!0):c.os==="android"&&(t="https://onboarding.immersivetranslate.com/mobile/")}catch{}a?t="https://onboarding.immersivetranslate.com/mac-safari/":i&&(t="https://onboarding.immersivetranslate.com/ios/step-2/"),p.tabs.create({url:t}),Vr()})():(e.reason=="update"&&p.runtime.getManifest().version!=e.previousVersion,Vr())})}Ra();ja();Ia();p.contextMenus&&Fa();async function Fi(){p.contextMenus&&$r(),(await tt()).debug&&P.setLevel("debug")}Fi().catch(e=>{});})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/dist/chrome/content_script.js b/dist/chrome/content_script.js index 02c7753ec..78f3afe46 100644 --- a/dist/chrome/content_script.js +++ b/dist/chrome/content_script.js @@ -1,4 +1,4 @@ -(()=>{var Wg=Object.defineProperty;var qg=(e,t)=>{for(var n in t)Wg(e,n,{get:t[n],enumerable:!0})};var rl=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var a0=(e,t,n)=>(rl(e,t,"read from private field"),n?n.call(e):t.get(e)),ol=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},il=(e,t,n,a)=>(rl(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T16:25:26.171Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Jg=Object.defineProperty;var Yg=(e,t)=>{for(var n in t)Jg(e,n,{get:t[n],enumerable:!0})};var ll=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var ui=(e,t,n)=>(ll(e,t,"read from private field"),n?n.call(e):t.get(e)),cl=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},dl=(e,t,n,a)=>(ll(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,11 +4067,11 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var Kg=Object.create,r0=Object.defineProperty,Gg=Object.getOwnPropertyDescriptor,ll=Object.getOwnPropertyNames,Vg=Object.getPrototypeOf,Jg=Object.prototype.hasOwnProperty,Yg=(e,t)=>function(){return t||(0,e[ll(e)[0]])((t={exports:{}}).exports,t),t.exports},Xg=(e,t)=>{for(var n in t)r0(e,n,{get:t[n],enumerable:!0})},u0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of ll(t))!Jg.call(e,u)&&u!==n&&r0(e,u,{get:()=>t[u],enumerable:!(a=Gg(t,u))||a.enumerable});return e},Zg=(e,t,n)=>(u0(e,t,"default"),n&&u0(n,t,"default")),cl=(e,t,n)=>(n=e!=null?Kg(Vg(e)):{},u0(t||!e||!e.__esModule?r0(n,"default",{value:e,enumerable:!0}):n,e)),dl=Yg({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/.pnpm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var u={exports:{}};a(u),n.browser=u.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",u=r=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(S,D=void 0){super(D),this.createItem=S}get(S){return this.has(S)||this.set(S,this.createItem(S)),super.get(S)}}let s=y=>y&&typeof y=="object"&&typeof y.then=="function",l=(y,S)=>(...D)=>{r.runtime.lastError?y.reject(new Error(r.runtime.lastError.message)):S.singleCallbackArg||D.length<=1&&S.singleCallbackArg!==!1?y.resolve(D[0]):y.resolve(D)},c=y=>y==1?"argument":"arguments",d=(y,S)=>function(x,...F){if(F.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${c(S.maxArgs)} for ${y}(), got ${F.length}`);return new Promise((O,w)=>{if(S.fallbackToNoCallback)try{x[y](...F,l({resolve:O,reject:w},S))}catch{x[y](...F),S.fallbackToNoCallback=!1,S.noCallback=!0,O()}else S.noCallback?(x[y](...F),O()):x[y](...F,l({resolve:O,reject:w},S))})},m=(y,S,D)=>new Proxy(S,{apply(x,F,O){return D.call(F,y,...O)}}),g=Function.call.bind(Object.prototype.hasOwnProperty),f=(y,S={},D={})=>{let x=Object.create(null),F={has(w,B){return B in y||B in x},get(w,B,J){if(B in x)return x[B];if(!(B in y))return;let N=y[B];if(typeof N=="function")if(typeof S[B]=="function")N=m(y,y[B],S[B]);else if(g(D,B)){let ge=d(B,D[B]);N=m(y,y[B],ge)}else N=N.bind(y);else if(typeof N=="object"&&N!==null&&(g(S,B)||g(D,B)))N=f(N,S[B],D[B]);else if(g(D,"*"))N=f(N,S[B],D["*"]);else return Object.defineProperty(x,B,{configurable:!0,enumerable:!0,get(){return y[B]},set(ge){y[B]=ge}}),N;return x[B]=N,N},set(w,B,J,N){return B in x?x[B]=J:y[B]=J,!0},defineProperty(w,B,J){return Reflect.defineProperty(x,B,J)},deleteProperty(w,B){return Reflect.deleteProperty(x,B)}},O=Object.create(y);return new Proxy(O,F)},v=y=>({addListener(S,D,...x){S.addListener(y.get(D),...x)},hasListener(S,D){return S.hasListener(y.get(D))},removeListener(S,D){S.removeListener(y.get(D))}}),T=new i(y=>typeof y!="function"?y:function(D){let x=f(D,{},{getContent:{minArgs:0,maxArgs:0}});y(x)}),p=new i(y=>typeof y!="function"?y:function(D,x,F){let O=!1,w,B=new Promise(pe=>{w=function(Ne){O=!0,pe(Ne)}}),J;try{J=y(D,x,w)}catch(pe){J=Promise.reject(pe)}let N=J!==!0&&s(J);if(J!==!0&&!N&&!O)return!1;let ge=pe=>{pe.then(Ne=>{F(Ne)},Ne=>{let be;Ne&&(Ne instanceof Error||typeof Ne.message=="string")?be=Ne.message:be="An unexpected error occurred",F({__mozWebExtensionPolyfillReject__:!0,message:be})}).catch(Ne=>{})};return ge(N?J:B),!0}),C=({reject:y,resolve:S},D)=>{r.runtime.lastError?r.runtime.lastError.message===a?S():y(new Error(r.runtime.lastError.message)):D&&D.__mozWebExtensionPolyfillReject__?y(new Error(D.message)):S(D)},M=(y,S,D,...x)=>{if(x.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${c(S.maxArgs)} for ${y}(), got ${x.length}`);return new Promise((F,O)=>{let w=C.bind(null,{resolve:F,reject:O});x.push(w),D.sendMessage(...x)})},L={devtools:{network:{onRequestFinished:v(T)}},runtime:{onMessage:v(p),onMessageExternal:v(p),sendMessage:M.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:M.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},A={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":A},services:{"*":A},websites:{"*":A}},f(r,L,o)};n.exports=u(chrome)}else n.exports=globalThis.browser})}}),ml={};Xg(ml,{default:()=>Nu});var Qg=cl(dl());Zg(ml,cl(dl()));var{default:sl,...ep}=Qg,Nu=sl!==void 0?sl:ep;globalThis.immersiveTranslateBrowserAPI=Nu;function lt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var de=lt();function ne(){return de.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function gl(){return de.HAS_CSP_ERROR=="1"}function Rt(){if(de.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function pl(){return typeof Deno<"u"}var ub=lt().PROD==="1",ca=lt().PROD!=="1";function fl(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function da(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var o0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function Iu(e,t){let n=da(),a=setTimeout(()=>n.reject(new o0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Xa(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(s),r(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var hl=class{#e=0;#t=[];#n=[];#a=da();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tSp,bgBlue:()=>Pp,bgBrightBlack:()=>Rp,bgBrightBlue:()=>jp,bgBrightCyan:()=>Hp,bgBrightGreen:()=>Np,bgBrightMagenta:()=>zp,bgBrightRed:()=>Op,bgBrightWhite:()=>Up,bgBrightYellow:()=>Ip,bgCyan:()=>_p,bgGreen:()=>Lp,bgMagenta:()=>Mp,bgRed:()=>Dp,bgRgb24:()=>Kp,bgRgb8:()=>qp,bgWhite:()=>Bp,bgYellow:()=>Fp,black:()=>dp,blue:()=>fp,bold:()=>up,brightBlack:()=>yl,brightBlue:()=>wp,brightCyan:()=>kp,brightGreen:()=>xp,brightMagenta:()=>vp,brightRed:()=>Tp,brightWhite:()=>Ap,brightYellow:()=>Cp,cyan:()=>bp,dim:()=>rp,getColorEnabled:()=>np,gray:()=>yp,green:()=>gp,hidden:()=>lp,inverse:()=>sp,italic:()=>op,magenta:()=>hp,red:()=>mp,reset:()=>ap,rgb24:()=>$p,rgb8:()=>Wp,setColorEnabled:()=>tp,strikethrough:()=>cp,stripColor:()=>Vp,underline:()=>ip,white:()=>Ep,yellow:()=>pp});var{Deno:bl}=globalThis,El=typeof bl?.noColor=="boolean"?bl.noColor:!0,i0=!El;function tp(e){El||(i0=e)}function np(){return i0}function re(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function oe(e,t){return i0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function ap(e){return oe(e,re([0],0))}function up(e){return oe(e,re([1],22))}function rp(e){return oe(e,re([2],22))}function op(e){return oe(e,re([3],23))}function ip(e){return oe(e,re([4],24))}function sp(e){return oe(e,re([7],27))}function lp(e){return oe(e,re([8],28))}function cp(e){return oe(e,re([9],29))}function dp(e){return oe(e,re([30],39))}function mp(e){return oe(e,re([31],39))}function gp(e){return oe(e,re([32],39))}function pp(e){return oe(e,re([33],39))}function fp(e){return oe(e,re([34],39))}function hp(e){return oe(e,re([35],39))}function bp(e){return oe(e,re([36],39))}function Ep(e){return oe(e,re([37],39))}function yp(e){return yl(e)}function yl(e){return oe(e,re([90],39))}function Tp(e){return oe(e,re([91],39))}function xp(e){return oe(e,re([92],39))}function Cp(e){return oe(e,re([93],39))}function wp(e){return oe(e,re([94],39))}function vp(e){return oe(e,re([95],39))}function kp(e){return oe(e,re([96],39))}function Ap(e){return oe(e,re([97],39))}function Sp(e){return oe(e,re([40],49))}function Dp(e){return oe(e,re([41],49))}function Lp(e){return oe(e,re([42],49))}function Fp(e){return oe(e,re([43],49))}function Pp(e){return oe(e,re([44],49))}function Mp(e){return oe(e,re([45],49))}function _p(e){return oe(e,re([46],49))}function Bp(e){return oe(e,re([47],49))}function Rp(e){return oe(e,re([100],49))}function Op(e){return oe(e,re([101],49))}function Np(e){return oe(e,re([102],49))}function Ip(e){return oe(e,re([103],49))}function jp(e){return oe(e,re([104],49))}function zp(e){return oe(e,re([105],49))}function Hp(e){return oe(e,re([106],49))}function Up(e){return oe(e,re([107],49))}function Cn(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function Wp(e,t){return oe(e,re([38,5,Cn(t)],39))}function qp(e,t){return oe(e,re([48,5,Cn(t)],49))}function $p(e,t){return typeof t=="number"?oe(e,re([38,2,t>>16&255,t>>8&255,t&255],39)):oe(e,re([38,2,Cn(t.r),Cn(t.g),Cn(t.b)],39))}function Kp(e,t){return typeof t=="number"?oe(e,re([48,2,t>>16&255,t>>8&255,t&255],49)):oe(e,re([48,2,Cn(t.r),Cn(t.g),Cn(t.b)],49))}var Gp=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function Vp(e){return e.replace(Gp,"")}var s0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},Jp={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function l0(e,t){let n={...Jp,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new s0(u,n.maxAttempts)}var $b=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var ju=globalThis||(typeof window<"u"?window:self),Xp=Object.create,d0=Object.defineProperty,Zp=Object.getOwnPropertyDescriptor,Qp=Object.getOwnPropertyNames,ef=Object.getPrototypeOf,tf=Object.prototype.hasOwnProperty,nf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),af=(e,t)=>{for(var n in t)d0(e,n,{get:t[n],enumerable:!0})},c0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Qp(t))!tf.call(e,u)&&u!==n&&d0(e,u,{get:()=>t[u],enumerable:!(a=Zp(t,u))||a.enumerable});return e},uf=(e,t,n)=>(c0(e,t,"default"),n&&c0(n,t,"default")),xl=(e,t,n)=>(n=e!=null?Xp(ef(e)):{},c0(t||!e||!e.__esModule?d0(n,"default",{value:e,enumerable:!0}):n,e)),Cl=nf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof ju=="object"&&ju&&ju.Object===Object&&ju,d=typeof self=="object"&&self&&self.Object===Object&&self,m=c||d||Function("return this")(),g=Object.prototype,f=g.toString,v=Math.max,T=Math.min,p=function(){return m.Date.now()};function C(D,x,F){var O,w,B,J,N,ge,pe=0,Ne=!1,be=!1,vt=!0;if(typeof D!="function")throw new TypeError(n);x=S(x)||0,L(F)&&(Ne=!!F.leading,be="maxWait"in F,B=be?v(S(F.maxWait)||0,x):B,vt="trailing"in F?!!F.trailing:vt);function ye(Z){var ue=O,ce=w;return O=w=void 0,pe=Z,J=D.apply(ce,ue),J}function b(Z){return pe=Z,N=setTimeout(le,x),Ne?ye(Z):J}function I(Z){var ue=Z-ge,ce=Z-pe,Y=x-ue;return be?T(Y,B-ce):Y}function G(Z){var ue=Z-ge,ce=Z-pe;return ge===void 0||ue>=x||ue<0||be&&ce>=B}function le(){var Z=p();if(G(Z))return V(Z);N=setTimeout(le,I(Z))}function V(Z){return N=void 0,vt&&O?ye(Z):(O=w=void 0,J)}function Ae(){N!==void 0&&clearTimeout(N),pe=0,O=ge=w=N=void 0}function Q(){return N===void 0?J:V(p())}function Te(){var Z=p(),ue=G(Z);if(O=arguments,w=this,ge=Z,ue){if(N===void 0)return b(ge);if(be)return N=setTimeout(le,x),ye(ge)}return N===void 0&&(N=setTimeout(le,x)),J}return Te.cancel=Ae,Te.flush=Q,Te}function M(D,x,F){var O=!0,w=!0;if(typeof D!="function")throw new TypeError(n);return L(F)&&(O="leading"in F?!!F.leading:O,w="trailing"in F?!!F.trailing:w),C(D,x,{leading:O,maxWait:x,trailing:w})}function L(D){var x=typeof D;return!!D&&(x=="object"||x=="function")}function A(D){return!!D&&typeof D=="object"}function y(D){return typeof D=="symbol"||A(D)&&f.call(D)==u}function S(D){if(typeof D=="number")return D;if(y(D))return a;if(L(D)){var x=typeof D.valueOf=="function"?D.valueOf():D;D=L(x)?x+"":x}if(typeof D!="string")return D===0?D:+D;D=D.replace(r,"");var F=i.test(D);return F||s.test(D)?l(D.slice(2),F?2:8):o.test(D)?a:+D}t.exports=M}),wl={};af(wl,{default:()=>ct});var rf=xl(Cl());uf(wl,xl(Cl()));var{default:Tl,...of}=rf,ct=Tl!==void 0?Tl:of;var sf=Object.create,g0=Object.defineProperty,lf=Object.getOwnPropertyDescriptor,cf=Object.getOwnPropertyNames,df=Object.getPrototypeOf,mf=Object.prototype.hasOwnProperty,gf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),pf=(e,t)=>{for(var n in t)g0(e,n,{get:t[n],enumerable:!0})},m0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of cf(t))!mf.call(e,u)&&u!==n&&g0(e,u,{get:()=>t[u],enumerable:!(a=lf(t,u))||a.enumerable});return e},ff=(e,t,n)=>(m0(e,t,"default"),n&&m0(n,t,"default")),kl=(e,t,n)=>(n=e!=null?sf(df(e)):{},m0(t||!e||!e.__esModule?g0(n,"default",{value:e,enumerable:!0}):n,e)),Al=gf((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){l(a)==="object"&&l(r)==="object"?r.exports=d():(i=[],o=d,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(r.exports=s))})(void 0,function(){return function(c){function d(g){if(m[g])return m[g].exports;var f=m[g]={i:g,l:!1,exports:{}};return c[g].call(f.exports,f,f.exports,d),f.l=!0,f.exports}var m={};return d.m=c,d.c=m,d.i=function(g){return g},d.d=function(g,f,v){d.o(g,f)||Object.defineProperty(g,f,{configurable:!1,enumerable:!0,get:v})},d.n=function(g){var f=g&&g.__esModule?function(){return g.default}:function(){return g};return d.d(f,"a",f),f},d.o=function(g,f){return Object.prototype.hasOwnProperty.call(g,f)},d.p="",d(d.s=0)}([function(c,d,m){function g(b,I){var G={};for(var le in b)I.indexOf(le)>=0||Object.prototype.hasOwnProperty.call(b,le)&&(G[le]=b[le]);return G}Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},v=Object.assign||function(b){for(var I=1;I'+le+"",ce.onclick=function(){return w(Y,ue)},ce.listener=function(z){(x(z)||F(z))&&N()},O(ce,ue),Ae&&Ae<1&&(Ae=1),!Te&&Ae&&L(Ae).then(function(){return w(Y,ue)})},pe=d.force=function(b,I){var G=b.type,le=G===void 0?5:G,V=b.text,Ae=b.buttonText,Q=Ae===void 0?"OK":Ae,Te=b.callback,Z=b.position,ue=Z===void 0?p.positions.force||ue.top:Z;A(),N();var ce=document.createElement("div"),Y=y();ce.id=Y;var z=document.createElement("div");z.classList.add(p.classes.textbox),z.classList.add(p.classes.backgroundInfo),z.innerHTML='
'+V+"
";var ee=document.createElement("div");ee.classList.add(p.classes.button),ee.classList.add(S[le]),ee.innerHTML=Q,ee.onclick=function(){w(Y,ue),J(),Te?Te():I&&I()},ce.appendChild(z),ce.appendChild(ee),ce.listener=function(Le){x(Le)&&ee.click()},O(ce,ue),B()},Ne=d.confirm=function(b,I,G){var le=b.text,V=b.submitText,Ae=V===void 0?"Yes":V,Q=b.cancelText,Te=Q===void 0?"Cancel":Q,Z=b.submitCallback,ue=b.cancelCallback,ce=b.position,Y=ce===void 0?p.positions.confirm||Y.top:ce;A(),N();var z=document.createElement("div"),ee=y();z.id=ee;var Le=document.createElement("div");Le.classList.add(p.classes.textbox),Le.classList.add(p.classes.backgroundInfo),Le.innerHTML='
'+le+"
";var Se=document.createElement("div");Se.classList.add(p.classes.button),Se.classList.add(p.classes.elementHalf),Se.classList.add(p.classes.backgroundSuccess),Se.innerHTML=Ae,Se.onclick=function(){w(ee,Y),J(),Z?Z():I&&I()};var te=document.createElement("div");te.classList.add(p.classes.button),te.classList.add(p.classes.elementHalf),te.classList.add(p.classes.backgroundError),te.innerHTML=Te,te.onclick=function(){w(ee,Y),J(),ue?ue():G&&G()},z.appendChild(Le),z.appendChild(Se),z.appendChild(te),z.listener=function(He){x(He)?Se.click():F(He)&&te.click()},O(z,Y),B(z,Y)},be=function(b,I,G){var le=b.text,V=b.submitText,Ae=V===void 0?"Submit":V,Q=b.cancelText,Te=Q===void 0?"Cancel":Q,Z=b.submitCallback,ue=b.cancelCallback,ce=b.position,Y=ce===void 0?p.positions.input||Y.top:ce,z=g(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);A(),N();var ee=document.createElement("div"),Le=y();ee.id=Le;var Se=document.createElement("div");Se.classList.add(p.classes.textbox),Se.classList.add(p.classes.backgroundInfo),Se.innerHTML='
'+le+"
";var te=document.createElement("input");te.classList.add(p.classes.inputField),te.setAttribute("autocapitalize",z.autocapitalize||"none"),te.setAttribute("autocomplete",z.autocomplete||"off"),te.setAttribute("autocorrect",z.autocorrect||"off"),te.setAttribute("autofocus",z.autofocus||"true"),te.setAttribute("inputmode",z.inputmode||"verbatim"),te.setAttribute("max",z.max||""),te.setAttribute("maxlength",z.maxlength||""),te.setAttribute("min",z.min||""),te.setAttribute("minlength",z.minlength||""),te.setAttribute("placeholder",z.placeholder||""),te.setAttribute("spellcheck",z.spellcheck||"default"),te.setAttribute("step",z.step||"any"),te.setAttribute("type",z.type||"text"),te.value=z.value||"",z.allowed&&(te.oninput=function(){var Me=void 0;if(Array.isArray(z.allowed)){for(var _e="",Be=z.allowed,kt=0;kt'+G+"",ue.appendChild(Y),Q.forEach(function(ee,Le){var Se=ee.type,te=Se===void 0?1:Se,He=ee.text,tt=ee.handler,Me=document.createElement("div");Me.classList.add(S[te]),Me.classList.add(p.classes.button),Me.classList.add(p.classes.selectChoice);var _e=Q[Le+1];_e&&!_e.type&&(_e.type=1),_e&&_e.type===te&&Me.classList.add(p.classes.selectChoiceRepeated),Me.innerHTML=He,Me.onclick=function(){w(ce,Z),J(),tt()},ue.appendChild(Me)});var z=document.createElement("div");z.classList.add(p.classes.backgroundNeutral),z.classList.add(p.classes.button),z.innerHTML=V,z.onclick=function(){w(ce,Z),J(),Ae?Ae():I&&I()},ue.appendChild(z),ue.listener=function(ee){F(ee)&&z.click()},O(ue,Z),B(ue,Z)},ye=d.date=function(b,I,G){var le=b.value,V=le===void 0?new Date:le,Ae=b.submitText,Q=Ae===void 0?"OK":Ae,Te=b.cancelText,Z=Te===void 0?"Cancel":Te,ue=b.submitCallback,ce=b.cancelCallback,Y=b.position,z=Y===void 0?p.positions.date||z.top:Y;A(),N();var ee="▾",Le=document.createElement("div"),Se=document.createElement("div"),te=document.createElement("div"),He=function(xe){Le.innerHTML=p.dateMonths[xe.getMonth()],Se.innerHTML=xe.getDate(),te.innerHTML=xe.getFullYear()},tt=function(xe){var we=new Date(V.getFullYear(),V.getMonth()+1,0).getDate(),Pt=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Pt)>we&&(Pt=we.toString()),xe.target.textContent=Pt,Number(Pt)<1&&(Pt="1"),V.setDate(Number(Pt))},Me=function(xe){var we=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);xe.target.textContent=we,V.setFullYear(Number(we))},_e=function(xe){He(V)},Be=function(xe){var we=new Date(V.getFullYear(),V.getMonth()+xe+1,0).getDate();V.getDate()>we&&V.setDate(we),V.setMonth(V.getMonth()+xe),He(V)},kt=function(xe){V.setDate(V.getDate()+xe),He(V)},xn=function(xe){var we=V.getFullYear()+xe;we<0?V.setFullYear(0):V.setFullYear(V.getFullYear()+xe),He(V)},Ue=document.createElement("div"),en=y();Ue.id=en;var Kt=document.createElement("div");Kt.classList.add(p.classes.backgroundInfo);var nt=document.createElement("div");nt.classList.add(p.classes.dateSelectorInner);var Ft=document.createElement("div");Ft.classList.add(p.classes.button),Ft.classList.add(p.classes.elementThird),Ft.classList.add(p.classes.dateSelectorUp),Ft.innerHTML=ee;var _=document.createElement("div");_.classList.add(p.classes.button),_.classList.add(p.classes.elementThird),_.classList.add(p.classes.dateSelectorUp),_.innerHTML=ee;var X=document.createElement("div");X.classList.add(p.classes.button),X.classList.add(p.classes.elementThird),X.classList.add(p.classes.dateSelectorUp),X.innerHTML=ee,Le.classList.add(p.classes.element),Le.classList.add(p.classes.elementThird),Le.innerHTML=p.dateMonths[V.getMonth()],Se.classList.add(p.classes.element),Se.classList.add(p.classes.elementThird),Se.setAttribute("contentEditable",!0),Se.addEventListener("input",tt),Se.addEventListener("blur",_e),Se.innerHTML=V.getDate(),te.classList.add(p.classes.element),te.classList.add(p.classes.elementThird),te.setAttribute("contentEditable",!0),te.addEventListener("input",Me),te.addEventListener("blur",_e),te.innerHTML=V.getFullYear();var Ce=document.createElement("div");Ce.classList.add(p.classes.button),Ce.classList.add(p.classes.elementThird),Ce.innerHTML=ee;var fe=document.createElement("div");fe.classList.add(p.classes.button),fe.classList.add(p.classes.elementThird),fe.innerHTML=ee;var Ee=document.createElement("div");Ee.classList.add(p.classes.button),Ee.classList.add(p.classes.elementThird),Ee.innerHTML=ee,Ft.onclick=function(){return Be(1)},_.onclick=function(){return kt(1)},X.onclick=function(){return xn(1)},Ce.onclick=function(){return Be(-1)},fe.onclick=function(){return kt(-1)},Ee.onclick=function(){return xn(-1)};var Ie=document.createElement("div");Ie.classList.add(p.classes.button),Ie.classList.add(p.classes.elementHalf),Ie.classList.add(p.classes.backgroundSuccess),Ie.innerHTML=Q,Ie.onclick=function(){w(en,z),J(),ue?ue(V):I&&I(V)};var ot=document.createElement("div");ot.classList.add(p.classes.button),ot.classList.add(p.classes.elementHalf),ot.classList.add(p.classes.backgroundError),ot.innerHTML=Z,ot.onclick=function(){w(en,z),J(),ce?ce(V):G&&G(V)},nt.appendChild(Ft),nt.appendChild(_),nt.appendChild(X),nt.appendChild(Le),nt.appendChild(Se),nt.appendChild(te),nt.appendChild(Ce),nt.appendChild(fe),nt.appendChild(Ee),Kt.appendChild(nt),Ue.appendChild(Kt),Ue.appendChild(Ie),Ue.appendChild(ot),Ue.listener=function(xe){x(xe)?Ie.click():F(xe)&&ot.click()},O(Ue,z),B(Ue,z)};d.default={alert:ge,force:pe,confirm:Ne,input:be,select:vt,date:ye,setOptions:C,hideAlerts:N}}])})}).call(a,u(0)(n))}])})}),Sl={};pf(Sl,{default:()=>zu});var hf=kl(Al());ff(Sl,kl(Al()));var{default:vl,...bf}=hf,zu=vl!==void 0?vl:bf;var p0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function f0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Ml(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function Ef(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Pe.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Pe.splice(0,Pe.length),(t===93||t===224)&&(t=91),t in it){it[t]=!1;for(var a in tn)tn[a]===t&&(je[a]=!1)}}function Sf(e){if(typeof e>"u")Object.keys(Ve).forEach(function(o){return delete Ve[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&h0(o)});else if(typeof e=="object")e.key&&h0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Ml(tn,s):[];Ve[d]=Ve[d].filter(function(g){var f=a?g.method===a:!0;return!(f&&g.scope===n&&Ef(g.mods,m))})}})};function Ll(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(!it[r]&&t.mods.indexOf(+r)>-1||it[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!it[16]&&!it[18]&&!it[17]&&!it[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Fl(e,t){var n=Ve["*"],a=e.keyCode||e.which||e.charCode;if(je.filter.call(this,e)){if((a===93||a===224)&&(a=91),Pe.indexOf(a)===-1&&a!==229&&Pe.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var v=E0[f];e[f]&&Pe.indexOf(v)===-1?Pe.push(v):!e[f]&&Pe.indexOf(v)>-1?Pe.splice(Pe.indexOf(v),1):f==="metaKey"&&e[f]&&Pe.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Pe=Pe.slice(Pe.indexOf(v))))}),a in it){it[a]=!0;for(var u in tn)tn[u]===a&&(je[u]=!0);if(!n)return}for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(it[r]=e[E0[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Pe.indexOf(17)===-1&&Pe.push(17),Pe.indexOf(18)===-1&&Pe.push(18),it[17]=!0,it[18]=!0);var o=eu();if(n)for(var i=0;i-1}function je(e,t,n){Pe=[];var a=_l(e),u=[],r="all",o=document,i=0,s=!1,l=!0,c="+",d=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(d=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=Ml(tn,e)),e=e[e.length-1],e=e==="*"?"*":Uu(e),e in Ve||(Ve[e]=[]),Ve[e].push({keyup:s,keydown:l,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!Df(o)&&window&&(Rl.push(o),f0(o,"keydown",function(m){Fl(m,o)},d),Dl||(Dl=!0,f0(window,"focus",function(){Pe=[]},d)),f0(o,"keyup",function(m){Fl(m,o),Af(m)},d))}function Lf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ve).forEach(function(n){var a=Ve[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var b0={getPressedKeyString:Cf,setScope:Ol,getScope:eu,deleteScope:kf,getPressedKeyCodes:xf,isPressed:vf,filter:wf,trigger:Lf,unbind:Sf,keyMap:Qa,modifier:tn,modifierMap:E0};for(Hu in b0)Object.prototype.hasOwnProperty.call(b0,Hu)&&(je[Hu]=b0[Hu]);var Hu;typeof document<"u"&&(Pl=window.hotkeys,je.noConflict=function(e){return e&&window.hotkeys===je&&(window.hotkeys=Pl),je},window.hotkeys=je);var Pl;var Ff=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Pf=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Ff:{reset:()=>{},stop:()=>{}}}},y0=new Pf,Mf="poegempjloogba",_f="ension://",Bf="me-";function tu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function Ul(e){return e?e.PROD==="1":!0}function Wl(e){return e?e.MOCK==="1":!1}function ql(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var Rf="rome-ext";function Of(e,t){return t?e+(t-e%t):e}function Nf(e,t){return e.split(t).length-1}function If(e){let t=Date.now(),n=1;for(let a of e)n+=Nf(a,"i");return Of(t,n)}function jf(e,t){return Math.floor(Math.random()*(t-e+1))+e}var zf="extension",Hf="chro";function Uf(){return jf(1e6,1e8)}var Nl="BrowserExt";function Wf(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var Il="DeepL",jl="ension",qf="ch"+Rf+_f+"cofdb"+Mf+"gkncekinflcnj";function $l(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",qf),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${Il}${Nl}${jl}/${r||"1.1.1"} ${l}`)}else i.append("user-agent",`${Il}${Nl}${jl}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function $f(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:If(n)},id:Uf()},o=$l({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${Hf+Bf+zf},${t}`,headers:o,body:Wf(r),method:"POST"}}function Kf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Wn={},qn={};async function zl(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=tu(u);i||(i=tu(r)[1]);let s={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(s=await Wu(e,t));let[l,c]=tu(s.refreshTokenExpiresAt);i=c,i||(i=tu(s.refreshTokenChecksAt)[1]);let d=s.refreshToken;if(Wn[d])return new Promise((m,g)=>{Wn[d].push((f,v)=>{f?g(f):m(v)})});Wn[d]=[];try{let m=await Gf(d,t.onFetch),g={state:{...n,...s,...m},shouldUpdateRefreshToken:i};return Wn[d].forEach(f=>{f(null,g)}),delete Wn[d],g}catch(m){throw Wn[d].forEach(g=>{g(m)}),delete Wn[d],m}}async function Wu(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(qn[e])return new Promise((u,r)=>{qn[e].push((o,i)=>{o?r(o):u(i)})});try{qn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return qn[e].forEach(d=>{d(null,c)}),delete qn[e],c}catch(u){throw qn[e].forEach(r=>{r(u)}),delete qn[e],u}}async function Gf(e,t){if(!e)throw new Error("refreshToken is required");let n=Ul(),a=Wl();if(!n&&!a){await ql(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:$l({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=Kf(r.access_token);if(r.expires_in){let i=new Date,s=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function Hl(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(Vf(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...$f({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},s=Ul(),l=Wl();if(!s&&!l)return await ql(50),{translations:u.map(g=>({text:"mock: "+g,detected_source_language:"EN"}))};let c=await n(i.url,i),d=JSON.parse(c.body),m=[];if(d.result&&d.result.texts)m=d.result.texts.map(g=>({text:g.text,detected_source_language:d.result.lang}));else throw new Error("No response from deepl api");return{translations:m}}function Vf(e){let t=0;for(let n of e)t+=n.length;return t}async function Jf(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await Yf(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return y0.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){y0.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function Yf(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var qu=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>Jf({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await Hl(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await Hl(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw y0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=tu(e);if(t)n&&zl(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await zl(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var Xf={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},Gl={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},We={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},bt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},wn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},P=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=P.getVersionPrecision(e),u=P.getVersionPrecision(t),r=Math.max(a,u),o=0,i=P.map([e,t],s=>{let l=r-P.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return P.map(c.split("."),d=>new Array(20-d.length).join("0")+d).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return Xf[e]}static getBrowserTypeByAlias(e){return Gl[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,Zf=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=P.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=P.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=P.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=P.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=P.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=P.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=P.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=P.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=P.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=P.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=P.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=P.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=P.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=P.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=P.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=P.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=P.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=P.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=P.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=P.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=P.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=P.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=P.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=P.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=P.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=P.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=P.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:P.getFirstMatch(a,e),version:P.getSecondMatch(a,e)}}}],Qf=Zf,e2=[{test:[/Roku\/DVP/],describe(e){let t=P.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:bt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=P.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:bt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=P.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=P.getWindowsVersionName(t);return{name:bt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:bt.iOS},n=P.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=P.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=P.getMacOSVersionName(t),a={name:bt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=P.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:bt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=P.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=P.getAndroidVersionName(t),a={name:bt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=P.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:bt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=P.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||P.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||P.getFirstMatch(/\bbb(\d+)/i,e);return{name:bt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=P.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:bt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=P.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:bt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:bt.Linux}}},{test:[/CrOS/],describe(){return{name:bt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=P.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:bt.PlayStation4,version:t}}}],t2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=P.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:We.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:We.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:We.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:We.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:We.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=P.getFirstMatch(/(ipod|iphone)/i,e);return{type:We.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:We.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:We.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:We.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:We.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:We.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:We.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:We.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:We.tv}}}],n2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:wn.Blink};let t=P.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:wn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:wn.Trident},n=P.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:wn.Presto},n=P.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:wn.Gecko},n=P.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:wn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:wn.WebKit},n=P.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],a2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=P.find(Qf,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=P.find(e2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=P.find(t2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=P.find(n2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return P.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=P.find(r,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=P.find(r,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(u>0){let r=Object.keys(a),o=P.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=P.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(P.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Kl=a2,u2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Kl(e,t)}static parse(e){return new Kl(e).getResult()}static get BROWSER_MAP(){return Gl}static get ENGINE_MAP(){return wn}static get OS_MAP(){return bt}static get PLATFORMS_MAP(){return We}},$u=u2;var{entries:t4,setPrototypeOf:Vl,isFrozen:r2,getPrototypeOf:o2,getOwnPropertyDescriptor:i2}=Object,{freeze:Et,seal:Vt,create:s2}=Object,{apply:k0,construct:A0}=typeof Reflect<"u"&&Reflect;k0||(k0=function(e,t,n){return e.apply(t,n)});Et||(Et=function(e){return e});Vt||(Vt=function(e){return e});A0||(A0=function(e,t){return new e(...t)});var l2=Nt(Array.prototype.forEach),Jl=Nt(Array.prototype.pop),nu=Nt(Array.prototype.push),Vu=Nt(String.prototype.toLowerCase),T0=Nt(String.prototype.toString),c2=Nt(String.prototype.match),Gt=Nt(String.prototype.replace),d2=Nt(String.prototype.indexOf),m2=Nt(String.prototype.trim),Mt=Nt(RegExp.prototype.test),au=g2(TypeError);function Nt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),E2=Vt(/\${[\w\W]*}/gm),y2=Vt(/^data-[\-\w.\u00B7-\uFFFF]/),T2=Vt(/^aria-[\-\w]+$/),n4=Vt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),x2=Vt(/^(?:\w+script|data):/i),C2=Vt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),a4=Vt(/^html$/i),e4=Object.freeze({__proto__:null,MUSTACHE_EXPR:h2,ERB_EXPR:b2,TMPLIT_EXPR:E2,DATA_ATTR:y2,ARIA_ATTR:T2,IS_ALLOWED_URI:n4,IS_SCRIPT_OR_DATA:x2,ATTR_WHITESPACE:C2,DOCTYPE_NAME:a4}),w2=()=>typeof window>"u"?null:window,v2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function u4(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:w2(),t=h=>u4(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:m,trustedTypes:g}=e,f=s.prototype,v=Ku(f,"cloneNode"),T=Ku(f,"nextSibling"),p=Ku(f,"childNodes"),C=Ku(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let M,L="",{implementation:A,createNodeIterator:y,createDocumentFragment:S,getElementsByTagName:D}=u,{importNode:x}=n,F={};t.isSupported=typeof t4=="function"&&typeof C=="function"&&A&&A.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:O,ERB_EXPR:w,TMPLIT_EXPR:B,DATA_ATTR:J,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:ge,ATTR_WHITESPACE:pe}=e4,{IS_ALLOWED_URI:Ne}=e4,be=null,vt=he({},[...Yl,...x0,...C0,...w0,...Xl]),ye=null,b=he({},[...Zl,...v0,...Ql,...Gu]),I=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),G=null,le=null,V=!0,Ae=!0,Q=!1,Te=!0,Z=!1,ue=!1,ce=!1,Y=!1,z=!1,ee=!1,Le=!1,Se=!0,te=!1,He="user-content-",tt=!0,Me=!1,_e={},Be=null,kt=he({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),xn=null,Ue=he({},["audio","video","img","source","image","track"]),en=null,Kt=he({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),nt="http://www.w3.org/1998/Math/MathML",Ft="http://www.w3.org/2000/svg",_="http://www.w3.org/1999/xhtml",X=_,Ce=!1,fe=null,Ee=he({},[nt,Ft,_],T0),Ie,ot=["application/xhtml+xml","text/html"],xe="text/html",we,Pt=null,Ig=u.createElement("form"),Js=function(h){return h instanceof RegExp||h instanceof Function},e0=function(h){if(!(Pt&&Pt===h)){if((!h||typeof h!="object")&&(h={}),h=ma(h),Ie=ot.indexOf(h.PARSER_MEDIA_TYPE)===-1?Ie=xe:Ie=h.PARSER_MEDIA_TYPE,we=Ie==="application/xhtml+xml"?T0:Vu,be="ALLOWED_TAGS"in h?he({},h.ALLOWED_TAGS,we):vt,ye="ALLOWED_ATTR"in h?he({},h.ALLOWED_ATTR,we):b,fe="ALLOWED_NAMESPACES"in h?he({},h.ALLOWED_NAMESPACES,T0):Ee,en="ADD_URI_SAFE_ATTR"in h?he(ma(Kt),h.ADD_URI_SAFE_ATTR,we):Kt,xn="ADD_DATA_URI_TAGS"in h?he(ma(Ue),h.ADD_DATA_URI_TAGS,we):Ue,Be="FORBID_CONTENTS"in h?he({},h.FORBID_CONTENTS,we):kt,G="FORBID_TAGS"in h?he({},h.FORBID_TAGS,we):{},le="FORBID_ATTR"in h?he({},h.FORBID_ATTR,we):{},_e="USE_PROFILES"in h?h.USE_PROFILES:!1,V=h.ALLOW_ARIA_ATTR!==!1,Ae=h.ALLOW_DATA_ATTR!==!1,Q=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Te=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Z=h.SAFE_FOR_TEMPLATES||!1,ue=h.WHOLE_DOCUMENT||!1,z=h.RETURN_DOM||!1,ee=h.RETURN_DOM_FRAGMENT||!1,Le=h.RETURN_TRUSTED_TYPE||!1,Y=h.FORCE_BODY||!1,Se=h.SANITIZE_DOM!==!1,te=h.SANITIZE_NAMED_PROPS||!1,tt=h.KEEP_CONTENT!==!1,Me=h.IN_PLACE||!1,Ne=h.ALLOWED_URI_REGEXP||n4,X=h.NAMESPACE||_,I=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&Js(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(I.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&Js(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(I.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(I.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Z&&(Ae=!1),ee&&(z=!0),_e&&(be=he({},[...Xl]),ye=[],_e.html===!0&&(he(be,Yl),he(ye,Zl)),_e.svg===!0&&(he(be,x0),he(ye,v0),he(ye,Gu)),_e.svgFilters===!0&&(he(be,C0),he(ye,v0),he(ye,Gu)),_e.mathMl===!0&&(he(be,w0),he(ye,Ql),he(ye,Gu))),h.ADD_TAGS&&(be===vt&&(be=ma(be)),he(be,h.ADD_TAGS,we)),h.ADD_ATTR&&(ye===b&&(ye=ma(ye)),he(ye,h.ADD_ATTR,we)),h.ADD_URI_SAFE_ATTR&&he(en,h.ADD_URI_SAFE_ATTR,we),h.FORBID_CONTENTS&&(Be===kt&&(Be=ma(Be)),he(Be,h.FORBID_CONTENTS,we)),tt&&(be["#text"]=!0),ue&&he(be,["html","head","body"]),be.table&&(he(be,["tbody"]),delete G.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw au('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw au('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');M=h.TRUSTED_TYPES_POLICY,L=M.createHTML("")}else M===void 0&&(M=v2(g,a)),M!==null&&typeof L=="string"&&(L=M.createHTML(""));Et&&Et(h),Pt=h}},Ys=he({},["mi","mo","mn","ms","mtext"]),Xs=he({},["foreignobject","desc","title","annotation-xml"]),jg=he({},["title","style","font","a","script"]),Ru=he({},x0);he(Ru,C0),he(Ru,p2);let t0=he({},w0);he(t0,f2);let zg=function(h){let W=C(h);(!W||!W.tagName)&&(W={namespaceURI:X,tagName:"template"});let R=Vu(h.tagName),ve=Vu(W.tagName);return fe[h.namespaceURI]?h.namespaceURI===Ft?W.namespaceURI===_?R==="svg":W.namespaceURI===nt?R==="svg"&&(ve==="annotation-xml"||Ys[ve]):!!Ru[R]:h.namespaceURI===nt?W.namespaceURI===_?R==="math":W.namespaceURI===Ft?R==="math"&&Xs[ve]:!!t0[R]:h.namespaceURI===_?W.namespaceURI===Ft&&!Xs[ve]||W.namespaceURI===nt&&!Ys[ve]?!1:!t0[R]&&(jg[R]||!Ru[R]):!!(Ie==="application/xhtml+xml"&&fe[h.namespaceURI]):!1},sa=function(h){nu(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},n0=function(h,W){try{nu(t.removed,{attribute:W.getAttributeNode(h),from:W})}catch{nu(t.removed,{attribute:null,from:W})}if(W.removeAttribute(h),h==="is"&&!ye[h])if(z||ee)try{sa(W)}catch{}else try{W.setAttribute(h,"")}catch{}},Zs=function(h){let W,R;if(Y)h=""+h;else{let ht=c2(h,/^[\r\n\t ]+/);R=ht&&ht[0]}Ie==="application/xhtml+xml"&&X===_&&(h=''+h+"");let ve=M?M.createHTML(h):h;if(X===_)try{W=new m().parseFromString(ve,Ie)}catch{}if(!W||!W.documentElement){W=A.createDocument(X,"template",null);try{W.documentElement.innerHTML=Ce?L:ve}catch{}}let Xe=W.body||W.documentElement;return h&&R&&Xe.insertBefore(u.createTextNode(R),Xe.childNodes[0]||null),X===_?D.call(W,ue?"html":"body")[0]:ue?W.documentElement:Xe},Qs=function(h){return y.call(h.ownerDocument||h,h,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Hg=function(h){return h instanceof d&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Ou=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},mn=function(h,W,R){F[h]&&l2(F[h],ve=>{ve.call(t,W,R,Pt)})},el=function(h){let W;if(mn("beforeSanitizeElements",h,null),Hg(h))return sa(h),!0;let R=we(h.nodeName);if(mn("uponSanitizeElement",h,{tagName:R,allowedTags:be}),h.hasChildNodes()&&!Ou(h.firstElementChild)&&(!Ou(h.content)||!Ou(h.content.firstElementChild))&&Mt(/<[/\w]/g,h.innerHTML)&&Mt(/<[/\w]/g,h.textContent))return sa(h),!0;if(!be[R]||G[R]){if(!G[R]&&nl(R)&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,R)||I.tagNameCheck instanceof Function&&I.tagNameCheck(R)))return!1;if(tt&&!Be[R]){let ve=C(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&ve){let ht=Xe.length;for(let At=ht-1;At>=0;--At)ve.insertBefore(v(Xe[At],!0),T(h))}}return sa(h),!0}return h instanceof s&&!zg(h)||(R==="noscript"||R==="noembed")&&Mt(/<\/no(script|embed)/i,h.innerHTML)?(sa(h),!0):(Z&&h.nodeType===3&&(W=h.textContent,W=Gt(W,O," "),W=Gt(W,w," "),W=Gt(W,B," "),h.textContent!==W&&(nu(t.removed,{element:h.cloneNode()}),h.textContent=W)),mn("afterSanitizeElements",h,null),!1)},tl=function(h,W,R){if(Se&&(W==="id"||W==="name")&&(R in u||R in Ig))return!1;if(!(Ae&&!le[W]&&Mt(J,W))&&!(V&&Mt(N,W))){if(!ye[W]||le[W]){if(!(nl(h)&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,h)||I.tagNameCheck instanceof Function&&I.tagNameCheck(h))&&(I.attributeNameCheck instanceof RegExp&&Mt(I.attributeNameCheck,W)||I.attributeNameCheck instanceof Function&&I.attributeNameCheck(W))||W==="is"&&I.allowCustomizedBuiltInElements&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,R)||I.tagNameCheck instanceof Function&&I.tagNameCheck(R))))return!1}else if(!en[W]&&!Mt(Ne,Gt(R,pe,""))&&!((W==="src"||W==="xlink:href"||W==="href")&&h!=="script"&&d2(R,"data:")===0&&xn[h])&&!(Q&&!Mt(ge,Gt(R,pe,"")))&&R)return!1}return!0},nl=function(h){return h.indexOf("-")>0},al=function(h){let W,R,ve,Xe;mn("beforeSanitizeAttributes",h,null);let{attributes:ht}=h;if(!ht)return;let At={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye};for(Xe=ht.length;Xe--;){W=ht[Xe];let{name:at,namespaceURI:la}=W;if(R=at==="value"?W.value:m2(W.value),ve=we(at),At.attrName=ve,At.attrValue=R,At.keepAttr=!0,At.forceKeepAttr=void 0,mn("uponSanitizeAttribute",h,At),R=At.attrValue,At.forceKeepAttr||(n0(at,h),!At.keepAttr))continue;if(!Te&&Mt(/\/>/i,R)){n0(at,h);continue}Z&&(R=Gt(R,O," "),R=Gt(R,w," "),R=Gt(R,B," "));let ul=we(h.nodeName);if(tl(ul,ve,R)){if(te&&(ve==="id"||ve==="name")&&(n0(at,h),R=He+R),M&&typeof g=="object"&&typeof g.getAttributeType=="function"&&!la)switch(g.getAttributeType(ul,ve)){case"TrustedHTML":{R=M.createHTML(R);break}case"TrustedScriptURL":{R=M.createScriptURL(R);break}}try{la?h.setAttributeNS(la,at,R):h.setAttribute(at,R),Jl(t.removed)}catch{}}}mn("afterSanitizeAttributes",h,null)},Ug=function h(W){let R,ve=Qs(W);for(mn("beforeSanitizeShadowDOM",W,null);R=ve.nextNode();)mn("uponSanitizeShadowNode",R,null),!el(R)&&(R.content instanceof r&&h(R.content),al(R));mn("afterSanitizeShadowDOM",W,null)};return t.sanitize=function(h){let W=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},R,ve,Xe,ht;if(Ce=!h,Ce&&(h=""),typeof h!="string"&&!Ou(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw au("dirty is not a string, aborting")}else throw au("toString is not a function");if(!t.isSupported)return h;if(ce||e0(W),t.removed=[],typeof h=="string"&&(Me=!1),Me){if(h.nodeName){let la=we(h.nodeName);if(!be[la]||G[la])throw au("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)R=Zs(""),ve=R.ownerDocument.importNode(h,!0),ve.nodeType===1&&ve.nodeName==="BODY"||ve.nodeName==="HTML"?R=ve:R.appendChild(ve);else{if(!z&&!Z&&!ue&&h.indexOf("<")===-1)return M&&Le?M.createHTML(h):h;if(R=Zs(h),!R)return z?null:Le?L:""}R&&Y&&sa(R.firstChild);let At=Qs(Me?h:R);for(;Xe=At.nextNode();)el(Xe)||(Xe.content instanceof r&&Ug(Xe.content),al(Xe));if(Me)return h;if(z){if(ee)for(ht=S.call(R.ownerDocument);R.firstChild;)ht.appendChild(R.firstChild);else ht=R;return(ye.shadowroot||ye.shadowrootmod)&&(ht=x.call(n,ht,!0)),ht}let at=ue?R.outerHTML:R.innerHTML;return ue&&be["!doctype"]&&R.ownerDocument&&R.ownerDocument.doctype&&R.ownerDocument.doctype.name&&Mt(a4,R.ownerDocument.doctype.name)&&(at=" -`+at),Z&&(at=Gt(at,O," "),at=Gt(at,w," "),at=Gt(at,B," ")),M&&Le?M.createHTML(at):at},t.setConfig=function(h){e0(h),ce=!0},t.clearConfig=function(){Pt=null,ce=!1},t.isValidAttribute=function(h,W,R){Pt||e0({});let ve=we(h),Xe=we(W);return tl(ve,Xe,R)},t.addHook=function(h,W){typeof W=="function"&&(F[h]=F[h]||[],nu(F[h],W))},t.removeHook=function(h){if(F[h])return Jl(F[h])},t.removeHooks=function(h){F[h]&&(F[h]=[])},t.removeAllHooks=function(){F={}},t}var De=u4();var HE=zu.alert;var r4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var o4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var i4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var D2=[{code:"zh-CN",messages:r4},{code:"zh-TW",messages:o4},{code:"en",messages:i4}],gn="immersiveTranslateDeeplGlobalState",Ju="immersiveTranslateBingGlobalState",It={};for(let e of D2)It[e.code]=e.messages;var $n="Immersive Translate",H="immersive-translate";var ie="immersiveTranslate";var iy=ie+"GoogleAccessToken",sy=ie+"AuthFlow";var ly=ie+"AuthState",Yu=ie+"IframeMessage",cy=ie+"WaitForRateLimit",Xu=ie+"DocumentMessageAsk",yt=ie+"DocumentMessageTellThirdParty",l4=ie+"DocumentMessageThirdPartyTell",Zu=ie+"DocumentMessageHandler",L2=`${ie}Container`,c4=`${ie}SpecifiedContainer`,vn="buildinConfig",uu="localConfig",S0="openOptionsPage",D0="openAboutPage";var L0="openEbookViewer",F0="openEbookBuilder";var Qu=`${ie}PageTranslatedStatus`,dy=`${ie}PageUrlChanged`,kn=`${ie}ReceiveCommand`,d4=ie+"LastUseMouseHoverTime",m4=ie+"LastUseInputTime",pn=ie+"LastUseManualTranslatePageTime",my=`${ie}PopupReceiveMessage`,F2="immersivetranslate.com",P2="config.immersivetranslate.com",gy=`https://${F2}/`,ru=`https://${P2}/default_config.json`,py=`${ie}Mark`,ou="immersiveTranslateEffect",St=`${ie}Root`,fy=`data-${H}-effect`,nn=`data-${H}-translation-element-mark`,g4=`${ie}TranslationElementMark`,hy=`${ie}TranslatedMark`,by=`${ie}ParagraphId`,p4=`${ie}LoadingId`,P0=`data-${H}-loading-id`,f4=`${ie}ErrorId`,er=`data-${H}-error-id`,M2=`${ie}AtomicBlockMark`,h4=`${ie}ExcludeMark`,Ey=`data-${H}-exclude-mark`,_2=`${ie}StayOriginalMark`,yy=`${ie}PreWhitespaceMark`,tr=`${ie}InlineMark`,b4=`${ie}BlockMark`,Ty=`${ie}Left`,xy=`${ie}Right`,Cy=`${ie}Width`,wy=`${ie}Height`,vy=`${ie}Top`,ky=`${ie}FontSize`,iu="lastRunTime",Ay=`${ie}GlobalStyleMark`,nr=["@","#"],ar=" --- ",E4=` -`,jt=`${H}-target-wrapper`,Sy=`${H}-pdf-target-container`,y4=`${H}-target-inner`,Dy=`${H}-source-wrapper`,M0=`${H}-target-translation-block-wrapper`,Ly=`${H}-root-translation-theme`,ga=`${ie}RootTranslationTheme`,T4=`${H}-target-translation-vertical-block-wrapper`,x4=`${H}-target-translation-pdf-block-wrapper`,C4=`${H}-target-translation-pre-whitespace`,_0=`${H}-target-translation-inline-wrapper`;var w4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},zt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],v4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},k4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},A4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var S4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var ur="zh-CN";var s4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"chrome_zip"};var Zg=Object.create,oi=Object.defineProperty,Qg=Object.getOwnPropertyDescriptor,gl=Object.getOwnPropertyNames,ep=Object.getPrototypeOf,tp=Object.prototype.hasOwnProperty,np=(e,t)=>function(){return t||(0,e[gl(e)[0]])((t={exports:{}}).exports,t),t.exports},ap=(e,t)=>{for(var n in t)oi(e,n,{get:t[n],enumerable:!0})},ri=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of gl(t))!tp.call(e,u)&&u!==n&&oi(e,u,{get:()=>t[u],enumerable:!(a=Qg(t,u))||a.enumerable});return e},up=(e,t,n)=>(ri(e,t,"default"),n&&ri(n,t,"default")),pl=(e,t,n)=>(n=e!=null?Zg(ep(e)):{},ri(t||!e||!e.__esModule?oi(n,"default",{value:e,enumerable:!0}):n,e)),fl=np({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var u={exports:{}};a(u),n.browser=u.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",u=r=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(S,D=void 0){super(D),this.createItem=S}get(S){return this.has(S)||this.set(S,this.createItem(S)),super.get(S)}}let s=y=>y&&typeof y=="object"&&typeof y.then=="function",l=(y,S)=>(...D)=>{r.runtime.lastError?y.reject(new Error(r.runtime.lastError.message)):S.singleCallbackArg||D.length<=1&&S.singleCallbackArg!==!1?y.resolve(D[0]):y.resolve(D)},c=y=>y==1?"argument":"arguments",d=(y,S)=>function(x,...F){if(F.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${c(S.maxArgs)} for ${y}(), got ${F.length}`);return new Promise((O,k)=>{if(S.fallbackToNoCallback)try{x[y](...F,l({resolve:O,reject:k},S))}catch{x[y](...F),S.fallbackToNoCallback=!1,S.noCallback=!0,O()}else S.noCallback?(x[y](...F),O()):x[y](...F,l({resolve:O,reject:k},S))})},m=(y,S,D)=>new Proxy(S,{apply(x,F,O){return D.call(F,y,...O)}}),g=Function.call.bind(Object.prototype.hasOwnProperty),f=(y,S={},D={})=>{let x=Object.create(null),F={has(k,B){return B in y||B in x},get(k,B,J){if(B in x)return x[B];if(!(B in y))return;let N=y[B];if(typeof N=="function")if(typeof S[B]=="function")N=m(y,y[B],S[B]);else if(g(D,B)){let ge=d(B,D[B]);N=m(y,y[B],ge)}else N=N.bind(y);else if(typeof N=="object"&&N!==null&&(g(S,B)||g(D,B)))N=f(N,S[B],D[B]);else if(g(D,"*"))N=f(N,S[B],D["*"]);else return Object.defineProperty(x,B,{configurable:!0,enumerable:!0,get(){return y[B]},set(ge){y[B]=ge}}),N;return x[B]=N,N},set(k,B,J,N){return B in x?x[B]=J:y[B]=J,!0},defineProperty(k,B,J){return Reflect.defineProperty(x,B,J)},deleteProperty(k,B){return Reflect.deleteProperty(x,B)}},O=Object.create(y);return new Proxy(O,F)},w=y=>({addListener(S,D,...x){S.addListener(y.get(D),...x)},hasListener(S,D){return S.hasListener(y.get(D))},removeListener(S,D){S.removeListener(y.get(D))}}),T=new i(y=>typeof y!="function"?y:function(D){let x=f(D,{},{getContent:{minArgs:0,maxArgs:0}});y(x)}),p=new i(y=>typeof y!="function"?y:function(D,x,F){let O=!1,k,B=new Promise(pe=>{k=function(Ne){O=!0,pe(Ne)}}),J;try{J=y(D,x,k)}catch(pe){J=Promise.reject(pe)}let N=J!==!0&&s(J);if(J!==!0&&!N&&!O)return!1;let ge=pe=>{pe.then(Ne=>{F(Ne)},Ne=>{let be;Ne&&(Ne instanceof Error||typeof Ne.message=="string")?be=Ne.message:be="An unexpected error occurred",F({__mozWebExtensionPolyfillReject__:!0,message:be})}).catch(Ne=>{})};return ge(N?J:B),!0}),C=({reject:y,resolve:S},D)=>{r.runtime.lastError?r.runtime.lastError.message===a?S():y(new Error(r.runtime.lastError.message)):D&&D.__mozWebExtensionPolyfillReject__?y(new Error(D.message)):S(D)},M=(y,S,D,...x)=>{if(x.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${c(S.maxArgs)} for ${y}(), got ${x.length}`);return new Promise((F,O)=>{let k=C.bind(null,{resolve:F,reject:O});x.push(k),D.sendMessage(...x)})},L={devtools:{network:{onRequestFinished:w(T)}},runtime:{onMessage:w(p),onMessageExternal:w(p),sendMessage:M.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:M.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},A={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":A},services:{"*":A},websites:{"*":A}},f(r,L,o)};n.exports=u(chrome)}else n.exports=globalThis.browser})}}),hl={};ap(hl,{default:()=>Nu});var rp=pl(fl());up(hl,pl(fl()));var{default:ml,...op}=rp,Nu=ml!==void 0?ml:op;globalThis.immersiveTranslateBrowserAPI=Nu;function lt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var de=lt();function ne(){return de.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function bl(){return de.HAS_CSP_ERROR=="1"}function Rt(){if(de.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function El(){return typeof Deno<"u"}var sb=lt().PROD==="1",ca=lt().PROD!=="1";function yl(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function da(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var ii=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function Iu(e,t){let n=da(),a=setTimeout(()=>n.reject(new ii),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Xa(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(s),r(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var Tl=class{#e=0;#t=[];#n=[];#a=da();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;t_p,bgBlue:()=>Np,bgBrightBlack:()=>Hp,bgBrightBlue:()=>$p,bgBrightCyan:()=>Gp,bgBrightGreen:()=>Wp,bgBrightMagenta:()=>Kp,bgBrightRed:()=>Up,bgBrightWhite:()=>Vp,bgBrightYellow:()=>qp,bgCyan:()=>jp,bgGreen:()=>Rp,bgMagenta:()=>Ip,bgRed:()=>Bp,bgRgb24:()=>Zp,bgRgb8:()=>Yp,bgWhite:()=>zp,bgYellow:()=>Op,black:()=>bp,blue:()=>xp,bold:()=>cp,brightBlack:()=>wl,brightBlue:()=>Lp,brightCyan:()=>Pp,brightGreen:()=>Sp,brightMagenta:()=>Fp,brightRed:()=>Ap,brightWhite:()=>Mp,brightYellow:()=>Dp,cyan:()=>wp,dim:()=>dp,getColorEnabled:()=>sp,gray:()=>kp,green:()=>yp,hidden:()=>fp,inverse:()=>pp,italic:()=>mp,magenta:()=>Cp,red:()=>Ep,reset:()=>lp,rgb24:()=>Xp,rgb8:()=>Jp,setColorEnabled:()=>ip,strikethrough:()=>hp,stripColor:()=>ef,underline:()=>gp,white:()=>vp,yellow:()=>Tp});var{Deno:xl}=globalThis,Cl=typeof xl?.noColor=="boolean"?xl.noColor:!0,si=!Cl;function ip(e){Cl||(si=e)}function sp(){return si}function re(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function oe(e,t){return si?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function lp(e){return oe(e,re([0],0))}function cp(e){return oe(e,re([1],22))}function dp(e){return oe(e,re([2],22))}function mp(e){return oe(e,re([3],23))}function gp(e){return oe(e,re([4],24))}function pp(e){return oe(e,re([7],27))}function fp(e){return oe(e,re([8],28))}function hp(e){return oe(e,re([9],29))}function bp(e){return oe(e,re([30],39))}function Ep(e){return oe(e,re([31],39))}function yp(e){return oe(e,re([32],39))}function Tp(e){return oe(e,re([33],39))}function xp(e){return oe(e,re([34],39))}function Cp(e){return oe(e,re([35],39))}function wp(e){return oe(e,re([36],39))}function vp(e){return oe(e,re([37],39))}function kp(e){return wl(e)}function wl(e){return oe(e,re([90],39))}function Ap(e){return oe(e,re([91],39))}function Sp(e){return oe(e,re([92],39))}function Dp(e){return oe(e,re([93],39))}function Lp(e){return oe(e,re([94],39))}function Fp(e){return oe(e,re([95],39))}function Pp(e){return oe(e,re([96],39))}function Mp(e){return oe(e,re([97],39))}function _p(e){return oe(e,re([40],49))}function Bp(e){return oe(e,re([41],49))}function Rp(e){return oe(e,re([42],49))}function Op(e){return oe(e,re([43],49))}function Np(e){return oe(e,re([44],49))}function Ip(e){return oe(e,re([45],49))}function jp(e){return oe(e,re([46],49))}function zp(e){return oe(e,re([47],49))}function Hp(e){return oe(e,re([100],49))}function Up(e){return oe(e,re([101],49))}function Wp(e){return oe(e,re([102],49))}function qp(e){return oe(e,re([103],49))}function $p(e){return oe(e,re([104],49))}function Kp(e){return oe(e,re([105],49))}function Gp(e){return oe(e,re([106],49))}function Vp(e){return oe(e,re([107],49))}function Cn(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function Jp(e,t){return oe(e,re([38,5,Cn(t)],39))}function Yp(e,t){return oe(e,re([48,5,Cn(t)],49))}function Xp(e,t){return typeof t=="number"?oe(e,re([38,2,t>>16&255,t>>8&255,t&255],39)):oe(e,re([38,2,Cn(t.r),Cn(t.g),Cn(t.b)],39))}function Zp(e,t){return typeof t=="number"?oe(e,re([48,2,t>>16&255,t>>8&255,t&255],49)):oe(e,re([48,2,Cn(t.r),Cn(t.g),Cn(t.b)],49))}var Qp=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function ef(e){return e.replace(Qp,"")}var li=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},tf={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function ci(e,t){let n={...tf,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new li(u,n.maxAttempts)}var Jb=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var ju=globalThis||(typeof window<"u"?window:self),af=Object.create,mi=Object.defineProperty,uf=Object.getOwnPropertyDescriptor,rf=Object.getOwnPropertyNames,of=Object.getPrototypeOf,sf=Object.prototype.hasOwnProperty,lf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),cf=(e,t)=>{for(var n in t)mi(e,n,{get:t[n],enumerable:!0})},di=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of rf(t))!sf.call(e,u)&&u!==n&&mi(e,u,{get:()=>t[u],enumerable:!(a=uf(t,u))||a.enumerable});return e},df=(e,t,n)=>(di(e,t,"default"),n&&di(n,t,"default")),kl=(e,t,n)=>(n=e!=null?af(of(e)):{},di(t||!e||!e.__esModule?mi(n,"default",{value:e,enumerable:!0}):n,e)),Al=lf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof ju=="object"&&ju&&ju.Object===Object&&ju,d=typeof self=="object"&&self&&self.Object===Object&&self,m=c||d||Function("return this")(),g=Object.prototype,f=g.toString,w=Math.max,T=Math.min,p=function(){return m.Date.now()};function C(D,x,F){var O,k,B,J,N,ge,pe=0,Ne=!1,be=!1,vt=!0;if(typeof D!="function")throw new TypeError(n);x=S(x)||0,L(F)&&(Ne=!!F.leading,be="maxWait"in F,B=be?w(S(F.maxWait)||0,x):B,vt="trailing"in F?!!F.trailing:vt);function ye(Z){var ue=O,ce=k;return O=k=void 0,pe=Z,J=D.apply(ce,ue),J}function b(Z){return pe=Z,N=setTimeout(le,x),Ne?ye(Z):J}function I(Z){var ue=Z-ge,ce=Z-pe,Y=x-ue;return be?T(Y,B-ce):Y}function G(Z){var ue=Z-ge,ce=Z-pe;return ge===void 0||ue>=x||ue<0||be&&ce>=B}function le(){var Z=p();if(G(Z))return V(Z);N=setTimeout(le,I(Z))}function V(Z){return N=void 0,vt&&O?ye(Z):(O=k=void 0,J)}function Se(){N!==void 0&&clearTimeout(N),pe=0,O=ge=k=N=void 0}function Q(){return N===void 0?J:V(p())}function Te(){var Z=p(),ue=G(Z);if(O=arguments,k=this,ge=Z,ue){if(N===void 0)return b(ge);if(be)return N=setTimeout(le,x),ye(ge)}return N===void 0&&(N=setTimeout(le,x)),J}return Te.cancel=Se,Te.flush=Q,Te}function M(D,x,F){var O=!0,k=!0;if(typeof D!="function")throw new TypeError(n);return L(F)&&(O="leading"in F?!!F.leading:O,k="trailing"in F?!!F.trailing:k),C(D,x,{leading:O,maxWait:x,trailing:k})}function L(D){var x=typeof D;return!!D&&(x=="object"||x=="function")}function A(D){return!!D&&typeof D=="object"}function y(D){return typeof D=="symbol"||A(D)&&f.call(D)==u}function S(D){if(typeof D=="number")return D;if(y(D))return a;if(L(D)){var x=typeof D.valueOf=="function"?D.valueOf():D;D=L(x)?x+"":x}if(typeof D!="string")return D===0?D:+D;D=D.replace(r,"");var F=i.test(D);return F||s.test(D)?l(D.slice(2),F?2:8):o.test(D)?a:+D}t.exports=M}),Sl={};cf(Sl,{default:()=>ct});var mf=kl(Al());df(Sl,kl(Al()));var{default:vl,...gf}=mf,ct=vl!==void 0?vl:gf;var pf=Object.create,pi=Object.defineProperty,ff=Object.getOwnPropertyDescriptor,hf=Object.getOwnPropertyNames,bf=Object.getPrototypeOf,Ef=Object.prototype.hasOwnProperty,yf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Tf=(e,t)=>{for(var n in t)pi(e,n,{get:t[n],enumerable:!0})},gi=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of hf(t))!Ef.call(e,u)&&u!==n&&pi(e,u,{get:()=>t[u],enumerable:!(a=ff(t,u))||a.enumerable});return e},xf=(e,t,n)=>(gi(e,t,"default"),n&&gi(n,t,"default")),Ll=(e,t,n)=>(n=e!=null?pf(bf(e)):{},gi(t||!e||!e.__esModule?pi(n,"default",{value:e,enumerable:!0}):n,e)),Fl=yf((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){l(a)==="object"&&l(r)==="object"?r.exports=d():(i=[],o=d,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(r.exports=s))})(void 0,function(){return function(c){function d(g){if(m[g])return m[g].exports;var f=m[g]={i:g,l:!1,exports:{}};return c[g].call(f.exports,f,f.exports,d),f.l=!0,f.exports}var m={};return d.m=c,d.c=m,d.i=function(g){return g},d.d=function(g,f,w){d.o(g,f)||Object.defineProperty(g,f,{configurable:!1,enumerable:!0,get:w})},d.n=function(g){var f=g&&g.__esModule?function(){return g.default}:function(){return g};return d.d(f,"a",f),f},d.o=function(g,f){return Object.prototype.hasOwnProperty.call(g,f)},d.p="",d(d.s=0)}([function(c,d,m){function g(b,I){var G={};for(var le in b)I.indexOf(le)>=0||Object.prototype.hasOwnProperty.call(b,le)&&(G[le]=b[le]);return G}Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},w=Object.assign||function(b){for(var I=1;I'+le+"",ce.onclick=function(){return k(Y,ue)},ce.listener=function(H){(x(H)||F(H))&&N()},O(ce,ue),Se&&Se<1&&(Se=1),!Te&&Se&&L(Se).then(function(){return k(Y,ue)})},pe=d.force=function(b,I){var G=b.type,le=G===void 0?5:G,V=b.text,Se=b.buttonText,Q=Se===void 0?"OK":Se,Te=b.callback,Z=b.position,ue=Z===void 0?p.positions.force||ue.top:Z;A(),N();var ce=document.createElement("div"),Y=y();ce.id=Y;var H=document.createElement("div");H.classList.add(p.classes.textbox),H.classList.add(p.classes.backgroundInfo),H.innerHTML='
'+V+"
";var ee=document.createElement("div");ee.classList.add(p.classes.button),ee.classList.add(S[le]),ee.innerHTML=Q,ee.onclick=function(){k(Y,ue),J(),Te?Te():I&&I()},ce.appendChild(H),ce.appendChild(ee),ce.listener=function(Le){x(Le)&&ee.click()},O(ce,ue),B()},Ne=d.confirm=function(b,I,G){var le=b.text,V=b.submitText,Se=V===void 0?"Yes":V,Q=b.cancelText,Te=Q===void 0?"Cancel":Q,Z=b.submitCallback,ue=b.cancelCallback,ce=b.position,Y=ce===void 0?p.positions.confirm||Y.top:ce;A(),N();var H=document.createElement("div"),ee=y();H.id=ee;var Le=document.createElement("div");Le.classList.add(p.classes.textbox),Le.classList.add(p.classes.backgroundInfo),Le.innerHTML='
'+le+"
";var De=document.createElement("div");De.classList.add(p.classes.button),De.classList.add(p.classes.elementHalf),De.classList.add(p.classes.backgroundSuccess),De.innerHTML=Se,De.onclick=function(){k(ee,Y),J(),Z?Z():I&&I()};var te=document.createElement("div");te.classList.add(p.classes.button),te.classList.add(p.classes.elementHalf),te.classList.add(p.classes.backgroundError),te.innerHTML=Te,te.onclick=function(){k(ee,Y),J(),ue?ue():G&&G()},H.appendChild(Le),H.appendChild(De),H.appendChild(te),H.listener=function(He){x(He)?De.click():F(He)&&te.click()},O(H,Y),B(H,Y)},be=function(b,I,G){var le=b.text,V=b.submitText,Se=V===void 0?"Submit":V,Q=b.cancelText,Te=Q===void 0?"Cancel":Q,Z=b.submitCallback,ue=b.cancelCallback,ce=b.position,Y=ce===void 0?p.positions.input||Y.top:ce,H=g(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);A(),N();var ee=document.createElement("div"),Le=y();ee.id=Le;var De=document.createElement("div");De.classList.add(p.classes.textbox),De.classList.add(p.classes.backgroundInfo),De.innerHTML='
'+le+"
";var te=document.createElement("input");te.classList.add(p.classes.inputField),te.setAttribute("autocapitalize",H.autocapitalize||"none"),te.setAttribute("autocomplete",H.autocomplete||"off"),te.setAttribute("autocorrect",H.autocorrect||"off"),te.setAttribute("autofocus",H.autofocus||"true"),te.setAttribute("inputmode",H.inputmode||"verbatim"),te.setAttribute("max",H.max||""),te.setAttribute("maxlength",H.maxlength||""),te.setAttribute("min",H.min||""),te.setAttribute("minlength",H.minlength||""),te.setAttribute("placeholder",H.placeholder||""),te.setAttribute("spellcheck",H.spellcheck||"default"),te.setAttribute("step",H.step||"any"),te.setAttribute("type",H.type||"text"),te.value=H.value||"",H.allowed&&(te.oninput=function(){var Me=void 0;if(Array.isArray(H.allowed)){for(var _e="",Be=H.allowed,kt=0;kt'+G+"",ue.appendChild(Y),Q.forEach(function(ee,Le){var De=ee.type,te=De===void 0?1:De,He=ee.text,tt=ee.handler,Me=document.createElement("div");Me.classList.add(S[te]),Me.classList.add(p.classes.button),Me.classList.add(p.classes.selectChoice);var _e=Q[Le+1];_e&&!_e.type&&(_e.type=1),_e&&_e.type===te&&Me.classList.add(p.classes.selectChoiceRepeated),Me.innerHTML=He,Me.onclick=function(){k(ce,Z),J(),tt()},ue.appendChild(Me)});var H=document.createElement("div");H.classList.add(p.classes.backgroundNeutral),H.classList.add(p.classes.button),H.innerHTML=V,H.onclick=function(){k(ce,Z),J(),Se?Se():I&&I()},ue.appendChild(H),ue.listener=function(ee){F(ee)&&H.click()},O(ue,Z),B(ue,Z)},ye=d.date=function(b,I,G){var le=b.value,V=le===void 0?new Date:le,Se=b.submitText,Q=Se===void 0?"OK":Se,Te=b.cancelText,Z=Te===void 0?"Cancel":Te,ue=b.submitCallback,ce=b.cancelCallback,Y=b.position,H=Y===void 0?p.positions.date||H.top:Y;A(),N();var ee="▾",Le=document.createElement("div"),De=document.createElement("div"),te=document.createElement("div"),He=function(xe){Le.innerHTML=p.dateMonths[xe.getMonth()],De.innerHTML=xe.getDate(),te.innerHTML=xe.getFullYear()},tt=function(xe){var ve=new Date(V.getFullYear(),V.getMonth()+1,0).getDate(),Pt=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Pt)>ve&&(Pt=ve.toString()),xe.target.textContent=Pt,Number(Pt)<1&&(Pt="1"),V.setDate(Number(Pt))},Me=function(xe){var ve=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);xe.target.textContent=ve,V.setFullYear(Number(ve))},_e=function(xe){He(V)},Be=function(xe){var ve=new Date(V.getFullYear(),V.getMonth()+xe+1,0).getDate();V.getDate()>ve&&V.setDate(ve),V.setMonth(V.getMonth()+xe),He(V)},kt=function(xe){V.setDate(V.getDate()+xe),He(V)},xn=function(xe){var ve=V.getFullYear()+xe;ve<0?V.setFullYear(0):V.setFullYear(V.getFullYear()+xe),He(V)},Ue=document.createElement("div"),tn=y();Ue.id=tn;var Kt=document.createElement("div");Kt.classList.add(p.classes.backgroundInfo);var nt=document.createElement("div");nt.classList.add(p.classes.dateSelectorInner);var Ft=document.createElement("div");Ft.classList.add(p.classes.button),Ft.classList.add(p.classes.elementThird),Ft.classList.add(p.classes.dateSelectorUp),Ft.innerHTML=ee;var _=document.createElement("div");_.classList.add(p.classes.button),_.classList.add(p.classes.elementThird),_.classList.add(p.classes.dateSelectorUp),_.innerHTML=ee;var X=document.createElement("div");X.classList.add(p.classes.button),X.classList.add(p.classes.elementThird),X.classList.add(p.classes.dateSelectorUp),X.innerHTML=ee,Le.classList.add(p.classes.element),Le.classList.add(p.classes.elementThird),Le.innerHTML=p.dateMonths[V.getMonth()],De.classList.add(p.classes.element),De.classList.add(p.classes.elementThird),De.setAttribute("contentEditable",!0),De.addEventListener("input",tt),De.addEventListener("blur",_e),De.innerHTML=V.getDate(),te.classList.add(p.classes.element),te.classList.add(p.classes.elementThird),te.setAttribute("contentEditable",!0),te.addEventListener("input",Me),te.addEventListener("blur",_e),te.innerHTML=V.getFullYear();var we=document.createElement("div");we.classList.add(p.classes.button),we.classList.add(p.classes.elementThird),we.innerHTML=ee;var fe=document.createElement("div");fe.classList.add(p.classes.button),fe.classList.add(p.classes.elementThird),fe.innerHTML=ee;var Ee=document.createElement("div");Ee.classList.add(p.classes.button),Ee.classList.add(p.classes.elementThird),Ee.innerHTML=ee,Ft.onclick=function(){return Be(1)},_.onclick=function(){return kt(1)},X.onclick=function(){return xn(1)},we.onclick=function(){return Be(-1)},fe.onclick=function(){return kt(-1)},Ee.onclick=function(){return xn(-1)};var Ie=document.createElement("div");Ie.classList.add(p.classes.button),Ie.classList.add(p.classes.elementHalf),Ie.classList.add(p.classes.backgroundSuccess),Ie.innerHTML=Q,Ie.onclick=function(){k(tn,H),J(),ue?ue(V):I&&I(V)};var ot=document.createElement("div");ot.classList.add(p.classes.button),ot.classList.add(p.classes.elementHalf),ot.classList.add(p.classes.backgroundError),ot.innerHTML=Z,ot.onclick=function(){k(tn,H),J(),ce?ce(V):G&&G(V)},nt.appendChild(Ft),nt.appendChild(_),nt.appendChild(X),nt.appendChild(Le),nt.appendChild(De),nt.appendChild(te),nt.appendChild(we),nt.appendChild(fe),nt.appendChild(Ee),Kt.appendChild(nt),Ue.appendChild(Kt),Ue.appendChild(Ie),Ue.appendChild(ot),Ue.listener=function(xe){x(xe)?Ie.click():F(xe)&&ot.click()},O(Ue,H),B(Ue,H)};d.default={alert:ge,force:pe,confirm:Ne,input:be,select:vt,date:ye,setOptions:C,hideAlerts:N}}])})}).call(a,u(0)(n))}])})}),Pl={};Tf(Pl,{default:()=>zu});var Cf=Ll(Fl());xf(Pl,Ll(Fl()));var{default:Dl,...wf}=Cf,zu=Dl!==void 0?Dl:wf;var fi=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function hi(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Ol(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function vf(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Pe.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Pe.splice(0,Pe.length),(t===93||t===224)&&(t=91),t in it){it[t]=!1;for(var a in nn)nn[a]===t&&(je[a]=!1)}}function _f(e){if(typeof e>"u")Object.keys(Ge).forEach(function(o){return delete Ge[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&bi(o)});else if(typeof e=="object")e.key&&bi(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Ol(nn,s):[];Ge[d]=Ge[d].filter(function(g){var f=a?g.method===a:!0;return!(f&&g.scope===n&&vf(g.mods,m))})}})};function _l(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(!it[r]&&t.mods.indexOf(+r)>-1||it[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!it[16]&&!it[18]&&!it[17]&&!it[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Bl(e,t){var n=Ge["*"],a=e.keyCode||e.which||e.charCode;if(je.filter.call(this,e)){if((a===93||a===224)&&(a=91),Pe.indexOf(a)===-1&&a!==229&&Pe.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var w=yi[f];e[f]&&Pe.indexOf(w)===-1?Pe.push(w):!e[f]&&Pe.indexOf(w)>-1?Pe.splice(Pe.indexOf(w),1):f==="metaKey"&&e[f]&&Pe.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Pe=Pe.slice(Pe.indexOf(w))))}),a in it){it[a]=!0;for(var u in nn)nn[u]===a&&(je[u]=!0);if(!n)return}for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(it[r]=e[yi[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Pe.indexOf(17)===-1&&Pe.push(17),Pe.indexOf(18)===-1&&Pe.push(18),it[17]=!0,it[18]=!0);var o=eu();if(n)for(var i=0;i-1}function je(e,t,n){Pe=[];var a=Nl(e),u=[],r="all",o=document,i=0,s=!1,l=!0,c="+",d=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(d=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=Ol(nn,e)),e=e[e.length-1],e=e==="*"?"*":Uu(e),e in Ge||(Ge[e]=[]),Ge[e].push({keyup:s,keydown:l,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!Bf(o)&&window&&(jl.push(o),hi(o,"keydown",function(m){Bl(m,o)},d),Ml||(Ml=!0,hi(window,"focus",function(){Pe=[]},d)),hi(o,"keyup",function(m){Bl(m,o),Mf(m)},d))}function Rf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ge).forEach(function(n){var a=Ge[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var Ei={getPressedKeyString:Df,setScope:zl,getScope:eu,deleteScope:Pf,getPressedKeyCodes:Sf,isPressed:Ff,filter:Lf,trigger:Rf,unbind:_f,keyMap:Qa,modifier:nn,modifierMap:yi};for(Hu in Ei)Object.prototype.hasOwnProperty.call(Ei,Hu)&&(je[Hu]=Ei[Hu]);var Hu;typeof document<"u"&&(Rl=window.hotkeys,je.noConflict=function(e){return e&&window.hotkeys===je&&(window.hotkeys=Rl),je},window.hotkeys=je);var Rl;var Of=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Nf=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Of:{reset:()=>{},stop:()=>{}}}},Ti=new Nf,If="poegempjloogba",jf="ension://",zf="me-";function tu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function Kl(e){return e?e.PROD==="1":!0}function Gl(e){return e?e.MOCK==="1":!1}function Vl(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var Hf="rome-ext";function Uf(e,t){return t?e+(t-e%t):e}function Wf(e,t){return e.split(t).length-1}function qf(e){let t=Date.now(),n=1;for(let a of e)n+=Wf(a,"i");return Uf(t,n)}function $f(e,t){return Math.floor(Math.random()*(t-e+1))+e}var Kf="extension",Gf="chro";function Vf(){return $f(1e6,1e8)}var Hl="BrowserExt";function Jf(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var Ul="DeepL",Wl="ension",Yf="ch"+Hf+jf+"cofdb"+If+"gkncekinflcnj";function Jl(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",Yf),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${Ul}${Hl}${Wl}/${r||"1.1.1"} ${l}`)}else i.append("user-agent",`${Ul}${Hl}${Wl}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function Xf(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:qf(n)},id:Vf()},o=Jl({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${Gf+zf+Kf},${t}`,headers:o,body:Jf(r),method:"POST"}}function Zf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Wn={},qn={};async function ql(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=tu(u);i||(i=tu(r)[1]);let s={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(s=await Wu(e,t));let[l,c]=tu(s.refreshTokenExpiresAt);i=c,i||(i=tu(s.refreshTokenChecksAt)[1]);let d=s.refreshToken;if(Wn[d])return new Promise((m,g)=>{Wn[d].push((f,w)=>{f?g(f):m(w)})});Wn[d]=[];try{let m=await Qf(d,t.onFetch),g={state:{...n,...s,...m},shouldUpdateRefreshToken:i};return Wn[d].forEach(f=>{f(null,g)}),delete Wn[d],g}catch(m){throw Wn[d].forEach(g=>{g(m)}),delete Wn[d],m}}async function Wu(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(qn[e])return new Promise((u,r)=>{qn[e].push((o,i)=>{o?r(o):u(i)})});try{qn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return qn[e].forEach(d=>{d(null,c)}),delete qn[e],c}catch(u){throw qn[e].forEach(r=>{r(u)}),delete qn[e],u}}async function Qf(e,t){if(!e)throw new Error("refreshToken is required");let n=Kl(),a=Gl();if(!n&&!a){await Vl(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:Jl({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=Zf(r.access_token);if(r.expires_in){let i=new Date,s=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function $l(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(e2(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...Xf({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},s=Kl(),l=Gl();if(!s&&!l)return await Vl(50),{translations:u.map(g=>({text:"mock: "+g,detected_source_language:"EN"}))};let c=await n(i.url,i),d=JSON.parse(c.body),m=[];if(d.result&&d.result.texts)m=d.result.texts.map(g=>({text:g.text,detected_source_language:d.result.lang}));else throw new Error("No response from deepl api");return{translations:m}}function e2(e){let t=0;for(let n of e)t+=n.length;return t}async function t2(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await n2(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return Ti.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){Ti.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function n2(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var qu=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>t2({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await $l(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await $l(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw Ti.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=tu(e);if(t)n&&ql(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await ql(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var a2={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},Xl={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},We={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},bt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},wn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},P=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=P.getVersionPrecision(e),u=P.getVersionPrecision(t),r=Math.max(a,u),o=0,i=P.map([e,t],s=>{let l=r-P.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return P.map(c.split("."),d=>new Array(20-d.length).join("0")+d).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return a2[e]}static getBrowserTypeByAlias(e){return Xl[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,u2=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=P.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=P.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=P.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=P.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=P.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=P.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=P.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=P.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=P.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=P.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=P.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=P.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=P.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=P.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=P.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=P.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=P.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=P.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=P.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=P.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=P.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=P.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=P.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=P.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=P.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=P.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=P.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:P.getFirstMatch(a,e),version:P.getSecondMatch(a,e)}}}],r2=u2,o2=[{test:[/Roku\/DVP/],describe(e){let t=P.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:bt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=P.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:bt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=P.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=P.getWindowsVersionName(t);return{name:bt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:bt.iOS},n=P.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=P.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=P.getMacOSVersionName(t),a={name:bt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=P.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:bt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=P.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=P.getAndroidVersionName(t),a={name:bt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=P.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:bt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=P.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||P.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||P.getFirstMatch(/\bbb(\d+)/i,e);return{name:bt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=P.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:bt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=P.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:bt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:bt.Linux}}},{test:[/CrOS/],describe(){return{name:bt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=P.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:bt.PlayStation4,version:t}}}],i2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=P.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:We.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:We.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:We.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:We.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:We.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=P.getFirstMatch(/(ipod|iphone)/i,e);return{type:We.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:We.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:We.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:We.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:We.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:We.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:We.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:We.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:We.tv}}}],s2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:wn.Blink};let t=P.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:wn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:wn.Trident},n=P.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:wn.Presto},n=P.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:wn.Gecko},n=P.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:wn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:wn.WebKit},n=P.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],l2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=P.find(r2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=P.find(o2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=P.find(i2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=P.find(s2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return P.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=P.find(r,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=P.find(r,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(u>0){let r=Object.keys(a),o=P.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=P.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(P.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Yl=l2,c2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Yl(e,t)}static parse(e){return new Yl(e).getResult()}static get BROWSER_MAP(){return Xl}static get ENGINE_MAP(){return wn}static get OS_MAP(){return bt}static get PLATFORMS_MAP(){return We}},$u=c2;var{entries:r4,setPrototypeOf:Zl,isFrozen:d2,getPrototypeOf:m2,getOwnPropertyDescriptor:g2}=Object,{freeze:Et,seal:Vt,create:p2}=Object,{apply:Ai,construct:Si}=typeof Reflect<"u"&&Reflect;Ai||(Ai=function(e,t,n){return e.apply(t,n)});Et||(Et=function(e){return e});Vt||(Vt=function(e){return e});Si||(Si=function(e,t){return new e(...t)});var f2=Nt(Array.prototype.forEach),Ql=Nt(Array.prototype.pop),nu=Nt(Array.prototype.push),Vu=Nt(String.prototype.toLowerCase),xi=Nt(String.prototype.toString),h2=Nt(String.prototype.match),Gt=Nt(String.prototype.replace),b2=Nt(String.prototype.indexOf),E2=Nt(String.prototype.trim),Mt=Nt(RegExp.prototype.test),au=y2(TypeError);function Nt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),v2=Vt(/\${[\w\W]*}/gm),k2=Vt(/^data-[\-\w.\u00B7-\uFFFF]/),A2=Vt(/^aria-[\-\w]+$/),o4=Vt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),S2=Vt(/^(?:\w+script|data):/i),D2=Vt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),i4=Vt(/^html$/i),u4=Object.freeze({__proto__:null,MUSTACHE_EXPR:C2,ERB_EXPR:w2,TMPLIT_EXPR:v2,DATA_ATTR:k2,ARIA_ATTR:A2,IS_ALLOWED_URI:o4,IS_SCRIPT_OR_DATA:S2,ATTR_WHITESPACE:D2,DOCTYPE_NAME:i4}),L2=()=>typeof window>"u"?null:window,F2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function s4(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:L2(),t=h=>s4(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:m,trustedTypes:g}=e,f=s.prototype,w=Ku(f,"cloneNode"),T=Ku(f,"nextSibling"),p=Ku(f,"childNodes"),C=Ku(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let M,L="",{implementation:A,createNodeIterator:y,createDocumentFragment:S,getElementsByTagName:D}=u,{importNode:x}=n,F={};t.isSupported=typeof r4=="function"&&typeof C=="function"&&A&&A.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:O,ERB_EXPR:k,TMPLIT_EXPR:B,DATA_ATTR:J,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:ge,ATTR_WHITESPACE:pe}=u4,{IS_ALLOWED_URI:Ne}=u4,be=null,vt=he({},[...e4,...Ci,...wi,...vi,...t4]),ye=null,b=he({},[...n4,...ki,...a4,...Gu]),I=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),G=null,le=null,V=!0,Se=!0,Q=!1,Te=!0,Z=!1,ue=!1,ce=!1,Y=!1,H=!1,ee=!1,Le=!1,De=!0,te=!1,He="user-content-",tt=!0,Me=!1,_e={},Be=null,kt=he({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),xn=null,Ue=he({},["audio","video","img","source","image","track"]),tn=null,Kt=he({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),nt="http://www.w3.org/1998/Math/MathML",Ft="http://www.w3.org/2000/svg",_="http://www.w3.org/1999/xhtml",X=_,we=!1,fe=null,Ee=he({},[nt,Ft,_],xi),Ie,ot=["application/xhtml+xml","text/html"],xe="text/html",ve,Pt=null,qg=u.createElement("form"),Qs=function(h){return h instanceof RegExp||h instanceof Function},ti=function(h){if(!(Pt&&Pt===h)){if((!h||typeof h!="object")&&(h={}),h=ma(h),Ie=ot.indexOf(h.PARSER_MEDIA_TYPE)===-1?Ie=xe:Ie=h.PARSER_MEDIA_TYPE,ve=Ie==="application/xhtml+xml"?xi:Vu,be="ALLOWED_TAGS"in h?he({},h.ALLOWED_TAGS,ve):vt,ye="ALLOWED_ATTR"in h?he({},h.ALLOWED_ATTR,ve):b,fe="ALLOWED_NAMESPACES"in h?he({},h.ALLOWED_NAMESPACES,xi):Ee,tn="ADD_URI_SAFE_ATTR"in h?he(ma(Kt),h.ADD_URI_SAFE_ATTR,ve):Kt,xn="ADD_DATA_URI_TAGS"in h?he(ma(Ue),h.ADD_DATA_URI_TAGS,ve):Ue,Be="FORBID_CONTENTS"in h?he({},h.FORBID_CONTENTS,ve):kt,G="FORBID_TAGS"in h?he({},h.FORBID_TAGS,ve):{},le="FORBID_ATTR"in h?he({},h.FORBID_ATTR,ve):{},_e="USE_PROFILES"in h?h.USE_PROFILES:!1,V=h.ALLOW_ARIA_ATTR!==!1,Se=h.ALLOW_DATA_ATTR!==!1,Q=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Te=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Z=h.SAFE_FOR_TEMPLATES||!1,ue=h.WHOLE_DOCUMENT||!1,H=h.RETURN_DOM||!1,ee=h.RETURN_DOM_FRAGMENT||!1,Le=h.RETURN_TRUSTED_TYPE||!1,Y=h.FORCE_BODY||!1,De=h.SANITIZE_DOM!==!1,te=h.SANITIZE_NAMED_PROPS||!1,tt=h.KEEP_CONTENT!==!1,Me=h.IN_PLACE||!1,Ne=h.ALLOWED_URI_REGEXP||o4,X=h.NAMESPACE||_,I=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&Qs(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(I.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&Qs(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(I.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(I.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Z&&(Se=!1),ee&&(H=!0),_e&&(be=he({},[...t4]),ye=[],_e.html===!0&&(he(be,e4),he(ye,n4)),_e.svg===!0&&(he(be,Ci),he(ye,ki),he(ye,Gu)),_e.svgFilters===!0&&(he(be,wi),he(ye,ki),he(ye,Gu)),_e.mathMl===!0&&(he(be,vi),he(ye,a4),he(ye,Gu))),h.ADD_TAGS&&(be===vt&&(be=ma(be)),he(be,h.ADD_TAGS,ve)),h.ADD_ATTR&&(ye===b&&(ye=ma(ye)),he(ye,h.ADD_ATTR,ve)),h.ADD_URI_SAFE_ATTR&&he(tn,h.ADD_URI_SAFE_ATTR,ve),h.FORBID_CONTENTS&&(Be===kt&&(Be=ma(Be)),he(Be,h.FORBID_CONTENTS,ve)),tt&&(be["#text"]=!0),ue&&he(be,["html","head","body"]),be.table&&(he(be,["tbody"]),delete G.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw au('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw au('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');M=h.TRUSTED_TYPES_POLICY,L=M.createHTML("")}else M===void 0&&(M=F2(g,a)),M!==null&&typeof L=="string"&&(L=M.createHTML(""));Et&&Et(h),Pt=h}},el=he({},["mi","mo","mn","ms","mtext"]),tl=he({},["foreignobject","desc","title","annotation-xml"]),$g=he({},["title","style","font","a","script"]),Ru=he({},Ci);he(Ru,wi),he(Ru,T2);let ni=he({},vi);he(ni,x2);let Kg=function(h){let W=C(h);(!W||!W.tagName)&&(W={namespaceURI:X,tagName:"template"});let R=Vu(h.tagName),ke=Vu(W.tagName);return fe[h.namespaceURI]?h.namespaceURI===Ft?W.namespaceURI===_?R==="svg":W.namespaceURI===nt?R==="svg"&&(ke==="annotation-xml"||el[ke]):!!Ru[R]:h.namespaceURI===nt?W.namespaceURI===_?R==="math":W.namespaceURI===Ft?R==="math"&&tl[ke]:!!ni[R]:h.namespaceURI===_?W.namespaceURI===Ft&&!tl[ke]||W.namespaceURI===nt&&!el[ke]?!1:!ni[R]&&($g[R]||!Ru[R]):!!(Ie==="application/xhtml+xml"&&fe[h.namespaceURI]):!1},sa=function(h){nu(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},ai=function(h,W){try{nu(t.removed,{attribute:W.getAttributeNode(h),from:W})}catch{nu(t.removed,{attribute:null,from:W})}if(W.removeAttribute(h),h==="is"&&!ye[h])if(H||ee)try{sa(W)}catch{}else try{W.setAttribute(h,"")}catch{}},nl=function(h){let W,R;if(Y)h=""+h;else{let ht=h2(h,/^[\r\n\t ]+/);R=ht&&ht[0]}Ie==="application/xhtml+xml"&&X===_&&(h=''+h+"");let ke=M?M.createHTML(h):h;if(X===_)try{W=new m().parseFromString(ke,Ie)}catch{}if(!W||!W.documentElement){W=A.createDocument(X,"template",null);try{W.documentElement.innerHTML=we?L:ke}catch{}}let Xe=W.body||W.documentElement;return h&&R&&Xe.insertBefore(u.createTextNode(R),Xe.childNodes[0]||null),X===_?D.call(W,ue?"html":"body")[0]:ue?W.documentElement:Xe},al=function(h){return y.call(h.ownerDocument||h,h,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Gg=function(h){return h instanceof d&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Ou=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},mn=function(h,W,R){F[h]&&f2(F[h],ke=>{ke.call(t,W,R,Pt)})},ul=function(h){let W;if(mn("beforeSanitizeElements",h,null),Gg(h))return sa(h),!0;let R=ve(h.nodeName);if(mn("uponSanitizeElement",h,{tagName:R,allowedTags:be}),h.hasChildNodes()&&!Ou(h.firstElementChild)&&(!Ou(h.content)||!Ou(h.content.firstElementChild))&&Mt(/<[/\w]/g,h.innerHTML)&&Mt(/<[/\w]/g,h.textContent))return sa(h),!0;if(!be[R]||G[R]){if(!G[R]&&ol(R)&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,R)||I.tagNameCheck instanceof Function&&I.tagNameCheck(R)))return!1;if(tt&&!Be[R]){let ke=C(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&ke){let ht=Xe.length;for(let At=ht-1;At>=0;--At)ke.insertBefore(w(Xe[At],!0),T(h))}}return sa(h),!0}return h instanceof s&&!Kg(h)||(R==="noscript"||R==="noembed")&&Mt(/<\/no(script|embed)/i,h.innerHTML)?(sa(h),!0):(Z&&h.nodeType===3&&(W=h.textContent,W=Gt(W,O," "),W=Gt(W,k," "),W=Gt(W,B," "),h.textContent!==W&&(nu(t.removed,{element:h.cloneNode()}),h.textContent=W)),mn("afterSanitizeElements",h,null),!1)},rl=function(h,W,R){if(De&&(W==="id"||W==="name")&&(R in u||R in qg))return!1;if(!(Se&&!le[W]&&Mt(J,W))&&!(V&&Mt(N,W))){if(!ye[W]||le[W]){if(!(ol(h)&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,h)||I.tagNameCheck instanceof Function&&I.tagNameCheck(h))&&(I.attributeNameCheck instanceof RegExp&&Mt(I.attributeNameCheck,W)||I.attributeNameCheck instanceof Function&&I.attributeNameCheck(W))||W==="is"&&I.allowCustomizedBuiltInElements&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,R)||I.tagNameCheck instanceof Function&&I.tagNameCheck(R))))return!1}else if(!tn[W]&&!Mt(Ne,Gt(R,pe,""))&&!((W==="src"||W==="xlink:href"||W==="href")&&h!=="script"&&b2(R,"data:")===0&&xn[h])&&!(Q&&!Mt(ge,Gt(R,pe,"")))&&R)return!1}return!0},ol=function(h){return h.indexOf("-")>0},il=function(h){let W,R,ke,Xe;mn("beforeSanitizeAttributes",h,null);let{attributes:ht}=h;if(!ht)return;let At={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye};for(Xe=ht.length;Xe--;){W=ht[Xe];let{name:at,namespaceURI:la}=W;if(R=at==="value"?W.value:E2(W.value),ke=ve(at),At.attrName=ke,At.attrValue=R,At.keepAttr=!0,At.forceKeepAttr=void 0,mn("uponSanitizeAttribute",h,At),R=At.attrValue,At.forceKeepAttr||(ai(at,h),!At.keepAttr))continue;if(!Te&&Mt(/\/>/i,R)){ai(at,h);continue}Z&&(R=Gt(R,O," "),R=Gt(R,k," "),R=Gt(R,B," "));let sl=ve(h.nodeName);if(rl(sl,ke,R)){if(te&&(ke==="id"||ke==="name")&&(ai(at,h),R=He+R),M&&typeof g=="object"&&typeof g.getAttributeType=="function"&&!la)switch(g.getAttributeType(sl,ke)){case"TrustedHTML":{R=M.createHTML(R);break}case"TrustedScriptURL":{R=M.createScriptURL(R);break}}try{la?h.setAttributeNS(la,at,R):h.setAttribute(at,R),Ql(t.removed)}catch{}}}mn("afterSanitizeAttributes",h,null)},Vg=function h(W){let R,ke=al(W);for(mn("beforeSanitizeShadowDOM",W,null);R=ke.nextNode();)mn("uponSanitizeShadowNode",R,null),!ul(R)&&(R.content instanceof r&&h(R.content),il(R));mn("afterSanitizeShadowDOM",W,null)};return t.sanitize=function(h){let W=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},R,ke,Xe,ht;if(we=!h,we&&(h=""),typeof h!="string"&&!Ou(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw au("dirty is not a string, aborting")}else throw au("toString is not a function");if(!t.isSupported)return h;if(ce||ti(W),t.removed=[],typeof h=="string"&&(Me=!1),Me){if(h.nodeName){let la=ve(h.nodeName);if(!be[la]||G[la])throw au("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)R=nl(""),ke=R.ownerDocument.importNode(h,!0),ke.nodeType===1&&ke.nodeName==="BODY"||ke.nodeName==="HTML"?R=ke:R.appendChild(ke);else{if(!H&&!Z&&!ue&&h.indexOf("<")===-1)return M&&Le?M.createHTML(h):h;if(R=nl(h),!R)return H?null:Le?L:""}R&&Y&&sa(R.firstChild);let At=al(Me?h:R);for(;Xe=At.nextNode();)ul(Xe)||(Xe.content instanceof r&&Vg(Xe.content),il(Xe));if(Me)return h;if(H){if(ee)for(ht=S.call(R.ownerDocument);R.firstChild;)ht.appendChild(R.firstChild);else ht=R;return(ye.shadowroot||ye.shadowrootmod)&&(ht=x.call(n,ht,!0)),ht}let at=ue?R.outerHTML:R.innerHTML;return ue&&be["!doctype"]&&R.ownerDocument&&R.ownerDocument.doctype&&R.ownerDocument.doctype.name&&Mt(i4,R.ownerDocument.doctype.name)&&(at=" +`+at),Z&&(at=Gt(at,O," "),at=Gt(at,k," "),at=Gt(at,B," ")),M&&Le?M.createHTML(at):at},t.setConfig=function(h){ti(h),ce=!0},t.clearConfig=function(){Pt=null,ce=!1},t.isValidAttribute=function(h,W,R){Pt||ti({});let ke=ve(h),Xe=ve(W);return rl(ke,Xe,R)},t.addHook=function(h,W){typeof W=="function"&&(F[h]=F[h]||[],nu(F[h],W))},t.removeHook=function(h){if(F[h])return Ql(F[h])},t.removeHooks=function(h){F[h]&&(F[h]=[])},t.removeAllHooks=function(){F={}},t}var Ce=s4();var $E=zu.alert;var l4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var c4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var d4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var B2=[{code:"zh-CN",messages:l4},{code:"zh-TW",messages:c4},{code:"en",messages:d4}],gn="immersiveTranslateDeeplGlobalState",Ju="immersiveTranslateBingGlobalState",It={};for(let e of B2)It[e.code]=e.messages;var $n="Immersive Translate",z="immersive-translate";var ie="immersiveTranslate";var dy=ie+"GoogleAccessToken",my=ie+"AuthFlow";var gy=ie+"AuthState",Yu=ie+"IframeMessage",py=ie+"WaitForRateLimit",Xu=ie+"DocumentMessageAsk",yt=ie+"DocumentMessageTellThirdParty",g4=ie+"DocumentMessageThirdPartyTell",Zu=ie+"DocumentMessageHandler",R2=`${ie}Container`,p4=`${ie}SpecifiedContainer`,vn="buildinConfig",uu="localConfig",Di="openOptionsPage",Li="openAboutPage";var Fi="openEbookViewer",Pi="openEbookBuilder";var Qu=`${ie}PageTranslatedStatus`,fy=`${ie}PageUrlChanged`,kn=`${ie}ReceiveCommand`,f4=ie+"LastUseMouseHoverTime",h4=ie+"LastUseInputTime",pn=ie+"LastUseManualTranslatePageTime",hy=`${ie}PopupReceiveMessage`,O2="immersivetranslate.com",N2="config.immersivetranslate.com",by=`https://${O2}/`,ru=`https://${N2}/default_config.json`,Ey=`${ie}Mark`,ou="immersiveTranslateEffect",St=`${ie}Root`,yy=`data-${z}-effect`,an=`data-${z}-translation-element-mark`,b4=`${ie}TranslationElementMark`,Ty=`${ie}TranslatedMark`,xy=`${ie}ParagraphId`,E4=`${ie}LoadingId`,Mi=`data-${z}-loading-id`,y4=`${ie}ErrorId`,er=`data-${z}-error-id`,I2=`${ie}AtomicBlockMark`,T4=`${ie}ExcludeMark`,Cy=`data-${z}-exclude-mark`,j2=`${ie}StayOriginalMark`,wy=`${ie}PreWhitespaceMark`,tr=`${ie}InlineMark`,x4=`${ie}BlockMark`,vy=`${ie}Left`,ky=`${ie}Right`,Ay=`${ie}Width`,Sy=`${ie}Height`,Dy=`${ie}Top`,Ly=`${ie}FontSize`,iu="lastRunTime",Fy=`${ie}GlobalStyleMark`,nr=["@","#"],ar=" --- ",C4=` +`,jt=`${z}-target-wrapper`,Py=`${z}-pdf-target-container`,w4=`${z}-target-inner`,My=`${z}-source-wrapper`,_i=`${z}-target-translation-block-wrapper`,_y=`${z}-root-translation-theme`,ga=`${ie}RootTranslationTheme`,v4=`${z}-target-translation-vertical-block-wrapper`,k4=`${z}-target-translation-pdf-block-wrapper`,A4=`${z}-target-translation-pre-whitespace`,Bi=`${z}-target-translation-inline-wrapper`;var S4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},zt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],D4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},L4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},F4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var P4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var ur="zh-CN";var m4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...s4,{type:"password",name:"apikey",required:!0}],props:s4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},B0={type:ie+"ChildFrameToRootFrameIdentifier"},rr=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var D4='';var pa=console,R0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=Ot.green;a>1e4?u=Ot.red:a>1e3&&(u=Ot.yellow),pa.debug(Ot.dim($n+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},su=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pa.log(Ot.dim($n+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pa.log(Ot.green($n+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pa.warn(Ot.yellow($n+" WARN:"),...t)}error(...t){this.#e<=3&&pa.error(Ot.red($n+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pa.error(Ot.red($n+" FATAL:"),...t)}timing(){return this.level===0?new R0:{reset:()=>{},stop:()=>{}}}},k=new su;var O0=/iPhone/i,L4=/iPod/i,F4=/iPad/i,P4=/\biOS-universal(?:.+)Mac\b/i,N0=/\bAndroid(?:.+)Mobile\b/i,M4=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,or=/Silk/i,hn=/Windows Phone/i,_4=/\bWindows(?:.+)ARM\b/i,B4=/BlackBerry/i,R4=/BB10/i,O4=/Opera Mini/i,N4=/\b(CriOS|Chrome)(?:.+)Mobile/i,I4=/Mobile(?:.+)Firefox\b/i,j4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function B2(e){return t=>t.test(e)}function ha(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=B2(n),r={apple:{phone:u(O0)&&!u(hn),ipod:u(L4),tablet:!u(O0)&&(u(F4)||j4(t))&&!u(hn),universal:u(P4),device:(u(O0)||u(L4)||u(F4)||u(P4)||j4(t))&&!u(hn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(or),device:u(fa)||u(or)},android:{phone:!u(hn)&&u(fa)||!u(hn)&&u(N0),tablet:!u(hn)&&!u(fa)&&!u(N0)&&(u(or)||u(M4)),device:!u(hn)&&(u(fa)||u(or)||u(N0)||u(M4))||u(/\bokhttp\b/i)},windows:{phone:u(hn),tablet:u(_4),device:u(hn)||u(_4)},other:{blackberry:u(B4),blackberry10:u(R4),opera:u(O4),firefox:u(I4),chrome:u(N4),device:u(B4)||u(R4)||u(O4)||u(I4)||u(N4)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var I0="DENO",ir="CHROME",sr="FIREFOX";function z4(e){let t=ir;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=sr:/deno/i.test(n)&&(t=I0)}catch{}return e===ir&&t===ir||e===sr&&t===sr||e===I0&&t===I0}function H4(){return z4(ir)}function U4(){return typeof Deno<"u"}function lr(){return z4(sr)}function W4(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function lu(){return!!globalThis.matchMedia("(pointer:fine)").matches}var q4={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},$4={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:q4,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:q4,query:()=>{},sendMessage:()=>{}}};var q;U4()?q=$4:q=globalThis.immersiveTranslateBrowserAPI;var Yy=G4(2),K4=G4(3);function G4(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var R2=/\s+/g,O2=/[\t\n\v\f\r ]+/g;function V4(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?N2:I2;return String(e).replace(t.style==="html"?O2:R2,t.trim?j2(n):n)}function N2(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function I2(){return" "}function j2(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var J4={}.hasOwnProperty;function z2(e){return e==null?"":V4(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function H2(e){return K4(" "+z2(e)+" ")}function U2(e){let t=H2(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function J2(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function Y2(e,t,n,a){t=Z2(t,n,a);let u=[],r;if(t)for(r in t)cr.call(t,r)&&u.push([r,X2(e,t[r])]);return u.length===0?z0():u.sort(Q2)}function X2(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of lh){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/r>.5?t==="zh-CN"?ac(e)?"zh-TW":"zh-CN":t:"auto"}var rc=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function oc(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=mr(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...rc.keys()]},u=Z4(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=rc.get(r);if(o)return o}return"auto"}function Kn(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=zt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":zt[u]}else return"auto";else return zt[a]}var gr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...m4,{type:"password",name:"apikey",required:!0}],props:m4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},Ri={type:ie+"ChildFrameToRootFrameIdentifier"},rr=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var M4='';var pa=console,Oi=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=Ot.green;a>1e4?u=Ot.red:a>1e3&&(u=Ot.yellow),pa.debug(Ot.dim($n+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},su=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pa.log(Ot.dim($n+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pa.log(Ot.green($n+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pa.warn(Ot.yellow($n+" WARN:"),...t)}error(...t){this.#e<=3&&pa.error(Ot.red($n+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pa.error(Ot.red($n+" FATAL:"),...t)}timing(){return this.level===0?new Oi:{reset:()=>{},stop:()=>{}}}},v=new su;var Ni=/iPhone/i,_4=/iPod/i,B4=/iPad/i,R4=/\biOS-universal(?:.+)Mac\b/i,Ii=/\bAndroid(?:.+)Mobile\b/i,O4=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,or=/Silk/i,hn=/Windows Phone/i,N4=/\bWindows(?:.+)ARM\b/i,I4=/BlackBerry/i,j4=/BB10/i,z4=/Opera Mini/i,H4=/\b(CriOS|Chrome)(?:.+)Mobile/i,U4=/Mobile(?:.+)Firefox\b/i,W4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function z2(e){return t=>t.test(e)}function ha(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=z2(n),r={apple:{phone:u(Ni)&&!u(hn),ipod:u(_4),tablet:!u(Ni)&&(u(B4)||W4(t))&&!u(hn),universal:u(R4),device:(u(Ni)||u(_4)||u(B4)||u(R4)||W4(t))&&!u(hn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(or),device:u(fa)||u(or)},android:{phone:!u(hn)&&u(fa)||!u(hn)&&u(Ii),tablet:!u(hn)&&!u(fa)&&!u(Ii)&&(u(or)||u(O4)),device:!u(hn)&&(u(fa)||u(or)||u(Ii)||u(O4))||u(/\bokhttp\b/i)},windows:{phone:u(hn),tablet:u(N4),device:u(hn)||u(N4)},other:{blackberry:u(I4),blackberry10:u(j4),opera:u(z4),firefox:u(U4),chrome:u(H4),device:u(I4)||u(j4)||u(z4)||u(U4)||u(H4)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var ji="DENO",ir="CHROME",sr="FIREFOX";function q4(e){let t=ir;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=sr:/deno/i.test(n)&&(t=ji)}catch{}return e===ir&&t===ir||e===sr&&t===sr||e===ji&&t===ji}function $4(){return q4(ir)}function K4(){return typeof Deno<"u"}function lr(){return q4(sr)}function G4(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function lu(){return!!globalThis.matchMedia("(pointer:fine)").matches}var V4={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},J4={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:V4,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:V4,query:()=>{},sendMessage:()=>{}}};var q;K4()?q=J4:q=globalThis.immersiveTranslateBrowserAPI;var eT=X4(2),Y4=X4(3);function X4(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var H2=/\s+/g,U2=/[\t\n\v\f\r ]+/g;function Z4(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?W2:q2;return String(e).replace(t.style==="html"?U2:H2,t.trim?$2(n):n)}function W2(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function q2(){return" "}function $2(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var Q4={}.hasOwnProperty;function K2(e){return e==null?"":Z4(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function G2(e){return Y4(" "+K2(e)+" ")}function V2(e){let t=G2(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function th(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function nh(e,t,n,a){t=uh(t,n,a);let u=[],r;if(t)for(r in t)cr.call(t,r)&&u.push([r,ah(e,t[r])]);return u.length===0?Hi():u.sort(rh)}function ah(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of fh){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/r>.5?t==="zh-CN"?ic(e)?"zh-TW":"zh-CN":t:"auto"}var lc=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function cc(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=mr(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...lc.keys()]},u=nc(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=lc.get(r);if(o)return o}return"auto"}function Kn(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=zt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":zt[u]}else return"auto";else return zt[a]}var gr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4083,70 +4091,81 @@ body { ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};function H0(e){return Array.isArray(e)?e:e?[e]:[]}function U0(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function An(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function pr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let s=H0(i);u[o]=Array.from(new Set([...u[o],...s]))}else u[o]=H0(i)}),u}function dh(){if(de.PROD==="1")return{};let e={};if(de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(de.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:de.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(de.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:de.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(de.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&de.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:de.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:de.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(de.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:de.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(de.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=de.DEEPL_PROXY_ENDPOINT),de.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=de.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),de.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:de.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return de.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),de.MOCK==="1"&&(e.translationService="mock"),de.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=de.IMMERSIVE_TRANSLATE_SERVICE),e}async function du(){let e=await q.storage.local.get(uu);if(e[uu]){let t=e[uu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await mu(r),r}else return{}}async function mu(e){await q.storage.local.set({[uu]:e})}async function ic(e){await q.storage.local.set({[vn]:e})}async function sc(){let e=await q.storage.local.get(vn),n={...cc(),...gr,buildinConfigUpdatedAt:de.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function Gn(){let e=await q.storage.local.get(vn),t={...gr,buildinConfigUpdatedAt:de.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let C=new Date(p.buildinConfigUpdatedAt),M=new Date(t.buildinConfigUpdatedAt);C>M&&(t=p)}}let n={};if(!ne()&&q.commands&&q.commands.getAll){let p=await q.commands.getAll();for(let C of p)C.name&&C.shortcut&&(n[C.name]=C.shortcut)}let a=cc(),u=dh(),r=await W0(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await du(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(C=>new Date(C.expiredAt)>s);if(p.length>0){let C=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],M=Array.isArray(C)?C:[C],L=Array.from(new Set(M.concat(p.map(A=>A.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:L}}}let l=Object.assign({},o,u,r);if(!l.interfaceLanguage){let p=await mh();l.interfaceLanguage=p}let c=l.interfaceLanguage==="en",d=l.targetLanguage==="en",m=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,g=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!d&&!m&&g?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),v=Object.keys(f),T=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of v){let C=p;if(C==="generalRule")typeof l[C]=="object"&&(f[C]=pr(a[C],l[C]));else if(C==="translationServices"){let M=l[C]||{},L=t[C]||{},A=Object.keys(L),y=Object.keys(M),S=[...new Set([...A,...y])],D={};for(let x of S)D[x]={...L[x],...M[x]};f[C]=D}else if(typeof l[C]!="string"&&typeof l[C]!="boolean"&&typeof l[C]!="number"&&T.includes(C))l[C]&&(f[C]=Object.assign(f[C],l[C])),C==="shortcuts"&&(ne()||Rt()?f[C]={...f[C],...n}:f[C]={...n});else if(C==="rules"){if(Array.isArray(l[C])&&(f[C]=[...l[C],...f[C]]),de.PROD==="0"&&de.DEV_RULES){let M=JSON.parse(de.DEV_RULES);f[C]=[...M,...f[C]]}}else l[C]!==void 0&&(f[C]=l[C])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function W0(){return(await q.storage.sync.get("userConfig")||{}).userConfig||{}}async function lc(e){await q.storage.sync.set({userConfig:e})}var mh=async()=>{let e=["zh-CN"];try{e=await q.i18n.getAcceptLanguages()}catch(a){k.warn("get browser language error:",a)}let n=e.map(a=>Kn(a)).find(a=>It[a]);return n||"en"},cc=()=>{let e={...gr,buildinConfigUpdatedAt:de.BUILD_TIME};return{...e,targetLanguage:ur,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var Ze=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function mc(e){let t;if(e&&e.retry&&e.retry>0)try{t=await l0(dc.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await dc(e);return t}async function dc(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await r(t,a)}catch(s){k.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of gh(i.body)){let d=new TextDecoder().decode(c);s+=d;let m;for(;(m=s.indexOf(` -`))>=0;){let g=s.slice(0,m).trim();if(s=s.slice(m+1),g.startsWith("event:")||g==="")continue;let f="";if(g.startsWith("data:")&&(f=g.slice(5).trim()),f==="[DONE]")break;let v;try{v=JSON.parse(f??"")}catch(T){k.debug("json error",T);continue}l=v}}return l}}else{let s;try{s=await i.text()}catch(d){k.error("parse response failed",d)}s&&k.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new Ze("fetchError",c,s)}}async function*gh(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Sn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function ph(e,t){return e<>>32-t}function hr(e,t,n,a,u,r){return Sn(ph(Sn(Sn(t,e),Sn(a,r)),u),n)}function dt(e,t,n,a,u,r,o){return hr(t&n|~t&a,e,t,u,r,o)}function mt(e,t,n,a,u,r,o){return hr(t&a|n&~a,e,t,u,r,o)}function gt(e,t,n,a,u,r,o){return hr(t^n^a,e,t,u,r,o)}function pt(e,t,n,a,u,r,o){return hr(n^(t|~a),e,t,u,r,o)}function fr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function q0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=fr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=fr(u.concat(q0(t)),512+t.length*8),gc(fr(r.concat(o),512+128))}function pc(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function $0(e){return unescape(encodeURIComponent(e))}function fc(e){return fh($0(e))}function bh(e){return pc(fc(e))}function hc(e,t){return hh($0(e),$0(t))}function Eh(e,t){return pc(hc(e,t))}function Dn(e,t,n){return t?n?hc(t,e):Eh(t,e):n?fc(e):bh(e)}function bc(e,t,n){let a=yh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((s,l)=>s+l.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function yh(e,t){let n=[],a=[];for(let u=0;u0?f"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};function Ui(e){return Array.isArray(e)?e:e?[e]:[]}function Wi(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function An(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function pr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let s=Ui(i);u[o]=Array.from(new Set([...u[o],...s]))}else u[o]=Ui(i)}),u}function bh(){if(de.PROD==="1")return{};let e={};if(de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(de.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:de.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(de.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:de.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(de.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&de.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:de.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:de.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(de.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:de.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(de.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=de.DEEPL_PROXY_ENDPOINT),de.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=de.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),de.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:de.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return de.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),de.MOCK==="1"&&(e.translationService="mock"),de.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=de.IMMERSIVE_TRANSLATE_SERVICE),e}async function du(){let e=await q.storage.local.get(uu);if(e[uu]){let t=e[uu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await mu(r),r}else return{}}async function mu(e){await q.storage.local.set({[uu]:e})}async function dc(e){await q.storage.local.set({[vn]:e})}async function mc(){let e=await q.storage.local.get(vn),n={...pc(),...gr,buildinConfigUpdatedAt:de.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function Gn(){let e=await q.storage.local.get(vn),t={...gr,buildinConfigUpdatedAt:de.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let C=new Date(p.buildinConfigUpdatedAt),M=new Date(t.buildinConfigUpdatedAt);C>M&&(t=p)}}let n={};if(!ne()&&q.commands&&q.commands.getAll){let p=await q.commands.getAll();for(let C of p)C.name&&C.shortcut&&(n[C.name]=C.shortcut)}let a=pc(),u=bh(),r=await qi(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await du(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(C=>new Date(C.expiredAt)>s);if(p.length>0){let C=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],M=Array.isArray(C)?C:[C],L=Array.from(new Set(M.concat(p.map(A=>A.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:L}}}let l=Object.assign({},o,u,r);if(!l.interfaceLanguage){let p=await Eh();l.interfaceLanguage=p}let c=l.interfaceLanguage==="en",d=l.targetLanguage==="en",m=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,g=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!d&&!m&&g?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),w=Object.keys(f),T=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of w){let C=p;if(C==="generalRule")typeof l[C]=="object"&&(f[C]=pr(a[C],l[C]));else if(C==="translationServices"){let M=l[C]||{},L=t[C]||{},A=Object.keys(L),y=Object.keys(M),S=[...new Set([...A,...y])],D={};for(let x of S)D[x]={...L[x],...M[x]};f[C]=D}else if(typeof l[C]!="string"&&typeof l[C]!="boolean"&&typeof l[C]!="number"&&T.includes(C))l[C]&&(f[C]=Object.assign(f[C],l[C])),C==="shortcuts"&&(ne()||Rt()?f[C]={...f[C],...n}:f[C]={...n});else if(C==="rules"){if(Array.isArray(l[C])&&(f[C]=[...l[C],...f[C]]),de.PROD==="0"&&de.DEV_RULES){let M=JSON.parse(de.DEV_RULES);f[C]=[...M,...f[C]]}}else l[C]!==void 0&&(f[C]=l[C])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function qi(){return(await q.storage.sync.get("userConfig")||{}).userConfig||{}}async function gc(e){await q.storage.sync.set({userConfig:e})}var Eh=async()=>{let e=["zh-CN"];try{e=await q.i18n.getAcceptLanguages()}catch(a){v.warn("get browser language error:",a)}let n=e.map(a=>Kn(a)).find(a=>It[a]);return n||"en"},pc=()=>{let e={...gr,buildinConfigUpdatedAt:de.BUILD_TIME};return{...e,targetLanguage:ur,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var Ze=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function hc(e){let t;if(e&&e.retry&&e.retry>0)try{t=await ci(fc.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await fc(e);return t}async function fc(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await r(t,a)}catch(s){v.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of yh(i.body)){let d=new TextDecoder().decode(c);s+=d;let m;for(;(m=s.indexOf(` +`))>=0;){let g=s.slice(0,m).trim();if(s=s.slice(m+1),g.startsWith("event:")||g==="")continue;let f="";if(g.startsWith("data:")&&(f=g.slice(5).trim()),f==="[DONE]")break;let w;try{w=JSON.parse(f??"")}catch(T){v.debug("json error",T);continue}l=w}}return l}}else{let s;try{s=await i.text()}catch(d){v.error("parse response failed",d)}s&&v.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new Ze("fetchError",c,s)}}async function*yh(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Sn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function Th(e,t){return e<>>32-t}function hr(e,t,n,a,u,r){return Sn(Th(Sn(Sn(t,e),Sn(a,r)),u),n)}function dt(e,t,n,a,u,r,o){return hr(t&n|~t&a,e,t,u,r,o)}function mt(e,t,n,a,u,r,o){return hr(t&a|n&~a,e,t,u,r,o)}function gt(e,t,n,a,u,r,o){return hr(t^n^a,e,t,u,r,o)}function pt(e,t,n,a,u,r,o){return hr(n^(t|~a),e,t,u,r,o)}function fr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function $i(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=fr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=fr(u.concat($i(t)),512+t.length*8),bc(fr(r.concat(o),512+128))}function Ec(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function Ki(e){return unescape(encodeURIComponent(e))}function yc(e){return xh(Ki(e))}function wh(e){return Ec(yc(e))}function Tc(e,t){return Ch(Ki(e),Ki(t))}function vh(e,t){return Ec(Tc(e,t))}function Dn(e,t,n){return t?n?Tc(t,e):vh(t,e):n?yc(e):wh(e)}function xc(e,t,n){let a=kh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((s,l)=>s+l.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function kh(e,t){let n=[],a=[];for(let u=0;u0?ft){let p=[];K0(v,t,p);for(let C=0;C0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&K0(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let s=r.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){u=!1;break}}r.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var Ec=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let s=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,d=!!s.beta;return i===e.translationService||l&&u||c&&(n||u)||d&&(a||n||u)?!0:!c&&!d&&!l}).map(i=>G0(i,e))};function _t(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var ba=[];async function br(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function yc(e){let t=`${H}-${e.service}@${e.from}->${e.to}`;return await xh(t,e)}async function Tc(e){let t=Dn(e.originalText),n=`${H}-${e.service}@${e.from}->${e.to}`;return await Th(n,t)}async function Th(e,t){let n=await br(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),u()}})}async function xh(e,t){let n=await br(e);return(await wh()).includes(e)||await Ch(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=s=>{n.close(),u(!0)},i.onerror=s=>{n.close(),u(!1)}})}async function Ch(e){let t="cache_list",n=await br(H+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),ba.push(e)},u.onerror=r=>{n.close()}}async function wh(){if(ba&&ba.length>0)return ba;let e=await br(H+"-cacheList","cache_list");return ba=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),ba}function Qe(){try{return globalThis.self!==globalThis.top}catch{return!0}}var V0="Original";function Re(){return V0}function Tt(e){V0=e,xc(V0)}var wc="auto",Er="auto",Cc="auto";function yr(e){wc=e}function Ut(e){Er=e}function an(){return Er!=="auto"?Er:Cc!=="auto"?Cc:wc}function Ea(){return Er}var vc=ie+"SyncStoreKey_";function J0(e,t){let n=vc+e;return q.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=vc+e;return q.storage.sync.set({[n]:t})}var gu=new Map,ya=class{constructor(t,n=!1){this.logger=new su,n&&this.logger.setLevel("debug"),this.fromType=t,gu.has(t)||(gu.set(t,new Map),q.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,s,l,c;u.tab&&u.tab.id&&(s=u.tab.id,o=`${o}:${s}`,l=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let d=X0(i),{type:m,name:g}=d;if(m!==t)return!1;let f=X0(o),T=gu.get(m).get(g);if(!T)return this.logger.debug(`no message handler for ${m}:${i}, but it's ok`),!1;let{messageHandler:p,sync:C}=T,M={type:t,name:f.name,id:s,url:l,active:c};if(C){try{let L=p(a.payload,M);r({ok:!0,data:L})}catch(L){r({ok:!1,errorName:L.name,errorMessage:L.message,errorDetails:L.details})}return!1}else return p(a.payload,M).then(L=>{r({ok:!0,data:L})}).catch(L=>{r({ok:!1,errorName:L.name,errorMessage:L.message,errorDetails:L.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=gu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new Y0(`${r}:${t}`,this.logger);return gu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},Y0=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=X0(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await q.runtime.sendMessage(o);return kc(o,i,this.logger)}catch(i){if(u==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await q.tabs.sendMessage(r,o);return kc(o,i,this.logger)}}};function kc(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Ze(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Ze("noResponse","Unknown error")}function X0(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ta=async function(e,t){let{method:n,data:a}=e,u=await Pc(),r=Date.now();k.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await Q0(),et(pn,r)):n==="translateTheMainPage"?(await Ar(),et(pn,r)):n==="translateToThePageEndImmediately"?(await Fc(),et(pn,r)):n==="toggleTranslatePage"?(await wr(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await Lc(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await Sc(),et(pn,r)):n==="toggleOnlyTransation"?(await Sr(),et(pn,r)):n==="translatePage"?(await Jt(u),et(pn,r)):n==="toggleTranslationMask"?await kr():n==="restorePage"?Vn():n==="setCurrentPageLanguageByClient"?Ut(a):n==="retryFailedParagraphs"?vr():n==="switchTranslationMode"&&a&&a.mode&&Dc(a.mode)},vh=function(e,t){let{method:n,data:a}=e;if(k.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Re();if(n==="getCurrentPageLanguage"){let u=an();return Z0().catch(r=>{k.warn("detectCurrentPageLanguage failed",r)}),u}},Tr,xr;function Ac(){let e=Cr();Qe()||kh(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Cr(){return Tr||(Tr=new ya("content_script",!1).getConnection("main",Ta),Tr)}function kh(){return xr||(xr=new ya("content_script",!1).getConnection("main_sync",vh,{sync:!0}),xr)}var Ah=new Map;function Mc(e){let t=Sh(64),n=new CustomEvent(Xu,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{Ah.set(t,(r,o)=>{r?u(r):a(o)})})}function Sh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Ic(e){return ne()?Tc(e):qe({method:"queryParagraphCache",data:e})}async function jc(e){if(ne()){await yc(e);return}return qe({method:"setParagraphCache",data:e})}async function zc(){if(ne())return Promise.resolve();await qe({method:"mockRequest"})}function Lr(e=!1,t=""){return ne()?(q.runtime.openOptionsPage(e,t),Promise.resolve()):qe({method:"openOptionsPage"})}function Hc(e=""){return ne()||Rt()?lt().OPTIONS_URL:q.runtime.getURL("options.html")}function Uc(e=""){return q&&q.runtime&&q.runtime.getURL?q.runtime.getURL("options.html"):""}function Fr(e=!1){return ne()?(q.extra.openAboutPage(e),Promise.resolve()):qe({method:"openAboutPage"})}function Wc(e=!1){return ne()?(q.extra.openSearchEnhancement(e),Promise.resolve()):qe({method:"openSearchEnhancement"})}function Pr(e=!1){return ne()?(q.extra.openEbookViewerPage(e),Promise.resolve()):qe({method:"openEbookViewerPage"})}function qc(e=!1){return ne()?Promise.resolve():qe({method:"openHtmlViewerPage"})}function Mr(e=!1){return ne()?(q.extra.openEbookBuilderPage(e),Promise.resolve()):qe({method:"openEbookBuilderPage"})}function _r(e){Rt()}function ei(e=!1){return ne()?(alert("it's not support in userscript"),Promise.resolve()):qe({method:"openPdfViewerPage"})}function $c(e=!1){return ne()?(q.extra.openSubtitleBuilderPage(e),Promise.resolve()):qe({method:"openSubtitleBuilderPage"})}function Kc(){return ne()?(k.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):qe({method:"autoSyncLatestConfig"})}var Gc=ie+"StoreKey_";function Br(e,t){let n=Gc+e;return q.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Vc(e,t){let n=Gc+e;return q.storage.local.set({[n]:t})}var Rr={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.1",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Fn(){return Rr.version}var Jc="G-MKMD9LWFTR";async function $e(e,t,n){try{let a=lt();if(a.INSTALL_FROM==="firefox_store")return;let r=ne(),o=Qe(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let D=await Br(s,0),x=Or(new Date(D)),F=Date.now(),O=Or(new Date(F));if(x===O)return;await Vc(s,F)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",d=await J0("fakeUserId","");d||(d=await Br("fakeUserId",""),d&&await et("fakeUserId",d));let m=Fn(),g=new Date,f=await J0("installedAt","");f||(f=await Br("installedAt",""),f&&await et("installedAt",f)),d?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(d=Lh(32),await et("fakeUserId",d)),f||(f=g.toISOString(),await et("installedAt",f));let v=new Date(f),T=Or(v),p=Or(g),C=T===p,M=g.getTime()-v.getTime()<7*24*60*60*1e3,L=`https://www.google-analytics.com/mp/collect?measurement_id=${Jc}&api_secret=${c}`;i||(L=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${Jc}&api_secret=${c}`);let A=$u.parse(window.navigator.userAgent),y=t.map(D=>{let x=D.params||{};A.os&&(x.os_name=A.os.name||"unknown",x.os_version=A.os.version||"unknown",x.os_version_name=A.os.versionName||"unknown"),A.browser&&(x.browser_name=A.browser.name||"unknown",x.browser_version=A.browser.version||"unknown"),A.platform&&(x.platform_type=A.platform.type||"unknown"),A.engine&&(x.engine_name=A.engine.name||"unknown",x.engine_version=A.engine.version||"unknown"),n.translationService&&(x.translation_service=n.translationService),n.targetLanguage&&(x.target_language=n.targetLanguage),n.config.interfaceLanguage&&(x.interface_language=n.config.interfaceLanguage),m&&(x.version=m),n.config.translationTheme&&(x.translation_theme=n.config.translationTheme),n.config.alpha&&(x.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?x.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):x.always_translate_languages="none",a.INSTALL_FROM&&(x.install_from=a.INSTALL_FROM),n.config.beta&&(x.beta=n.config.alpha.toString()),n.config.translationArea&&(x.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(x.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),T&&(x.install_day=Fh(v)),n.config.translationMode&&(x.translation_mode=n.config.translationMode),x.userscript=r.toString(),C?x.is_new_user_today="1":x.is_new_user_today="0",M?x.is_new_user_this_week="1":x.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?x.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():x.temp_translate_domain_minutes="0";let F="html";if(n.rule.isEbook?F="ebookReader":n.rule.isPdf?F="pdfReader":n.rule.isEbookBuilder?F="ebookBuilder":n.rule.isSubtitleBuilder&&(F="subtitleBuilder"),x.page_type=F,o?x.main_frame=0:x.main_frame=1,!l){let O=n.url;try{let w=new URL(O);x.site_host=w.hostname}catch{x.site_host="unknown"}n.sourceLanguage&&(x.source_language=n.sourceLanguage)}return{...D,params:x}}),S=await $({responseType:"text",url:L,method:"POST",body:JSON.stringify({client_id:d,user_id:d,events:y})})}catch{}}function Lh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var st=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function Pn(e){return e!=null}function Qc(e,t,n){return`${e.type}#${t}#${n}`}function e3(e,t,n,a,u){return{body:u,id:a,type:Qc(e,t,n)}}function Ph(e,t,n,a){return{id:n,response:a,type:Qc(e,"ask",t)}}function t3(e,t,n,a){if(Pn(a)){let u=a.type;if(Pn(u)&&Pn(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Mh(e,t,n){if(Pn(n)){let a=n.type;if(Pn(a)&&Pn(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function _h(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function Bh(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Mh(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Rh(e,t,n,a){let u=r=>{let o=r.data;t3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function Xc(e,t,n,a,u,r){let o=async i=>{let s=i.data;if(t3(n,"ask",a,s)){let l=await r(s.body);t=i.source,t.postMessage(Ph(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function Oh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(e3(t,"tell",n,r,a),u)}async function Zc(e,t,n,a,u,r,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let d=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),m=await Bh(e,n,a,i);clearTimeout(d),l(m)});return t.postMessage(e3(n,"ask",a,i,u),r),s}var un=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];Xc(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(Pn(r))return new un(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new un(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new un(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await Zc(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Rh(this.thisWindow,this.protocol,t,n))}tell(t,n){Oh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(Xc(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return Zc(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){_h(this.listeners)}};var Nh;function Nr(){return Nh}var Ih=new st({limit:7,interval:1250}),jh={tencent:new st({limit:3,interval:1350}),baidu:new st({limit:1,interval:1550}),strict:new st({limit:1,interval:1050}),d:new st({limit:1,interval:1050}),youdao:new st({limit:5,interval:1050}),you:new st({limit:5,interval:1050}),cai:new st({limit:5,interval:1050}),google:new st({limit:10,interval:1050}),deepl:new st({limit:10,interval:1050}),transmart:new st({limit:30,interval:1050}),papago:new st({limit:3,interval:1150}),openai:new st({limit:10,interval:1300}),chatgpt:new st({limit:1,interval:1350})};function pu(e){return jh[e]||Ih}async function n3(e){if(Qe()){let n=Nr();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return k.error("can not comunicate with root frame, use strict limiter",a),pu("strict").getDelay()}else return pu("strict").getDelay()}else return pu(e).getDelay()}async function a3(e,t){if(!Qe()){let a=pu(e);t&&a.setOptions(t)}}async function u3(e){let t=e.key;return{value:pu(t).getDelay()}}var ae=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let T of u)T.from&&T.from!=="auto"&&i.add(T.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=bc(u,l,c)}catch(T){if(a)for(let p=0;pT));let d=[],m=[],g=(T,p,C)=>{let M=p.translatedTexts[0];m[T]||(m[T]=p,m[T].translatedTexts=Array(p.sentenceTotalParts).fill(null)),m[T].translatedTexts[p.partIndex]=M;let L=m[T],A=0;for(let y=0;y{let L=await n3(this.translationOptions.translationService);await Xa(L||0);let A=p.from;if(s&&(A="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(A=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(S=>S.text),from:A,to:p.to,url:C,options:n}),sourceTempSentences:p.tempSentences};{let y=E4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(y=this.serviceConfig.translationTextSeparator);let S=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(S=this.serviceConfig.newlinePlaceholderDelimiters);let D="";S&&S.length>=2?D=p.tempSentences.map((B,J)=>J===p.tempSentences.length-1?B.text:B.text+S[0]+(J+1)+S[1]).join(""):D=p.tempSentences.map(B=>B.text).join(y);let x=await this.translate({text:D,from:A,to:p.to,url:C,options:n}),{text:F}=x,O=[];if(S&&S.length>=2){let B=`${S[0]}\\d+${S[1]}`;S&&S.length>=3&&(B=S[2]);let J=new RegExp(B,"g");O=F.split(J)}else O=F.split(y);let w=[];if(O.length>p.tempSentences.length){for(let B=0;B{let{text:A,sourceTempSentences:y}=L;for(let S=0;S{if(a){for(let A=0;A({...T.sentence,text:T.translatedTexts.join("")}))}}detectLanguageLocally(t){return Je({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ae.langMap=new Map;var xa="input is invalid type",ti=typeof window=="object",Mn=ti?window:{};Mn.JS_SHA256_NO_WINDOW&&(ti=!1);var zh=!ti&&typeof self=="object",Hh=!Mn.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Hh?Mn=global:zh&&(Mn=self);var ZC=!Mn.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,QC=typeof define=="function"&&define.amd,fu=!Mn.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",K="0123456789abcdef".split(""),Uh=[-2147483648,8388608,32768,128],Yt=[24,16,8,0],Ir=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],jr=["hex","array","digest","arrayBuffer"],ut=[];(Mn.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});fu&&(Mn.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var r3=function(e,t){return function(n){return new rt(t,!0).update(n)[e]()}},i3=function(e){var t=r3("hex",e);t.create=function(){return new rt(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};rt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Uh[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};rt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,d,m,g,f,v,T,p,C,M;for(l=16;l<64;++l)g=s[l-15],c=(g>>>7|g<<25)^(g>>>18|g<<14)^g>>>3,g=s[l-2],d=(g>>>17|g<<15)^(g>>>19|g<<13)^g>>>10,s[l]=s[l-16]+c+s[l-7]+d<<0;for(M=t&n,l=0;l<64;l+=4)this.first?(this.is224?(T=300032,g=s[0]-1413257819,i=g-150054599<<0,a=g+24177077<<0):(T=704751109,g=s[0]-210244248,i=g-1521486534<<0,a=g+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),d=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),T=e&t,m=T^e&n^M,v=u&r^~u&o,g=i+d+v+Ir[l]+s[l],f=c+m,i=a+g<<0,a=g+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),d=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,m=p^a&t^T,v=i&u^~i&r,g=o+d+v+Ir[l+1]+s[l+1],f=c+m,o=n+g<<0,n=g+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),d=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),C=n&a,m=C^n&e^p,v=o&i^~o&u,g=r+d+v+Ir[l+2]+s[l+2],f=c+m,r=t+g<<0,t=g+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),d=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),M=t&n,m=M^t&a^C,v=r&o^~r&i,g=u+d+v+Ir[l+3]+s[l+3],f=c+m,u=e+g<<0,e=g+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};rt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=K[e>>28&15]+K[e>>24&15]+K[e>>20&15]+K[e>>16&15]+K[e>>12&15]+K[e>>8&15]+K[e>>4&15]+K[e&15]+K[t>>28&15]+K[t>>24&15]+K[t>>20&15]+K[t>>16&15]+K[t>>12&15]+K[t>>8&15]+K[t>>4&15]+K[t&15]+K[n>>28&15]+K[n>>24&15]+K[n>>20&15]+K[n>>16&15]+K[n>>12&15]+K[n>>8&15]+K[n>>4&15]+K[n&15]+K[a>>28&15]+K[a>>24&15]+K[a>>20&15]+K[a>>16&15]+K[a>>12&15]+K[a>>8&15]+K[a>>4&15]+K[a&15]+K[u>>28&15]+K[u>>24&15]+K[u>>20&15]+K[u>>16&15]+K[u>>12&15]+K[u>>8&15]+K[u>>4&15]+K[u&15]+K[r>>28&15]+K[r>>24&15]+K[r>>20&15]+K[r>>16&15]+K[r>>12&15]+K[r>>8&15]+K[r>>4&15]+K[r&15]+K[o>>28&15]+K[o>>24&15]+K[o>>20&15]+K[o>>16&15]+K[o>>12&15]+K[o>>8&15]+K[o>>4&15]+K[o&15];return this.is224||(s+=K[i>>28&15]+K[i>>24&15]+K[i>>20&15]+K[i>>16&15]+K[i>>12&15]+K[i>>8&15]+K[i>>4&15]+K[i&15]),s};rt.prototype.toString=rt.prototype.hex;rt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};rt.prototype.array=rt.prototype.digest;rt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function zr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,s;for(a=0;a>6,r[i++]=128|s&63):s<55296||s>=57344?(r[i++]=224|s>>12,r[i++]=128|s>>6&63,r[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|s>>18,r[i++]=128|s>>12&63,r[i++]=128|s>>6&63,r[i++]=128|s&63);e=r}else if(u==="object"){if(e===null)throw new Error(xa);if(fu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!fu||!ArrayBuffer.isView(e)))throw new Error(xa)}else throw new Error(xa);e.length>64&&(e=new rt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var d=e[a]||0;l[a]=92^d,c[a]=54^d}rt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}zr.prototype=new rt;zr.prototype.finalize=function(){if(rt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();rt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),rt.prototype.finalize.call(this)}};var Ca=i3();Ca.sha256=Ca;Ca.sha224=i3(!0);Ca.sha256.hmac=s3();Ca.sha224.hmac=s3(!0);var l3=Ca;var c3=l3.sha256;function Xt(e){return Promise.resolve(c3(e))}function Hr(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function _n(e,t){let n=c3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function d3(e,t){let n=await _n(e,t);return Hr(n)}async function Ur(e,t){let n=Wh(t),a=await _n(e,n);return Hr(a)}function Wh(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}var m3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Zt=class extends ae{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceText:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceTextList:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),d=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Xt(r)].join(` +`;continue}else if(w.length>t){let p=[];Gi(w,t,p);for(let C=0;C0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&Gi(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let s=r.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){u=!1;break}}r.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var Cc=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let s=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,d=!!s.beta;return i===e.translationService||l&&u||c&&(n||u)||d&&(a||n||u)?!0:!c&&!d&&!l}).map(i=>Vi(i,e))};function _t(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var ba=[];async function br(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function wc(e){let t=`${z}-${e.service}@${e.from}->${e.to}`;return await Sh(t,e)}async function vc(e){let t=Dn(e.originalText),n=`${z}-${e.service}@${e.from}->${e.to}`;return await Ah(n,t)}async function Ah(e,t){let n=await br(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),u()}})}async function Sh(e,t){let n=await br(e);return(await Lh()).includes(e)||await Dh(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=s=>{n.close(),u(!0)},i.onerror=s=>{n.close(),u(!1)}})}async function Dh(e){let t="cache_list",n=await br(z+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),ba.push(e)},u.onerror=r=>{n.close()}}async function Lh(){if(ba&&ba.length>0)return ba;let e=await br(z+"-cacheList","cache_list");return ba=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),ba}function Qe(){try{return globalThis.self!==globalThis.top}catch{return!0}}var Ji="Original";function Re(){return Ji}function Tt(e){Ji=e,kc(Ji)}var Sc="auto",Er="auto",Ac="auto";function yr(e){Sc=e}function Ut(e){Er=e}function un(){return Er!=="auto"?Er:Ac!=="auto"?Ac:Sc}function Ea(){return Er}var Dc=ie+"SyncStoreKey_";function Yi(e,t){let n=Dc+e;return q.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=Dc+e;return q.storage.sync.set({[n]:t})}var gu=new Map,ya=class{constructor(t,n=!1){this.logger=new su,n&&this.logger.setLevel("debug"),this.fromType=t,gu.has(t)||(gu.set(t,new Map),q.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,s,l,c;u.tab&&u.tab.id&&(s=u.tab.id,o=`${o}:${s}`,l=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let d=Zi(i),{type:m,name:g}=d;if(m!==t)return!1;let f=Zi(o),T=gu.get(m).get(g);if(!T)return this.logger.debug(`no message handler for ${m}:${i}, but it's ok`),!1;let{messageHandler:p,sync:C}=T,M={type:t,name:f.name,id:s,url:l,active:c};if(C){try{let L=p(a.payload,M);r({ok:!0,data:L})}catch(L){r({ok:!1,errorName:L.name,errorMessage:L.message,errorDetails:L.details})}return!1}else return p(a.payload,M).then(L=>{r({ok:!0,data:L})}).catch(L=>{r({ok:!1,errorName:L.name,errorMessage:L.message,errorDetails:L.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=gu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new Xi(`${r}:${t}`,this.logger);return gu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},Xi=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=Zi(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await q.runtime.sendMessage(o);return Lc(o,i,this.logger)}catch(i){if(u==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await q.tabs.sendMessage(r,o);return Lc(o,i,this.logger)}}};function Lc(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Ze(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Ze("noResponse","Unknown error")}function Zi(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ta=async function(e,t){let{method:n,data:a}=e,u=await Rc(),r=Date.now();v.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await e0(),et(pn,r)):n==="translateTheMainPage"?(await Ar(),et(pn,r)):n==="translateToThePageEndImmediately"?(await Bc(),et(pn,r)):n==="toggleTranslatePage"?(await wr(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await _c(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await Pc(),et(pn,r)):n==="toggleOnlyTransation"?(await Sr(),et(pn,r)):n==="translatePage"?(await Jt(u),et(pn,r)):n==="toggleTranslationMask"?await kr():n==="restorePage"?Vn():n==="setCurrentPageLanguageByClient"?Ut(a):n==="retryFailedParagraphs"?vr():n==="switchTranslationMode"&&a&&a.mode&&Mc(a.mode)},Fh=function(e,t){let{method:n,data:a}=e;if(v.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Re();if(n==="getCurrentPageLanguage"){let u=un();return Qi().catch(r=>{v.warn("detectCurrentPageLanguage failed",r)}),u}},Tr,xr;function Fc(){let e=Cr();Qe()||Ph(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Cr(){return Tr||(Tr=new ya("content_script",!1).getConnection("main",Ta),Tr)}function Ph(){return xr||(xr=new ya("content_script",!1).getConnection("main_sync",Fh,{sync:!0}),xr)}var Mh=new Map;function Oc(e){let t=_h(64),n=new CustomEvent(Xu,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{Mh.set(t,(r,o)=>{r?u(r):a(o)})})}function _h(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Uc(e){return ne()?vc(e):qe({method:"queryParagraphCache",data:e})}async function Wc(e){if(ne()){await wc(e);return}return qe({method:"setParagraphCache",data:e})}async function qc(){if(ne())return Promise.resolve();await qe({method:"mockRequest"})}function Lr(e=!1,t=""){return ne()?(q.runtime.openOptionsPage(e,t),Promise.resolve()):qe({method:"openOptionsPage"})}function $c(e=""){return ne()||Rt()?lt().OPTIONS_URL:q.runtime.getURL("options.html")}function Kc(e=""){return q&&q.runtime&&q.runtime.getURL?q.runtime.getURL("options.html"):""}function Fr(e=!1){return ne()?(q.extra.openAboutPage(e),Promise.resolve()):qe({method:"openAboutPage"})}function Gc(e=!1){return ne()?(q.extra.openSearchEnhancement(e),Promise.resolve()):qe({method:"openSearchEnhancement"})}function Pr(e=!1){return ne()?(q.extra.openEbookViewerPage(e),Promise.resolve()):qe({method:"openEbookViewerPage"})}function Vc(e=!1){return ne()?Promise.resolve():qe({method:"openHtmlViewerPage"})}function Mr(e=!1){return ne()?(q.extra.openEbookBuilderPage(e),Promise.resolve()):qe({method:"openEbookBuilderPage"})}function _r(e){Rt()}function t0(e=!1){return ne()?(alert("it's not support in userscript"),Promise.resolve()):qe({method:"openPdfViewerPage"})}function Jc(e=!1){return ne()?(q.extra.openSubtitleBuilderPage(e),Promise.resolve()):qe({method:"openSubtitleBuilderPage"})}function Yc(){return ne()?(v.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):qe({method:"autoSyncLatestConfig"})}var Xc=ie+"StoreKey_";function Br(e,t){let n=Xc+e;return q.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Zc(e,t){let n=Xc+e;return q.storage.local.set({[n]:t})}var Rr={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.2",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Fn(){return Rr.version}var Qc="G-MKMD9LWFTR";async function Je(e,t,n){try{let a=lt();if(a.INSTALL_FROM==="firefox_store")return;let r=ne(),o=Qe(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let D=await Br(s,0),x=Or(new Date(D)),F=Date.now(),O=Or(new Date(F));if(x===O)return;await Zc(s,F)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",d=await Yi("fakeUserId","");d||(d=await Br("fakeUserId",""),d&&await et("fakeUserId",d));let m=Fn(),g=new Date,f=await Yi("installedAt","");f||(f=await Br("installedAt",""),f&&await et("installedAt",f)),d?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(d=Rh(32),await et("fakeUserId",d)),f||(f=g.toISOString(),await et("installedAt",f));let w=new Date(f),T=Or(w),p=Or(g),C=T===p,M=g.getTime()-w.getTime()<7*24*60*60*1e3,L=`https://www.google-analytics.com/mp/collect?measurement_id=${Qc}&api_secret=${c}`;i||(L=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${Qc}&api_secret=${c}`);let A=$u.parse(window.navigator.userAgent),y=t.map(D=>{let x=D.params||{};A.os&&(x.os_name=A.os.name||"unknown",x.os_version=A.os.version||"unknown",x.os_version_name=A.os.versionName||"unknown"),A.browser&&(x.browser_name=A.browser.name||"unknown",x.browser_version=A.browser.version||"unknown"),A.platform&&(x.platform_type=A.platform.type||"unknown"),A.engine&&(x.engine_name=A.engine.name||"unknown",x.engine_version=A.engine.version||"unknown"),n.translationService&&(x.translation_service=n.translationService),n.targetLanguage&&(x.target_language=n.targetLanguage),n.config.interfaceLanguage&&(x.interface_language=n.config.interfaceLanguage),m&&(x.version=m),n.config.translationTheme&&(x.translation_theme=n.config.translationTheme),n.config.alpha&&(x.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?x.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):x.always_translate_languages="none",a.INSTALL_FROM&&(x.install_from=a.INSTALL_FROM),n.config.beta&&(x.beta=n.config.alpha.toString()),n.config.translationArea&&(x.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(x.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),T&&(x.install_day=Oh(w)),n.config.translationMode&&(x.translation_mode=n.config.translationMode),x.userscript=r.toString(),C?x.is_new_user_today="1":x.is_new_user_today="0",M?x.is_new_user_this_week="1":x.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?x.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():x.temp_translate_domain_minutes="0";let F="html";if(n.rule.isEbook?F="ebookReader":n.rule.isPdf?F="pdfReader":n.rule.isEbookBuilder?F="ebookBuilder":n.rule.isSubtitleBuilder&&(F="subtitleBuilder"),x.page_type=F,o?x.main_frame=0:x.main_frame=1,!l){let O=n.url;try{let k=new URL(O);x.site_host=k.hostname}catch{x.site_host="unknown"}n.sourceLanguage&&(x.source_language=n.sourceLanguage)}return{...D,params:x}}),S=await $({responseType:"text",url:L,method:"POST",body:JSON.stringify({client_id:d,user_id:d,events:y})})}catch{}}function Rh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var st=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function Pn(e){return e!=null}function a3(e,t,n){return`${e.type}#${t}#${n}`}function u3(e,t,n,a,u){return{body:u,id:a,type:a3(e,t,n)}}function Nh(e,t,n,a){return{id:n,response:a,type:a3(e,"ask",t)}}function r3(e,t,n,a){if(Pn(a)){let u=a.type;if(Pn(u)&&Pn(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Ih(e,t,n){if(Pn(n)){let a=n.type;if(Pn(a)&&Pn(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function jh(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function zh(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Ih(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Hh(e,t,n,a){let u=r=>{let o=r.data;r3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function t3(e,t,n,a,u,r){let o=async i=>{let s=i.data;if(r3(n,"ask",a,s)){let l=await r(s.body);t=i.source,t.postMessage(Nh(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function Uh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(u3(t,"tell",n,r,a),u)}async function n3(e,t,n,a,u,r,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let d=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),m=await zh(e,n,a,i);clearTimeout(d),l(m)});return t.postMessage(u3(n,"ask",a,i,u),r),s}var rn=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];t3(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(Pn(r))return new rn(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new rn(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new rn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await n3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Hh(this.thisWindow,this.protocol,t,n))}tell(t,n){Uh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(t3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return n3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){jh(this.listeners)}};var Wh;function Nr(){return Wh}var qh=new st({limit:7,interval:1250}),$h={tencent:new st({limit:3,interval:1350}),baidu:new st({limit:1,interval:1550}),strict:new st({limit:1,interval:1050}),d:new st({limit:1,interval:1050}),youdao:new st({limit:5,interval:1050}),you:new st({limit:5,interval:1050}),cai:new st({limit:5,interval:1050}),google:new st({limit:10,interval:1050}),deepl:new st({limit:10,interval:1050}),transmart:new st({limit:30,interval:1050}),papago:new st({limit:3,interval:1150}),openai:new st({limit:10,interval:1300}),chatgpt:new st({limit:1,interval:1350})};function pu(e){return $h[e]||qh}async function o3(e){if(Qe()){let n=Nr();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return v.error("can not comunicate with root frame, use strict limiter",a),pu("strict").getDelay()}else return pu("strict").getDelay()}else return pu(e).getDelay()}async function i3(e,t){if(!Qe()){let a=pu(e);t&&a.setOptions(t)}}async function s3(e){let t=e.key;return{value:pu(t).getDelay()}}var ae=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let T of u)T.from&&T.from!=="auto"&&i.add(T.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=xc(u,l,c)}catch(T){if(a)for(let p=0;pT));let d=[],m=[],g=(T,p,C)=>{let M=p.translatedTexts[0];m[T]||(m[T]=p,m[T].translatedTexts=Array(p.sentenceTotalParts).fill(null)),m[T].translatedTexts[p.partIndex]=M;let L=m[T],A=0;for(let y=0;y{let L=await o3(this.translationOptions.translationService);await Xa(L||0);let A=p.from;if(s&&(A="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(A=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(S=>S.text),from:A,to:p.to,url:C,options:n}),sourceTempSentences:p.tempSentences};{let y=C4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(y=this.serviceConfig.translationTextSeparator);let S=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(S=this.serviceConfig.newlinePlaceholderDelimiters);let D="";S&&S.length>=2?D=p.tempSentences.map((B,J)=>J===p.tempSentences.length-1?B.text:B.text+S[0]+(J+1)+S[1]).join(""):D=p.tempSentences.map(B=>B.text).join(y);let x=await this.translate({text:D,from:A,to:p.to,url:C,options:n}),{text:F}=x,O=[];if(S&&S.length>=2){let B=`${S[0]}\\d+${S[1]}`;S&&S.length>=3&&(B=S[2]);let J=new RegExp(B,"g");O=F.split(J)}else O=F.split(y);let k=[];if(O.length>p.tempSentences.length){for(let B=0;B{let{text:A,sourceTempSentences:y}=L;for(let S=0;S{if(a){for(let A=0;A({...T.sentence,text:T.translatedTexts.join("")}))}}detectLanguageLocally(t){return Ve({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ae.langMap=new Map;var xa="input is invalid type",n0=typeof window=="object",Mn=n0?window:{};Mn.JS_SHA256_NO_WINDOW&&(n0=!1);var Kh=!n0&&typeof self=="object",Gh=!Mn.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Gh?Mn=global:Kh&&(Mn=self);var n5=!Mn.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,a5=typeof define=="function"&&define.amd,fu=!Mn.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",K="0123456789abcdef".split(""),Vh=[-2147483648,8388608,32768,128],Yt=[24,16,8,0],Ir=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],jr=["hex","array","digest","arrayBuffer"],ut=[];(Mn.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});fu&&(Mn.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var l3=function(e,t){return function(n){return new rt(t,!0).update(n)[e]()}},d3=function(e){var t=l3("hex",e);t.create=function(){return new rt(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};rt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Vh[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};rt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,d,m,g,f,w,T,p,C,M;for(l=16;l<64;++l)g=s[l-15],c=(g>>>7|g<<25)^(g>>>18|g<<14)^g>>>3,g=s[l-2],d=(g>>>17|g<<15)^(g>>>19|g<<13)^g>>>10,s[l]=s[l-16]+c+s[l-7]+d<<0;for(M=t&n,l=0;l<64;l+=4)this.first?(this.is224?(T=300032,g=s[0]-1413257819,i=g-150054599<<0,a=g+24177077<<0):(T=704751109,g=s[0]-210244248,i=g-1521486534<<0,a=g+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),d=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),T=e&t,m=T^e&n^M,w=u&r^~u&o,g=i+d+w+Ir[l]+s[l],f=c+m,i=a+g<<0,a=g+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),d=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,m=p^a&t^T,w=i&u^~i&r,g=o+d+w+Ir[l+1]+s[l+1],f=c+m,o=n+g<<0,n=g+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),d=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),C=n&a,m=C^n&e^p,w=o&i^~o&u,g=r+d+w+Ir[l+2]+s[l+2],f=c+m,r=t+g<<0,t=g+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),d=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),M=t&n,m=M^t&a^C,w=r&o^~r&i,g=u+d+w+Ir[l+3]+s[l+3],f=c+m,u=e+g<<0,e=g+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};rt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=K[e>>28&15]+K[e>>24&15]+K[e>>20&15]+K[e>>16&15]+K[e>>12&15]+K[e>>8&15]+K[e>>4&15]+K[e&15]+K[t>>28&15]+K[t>>24&15]+K[t>>20&15]+K[t>>16&15]+K[t>>12&15]+K[t>>8&15]+K[t>>4&15]+K[t&15]+K[n>>28&15]+K[n>>24&15]+K[n>>20&15]+K[n>>16&15]+K[n>>12&15]+K[n>>8&15]+K[n>>4&15]+K[n&15]+K[a>>28&15]+K[a>>24&15]+K[a>>20&15]+K[a>>16&15]+K[a>>12&15]+K[a>>8&15]+K[a>>4&15]+K[a&15]+K[u>>28&15]+K[u>>24&15]+K[u>>20&15]+K[u>>16&15]+K[u>>12&15]+K[u>>8&15]+K[u>>4&15]+K[u&15]+K[r>>28&15]+K[r>>24&15]+K[r>>20&15]+K[r>>16&15]+K[r>>12&15]+K[r>>8&15]+K[r>>4&15]+K[r&15]+K[o>>28&15]+K[o>>24&15]+K[o>>20&15]+K[o>>16&15]+K[o>>12&15]+K[o>>8&15]+K[o>>4&15]+K[o&15];return this.is224||(s+=K[i>>28&15]+K[i>>24&15]+K[i>>20&15]+K[i>>16&15]+K[i>>12&15]+K[i>>8&15]+K[i>>4&15]+K[i&15]),s};rt.prototype.toString=rt.prototype.hex;rt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};rt.prototype.array=rt.prototype.digest;rt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function zr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,s;for(a=0;a>6,r[i++]=128|s&63):s<55296||s>=57344?(r[i++]=224|s>>12,r[i++]=128|s>>6&63,r[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|s>>18,r[i++]=128|s>>12&63,r[i++]=128|s>>6&63,r[i++]=128|s&63);e=r}else if(u==="object"){if(e===null)throw new Error(xa);if(fu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!fu||!ArrayBuffer.isView(e)))throw new Error(xa)}else throw new Error(xa);e.length>64&&(e=new rt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var d=e[a]||0;l[a]=92^d,c[a]=54^d}rt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}zr.prototype=new rt;zr.prototype.finalize=function(){if(rt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();rt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),rt.prototype.finalize.call(this)}};var Ca=d3();Ca.sha256=Ca;Ca.sha224=d3(!0);Ca.sha256.hmac=m3();Ca.sha224.hmac=m3(!0);var g3=Ca;var p3=g3.sha256;function Xt(e){return Promise.resolve(p3(e))}function Hr(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function _n(e,t){let n=p3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function f3(e,t){let n=await _n(e,t);return Hr(n)}async function Ur(e,t){let n=Jh(t),a=await _n(e,n);return Hr(a)}function Jh(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}var h3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Zt=class extends ae{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceText:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceTextList:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),d=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Xt(r)].join(` `),m=Zt.getUTCDate(l),g=["TC3-HMAC-SHA256",c,`${m}/${o}/tc3_request`,await Xt(d)].join(` -`),f=await d3(m,`TC3${a}`),v=await Ur(o,f),T=await Ur("tc3_request",v),p=await Ur(g,T),C=await $({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${m}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(C instanceof Error)throw C;if(C.Response&&C.Response.Error&&C.Response.Error.Message)throw new Error(C.Response.Error.Message);return C}},Jn=Zt;Jn.langMap=new Map(m3),Jn.langMapReverse=new Map(m3.map(([n,a])=>[a,n]));var g3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],qh={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Wr=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await $({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:qh});return{text:i.targetText,from:Wr.langMapReverse.get(i.source)||u,to:Wr.langMapReverse.get(i.target)||r}}},Yn=Wr;Yn.langMap=new Map(g3),Yn.langMapReverse=new Map(g3.map(([n,a])=>[a,n]));var p3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Bn=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await $({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await $({retry:2,url:o})}}},bn=Bn;bn.langMap=new Map(p3),bn.langMapReverse=new Map(p3.map(([n,a])=>[a,n]));function $h(e,t){return t?e+(t-e%t):e}function Kh(e,t){return e.split(t).length-1}function ni(e){let t=Date.now(),n=1;for(let a of e)n+=Kh(a,"i");return $h(t,n)}function Gh(e,t){return Math.floor(Math.random()*(t-e+1))+e}function ai(){return Gh(1e6,1e8)}var ui="https://www2.deepl.com/jsonrpc",ri="auto",f3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function Vh(e=f3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function oi(e){return Vh()[e.toLowerCase()]}var Jh={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function Yh(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function Xh(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function Zh(e,t,n,a,u,r,o){let i=ai(),s=Xh(a,n),l=[];t.forEach(m=>{l.push({text:m,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=ni(t);let c=await $({retry:2,method:"POST",url:e,body:Yh(s),headers:Jh}),d={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(m=>{d.text.push(m.text)}),d}async function h3(e,t,n,a=ri,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:Zh(e,t,oi(n),oi(a)??"auto",u,r,o):{text:[],from:a,to:n}}var b3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wa=class extends ae{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=ui;n&&n.apiUrl&&(this.API_URL=Ht(ui,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await h3(this.API_URL,a,wa.langMap.get(u)||u,wa.langMap.get(r)||"auto");return{text:o.text,from:wa.langMapReverse.get(o.from),to:wa.langMapReverse.get(o.to)}}},Rn=wa;Rn.langMap=new Map(b3),Rn.langMapReverse=new Map(b3.map(([n,a])=>[a,n]));var E3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],ii="https://transmart.qq.com/api/imt",Xn=class extends ae{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Xn.langMap.get(r)||r,i=Xn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let s=lt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=y3());let d=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),m=await $({url:ii,body:d,method:"POST",retry:2});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=lt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=y3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(u.join(` -`));if(l===r)return{text:u,from:l,to:r};let c=Xn.langMap.get(l)||l,d=Xn.langMap.get(r)||r,m=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:d},type:"plain"}),g=await $({url:ii,body:m,method:"POST"});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:l||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await $({url:ii,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Xn.langMapReverse.get(r);return o||r}},Zn=Xn;Zn.langMap=new Map(E3),Zn.langMapReverse=new Map(E3.map(([n,a])=>[a,n]));function y3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function T3(){return Math.random()>=0}var va=class extends ae{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await zc(),!T3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var C3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],si=new Map(C3),x3=new Map(C3.map(([e,t])=>[t,e])),li=class extends ae{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=li.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await $({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:si.get(u)||"auto",target_lang:si.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:x3.get(i.source_lang),to:x3.get(i.target_lang)}}else throw new Error(o.msg)}},hu=li;hu.langMap=si,hu.DEFAULT_CODENAME="deepl";var qr=hu;var $r=new Map;async function ci(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=Dn(e.body)),$r.has(t))return $r.get(t);let n=$(e);$r.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{$r.delete(t)},3e4)}}async function w3(e){return ci(e)}async function bu(e){if(Qe()){let n=Nr();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw k.error("can not comunicate with root frame, use strict limiter",a),a}else return ci(e)}else return ci(e)}var Dt=null,v3=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],di=new Map(v3),Qh=new Map(v3.map(([e,t])=>[t,e])),Kr=class extends ae{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ht(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ht(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ht(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ht(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await q.storage.local.remove(gn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await q.storage.local.get(gn);a&&a[gn]&&(Dt=a[gn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new qu(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?bu({url:u,...r}):$({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,q.storage.local.set({[gn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await q.storage.local.set({[gn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:di.get(a)||"",target_lang:di.get(u)||u},i=this.getRandomKey(),s=new URLSearchParams(o);r.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let d;if(i.startsWith("immersive_")){let f=new qu(i,{state:Dt,onFetch:(v,T)=>{let C=new URL(v).pathname;return C==="/refresh_token"||C==="/oidc/token"?bu({url:v,...T}):$({url:v,...T})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:v=>{Dt=v,q.storage.local.set({[gn]:Dt})}});d=await f.translateApi(l),f.getIsStateChanged()&&(Dt=f.getState(),await q.storage.local.set({[gn]:Dt}))}else d=await $({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:m}=d,g=m.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let T=await new bn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:m.map(p=>p.text).join(` +`),f=await f3(m,`TC3${a}`),w=await Ur(o,f),T=await Ur("tc3_request",w),p=await Ur(g,T),C=await $({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${m}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(C instanceof Error)throw C;if(C.Response&&C.Response.Error&&C.Response.Error.Message)throw new Error(C.Response.Error.Message);return C}},Jn=Zt;Jn.langMap=new Map(h3),Jn.langMapReverse=new Map(h3.map(([n,a])=>[a,n]));var b3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Yh={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Wr=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await $({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:Yh});return{text:i.targetText,from:Wr.langMapReverse.get(i.source)||u,to:Wr.langMapReverse.get(i.target)||r}}},Yn=Wr;Yn.langMap=new Map(b3),Yn.langMapReverse=new Map(b3.map(([n,a])=>[a,n]));var E3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Bn=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await $({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await $({retry:2,url:o})}}},bn=Bn;bn.langMap=new Map(E3),bn.langMapReverse=new Map(E3.map(([n,a])=>[a,n]));function Xh(e,t){return t?e+(t-e%t):e}function Zh(e,t){return e.split(t).length-1}function a0(e){let t=Date.now(),n=1;for(let a of e)n+=Zh(a,"i");return Xh(t,n)}function Qh(e,t){return Math.floor(Math.random()*(t-e+1))+e}function u0(){return Qh(1e6,1e8)}var r0="https://www2.deepl.com/jsonrpc",o0="auto",y3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function e9(e=y3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function i0(e){return e9()[e.toLowerCase()]}var t9={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function n9(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function a9(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function u9(e,t,n,a,u,r,o){let i=u0(),s=a9(a,n),l=[];t.forEach(m=>{l.push({text:m,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=a0(t);let c=await $({retry:2,method:"POST",url:e,body:n9(s),headers:t9}),d={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(m=>{d.text.push(m.text)}),d}async function T3(e,t,n,a=o0,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:u9(e,t,i0(n),i0(a)??"auto",u,r,o):{text:[],from:a,to:n}}var x3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wa=class extends ae{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=r0;n&&n.apiUrl&&(this.API_URL=Ht(r0,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await T3(this.API_URL,a,wa.langMap.get(u)||u,wa.langMap.get(r)||"auto");return{text:o.text,from:wa.langMapReverse.get(o.from),to:wa.langMapReverse.get(o.to)}}},Rn=wa;Rn.langMap=new Map(x3),Rn.langMapReverse=new Map(x3.map(([n,a])=>[a,n]));var C3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],s0="https://transmart.qq.com/api/imt",Xn=class extends ae{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Xn.langMap.get(r)||r,i=Xn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let s=lt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=w3());let d=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),m=await $({url:s0,body:d,method:"POST",retry:2});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=lt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=w3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(u.join(` +`));if(l===r)return{text:u,from:l,to:r};let c=Xn.langMap.get(l)||l,d=Xn.langMap.get(r)||r,m=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:d},type:"plain"}),g=await $({url:s0,body:m,method:"POST"});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:l||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await $({url:s0,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Xn.langMapReverse.get(r);return o||r}},Zn=Xn;Zn.langMap=new Map(C3),Zn.langMapReverse=new Map(C3.map(([n,a])=>[a,n]));function w3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function v3(){return Math.random()>=0}var va=class extends ae{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await qc(),!v3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var A3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],l0=new Map(A3),k3=new Map(A3.map(([e,t])=>[t,e])),c0=class extends ae{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=c0.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await $({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:l0.get(u)||"auto",target_lang:l0.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:k3.get(i.source_lang),to:k3.get(i.target_lang)}}else throw new Error(o.msg)}},hu=c0;hu.langMap=l0,hu.DEFAULT_CODENAME="deepl";var qr=hu;var $r=new Map;async function d0(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=Dn(e.body)),$r.has(t))return $r.get(t);let n=$(e);$r.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{$r.delete(t)},3e4)}}async function S3(e){return d0(e)}async function bu(e){if(Qe()){let n=Nr();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw v.error("can not comunicate with root frame, use strict limiter",a),a}else return d0(e)}else return d0(e)}var Dt=null,D3=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],m0=new Map(D3),r9=new Map(D3.map(([e,t])=>[t,e])),Kr=class extends ae{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ht(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ht(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ht(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ht(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await q.storage.local.remove(gn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await q.storage.local.get(gn);a&&a[gn]&&(Dt=a[gn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new qu(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?bu({url:u,...r}):$({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,q.storage.local.set({[gn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await q.storage.local.set({[gn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:m0.get(a)||"",target_lang:m0.get(u)||u},i=this.getRandomKey(),s=new URLSearchParams(o);r.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let d;if(i.startsWith("immersive_")){let f=new qu(i,{state:Dt,onFetch:(w,T)=>{let C=new URL(w).pathname;return C==="/refresh_token"||C==="/oidc/token"?bu({url:w,...T}):$({url:w,...T})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:w=>{Dt=w,q.storage.local.set({[gn]:Dt})}});d=await f.translateApi(l),f.getIsStateChanged()&&(Dt=f.getState(),await q.storage.local.set({[gn]:Dt}))}else d=await $({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:m}=d,g=m.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let T=await new bn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:m.map(p=>p.text).join(` `),url:"",options:{}});T&&T.text&&(g=T.text.split(` -`))}return{text:g,from:m[0]&&Qh.get(m[0].detected_source_language)||a,to:u}}};Kr.langMap=di;var k3=Kr;var e9=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],mi=new Map(e9),Gr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:mi.get(u)||u,to:mi.get(r)||r,apikey:this.APIKEY})},s=await $(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` -`)&&(l=l.slice(0,-1)),{text:l,from:u,to:r}}else throw new Error(JSON.stringify(s))}};Gr.langMap=mi;var A3=Gr;var t9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],gi=new Map(t9),Vr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:gi.get(r)||r};u!=="auto"&&(o.from=gi.get(u)||u);let i=new URLSearchParams(o),s=JSON.stringify(a.map(d=>({text:d}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await $(l);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(d=>d.translations.map(g=>g.text).join(" "))}}};Vr.langMap=gi;var S3=Vr;var n9=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Eu=new Map(n9),pi=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=` +`))}return{text:g,from:m[0]&&r9.get(m[0].detected_source_language)||a,to:u}}};Kr.langMap=m0;var L3=Kr;var o9=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],g0=new Map(o9),Gr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:g0.get(u)||u,to:g0.get(r)||r,apikey:this.APIKEY})},s=await $(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` +`)&&(l=l.slice(0,-1)),{text:l,from:u,to:r}}else throw new Error(JSON.stringify(s))}};Gr.langMap=g0;var F3=Gr;var i9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],p0=new Map(i9),Vr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:p0.get(r)||r};u!=="auto"&&(o.from=p0.get(u)||u);let i=new URLSearchParams(o),s=JSON.stringify(a.map(d=>({text:d}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await $(l);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(d=>d.translations.map(g=>g.text).join(" "))}}};Vr.langMap=p0;var P3=Vr;var s9=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Eu=new Map(s9),f0=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=`
-`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!Eu.get(u)?(o=(await $({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Eu.get(u)||u,target:Eu.get(r)||r})):l.body=JSON.stringify({text:s,source:Eu.get(u),target:Eu.get(r)||r});let c=await $(l);if(c.translatedText==="")throw new Error("server response invalid");let d=c.translatedText.split("
").map(m=>m.trim());return{from:u,to:r,text:d}}},D3=pi;var a9=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],yu=new Map(a9),Jr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!Eu.get(u)?(o=(await $({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Eu.get(u)||u,target:Eu.get(r)||r})):l.body=JSON.stringify({text:s,source:Eu.get(u),target:Eu.get(r)||r});let c=await $(l);if(c.translatedText==="")throw new Error("server response invalid");let d=c.translatedText.split("
").map(m=>m.trim());return{from:u,to:r,text:d}}},M3=f0;var l9=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],yu=new Map(l9),Jr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ht(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=yu.get(u)||u,i=yu.get(r)||r,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let g=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:g})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},d=this.getRandomKey();d&&(c.headers.Authorization="Bearer "+d,c.headers["api-key"]=d,d.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let m=await $(c);if(m&&m.choices&&m.choices.length>0&&m.choices[0].message&&m.choices[0].message.content){let g=m.choices[0].message.content.trim();return g.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(g=""),!a.includes(".")&&(g.endsWith("\u3002")||g.endsWith("."))&&(g=g.slice(0,-1)),{from:u,to:r,text:g}}else throw new Error("server response invalid: "+JSON.stringify(m))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,yu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,yu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await $(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:u,to:r,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};Jr.langMap=yu;var L3=Jr;var fi=ie+"CacheKey_";function Yr(e,t){let n=fi+e;return q.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),a0(this,ka)}},bi=eo;ka=new WeakMap;var Ei=new bi;Object.freeze(Ei);var Tu=class extends ae{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: +{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ht(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=yu.get(u)||u,i=yu.get(r)||r,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let g=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:g})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},d=this.getRandomKey();d&&(c.headers.Authorization="Bearer "+d,c.headers["api-key"]=d,d.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let m=await $(c);if(m&&m.choices&&m.choices.length>0&&m.choices[0].message&&m.choices[0].message.content){let g=m.choices[0].message.content.trim();return g.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(g=""),!a.includes(".")&&(g.endsWith("\u3002")||g.endsWith("."))&&(g=g.slice(0,-1)),{from:u,to:r,text:g}}else throw new Error("server response invalid: "+JSON.stringify(m))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,yu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,yu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await $(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:u,to:r,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};Jr.langMap=yu;var _3=Jr;var h0=ie+"CacheKey_";function Yr(e,t){let n=h0+e;return q.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),ui(this,ka)}},E0=eo;ka=new WeakMap;var y0=new E0;Object.freeze(y0);var Tu=class extends ae{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: -{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{r=s,n.apply(l,i)};s-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await $({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return k.debug("delete conversation res:",a),a}}async translate(n){return await Ei.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=Qr.get(u)||u,i=Qr.get(r)||r;if(this.accessToken=await F3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await $({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:_t()})});return k.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw k.debug("post chatgpt error:",c),await Zr(hi),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:d}=s;a(null,{from:l,to:c,text:d})},300,200);await Ei.enqueue(async()=>{let s="chatgpt"+_t(),l=q.runtime.connect({name:s}),c,d;l.onMessage.addListener(T=>{if(!(!T||T==="")){if(T==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{d=JSON.parse(T)}catch(p){k.debug("chatgpt json error",p,T);return}c=d?.conversation_id,d?.message?.author?.role==="assistant"&&i({from:r,to:o,text:d?.message?.content?.parts?.[0]})}});let m=Qr.get(r)||r,g=Qr.get(o)||o;if(this.accessToken=await F3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let v=this.prompt.replace(/{{to}}/g,g).replace(/{{text}}/g,u).replace(/{{from}}/g,m);$({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[v]}}],model:f,parent_message_id:_t()})}).catch(T=>{k.debug("chatgpt error",T),l.disconnect(),this.deleteConversation(c),a(T,{from:r,to:o,text:""})})})}};var r9=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],Ke={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},yi=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Ti=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=yi(t);if(a)return Array.isArray(n)?`${a}=${n.map(yi).sort().join(`&${a}=`)}`:`${a}=${yi(n)}`}).filter(t=>t).join("&"),Aa=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${Ke.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[Ke.tokenHeader]=t.sessionToken),u[Ke.dateHeader]=a,u[Ke.notSignBody]="",u[Ke.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[Ke.algorithmKey]=Ke.algorithm,u[Ke.signHeadersKey]="",u[Ke.signQueriesKey]=void 0,u[Ke.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[Ke.signQueriesKey]=Object.keys(u).sort().join(";"),u[Ke.signatureKey]=i,Ti(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[Ke.dateHeader]=n,t.sessionToken&&(this.request.headers[Ke.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[Ke.contentSha256Header]=await Xt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return Hr(await _n(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push(Ke.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` -`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Ti(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} +{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{r=s,n.apply(l,i)};s-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await $({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return v.debug("delete conversation res:",a),a}}async translate(n){return await y0.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=Qr.get(u)||u,i=Qr.get(r)||r;if(this.accessToken=await B3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await $({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:_t()})});return v.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw v.debug("post chatgpt error:",c),await Zr(b0),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:d}=s;a(null,{from:l,to:c,text:d})},300,200);await y0.enqueue(async()=>{let s="chatgpt"+_t(),l=q.runtime.connect({name:s}),c,d;l.onMessage.addListener(T=>{if(!(!T||T==="")){if(T==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{d=JSON.parse(T)}catch(p){v.debug("chatgpt json error",p,T);return}c=d?.conversation_id,d?.message?.author?.role==="assistant"&&i({from:r,to:o,text:d?.message?.content?.parts?.[0]})}});let m=Qr.get(r)||r,g=Qr.get(o)||o;if(this.accessToken=await B3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let w=this.prompt.replace(/{{to}}/g,g).replace(/{{text}}/g,u).replace(/{{from}}/g,m);$({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[w]}}],model:f,parent_message_id:_t()})}).catch(T=>{v.debug("chatgpt error",T),l.disconnect(),this.deleteConversation(c),a(T,{from:r,to:o,text:""})})})}};var d9=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],$e={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},T0=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},x0=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=T0(t);if(a)return Array.isArray(n)?`${a}=${n.map(T0).sort().join(`&${a}=`)}`:`${a}=${T0(n)}`}).filter(t=>t).join("&"),Aa=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${$e.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[$e.tokenHeader]=t.sessionToken),u[$e.dateHeader]=a,u[$e.notSignBody]="",u[$e.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[$e.algorithmKey]=$e.algorithm,u[$e.signHeadersKey]="",u[$e.signQueriesKey]=void 0,u[$e.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[$e.signQueriesKey]=Object.keys(u).sort().join(";"),u[$e.signatureKey]=i,x0(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[$e.dateHeader]=n,t.sessionToken&&(this.request.headers[$e.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[$e.contentSha256Header]=await Xt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return Hr(await _n(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push($e.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` +`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=x0(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} `),t.push(this.signedHeaders()),t.push(await this.hexEncodedBodyHash()),t.join(` `)}canonicalHeaders(){let t=[];Object.keys(this.request.headers).forEach(a=>{t.push([a,this.request.headers[a]])}),t.sort((a,u)=>a[0].toLowerCase(){let u=a[0].toLowerCase();if(this.isSignableHeader(u)){let r=a[1];if(typeof r>"u"||r===null||typeof r.toString!="function")throw new Error(`Header ${u} contains invalid value`);n.push(`${u}:${this.canonicalHeaderValues(r.toString())}`)}}),n.join(` -`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Xt(t)}async hexEncodedBodyHash(){return this.request.headers[Ke.contentSha256Header]?this.request.headers[Ke.contentSha256Header]:this.request.body?await this.hexEncodedHash(Ti(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return r9.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await _n(n,`${Ke.kDatePrefix}${t.secretKey}`),o=await _n(a,r),i=await _n(u,o);return _n(Ke.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,Ke.v4Identifier].join("/")}};var P3=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],xi=new Map(P3),o9=new Map(P3.map(([e,t])=>[t,e])),to=class extends ae{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Aa(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await $({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new Ze(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new Ze(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=xi.get(u),i={TargetLanguage:xi.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` -`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new Aa(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),d=await $({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(d.TranslationList){let m=d.TranslationList.map(f=>f.Translation),g=u;return d.TranslationList.length>0&&d.TranslationList[0].DetectedSourceLanguage&&(g=o9.get(d.TranslationList[0].DetectedSourceLanguage)||u),{text:m,from:g,to:r}}else if(d.ResponseMetadata&&d.ResponseMetadata.Error){let m=d.ResponseMetadata.Error;throw new Ze(m.Code,m.Message)}else if(d.ResponseMetaData&&d.ResponseMetaData.Error){let m=d.ResponseMetaData.Error;throw new Ze(m.Code,m.Message)}else throw new Error("response: "+JSON.stringify(d))}};to.langMap=xi;var M3=to;var _3=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Ci=new Map(_3),i9=new Map(_3.map(([e,t])=>[t,e])),Sa=class extends ae{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=Ci.get(u)||"detect",i=Ci.get(r)||r,l=await $({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,d=u;return l.detected_language&&(d=i9.get(l.detected_language)||u),{text:c,from:d,to:r}}else{let c=l.base_resp;throw new Ze(c.status_code.toString(),c.status_message)}}};Sa.langMap=Ci;var s9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wi=new Map(s9),Da=class extends ae{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await $({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:wi.get(u)||u,target_lang:wi.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Da.langMap=wi;var vi="https://{s}bing.com",I3=vi+"/translator",l9=vi+"/ttranslatev3",c9=vi+"/tspellcheckv3",no="bingGlobalConfig",j3=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],B3=new Map(j3),R3=new Map(j3.map(([e,t])=>[t,e])),O3=1e3,Qt,La;function ki(e,t){return e.replace("{s}",t?t+".":"")}async function d9(){if(!Qt){let n=await q.storage.local.get(no);return n&&(Qt=n[no]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Qt;return Date.now()-e>t}async function N3(){let e,t,n,a,u,r,o,i,s,l;try{let c=ki(I3,e),d=await $({retry:2,url:c,responseType:"raw"}),{body:m,headers:g,url:f}=d;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=g["set-cookie"],t=m.match(/IG:"([^"]+)"/)[1],n=m.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,s]=JSON.parse(m.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Qt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await q.storage.local.set({[no]:Qt}),Qt}function m9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Qt;return ki(e?c9:l9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Qt.count++:"")}function g9(e,t,n,a){let{token:u,key:r}=Qt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function z3(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>O3)throw new Error(`The supported maximum length of text is ${O3}. Please shorten the text.`);La||(La=N3()),await La,await d9()&&(La=N3(),await La),t=t||"auto",n=n||"zh-CN",t=B3.get(t)||t,n=B3.get(n)||n;let u=m9(!1),r=g9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:ki(I3,Qt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),s=u,l=i.toString(),c=await $({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Qt=null,La=null,await q.storage.local.remove(no),c.ShowCaptcha)throw new Error(` +`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Xt(t)}async hexEncodedBodyHash(){return this.request.headers[$e.contentSha256Header]?this.request.headers[$e.contentSha256Header]:this.request.body?await this.hexEncodedHash(x0(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return d9.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await _n(n,`${$e.kDatePrefix}${t.secretKey}`),o=await _n(a,r),i=await _n(u,o);return _n($e.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,$e.v4Identifier].join("/")}};var R3=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],C0=new Map(R3),m9=new Map(R3.map(([e,t])=>[t,e])),to=class extends ae{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Aa(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await $({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new Ze(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new Ze(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=C0.get(u),i={TargetLanguage:C0.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` +`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new Aa(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),d=await $({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(d.TranslationList){let m=d.TranslationList.map(f=>f.Translation),g=u;return d.TranslationList.length>0&&d.TranslationList[0].DetectedSourceLanguage&&(g=m9.get(d.TranslationList[0].DetectedSourceLanguage)||u),{text:m,from:g,to:r}}else if(d.ResponseMetadata&&d.ResponseMetadata.Error){let m=d.ResponseMetadata.Error;throw new Ze(m.Code,m.Message)}else if(d.ResponseMetaData&&d.ResponseMetaData.Error){let m=d.ResponseMetaData.Error;throw new Ze(m.Code,m.Message)}else throw new Error("response: "+JSON.stringify(d))}};to.langMap=C0;var O3=to;var N3=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],w0=new Map(N3),g9=new Map(N3.map(([e,t])=>[t,e])),Sa=class extends ae{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=w0.get(u)||"detect",i=w0.get(r)||r,l=await $({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,d=u;return l.detected_language&&(d=g9.get(l.detected_language)||u),{text:c,from:d,to:r}}else{let c=l.base_resp;throw new Ze(c.status_code.toString(),c.status_message)}}};Sa.langMap=w0;var p9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],v0=new Map(p9),Da=class extends ae{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await $({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:v0.get(u)||u,target_lang:v0.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Da.langMap=v0;var k0="https://{s}bing.com",U3=k0+"/translator",f9=k0+"/ttranslatev3",h9=k0+"/tspellcheckv3",no="bingGlobalConfig",W3=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],I3=new Map(W3),j3=new Map(W3.map(([e,t])=>[t,e])),z3=1e3,Qt,La;function A0(e,t){return e.replace("{s}",t?t+".":"")}async function b9(){if(!Qt){let n=await q.storage.local.get(no);return n&&(Qt=n[no]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Qt;return Date.now()-e>t}async function H3(){let e,t,n,a,u,r,o,i,s,l;try{let c=A0(U3,e),d=await $({retry:2,url:c,responseType:"raw"}),{body:m,headers:g,url:f}=d;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=g["set-cookie"],t=m.match(/IG:"([^"]+)"/)[1],n=m.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,s]=JSON.parse(m.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Qt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await q.storage.local.set({[no]:Qt}),Qt}function E9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Qt;return A0(e?h9:f9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Qt.count++:"")}function y9(e,t,n,a){let{token:u,key:r}=Qt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function q3(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>z3)throw new Error(`The supported maximum length of text is ${z3}. Please shorten the text.`);La||(La=H3()),await La,await b9()&&(La=H3(),await La),t=t||"auto",n=n||"zh-CN",t=I3.get(t)||t,n=I3.get(n)||n;let u=E9(!1),r=y9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:A0(U3,Qt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),s=u,l=i.toString(),c=await $({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Qt=null,La=null,await q.storage.local.remove(no),c.ShowCaptcha)throw new Error(` Sorry that bing translator seems to be asking for the captcha, Please take care not to request too frequently. The response code is ${c.StatusCode}. `);if(c.StatusCode===401)throw new Error(` Max count of translation exceeded. Please try it again later. The response code is 401. - `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let d=c[0].translations[0],m=c[0].detectedLanguage;return{text:d.text,from:R3.get(m.language),to:R3.get(d.to)}}function H3(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Qn=null,p9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Ai=new Map(p9),Fa=class extends ae{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Qn=null,await Zr(Ju)}async translate(n){let{text:a,from:u,to:r}=n;return a?await z3(a,u,r):{...n}}async init(){if(!Qn){Qn={};let n=await Yr(Ju);n&&(Qn=n)}await U3(Qn)}async translateList(n){let{from:a,to:u,text:r}=n,o=Ai.get(a)||"auto",i=Ai.get(u)||u;o==="auto"&&(o="");let s=await U3(Qn),l=[];for(let g of r)l.push({Text:g});let c=JSON.stringify(l),d=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,m=await $({url:d,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(m&&m.length>0&&m[0].translations&&m[0].translations.length>0)return{text:m.map(g=>g.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(m))}};Fa.langMap=Ai;async function U3(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return W3().catch(u=>{k.error(u)}),e}return W3()}async function W3(){let e=await bu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=H3(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return Qn=t,await Xr(Ju,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var q3=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Si=new Map(q3),f9=new Map(q3.map(([e,t])=>[t,e])),ao=class extends ae{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Si.get(s)||"auto",to:Si.get(l)||l,q:i,salt:a,appid:r,sign:Dn(r+i+a+o)}),d=new URL(u);d.search=c.toString();let m=await $({url:d.toString()});if(m.error_code)throw new Ze("API_SERVER_ERROR",m.error_msg);let{trans_result:g,from:f}=m,v=g.map(({dst:p})=>p);return{from:f9.get(f)||f,to:l,text:v.join(` -`)}}};ao.langMap=Si;var $3=ao;var h9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],uo=new Map(h9),ro=class extends ae{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!uo.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Je({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await $({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${uo.get(u)||"auto"}2${uo.get(r)}`})})).target,from:u,to:r}}};ro.langMap=uo;var K3=ro;var b9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],oo=new Map(b9),io=class extends ae{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!oo.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Je({text:a.join(" "),minLength:10}));let i=a;return{text:(await $({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${oo.get(u)||"auto"}2${oo.get(r)}`})})).target,from:u,to:r}}};io.langMap=oo;var G3=io;var V3=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Di=new Map(V3),E9=new Map(V3.map(([e,t])=>[t,e]));function y9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var so=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=T9(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+y9(a)+o+i+this.appSecret,l=await Xt(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Di.get(u)||"auto",to:Di.get(r)||r,sign:l,signType:"v3",curtime:i.toString()},d=new URLSearchParams(c),g=await $({url:"https://openapi.youdao.com/api",method:"POST",body:d.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!g.translation)throw new Error(JSON.stringify(g));let f=g.l,[v,T]=f.split("2");return{text:g.translation.join(` -`),from:E9.get(v),to:r}}};so.langMap=Di;function T9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var lo=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:Li.get(u)||"auto",to:Li.get(r)||r},i=new URLSearchParams(o),s=await $({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` -`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};lo.langMap=Li;var X3=lo;var x9={mock:va,mock2:va,google:bn,transmart:Zn,deepl:k3,volc:M3,volcAlpha:Sa,bing:Fa,tencent:Jn,tenAlpha:Yn,baidu:$3,caiyun:K3,cai:G3,openl:qr,youdao:J3,you:X3,d:Rn,dpro:Rn,deeplx:Da,niu:A3,azure:S3,openai:L3,chatgpt:Tu,papago:D3},On={};Object.keys(fn).forEach(e=>{On[e]={...fn[e],class:x9[e]}});function Z3(e,t){let n=zt;if(On[e]&&On[e].class&&On[e].class.langMap&&On[e].class.langMap.size>0){let a=On[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return zt}async function Pa(e,t){if(!e.text)return e;let n=await rn({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Ze("translateFailed","translate failed")}async function Fi(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new On[r].class(o,a,{translationService:r}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await a3(r,o),await i.init()}async function rn(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,s=u,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],d={sentences:Array(e.sentences.length)},m=e.sentences.length,g=-1;if(r.cache)for(let p of e.sentences){g++;let C=s;s==="openl"&&(C=s+"-"+l.codename||qr.DEFAULT_CODENAME);let M=null;try{M=await Iu(Ic({originalText:p.text,from:p.from,to:p.to,service:C}),1e3)}catch(L){k.warn("query cache DB error, but it's ok",L)}if(M){let L={...p,text:M.translatedText};d.sentences[g]=L,n&&n(null,L,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(m-f>0&&k.debug(`use ${m-f} sentences from cache`),!c.length)return d;let v;try{v=new On[s].class(l,o,{translationService:s}),await v.init()}catch(p){if(n)for(let C of c)n(p,null,C);throw p}let T=await v.multipleTranslate({sentences:c},l,(p,C,M)=>{if(n&&n(p,C,M),!p&&C&&!s.startsWith("mock")&&r.cache){let L=s;s==="openl"&&(L=s+"-"+l.codename||qr.DEFAULT_CODENAME),r.cache&&Iu(jc({translatedText:C.text,from:M.from,to:M.to,detectedFrom:C.from,key:Dn(M.text),service:L}),3e3).catch(A=>{k.warn("set cache DB error",A)})}});for(let p of T.sentences){let C=d.sentences.findIndex(M=>!M);if(C===-1)throw new Ze("translateFailed","can not match the result");d.sentences[C]=p}return d}var co=!1,C9=ne();function Q3(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function w9(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&ed(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Nn(r,tr)){if(u===!0)return!0;continue}if(xu(r.nodeName,t.inlineTags))return!0;if(!Pi(r,t))return!1}}return!0}function Mi(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(xu(e.nodeName,n)||Pi(e,t)){if(Nn(e,b4)||xu(e.nodeName,["BR"]))return!1;if(Nn(e,tr))return!0;if(Pi(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return w9(e,t)}else return Nn(e,tr);return!1}function ed(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Nn(e,h4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Nn(e,c4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||xu(e.nodeName,r))}function Ma(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!nd(a)&&a.length>=n}function td(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(nd(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function nd(e){for(let t=0;t127)return!1;return!0}function ad(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function ud(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function rd(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function od(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Nn(e,t,n=!1){return _i(e,t,"1",n)}function _i(e,t,n,a=!1){return co&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function _a(e){return(e.innerText||e.textContent||"").trim()}function Bi(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function mo(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Ye(e,t,n,a=!1){e.isContentEditable||(co&&!a?(e.dataset[ou]||(e.dataset[ou]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[ou]||(e.dataset[ou]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function go(e,t,n=!1){if(co&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function Ba(e,t,n=!1){return co&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function Pi(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!xu(e.nodeName,n)}function Ra(e){let{config:t}=e,n=nr;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ze(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Qe())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function In(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){k.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else k.warn("injectCSS failed, rootDocument does not have head node",e)}function Oa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(C9){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function xu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function id(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function sd(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||ed(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return k.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function ld(e,t,n){let a=0,u=(r,o,i,s)=>{if(++a>100||s===r)return r;let l=r.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return r;let c=l.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}var v9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function En(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function Ri(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(En(e,r))return!1;if(En(e,u)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!v9.includes(n.display):En(e,a)}var Bt=En;function ea(e){return!!e.shadowRoot}function jn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function Cu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function po(e){let t=nr;return e&&(t=e),t}async function on(e,t="",n=100){let a="auto";return t?await Je({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Ea()),a)}function fo(e,t){return Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function k9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${H}-loading-${n} notranslate">`}function wu(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",jt),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Ye(a,p4,t.toString());let u=k9(e);return a.innerHTML=De.sanitize(u),a}function Na(e,t){return e.querySelector(`[${P0}='${t}']`)}function cd(){document.querySelectorAll(`[${P0}]`).forEach(t=>{t.remove()})}function dd(){document.querySelectorAll(`.${jt}-error`).forEach(t=>{t.remove()})}function md(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Oa(n)&&t.push(n)}),t}function gd(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let s=u[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||od(i)||ad(i)||rd(i)||ud(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ma(r,n,a)}function sn(e){return e.nodeType===Node.ELEMENT_NODE}function pd(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function fd(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var A9=1e5;function zn(e){let{onParagraph:t,filterRule:n,id:a}=e;n=S9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,d={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},m=!1,g=null;function f(L){let{container:A,onFrame:y,onIgnoreElement:S,id:D}=L,x=document.createTreeWalker(A,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,w=>{let B=O(w);return B==NodeFilter.FILTER_ACCEPT?Lt.mark(w,D):B==NodeFilter.FILTER_REJECT,B}),F=A;if(O(F)===NodeFilter.FILTER_REJECT)return;for(Lt.mark(F,D);F;){if(o&&o.length>0){let{currentNode:w,isMatchedSelection:B}=v(x,F,o);if(w)F=w;else break;if(!B)continue}if(F.nodeType===Node.ELEMENT_NODE||F.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let w=F;if(w.nodeName==="IFRAME"){y&&y(w);break}w.nodeType===Node.ELEMENT_NODE&&(r&&Ni(w,r),l&&ji(w,l));let B=Ri(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(Bt(w,u)&&!B){p(w);let ge=null;for(;!(ge=x.nextSibling())&&x.parentNode(););F=ge;continue}let J=ea(w);(!hd(d,w)||B)&&(T(),w.childNodes.length>0&&C(d,w,w.immersiveTranslateComputedStyle||null)),J&&w.shadowRoot?.mode==="open"&&(B?y?.(w.shadowRoot):f({...L,container:w.shadowRoot})),w.nodeType===Node.ELEMENT_NODE&&w.nodeName==="PRE"&&i&&P9(w)}else if(F.nodeType===Node.TEXT_NODE)p(F);else throw new Error("should not be here");F=x.nextNode(),d.commonAncestorContainer&&F&&F.parentNode===d.commonAncestorContainer&&(d._currentStacks=[]),d.commonAncestorContainer&&F&&F.nodeType===Node.ELEMENT_NODE&&d._currentStacks.push(F)}function O(w){if(w.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(sn(w)){if(l){let N=Object.keys(l);if(N.length>0&&Bt(w,N))for(let pe of N){let Ne=l[pe];if(w.matches(pe)){let be=l[pe],vt=Object.keys(be);for(let ye of vt){let b=be[ye];w.getAttribute(ye)!==b&&(b===null?w.removeAttribute(ye):w.setAttribute(ye,b))}break}}}if(!L.force&&Lt.isMarked(w,D)||pd(w,D)||zi(w,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||w.nodeName==="IFRAME"&&!Oa(w))return NodeFilter.FILTER_REJECT;if(w.nodeType===Node.ELEMENT_NODE){let N=window.getComputedStyle(w);if(w.immersiveTranslateComputedStyle={display:N.display,whiteSpace:N.whiteSpace},Ii(w.immersiveTranslateComputedStyle))return S&&S(w),NodeFilter.FILTER_REJECT;let ge=Ri(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(Bt(w,u)&&ge)return NodeFilter.FILTER_REJECT}let{width:B,height:J}=w.getBoundingClientRect();return w.nodeName==="IMG"&&(B>48&&J>48?w.immersiveTranslateComputedStyle={display:"block"}:B>0&&J>0&&c!==!1&&(w.setAttribute("width",B),w.setAttribute("height",J))),!w.childNodes||w.childNodes&&w.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!d.isPreWhitespace&&(B>0&&B<4||J>0&&J<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(w.nodeType===Node.TEXT_NODE){let B=w.textContent?.trim();if(!B)return d.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let J=w.parentNode;if(J.getBoundingClientRect){let{width:N,height:ge}=J.getBoundingClientRect();if(N>0&&N<4||ge>0&&ge<4)return NodeFilter.FILTER_REJECT}return s>0&&B.length>=s&&Oi(w,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),d&&d.commonAncestorContainer&&d.flatNodes.length>0&&T();function v(L,A,y){let S=A.immersiveTranslateComputedStyle||null;if(g){if(!g.contains(A))if(m=!1,A&&A.nodeType===Node.ELEMENT_NODE)if(ho(A,y))m=!0,g=A,T(),C(d,g,S);else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m}}else if(A&&A.nodeType===Node.ELEMENT_NODE)if(ho(A,y))m=!0,g=A,T(),C(d,g,S);else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};return{currentNode:A,isMatchedSelection:!0}}function T(){let L=F9(d,a);L&&t&&t(L),bd(d)}function p(L){if(!hd(d,L)){T(),bd(d);let A=L.parentNode;A&&C(d,A,A.computedStyle)}d.flatNodes.push(L)}function C(L,A,y){L.commonAncestorContainer=A;let S=M(y);L.isPreWhitespace=S}function M(L){return L&&L.whiteSpace&&L.whiteSpace.startsWith("pre")||L&&L.whiteSpace==="break-spaces"||!1}}function hd(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=ea(t));let a=L9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function S9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function D9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function Ni(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function L9(e){return e&&e._currentStacks?e._currentStacks.some(t=>ea(t)):!1}function F9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(m=>m.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=M9(n,a);r||(r=a);let o=[];for(let m of n){let g=D9(e,r,m);g&&(o.includes(g)||o.push(g))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,d=0;for(;c&&(l.push(c),c!==s);){if(d++,d>A9){k.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function bd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function Ii(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var Lt={_marked_key:"immersive_translate_walked",isMarked(e,t){return _i(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return go(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return Ye(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=Ba(e,"markWalk")||"";return Ye(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||ea(e)):!1}};function P9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=De.sanitize(n)}function M9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function Oi(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",s=n[r+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&Oi(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),s=document.createElement("br");i.parentNode?.insertBefore(s,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=Q3(e,[a]);for(let i of o)for(let s of r){let l=u[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function yd(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let d of l){let m=s[d];if(d==="translate"&&m==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||_9(c,u,r)||!td(f,n,a))continue}c.getAttribute(d)!==m&&(m===null?c.removeAttribute(d):c.setAttribute(d,m))}}}function ji(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function zi(e,t){return Bt(e,t.excludeSelectors||[])?Bt(e,t.selectors||[])?!1:!Bt(e,t.stayOriginalSelectors||[]):!1}function ho(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Bt(e,t.concat(n))}function _9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ma(r,t,n))return!0}}return!1}var Td=["*://*/*","*","*://*"],Cd="immersive-translate-wildcard-placeholder.com";function Hi(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>Td.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===r)return!0;if(Td.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===r:R9(u,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let T=i.split("://");l=T[0],l==="*"&&T.length>1&&(l="*",i="https://"+T[1])}else l="*",i="https://"+i;let d=i.replace(/\*/g,Cd),m;try{m=new URL(d)}catch{return k.debug("invalid match pattern",d,"raw match value:",c),!1}let g=m.hostname,f=m.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let v=B9(l+":",xd(g),xd(f));if(v){let T=new URL(u);return T.port="",v.test(T.href)}else return!1}});if(o)return o}return null}function xd(e){return e.replaceAll(Cd,"*")}function B9(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Wt(e,t){return Hi(e,t)!==null}function R9(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}async function qt(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:d,targetLanguage:m,sourceLanguageUrlPattern:g,immediateTranslationPattern:f}=n,v=Ia(t,o),T=Ia(t,f),p=i,C=Object.keys(s);for(let Q of C){let Te=s[Q];if(Ia(t,Te)){p=Q;break}}let M=l,L=Object.keys(c);for(let Q of L){let Te=c[Q];if(Te&&Ia(t,Te)){M=Q;break}}let A=Ia(t,d),y=wd(t,d);y||(y=Wt(t,S4)),y||(y=Wt(t,n.blockUrls));let S=wd(t,n.inputTranslationUrlPattern);S||(S=Wt(t,n.inputTranslationBlockUrls));let D=Wt(t,n.mutationBlockUrls),x=Object.keys(g),F={};for(let Q of x){let Te=g[Q];if(Te&&Te.matches)for(let Z of Te.matches)F[Z]=Q}let O=Object.keys(F),w=Hi(t,O);w&&(r=F[w]??"auto",F[w]&&F[w]!=="auto"&&Ut(F[w]));let B=m||"zh-CN",J=u.hostname,N=await Xt(J),ge=u.pathname+u.search+u.hash,pe=await Xt(ge),Ne=`https://${N}.com/${pe}`,be=await du(),vt=await sc(),ye=n.translationStartMode;ye==="dynamic"&&T&&(ye="immediate");let b={targetLanguage:B,config:n,translationService:p,isTranslateUrl:A,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:y,isMutationTranslationExcludeUrl:D,isInputTranslationExcludeUrl:S,rule:n.generalRule,url:t,encryptedUrl:Ne,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:v,cache:n.cache,translationTheme:M},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:v,cache:n.cache,translationTheme:M},localConfig:be};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(Q=>!b.config.generalRule.bodyTranslateTags.includes(Q)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(Q=>Q!==".btn"));let I=n.translationServices[b.translationService]||{};I.immediateTranslationTextCount!==void 0&&O9(I.immediateTranslationTextCount)&&I.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=I.immediateTranslationTextCount),b.translationService==="deepl"&&I&&I.authKey&&I.authKey.startsWith("immersive_")&&I.immediateTranslationTextCountForImmersiveDeepl!==void 0&&I.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=I.immediateTranslationTextCountForImmersiveDeepl),I&&I.translationDebounce&&typeof I.translationDebounce=="number"&&(b.state.translationDebounce=I.translationDebounce);let G=vt.immediateTranslationTextCount;n.immediateTranslationTextCount!==G&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let le=n.rules,V;globalThis.PDFViewerApplication?V=le.find(Q=>Q.isPdf):globalThis.immersiveTranslateEbookViewer?V=le.find(Q=>Q.isEbook):globalThis.immersiveTranslateEbookBuilder?V=le.find(Q=>Q.isEbookBuilder):V=le.find(Q=>Ia(t,Q)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),V&&V.isEbookBuilder&&(b.state.translationStartMode="immediate");let Ae=n.generalRule;if(V&&(b.rule=pr(Ae,V)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(Q=>!b.rule.bodyTranslateTags.includes(Q)&&!b.rule.forceTranslateTags.includes(Q))),b.rule.mainFrameSelector){let Q=document.querySelector(b.rule.mainFrameSelector);Q&&(b.mainFrame=Q)}return b}function Ia(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&Wt(e,a)?!1:n&&n.length>0&&Wt(e,n)?!0:r&&r.length>0&&mo(r)?!1:!!(u&&u.length>0&&mo(u))}function wd(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Wt(e,n)||a&&a.length>0&&mo(a))}function O9(e){return typeof e=="number"}function vd(e,t,n,a){let u=t,r=w4[u]||[],o="";e&&r&&r.length>0&&r.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let d=n[c];if(["borderRadius"].includes(c)&&(d+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${d}; -`,t==="marker"&&c==="backgroundColor"&&typeof d=="string"){let{r:m,g,b:f}=id(d);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${m}, ${g}, ${f}; + `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let d=c[0].translations[0],m=c[0].detectedLanguage;return{text:d.text,from:j3.get(m.language),to:j3.get(d.to)}}function $3(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Qn=null,T9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],S0=new Map(T9),Fa=class extends ae{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Qn=null,await Zr(Ju)}async translate(n){let{text:a,from:u,to:r}=n;return a?await q3(a,u,r):{...n}}async init(){if(!Qn){Qn={};let n=await Yr(Ju);n&&(Qn=n)}await K3(Qn)}async translateList(n){let{from:a,to:u,text:r}=n,o=S0.get(a)||"auto",i=S0.get(u)||u;o==="auto"&&(o="");let s=await K3(Qn),l=[];for(let g of r)l.push({Text:g});let c=JSON.stringify(l),d=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,m=await $({url:d,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(m&&m.length>0&&m[0].translations&&m[0].translations.length>0)return{text:m.map(g=>g.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(m))}};Fa.langMap=S0;async function K3(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return G3().catch(u=>{v.error(u)}),e}return G3()}async function G3(){let e=await bu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=$3(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return Qn=t,await Xr(Ju,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var V3=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],D0=new Map(V3),x9=new Map(V3.map(([e,t])=>[t,e])),ao=class extends ae{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:D0.get(s)||"auto",to:D0.get(l)||l,q:i,salt:a,appid:r,sign:Dn(r+i+a+o)}),d=new URL(u);d.search=c.toString();let m=await $({url:d.toString()});if(m.error_code)throw new Ze("API_SERVER_ERROR",m.error_msg);let{trans_result:g,from:f}=m,w=g.map(({dst:p})=>p);return{from:x9.get(f)||f,to:l,text:w.join(` +`)}}};ao.langMap=D0;var J3=ao;var C9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],uo=new Map(C9),ro=class extends ae{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!uo.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ve({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await $({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${uo.get(u)||"auto"}2${uo.get(r)}`})})).target,from:u,to:r}}};ro.langMap=uo;var Y3=ro;var w9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],oo=new Map(w9),io=class extends ae{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!oo.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ve({text:a.join(" "),minLength:10}));let i=a;return{text:(await $({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${oo.get(u)||"auto"}2${oo.get(r)}`})})).target,from:u,to:r}}};io.langMap=oo;var X3=io;var Z3=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],L0=new Map(Z3),v9=new Map(Z3.map(([e,t])=>[t,e]));function k9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var so=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=A9(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+k9(a)+o+i+this.appSecret,l=await Xt(s),c={q:a,appKey:this.appId,salt:o.toString(),from:L0.get(u)||"auto",to:L0.get(r)||r,sign:l,signType:"v3",curtime:i.toString()},d=new URLSearchParams(c),g=await $({url:"https://openapi.youdao.com/api",method:"POST",body:d.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!g.translation)throw new Error(JSON.stringify(g));let f=g.l,[w,T]=f.split("2");return{text:g.translation.join(` +`),from:v9.get(w),to:r}}};so.langMap=L0;function A9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var lo=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:F0.get(u)||"auto",to:F0.get(r)||r},i=new URLSearchParams(o),s=await $({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` +`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};lo.langMap=F0;var td=lo;var S9={mock:va,mock2:va,google:bn,transmart:Zn,deepl:L3,volc:O3,volcAlpha:Sa,bing:Fa,tencent:Jn,tenAlpha:Yn,baidu:J3,caiyun:Y3,cai:X3,openl:qr,youdao:Q3,you:td,d:Rn,dpro:Rn,deeplx:Da,niu:F3,azure:P3,openai:_3,chatgpt:Tu,papago:M3},On={};Object.keys(fn).forEach(e=>{On[e]={...fn[e],class:S9[e]}});function nd(e,t){let n=zt;if(On[e]&&On[e].class&&On[e].class.langMap&&On[e].class.langMap.size>0){let a=On[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return zt}async function Pa(e,t){if(!e.text)return e;let n=await on({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Ze("translateFailed","translate failed")}async function P0(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new On[r].class(o,a,{translationService:r}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await i3(r,o),await i.init()}async function on(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,s=u,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],d={sentences:Array(e.sentences.length)},m=e.sentences.length,g=-1;if(r.cache)for(let p of e.sentences){g++;let C=s;s==="openl"&&(C=s+"-"+l.codename||qr.DEFAULT_CODENAME);let M=null;try{M=await Iu(Uc({originalText:p.text,from:p.from,to:p.to,service:C}),1e3)}catch(L){v.warn("query cache DB error, but it's ok",L)}if(M){let L={...p,text:M.translatedText};d.sentences[g]=L,n&&n(null,L,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(m-f>0&&v.debug(`use ${m-f} sentences from cache`),!c.length)return d;let w;try{w=new On[s].class(l,o,{translationService:s}),await w.init()}catch(p){if(n)for(let C of c)n(p,null,C);throw p}let T=await w.multipleTranslate({sentences:c},l,(p,C,M)=>{if(n&&n(p,C,M),!p&&C&&!s.startsWith("mock")&&r.cache){let L=s;s==="openl"&&(L=s+"-"+l.codename||qr.DEFAULT_CODENAME),r.cache&&Iu(Wc({translatedText:C.text,from:M.from,to:M.to,detectedFrom:C.from,key:Dn(M.text),service:L}),3e3).catch(A=>{v.warn("set cache DB error",A)})}});for(let p of T.sentences){let C=d.sentences.findIndex(M=>!M);if(C===-1)throw new Ze("translateFailed","can not match the result");d.sentences[C]=p}return d}var co=!1,D9=ne();function ad(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function L9(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&ud(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Nn(r,tr)){if(u===!0)return!0;continue}if(xu(r.nodeName,t.inlineTags))return!0;if(!M0(r,t))return!1}}return!0}function _0(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(xu(e.nodeName,n)||M0(e,t)){if(Nn(e,x4)||xu(e.nodeName,["BR"]))return!1;if(Nn(e,tr))return!0;if(M0(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return L9(e,t)}else return Nn(e,tr);return!1}function ud(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Nn(e,T4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Nn(e,p4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||xu(e.nodeName,r))}function Ma(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!od(a)&&a.length>=n}function rd(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(od(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function od(e){for(let t=0;t127)return!1;return!0}function id(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function sd(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function ld(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function cd(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Nn(e,t,n=!1){return B0(e,t,"1",n)}function B0(e,t,n,a=!1){return co&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function _a(e){return(e.innerText||e.textContent||"").trim()}function R0(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function mo(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Ye(e,t,n,a=!1){e.isContentEditable||(co&&!a?(e.dataset[ou]||(e.dataset[ou]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[ou]||(e.dataset[ou]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function go(e,t,n=!1){if(co&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function Ba(e,t,n=!1){return co&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function M0(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!xu(e.nodeName,n)}function Ra(e){let{config:t}=e,n=nr;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ze(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Qe())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function In(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){v.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else v.warn("injectCSS failed, rootDocument does not have head node",e)}function Oa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(D9){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function xu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function dd(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function md(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||ud(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return v.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function gd(e,t,n){let a=0,u=(r,o,i,s)=>{if(++a>100||s===r)return r;let l=r.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return r;let c=l.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}var F9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function En(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function O0(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(En(e,r))return!1;if(En(e,u)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!F9.includes(n.display):En(e,a)}var Bt=En;function ea(e){return!!e.shadowRoot}function jn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function Cu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function po(e){let t=nr;return e&&(t=e),t}async function en(e,t="",n=100){let a="auto";return t?await Ve({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Ea()),a)}function fo(e,t){return Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function P9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${z}-loading-${n} notranslate">`}function wu(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",jt),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Ye(a,E4,t.toString());let u=P9(e);return a.innerHTML=Ce.sanitize(u),a}function Na(e,t){return e.querySelector(`[${Mi}='${t}']`)}function pd(){document.querySelectorAll(`[${Mi}]`).forEach(t=>{t.remove()})}function fd(){document.querySelectorAll(`.${jt}-error`).forEach(t=>{t.remove()})}function hd(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Oa(n)&&t.push(n)}),t}function bd(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let s=u[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||cd(i)||id(i)||ld(i)||sd(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ma(r,n,a)}function sn(e){return e.nodeType===Node.ELEMENT_NODE}function Ed(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function yd(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var M9=1e5;function zn(e){let{onParagraph:t,filterRule:n,id:a}=e;n=_9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,d={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},m=!1,g=null;function f(L){let{container:A,onFrame:y,onIgnoreElement:S,id:D}=L,x=document.createTreeWalker(A,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,k=>{let B=O(k);return B==NodeFilter.FILTER_ACCEPT?Lt.mark(k,D):B==NodeFilter.FILTER_REJECT,B}),F=A;if(O(F)===NodeFilter.FILTER_REJECT)return;for(Lt.mark(F,D);F;){if(o&&o.length>0){let{currentNode:k,isMatchedSelection:B}=w(x,F,o);if(k)F=k;else break;if(!B)continue}if(F.nodeType===Node.ELEMENT_NODE||F.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let k=F;if(k.nodeName==="IFRAME"){y&&y(k);break}k.nodeType===Node.ELEMENT_NODE&&(r&&I0(k,r),l&&z0(k,l));let B=O0(k,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},k.immersiveTranslateComputedStyle||null);if(Bt(k,u)&&!B){p(k);let ge=null;for(;!(ge=x.nextSibling())&&x.parentNode(););F=ge;continue}let J=ea(k);(!Td(d,k)||B)&&(T(),k.childNodes.length>0&&C(d,k,k.immersiveTranslateComputedStyle||null)),J&&k.shadowRoot?.mode==="open"&&(B?y?.(k.shadowRoot):f({...L,container:k.shadowRoot})),k.nodeType===Node.ELEMENT_NODE&&k.nodeName==="PRE"&&i&&N9(k)}else if(F.nodeType===Node.TEXT_NODE)p(F);else throw new Error("should not be here");F=x.nextNode(),d.commonAncestorContainer&&F&&F.parentNode===d.commonAncestorContainer&&(d._currentStacks=[]),d.commonAncestorContainer&&F&&F.nodeType===Node.ELEMENT_NODE&&d._currentStacks.push(F)}function O(k){if(k.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(sn(k)){if(l){let N=Object.keys(l);if(N.length>0&&Bt(k,N))for(let pe of N){let Ne=l[pe];if(k.matches(pe)){let be=l[pe],vt=Object.keys(be);for(let ye of vt){let b=be[ye];k.getAttribute(ye)!==b&&(b===null?k.removeAttribute(ye):k.setAttribute(ye,b))}break}}}if(!L.force&&Lt.isMarked(k,D)||Ed(k,D)||H0(k,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||k.nodeName==="IFRAME"&&!Oa(k))return NodeFilter.FILTER_REJECT;if(k.nodeType===Node.ELEMENT_NODE){let N=window.getComputedStyle(k);if(k.immersiveTranslateComputedStyle={display:N.display,whiteSpace:N.whiteSpace},j0(k.immersiveTranslateComputedStyle))return S&&S(k),NodeFilter.FILTER_REJECT;let ge=O0(k,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},k.immersiveTranslateComputedStyle||null);if(Bt(k,u)&&ge)return NodeFilter.FILTER_REJECT}let{width:B,height:J}=k.getBoundingClientRect();return k.nodeName==="IMG"&&(B>48&&J>48?k.immersiveTranslateComputedStyle={display:"block"}:B>0&&J>0&&c!==!1&&(k.setAttribute("width",B),k.setAttribute("height",J))),!k.childNodes||k.childNodes&&k.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!d.isPreWhitespace&&(B>0&&B<4||J>0&&J<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(k.nodeType===Node.TEXT_NODE){let B=k.textContent?.trim();if(!B)return d.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let J=k.parentNode;if(J.getBoundingClientRect){let{width:N,height:ge}=J.getBoundingClientRect();if(N>0&&N<4||ge>0&&ge<4)return NodeFilter.FILTER_REJECT}return s>0&&B.length>=s&&N0(k,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),d&&d.commonAncestorContainer&&d.flatNodes.length>0&&T();function w(L,A,y){let S=A.immersiveTranslateComputedStyle||null;if(g){if(!g.contains(A))if(m=!1,A&&A.nodeType===Node.ELEMENT_NODE)if(ho(A,y))m=!0,g=A,T(),C(d,g,S);else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m}}else if(A&&A.nodeType===Node.ELEMENT_NODE)if(ho(A,y))m=!0,g=A,T(),C(d,g,S);else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};return{currentNode:A,isMatchedSelection:!0}}function T(){let L=O9(d,a);L&&t&&t(L),xd(d)}function p(L){if(!Td(d,L)){T(),xd(d);let A=L.parentNode;A&&C(d,A,A.computedStyle)}d.flatNodes.push(L)}function C(L,A,y){L.commonAncestorContainer=A;let S=M(y);L.isPreWhitespace=S}function M(L){return L&&L.whiteSpace&&L.whiteSpace.startsWith("pre")||L&&L.whiteSpace==="break-spaces"||!1}}function Td(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=ea(t));let a=R9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function _9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function B9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function I0(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function R9(e){return e&&e._currentStacks?e._currentStacks.some(t=>ea(t)):!1}function O9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(m=>m.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=I9(n,a);r||(r=a);let o=[];for(let m of n){let g=B9(e,r,m);g&&(o.includes(g)||o.push(g))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,d=0;for(;c&&(l.push(c),c!==s);){if(d++,d>M9){v.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function xd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function j0(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var Lt={_marked_key:"immersive_translate_walked",isMarked(e,t){return B0(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return go(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return Ye(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=Ba(e,"markWalk")||"";return Ye(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||ea(e)):!1}};function N9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=Ce.sanitize(n)}function I9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function N0(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",s=n[r+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&N0(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),s=document.createElement("br");i.parentNode?.insertBefore(s,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=ad(e,[a]);for(let i of o)for(let s of r){let l=u[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function wd(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let d of l){let m=s[d];if(d==="translate"&&m==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||j9(c,u,r)||!rd(f,n,a))continue}c.getAttribute(d)!==m&&(m===null?c.removeAttribute(d):c.setAttribute(d,m))}}}function z0(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function H0(e,t){return Bt(e,t.excludeSelectors||[])?Bt(e,t.selectors||[])?!1:!Bt(e,t.stayOriginalSelectors||[]):!1}function ho(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Bt(e,t.concat(n))}function j9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ma(r,t,n))return!0}}return!1}var vd=["*://*/*","*","*://*"],Ad="immersive-translate-wildcard-placeholder.com";function U0(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>vd.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===r)return!0;if(vd.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===r:H9(u,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let T=i.split("://");l=T[0],l==="*"&&T.length>1&&(l="*",i="https://"+T[1])}else l="*",i="https://"+i;let d=i.replace(/\*/g,Ad),m;try{m=new URL(d)}catch{return v.debug("invalid match pattern",d,"raw match value:",c),!1}let g=m.hostname,f=m.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let w=z9(l+":",kd(g),kd(f));if(w){let T=new URL(u);return T.port="",w.test(T.href)}else return!1}});if(o)return o}return null}function kd(e){return e.replaceAll(Ad,"*")}function z9(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Wt(e,t){return U0(e,t)!==null}function H9(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}async function qt(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:d,targetLanguage:m,sourceLanguageUrlPattern:g,immediateTranslationPattern:f}=n,w=Ia(t,o),T=Ia(t,f),p=i,C=Object.keys(s);for(let Q of C){let Te=s[Q];if(Ia(t,Te)){p=Q;break}}let M=l,L=Object.keys(c);for(let Q of L){let Te=c[Q];if(Te&&Ia(t,Te)){M=Q;break}}let A=Ia(t,d),y=Sd(t,d);y||(y=Wt(t,P4)),y||(y=Wt(t,n.blockUrls));let S=Sd(t,n.inputTranslationUrlPattern);S||(S=Wt(t,n.inputTranslationBlockUrls));let D=Wt(t,n.mutationBlockUrls),x=Object.keys(g),F={};for(let Q of x){let Te=g[Q];if(Te&&Te.matches)for(let Z of Te.matches)F[Z]=Q}let O=Object.keys(F),k=U0(t,O);k&&(r=F[k]??"auto",F[k]&&F[k]!=="auto"&&Ut(F[k]));let B=m||"zh-CN",J=u.hostname,N=await Xt(J),ge=u.pathname+u.search+u.hash,pe=await Xt(ge),Ne=`https://${N}.com/${pe}`,be=await du(),vt=await mc(),ye=n.translationStartMode;ye==="dynamic"&&T&&(ye="immediate");let b={targetLanguage:B,config:n,translationService:p,isTranslateUrl:A,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:y,isMutationTranslationExcludeUrl:D,isInputTranslationExcludeUrl:S,rule:n.generalRule,url:t,encryptedUrl:Ne,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:w,cache:n.cache,translationTheme:M},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:w,cache:n.cache,translationTheme:M},localConfig:be};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(Q=>!b.config.generalRule.bodyTranslateTags.includes(Q)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(Q=>Q!==".btn"));let I=n.translationServices[b.translationService]||{};I.immediateTranslationTextCount!==void 0&&U9(I.immediateTranslationTextCount)&&I.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=I.immediateTranslationTextCount),b.translationService==="deepl"&&I&&I.authKey&&I.authKey.startsWith("immersive_")&&I.immediateTranslationTextCountForImmersiveDeepl!==void 0&&I.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=I.immediateTranslationTextCountForImmersiveDeepl),I&&I.translationDebounce&&typeof I.translationDebounce=="number"&&(b.state.translationDebounce=I.translationDebounce);let G=vt.immediateTranslationTextCount;n.immediateTranslationTextCount!==G&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let le=n.rules,V;globalThis.PDFViewerApplication?V=le.find(Q=>Q.isPdf):globalThis.immersiveTranslateEbookViewer?V=le.find(Q=>Q.isEbook):globalThis.immersiveTranslateEbookBuilder?V=le.find(Q=>Q.isEbookBuilder):V=le.find(Q=>Ia(t,Q)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),V&&V.isEbookBuilder&&(b.state.translationStartMode="immediate");let Se=n.generalRule;if(V&&(b.rule=pr(Se,V)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(Q=>!b.rule.bodyTranslateTags.includes(Q)&&!b.rule.forceTranslateTags.includes(Q))),b.rule.mainFrameSelector){let Q=document.querySelector(b.rule.mainFrameSelector);Q&&(b.mainFrame=Q)}return b}function Ia(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&Wt(e,a)?!1:n&&n.length>0&&Wt(e,n)?!0:r&&r.length>0&&mo(r)?!1:!!(u&&u.length>0&&mo(u))}function Sd(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Wt(e,n)||a&&a.length>0&&mo(a))}function U9(e){return typeof e=="number"}function Dd(e,t,n,a){let u=t,r=S4[u]||[],o="";e&&r&&r.length>0&&r.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let d=n[c];if(["borderRadius"].includes(c)&&(d+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${d}; +`,t==="marker"&&c==="backgroundColor"&&typeof d=="string"){let{r:m,g,b:f}=dd(d);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${m}, ${g}, ${f}; `}}});let i="";if(n&&n.textColor){let l=n.textColor;i+=` .immersive-translate-target-translation-theme-${u}-inner{color: ${l};} `}if(n&&n.zoom){let l=n.zoom;i+=` .immersive-translate-target-translation-theme-${u}-inner{font-size: max(13px, ${l}%);} `}let s="";o&&(s=`:root { ${o}} -`),i&&(s+=i),s?In(e,s,"immersive-translate-user-custom-style"):a&&In(e,"","immersive-translate-user-custom-style")}function ja(e,t){let a=lt().IMMERSIVE_TRANSLATE_INJECTED_CSS;In(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};vd(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` +`),i&&(s+=i),s?In(e,s,"immersive-translate-user-custom-style"):a&&In(e,"","immersive-translate-user-custom-style")}function ja(e,t){let a=lt().IMMERSIVE_TRANSLATE_INJECTED_CSS;In(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};Dd(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` `)),t.rule.additionalInjectedCss&&t.rule.additionalInjectedCss.length>0&&(i+=` `+t.rule.additionalInjectedCss.join(` -`))),i&&In(e,i,"immersive-translate-dynamic-injected-css")}async function kd(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Je({text:_a(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=Kn(document.documentElement.lang)),e}function Ad(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function Ui(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=N9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let d=n.substring(s+i.length,c),m=Object.keys(o).filter(g=>g!=="tag").map(g=>`${g}="${o[g]}"`).join(" ");n=n.replace(`${i}${d}`,`<${l} ${m}>${d}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function vu(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function ta(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=vu(e,n,t);return r===t&&n!==a&&(r=vu(e,a,t)),Ui(r,u)}function N9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function bo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function Wi(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(C4),e&&(r.push(`${H}-target-translation-theme-${e}`),t?r.push(`${_0}-theme-${e}`):r.push(`${M0}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(_0):(r.push(M0),u&&r.push(x4)),r}function qi(e){let t=["notranslate",y4];return e&&t.push(`${H}-target-translation-theme-${e}-inner`),t}function Sd(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,d=Ra(n),m="afterend",g=d[0].replace(/\//g,"/");g=g.replace(/"/g,'\\"'),g=g.replace(//g,">");let f=d[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let v=`${g}(\\d+)${f}`,T=new RegExp(v,"g"),p=bo(s);p=De.sanitize(p),o.length>0&&(p=p.replace(T,A=>{let y=p.indexOf(A),S=p[y-1]===" ",D=p[y+A.length]===" ",x=A.slice(d[0].length,-d[1].length),F=Number(x);if(isNaN(F))return A;let O=o[Number(F)];if(O&&O.type==="element"){let w=O.value.outerHTML;return S||(w=" "+w),D||(w=w+" "),w}else k.error("variable type not supported",O,A);return A}));let C=Wi(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&C.push(T4);let M=qi(r),L="";return a.translationBlockStyle&&(L=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${L} class="${C.join(" ")}" ${nn}="1"><${a.targetWrapperTag} class="${M.join(" ")}" ${nn}="1">${p}`,e.inline||(l==="smart"?p=`
${p}`:p=`${l}${p}`),e.inline&&(l!=="smart"?p=`${l}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${nn}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:m}}function Eo(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let s=0;s2&&(T=`<${u[2]}${v}>`),i[v]=l,o.push({text:T,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";d&&(f=jn($i(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Bt(l,a)){let v=Object.keys(i).length,T=`${u[0]}${v}${u[1]}`;u.length>2&&(T=`<${u[2]}${v}>`),i[v]=l;let p=Ki(o).endsWith(" ")?" ":"",C=jn(l.innerText||l.textContent),M=jn(l.nextSibling).startsWith(" ")?" ":"",L=Cu(p+C+M),A=L[0]+T+L[1];if(p===" ")A=A.trimStart();else if(!A.startsWith(" ")){let y=Cu(l.previousSibling)[1];y===""&&(y=" "),A=y+A}o.push({text:A,type:"variable"})}else{let f=Ki(o).endsWith(" ")?" ":"",v=jn(l.innerText||l.textContent);d&&(v=jn($i(l)));let T=jn(l.nextSibling).startsWith(" ")?" ":"",p=Cu(f+v+T),C=p[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+p[1];if(f===" ")C=C.trimStart();else{let M=Cu(l.previousSibling)[1];M===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(M=" "),C=M+C}o.push({text:C,type:"text"})}else{let f=Ki(o).endsWith(" ")?" ":"",v="";l.textContent&&(v=jn($i(l))),f===" "&&(v=v.trimStart()),o.push({text:v,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(d=o[l-1].text),l2){let c=l[2];return I9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=Sd(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function $i(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function I9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:d}=e;o=o||[];let m=bo(e.targetText);m=De.sanitize(m);let g=m,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),v=new RegExp(`<${t}(\\d+)>`);o.length>0&&(g=g.replace(f,M=>{let L=g.indexOf(M),A=g[L-1]===" ",y=g[L+M.length]===" ",S=M.match(v);if(!S)return M;let D=S[1],x=Number(D);if(isNaN(x))return M;let F=o[Number(x)];if(F&&F.type==="element"){let O=F.value.outerHTML;return A||(O=" "+O),y||(O=O+" "),O}else if(F&&F.type==="text"){let O=F.value;return A||(O=" "+O),y||(O=O+" "),O}else k.error("variable type not supported",F,M);return M}));let T=Wi(l,n,a||[],i,c),p=qi(l),C="";return d&&(C=`style="${d}"`),g=`<${u} ${C} class="${T.join(" ")}" ${nn}="1"><${u} class="${p.join(" ")}" ${nn}="1">${g}`,n||(r==="smart"?g=`
${g}`:g=`${r}${g}`),n&&(r!=="smart"?g=`${r}${g}`:g=`<${u} class="notranslate" ${nn}="1"> ${g}`),s==="smart"?g=`${g}`:g=`${g}${s}`,{html:g,position:"afterend"}}function Ki(e){let t=e[e.length-1];return t?t.text:""}function $t(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var j9={sanitize:e=>e};function To(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:$t(e.ctx),onParagraph:ku.bind(null,e),onFrame:n=>{Vi(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),ca&&Ye(t,"consumeContainer",e.id))}function Vi(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Oa(t))return;k.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ha(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else k.debug("onFrame shadowRoot",t.host),Ha(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ha(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=$t(t.ctx),r=0;if(s(t,e,n))return;if(sn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(sn(c)&&(a&&Ni(c,a),u&&ji(c,u)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(Lt.mark(l.currentNode,t.id);l.nextNode();){Lt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let d=l.currentNode;if(Lt.mark(l.currentNode,t.id),i(d)){o(d);continue}else break}if(!l.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){Lt.clearMark(l),r++,t.immediateTranslateCapacity>=0?To(t,l):(ca&&Ye(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return Vi(t,l.shadowRoot,n),!1;if(c==="iframe")return Vi(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let d=t.containerRule;if(d.selectors&&d.selectors?.length>0)return ho(l,d.selectors);if(d.pageHeight){let m=l.scrollHeight;if(m>0&&m0)return!0}return!1}function s(l,c,d){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||d&&Lt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let g=$t(l.ctx);return!!zi(c,{excludeSelectors:g.excludeSelectors,selectors:g.selectors,stayOriginalSelectors:g.stayOriginalSelectors})}}function Ji(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!Lt.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(yo(e.rootNodes),Ld(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=Gi(e.rootNodes);yo(e.rootNodes),za(o,a,e.targetNodes||[]),Ld(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];za(o,a,e.rootNodes||[]),Fd(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=Gi(e.rootNodes);za(o,a,e.targetNodes||[]),Fd(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=Gi(e.targetNodes);yo(e.targetNodes),za(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&yo(e.targetNodes)}catch(o){k.error(o)}}}function Ld(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Ye(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function Fd(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=Ba(a,"immersiveTranslateClassBak");go(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function Gi(e){return e?e[e.length-1].nextSibling:null}function yo(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function za(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var z9=ct(Xi,300);async function ku(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||H9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,ca&&Ye(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Ra(u),i=Eo(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await Zi(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:po(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(s){if(k.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(U9(e,t.text),Yi(e,t)):(ca&&Ye(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function H9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?sn(t)&&t.classList.contains(jt):!1}function U9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function Yi(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),ca&&Ye(t.commonAncestorContainer,"consumeParagraph",e.id),z9.call(e,e.ctx)}async function Xi(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await rn(a,t,(u,r,o)=>{let i=o.id,s=W9(e,i.toString());s&&q9.call(null,u,r,o,s,t,n)})}catch(u){k.error("translateCurrentQueue error",u);return}}function W9(e,t){return e.find(n=>n.id===t)}function q9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${H}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Na(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(k.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=u,l=n.id,c=document.createElement(s.targetWrapperTag);Ye(c,f4,l.toString()),c.classList.add("notranslate",jt,jt+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let d=a.rootNodes[a.rootNodes.length-1].nextSibling;za(d,a.commonAncestorContainer,[c]);let m=e.message.replaceAll(` -`,"");if(m=m.replaceAll('"',"""),i&&(i.error=new Error(m)),c){let g=ta(It,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=ta(It,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),v=`<${s.targetWrapperTag} class="${H}-error notranslate"><${s.targetWrapperTag} class="${H}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=De.sanitize(v)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=Dd(a,u),l=document.createElement(u.rule.targetWrapperTag);l.classList.add("notranslate",jt),l.setAttribute("lang",u.targetLanguage),l.setAttribute(nn,"1");let c=j9.sanitize(s);l.innerHTML=c,a.targetNodes=[l],Ji(a,r),o=!0}else k.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function Zi(e,t){let{text:n}=e,a=await Je({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!gd({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Ea());let s=an(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return Ln(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(g=>Ln(c,g,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var $9=[];function Pd(e){$9.push(e)}function Md(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(ar)||Qi(e).catch(r=>{k.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var Co="";async function Qi(e){let t=document.title;if(!t||t.includes(ar))return;Co!==t&&(Co=t);let n=await on(e,t);if(!fo(e,n))try{let a=await Pa({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=Co+ar+a.text)}catch(a){throw a}}function _d(e){e.rule.isTranslateTitle&&(document.title=Co)}var es;function Bd(e){let t=e.ctx.rule.aiRule;if(k.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=$t(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{wo(e,l,a)}),es=new MutationObserver(l=>{l.forEach(function(c){if(sn(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(d=>{d===r&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,k.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),wo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(d=>{let m=d.previousSibling;!m||m.translated||(m.translated=!0,setTimeout(()=>{m.childNodes[0]?.translated||(k.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",m),wo(e,m,a))},100))})}})}),es.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){En(l,[t.streamingSelector])&&(r=l,k.debug("streamingNode",r)),En(l,[t.messageWrapperSelector])&&(o=l,k.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),k.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),wo(e,o,a),r=void 0,o=null}}function wo(e,t,n){zn({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{ku(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function Rd(){es?.disconnect()}var j=null;function ko(){return j||null}function Ao(e){K9(e),Q9(e),Y9(e),Z9(e),ja(document,e),Tt("Translated"),X9(j),J9(j),Pd(Hn),G9(j)}function K9(e){e.rule.initialSelectorGlobalAttributes&&yd(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function G9(e){Bd(e)}function V9(){Rd()}function J9(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ha(n,e)})}async function Y9(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await mu({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function X9(e){e.ctx.rule.isTranslateTitle&&(Qi(e.ctx),e.titleDynamicObserver=Md(e.ctx))}function Z9(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function Q9(e){let t=_t();j&&(t=j.id),j=j||{},j.ctx=e,j.id=t,j.paragraphQueue=j.paragraphQueue||[],j.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},j.currentUrl=window.location.href,j.containerRule={pageHeight:screen.availHeight,selectors:j.rule.selectors},j.paragraphEntities=j.paragraphEntities||{},j.autoIncreaseParagraphId=j.autoIncreaseParagraphId||1,j.interruptEffectDOM=!1,j.urlChangeDelay=e.rule.urlChangeDelay,j.immediateTranslateCapacity=e.state.immediateTranslationTextCount,j.observeContainers=j.observeContainers||[],j.observeParagraphs=j.observeParagraphs||[],j.dynamicContainerObserver=j.dynamicContainerObserver||u6(j),j.ignoreResizeObserver=j.ignoreResizeObserver||r6(j),j.containerVisibleObserver=j.containerVisibleObserver||t6(j),j.paragraphVisibleObserver=j.paragraphVisibleObserver||n6(j),j.injectCssToDocument=vo,j.walkContainer=zn,j.translateState=e.state.translationMode||e.config.translationMode||"dual",j.allInlineWindows=[window],window.onerror=e6(j,e),window.immersiveTranslateSwitchTranslateState=ns.bind(j)}function Nd(e,t){t.getRootNode()instanceof ShadowRoot?vo(t.getRootNode(),e):vo(t.ownerDocument,e),ts(e)}function ts(e){j||(j={},j.ctx=e,j.id=_t(),j.paragraphQueue=[],j.injectCssToDocument=vo,j.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},j.currentUrl=window.location.href,j.paragraphEntities={},j.autoIncreaseParagraphId=1,j.interruptEffectDOM=!1,j.urlChangeDelay=e.rule.urlChangeDelay,j.translateState=e.config.translationMode||"dual",j.observeContainers=[],j.observeParagraphs=[],j.allInlineWindows=[window],window.switchTranslateState=ns.bind(j))}function Hn(e=!0){j&&(Tt("Original"),V9(),j.interruptEffectDOM=!0,j.ignoreResizeObserver?.disconnect(),j.dynamicContainerObserver?.disconnect(),j.containerVisibleObserver?.disconnect(),j.paragraphVisibleObserver?.disconnect(),j.titleDynamicObserver?.disconnect(),_d(j.ctx),cd(),dd(),e&&ns.call(j,"original"),Object.values(j.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),j=null)}function e6(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{Ao(t)},e.urlChangeDelay||2e3)),!0}}function t6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(To(e,a.target),n.unobserve(a.target))})})}function n6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{Yi(e,o)}),n.unobserve(u)}})})}var Od;function a6(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(Od),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),Od=setTimeout(()=>{let u=e.ctx;Ao(u)},e.urlChangeDelay),!0)):!1}function u6(e){return new MutationObserver(t=>{if(!a6(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!Lt.isSkipMarkEle(n.target)&&!Lt.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...r,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&En(n.target,e.ctx.rule.mutationObserverContainerSelectors)){Lt.clearMark(n.target),n.target.paragraphs=void 0,To(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Ha(r,e))})}})}function r6(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);Ii(r)||(n.unobserve(a.target),Ha(u,e))}})}function ns(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{Ji(t,e)}),e=="original"&&document.querySelectorAll(`.${jt}`).forEach(t=>t.remove())}function vo(e,t){if(e instanceof HTMLIFrameElement){ja(e.contentDocument,t);return}ja(e,t)}async function Id(e){let t=Qe(),n="auto";if(ne()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=Bi(e.mainFrame):a=_a(e.mainFrame).slice(0,1e3),n=await Je({text:a})}else if(t)n=await Je({text:_a(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=Bi(e.mainFrame),n=await Je({text:a})}else n=await Nc();return n==="auto"&&(n=await kd()),yr(n),n}async function jd(){if(!j)return;document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=j.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){j.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${er}='${n}']`);r&&r.remove()}}Xi.call(j,j.ctx)}var zd={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},Hd={...It,"zh-CN":{...zd["zh-CN"],...It["zh-CN"]},"zh-TW":{...zd["zh-TW"],...It["zh-TW"]}},Ud=Hd;function Ua(e,t,n){return ta(Hd,e,t,ur,n)}var So=(e,t,n,a)=>{let u=v4[e]||e,r=k4[e],o=A4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${u})`}else return u};function Wa(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{k.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:Yu,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function as(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&je(o,i=>{i.preventDefault(),Wa({method:a[r]})})}}var _o,me,Gd,o6,Au,Wd,Vd,Fo={},Jd=[],i6=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Un(e,t){for(var n in t)e[n]=t[n];return e}function Yd(e){var t=e.parentNode;t&&t.removeChild(e)}function Xd(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?_o.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return Do(e,o,a,u,null)}function Do(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++Gd};return u==null&&me.vnode!=null&&me.vnode(r),r}function ln(e){return e.children}function Lo(e,t){this.props=e,this.context=t}function qa(e,t){if(t==null)return e.__?qa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Do(g.type,g.props,g.key,g.ref?g.ref:null,g.__v):g)!=null){if(g.__=n,g.__b=n.__b+1,(m=p[c])===null||m&&g.key==m.key&&g.type===m.type)p[c]=void 0;else for(d=0;d=n.__.length&&n.__.push({__V:Ro}),n.__[e]}function ke(e){return Su=1,d6(fm,e)}function d6(e,t,n){var a=No(Du++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):fm(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Ge,!Ge.u)){Ge.u=!0;var u=Ge.shouldComponentUpdate;Ge.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var d=c.__[0];c.__=c.__N,c.__N=void 0,d!==c.__[0]&&(l=!0)}}),!!l&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function Ct(e,t){var n=No(Du++,3);!me.__s&&pm(n.__H,t)&&(n.__=e,n.i=t,Ge.__H.__h.push(n))}function ls(e){return Su=5,gm(function(){return{current:e}},[])}function gm(e,t){var n=No(Du++,7);return pm(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function na(e,t){return Su=8,gm(function(){return e},t)}function cs(e){var t=Ge.context[e.__c],n=No(Du++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Ge)),t.props.value):e.__}function m6(){for(var e;e=mm.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Oo),e.__H.__h.forEach(ss),e.__H.__h=[]}catch(t){e.__H.__h=[],me.__e(t,e.__v)}}me.__b=function(e){typeof e.type!="function"||e.o||e.type===ln?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Ge=null,om&&om(e)},me.__r=function(e){im&&im(e),Du=0;var t=(Ge=e.__c).__H;t&&(is===Ge?(t.__h=[],Ge.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Ro,n.__N=n.i=void 0})):(t.__h.forEach(Oo),t.__h.forEach(ss),t.__h=[])),is=Ge},me.diffed=function(e){sm&&sm(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(mm.push(t)!==1&&rm===me.requestAnimationFrame||((rm=me.requestAnimationFrame)||g6)(m6)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Ro&&(n.__=n.__V),n.i=void 0,n.__V=Ro})),is=Ge=null},me.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Oo),n.__h=n.__h.filter(function(a){return!a.__||ss(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],me.__e(a,n.__v)}}),lm&&lm(e,t)},me.unmount=function(e){cm&&cm(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Oo(a)}catch(u){t=u}}),n.__H=void 0,t&&me.__e(t,n.__v))};var dm=typeof requestAnimationFrame=="function";function g6(e){var t,n=function(){clearTimeout(a),dm&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);dm&&(t=requestAnimationFrame(n))}function Oo(e){var t=Ge,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Ge=t}function ss(e){var t=Ge;e.__c=e.__(),Ge=t}function pm(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function fm(e,t){return typeof t=="function"?t(e):t}var $a={},p6={root:"",lang:"en",fallbackLang:"en"};function ds(e,t){let n=Object.assign({},p6,e);$a=t||$a;let[a,u]=ke(n.lang),[r,o]=ke($a),[i,s]=ke(!1),l=d=>{if(r.hasOwnProperty(d))return;s(!1);let m=Ad(n.root||"",d);n.getUrl&&(m=n.getUrl(n.root||"",d),fetch(m).then(g=>g.json()).then(g=>{$a[d]=g,o({...$a}),s(!0)}).catch(g=>{o({...$a}),s(!0)}))};return Ct(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:u,t:(d,m)=>{if(!r.hasOwnProperty(a))return d;let g=vu(r,a,d);return g===d&&a!==n.fallbackLang&&(g=vu(r,n.fallbackLang,d)),Ui(g,m)},isReady:i}}var f6=0;function U(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--f6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return me.vnode&&me.vnode(s),s}var gs=os(null),ms={root:"assets",lang:"en",fallbackLang:"en"},hm=e=>{let{t,setLang:n,lang:a,isReady:u}=ds({root:e.root||ms.root,lang:e.lang||ms.lang,fallbackLang:e.fallbackLang||ms.fallbackLang,getUrl:e.getUrl},e.translations);return U(gs.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function bm(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let l of r){let d=n[l].matches;for(let m of d)u[m]||(u[m]=[]),u[m].push(l)}let o=u[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(d=>d!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Em(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function ym(e){let t;try{t=new URL(e)}catch{return!1}let n=Uc(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(h6(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function h6(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function Tm(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function xm(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function yn(e){let{items:t,maxWidth:n}=e;return n=n||128,U("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>U("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var Io="DROP_DOWN_DEFAULT_VALUE";function ps(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=ls(null);return U("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:Io,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==Io){o.current.value=Io,o.current?.dispatchEvent(new Event("change"));let l=u.find(c=>c.value===s);l&&n(l)}},children:[{value:Io,label:e.label}].concat(u).map((i,s)=>U("option",{value:i.value,children:i.label},"option-"+s))})}function cn(){return cs(gs)}function fs(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=cn(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[r,"\uFF1A"]}),U(yn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Lu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var b6=({date:e})=>{let{t}=cn(),[n,a]=ke(!1);return Ct(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:U("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},E6=({minVersion:e})=>{let{t}=cn();return U("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},y6=()=>{let{t:e}=cn();return U("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},T6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=cn();return U("p",{class:"text-sm",children:[a("failToSyncRules")," ",U("a",{onClick:t,children:a("retry")}),U("br",{}),a("failedReason"),"\uFF1A",e,U("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function hs(e){let{isShowError:t,request:n}=e,[a,u]=ke(null),{t:r}=cn(),[o,i]=ke(null),[s,l]=ke(null),[c,d]=ke(""),[m,g]=ke(!1),[f,v]=ke(!1),[T,p]=ke(!1),[C,M]=ke(null),[L,A]=ke(null),y=Fn(),S=async()=>{d("");let D=o;if(o===null)try{let x=await n({url:ru});x?(i(x),D=x,g(!0)):(d(r("unknownError")),l(null))}catch(x){l(null),d(x.message);return}D!==null?(e.setStorageBuildinConfig(D),l(!1),u(D.buildinConfigUpdatedAt)):(d(r("canNotFetchRemoteRule")),l(null))};return Ct(()=>{Gn().then(D=>{let x=D.buildinConfigUpdatedAt;M(D);let F=new Date(x);if(u(x),y==="0.0.0"){p(!0);return}n({url:ru}).then(O=>{let w=O,B=w.minVersion,J=y;i(w);let N=w.latestVersion;if(N&&(Lu(J,N)?A(!0):A(!1)),Lu(J,B)){let ge=w.buildinConfigUpdatedAt;new Date(ge)>F?(l(!0),S()):l(!1)}else v(!0),l(null)}).catch(O=>{l(null),d(O.message)})})},[]),Ct(()=>{Gn().then(D=>{M(D)})},[a]),C?U("div",{class:"text-sm mt-2",style:{maxWidth:218},children:T?U(y6,{}):c?t===!1?null:U(T6,{handleSyncing:S,message:c,date:a||""}):f?t===!1?null:U(E6,{minVersion:o.minVersion}):s===null||s===!0?null:m?U(b6,{date:a}):null}):null}function bs(e){let t=Fn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:d,config:m,openAboutPage:g,onTranslateTheWholePage:f,onToggleEnabled:v,openOptionsPage:T,ontranslateToThePageEndImmediately:p,onSetPageLanguage:C,onToggleTranslate:M,onTranslateLocalPdfFile:L,onTranslatePdf:A,onRestorePage:y,ctx:S,currentUrl:D,currentLang:x,onClose:F,onTranslatePage:O,onSetLocalConfig:w,onMouseTriggerChanged:B,errorMsg:J,disabledButton:N,noPermissionPDF:ge}=e,pe=a,[Ne,be]=ke(""),[vt,ye]=ke(J),{t:b,lang:I}=cn(),G=60;I.startsWith("zh")||(G=65);let le=null,V=null,Ae=null,Q=null,Te=null,Z=null,ue=null,ce=null,Y=null,z=null,ee=null,Le=null,Se=!0;if(m){Rt()&&m&&(Se=m.generalRule.showSponsorOnSafari);let{translationService:_,translationServices:X,translationUrlPattern:Ce}=m;fn[_]&&(ce=G0(_,S)),X&&X[_]?Le=X[_]||{}:Le={};try{Y=new URL(D||"")}catch{}if(D&&ym(D)){z=Tm(Y.hostname),ee=xm(D);let{matches:fe,excludeMatches:Ee}=Ce;V=fe.includes(z),le=fe.includes(Y.hostname),Q=Ee.includes(z),Ae=Ee.includes(Y.hostname),Z=fe.includes(ee),ue=Ee.includes(ee)}}if(m&&x&&x!=="auto"){let{translationLanguagePattern:_}=m,{matches:X}=_;X.includes(x)?Te=!0:Te=!1}let te=_=>{_.preventDefault(),T()},He=_=>{pe(X=>(X.alpha?be("Success disable alpha!"):be("Success enable alpha!"),{...X,alpha:!X.alpha}))},tt=_=>{pe(X=>({...X,translationMode:_})),o(_)},Me=()=>{pe(_=>({..._,translationArea:"body"})),f()},_e=()=>{pe(_=>({..._,translationArea:"main"})),n()},Be=(_,X,Ce,fe)=>{if(_==="default"){pe(ot=>{let xe={...ot.translationUrlPattern};return{...ot,translationUrlPattern:{...ot.translationUrlPattern,matches:An([Y?.hostname,z,D],xe.matches),excludeMatches:An([Y?.hostname,z,D],xe.excludeMatches)}}});return}let Ee=_,Ie=Ee==="matches"?"excludeMatches":"matches";Y&&pe(ot=>{let xe={...ot.translationUrlPattern};return xe[Ee]=U0(X,xe[Ee]),fe.length>0&&(xe[Ee]=An(fe,xe[Ee])),xe[Ie]=An(Ce,xe[Ie]),{...ot,translationUrlPattern:{...ot.translationUrlPattern,...xe}}}),Ee==="matches"&&l==="Original"?setTimeout(()=>{O(),F()},100):Ee==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{y(),F()},100)},kt=_=>{if(!_){pe(fe=>{let Ee={...fe.translationLanguagePattern};return{...fe,translationLanguagePattern:{...fe.translationLanguagePattern,matches:An(x,Ee.matches),excludeMatches:An(x,Ee.excludeMatches)}}});return}let X=_,Ce=X==="matches"?"excludeMatches":"matches";x&&pe(fe=>{let Ee={...fe.translationLanguagePattern};return Ee[X]=U0(x,Ee[X]),Ee[Ce]=An(x,Ee[Ce]),{...fe,translationLanguagePattern:{...fe.translationLanguagePattern,...Ee}}}),X==="matches"&&l==="Original"&&setTimeout(()=>{O(),F()},100)},xn=Y?.pathname.toLowerCase().endsWith(".pdf"),Ue=b("translate");l==="Translated"||l==="Error"?Ue=b("show-original"):l==="Original"?xn?lr()&&Y.protocol==="file:"||ge?Ue=b("translate-firefox-local-pdf"):ne()?Ue=b("noSupportTranslate-pdf"):Ue=b("translate-pdf"):Ue=b("translate"):Ue=b(l);let en=b("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(m.shortcuts.toggleTranslatePage&&(W4()&&S.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ue+=` (${b(`fingers.${S.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ue+=` (${m.shortcuts.toggleTranslatePage})`),m.shortcuts.toggleTranslateToThePageEndImmediately&&(en+=` (${m.shortcuts.toggleTranslateToThePageEndImmediately})`));let Kt=[];S&&(Kt=Ec(S));let nt=_=>{_.preventDefault(),F()},Ft=Z3(S.config.translationService,S.config.targetLanguage);return U("div",{class:"p-3",children:[U("div",{class:"text-sm",children:[U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),U(yn,{items:zt.map(_=>({label:So(_,m.interfaceLanguage),value:_,selected:_===S.sourceLanguage,onSelected:X=>{C(X.value)}}))})]}),m&&m.targetLanguage&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),U(yn,{items:Ft.filter(_=>_!=="auto").map(_=>({label:So(_,m.interfaceLanguage),value:_,selected:_===m.targetLanguage,onSelected:X=>{pe(Ce=>({...Ce,targetLanguage:X.value}))}}))})]}),ce&&Kt.length>0&&U(ln,{children:[U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),U(yn,{items:Kt.map(_=>({label:`${b("translationServices."+_.id)}${_.ok?"":" "+b("needAction")}`,value:_.id,selected:_.selected,onSelected:X=>{let Ce=Kt.find(fe=>fe.id===X.value);Ce.ok?(pe(fe=>({...fe,translationService:Ce.id})),Ce.props.length===0?setTimeout(()=>{O()},1):setTimeout(()=>{y()},1)):(pe(fe=>({...fe,translationService:Ce.id})),setTimeout(()=>{T()},100))}}))})]}),Le&&ce.props.length>0&&ce.props.map((_,X)=>U("div",{class:"pl-4 text-sm",children:U(fs,{field:_,value:Le[_.name],onChange:Ce=>{pe(fe=>{let Ee=fe.translationServices||{},Ie=Ee[ce.id]||{};return setTimeout(()=>{y()},1),{...fe,translationServices:{...Ee,[ce.id]:{...Ie,[_.name]:Ce}}}})}},"field-"+X)},"service"+X))]}),Y&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:b("forThisSite")}),U(yn,{items:[{label:b("default"),value:"default",selected:le===!1&&Ae===!1&&!V&&!Q&&!Z&&!ue,onSelected:()=>{Be("default",Y.hostname,[],[]);let _=Y.hostname,X=S.localConfig.tempTranslationUrlMatches||[],Ce=X.filter(Ee=>Ee.match!==_),fe=!1;Ce.length!==X.length&&(fe=!0),fe&&w({...S.localConfig,tempTranslationUrlMatches:[...Ce]})}},ee&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:Z,onSelected:()=>{Be("matches",ee,[ee],[])}},{label:b("alwaysTranslateSomeSite",{hostname:Y.hostname}),value:"matches",selected:le,onSelected:_=>{Be(_.value,Y.hostname,[Y.hostname,z,ee],[z])}},z&&{label:b("alwaysTranslateSomeSite",{hostname:z}),value:"matchesWild",selected:V,onSelected:()=>{Be("matches",z,[ee,Y.hostname,z],[Y.hostname])}},ee&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:ue,onSelected:()=>{Be("excludeMatches",ee,[ee],[])}},{label:b("neverTranslateSomeSite",{hostname:Y.hostname}),value:"excludeMatches",selected:Ae,onSelected:_=>{Be(_.value,Y.hostname,[Y.hostname,z,ee],[z])}},z&&{label:b("neverTranslateSomeSite",{hostname:z}),value:"excludeMatchesWild",selected:Q,onSelected:()=>{Be("excludeMatches",z,[Y.hostname,ee,z],[Y.hostname])}}].filter(Boolean)})]}),B&&lu()&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),U(yn,{items:rr.filter(_=>!(rr.includes(m.generalRule.mouseHoverHoldKey)&&_==="OtherCustom")).map(_=>{let X=b("mouseHoldKey",{key:_}),Ce=rr.includes(m.generalRule.mouseHoverHoldKey),fe=_===m.generalRule.mouseHoverHoldKey;return _==="Auto"?X=b("mouseHoldKeyAuto"):_==="Off"?X=b("mouseHoldKeyOff"):_==="OtherCustom"?X=Ce?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:m.generalRule.mouseHoverHoldKey}):_==="Other"&&(X=b("mouseHoldKeyOther")),Ce||_==="OtherCustom"&&(fe=!0),{label:X,value:_,selected:fe,onSelected:Ee=>{Ee.value==="Other"?T("#interface"):B(Ee.value)}}})})]})]}),U("div",{class:"",children:U("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{xn?A&&A():M()},"aria-busy":l==="Translating",disabled:N||l==="Translating",children:Ue})}),U("div",{class:"text-sm",children:Ne}),U("div",{class:"text-sm",children:vt}),U("div",{class:"flex justify-between flex-wrap",children:[x&&x!=="auto"?U("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[U("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Te,onChange:_=>{let X=_.target.checked;kt(X?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:So(x,m.interfaceLanguage,!1,!0)})]}):U("span",{}),U("div",{class:"flex flex-end flex-grow",children:U(ps,{label:b("more"),showArrow:!0,maxWidth:G,onSelected:_=>{_.value==="changeToOnlyTranslationMode"?tt("translation"):_.value==="changeToDualTranslationMode"?tt("dual"):_.value==="translateTheWholePage"?f():_.value==="translateToThePageEndImmediately"?p():_.value==="translateTheMainPage"?n():_.value==="showTranslationOnly"||(_.value==="translateLocalPdfFile"?L&&L():_.value==="translateLocalHtmlFile"?r&&r():_.value==="translateLocalSubtitleFile"?i&&i():_.value==="donate"?(globalThis.open(m.donateUrl),F()):_.value==="feedback"?(globalThis.open(m.feedbackUrl),F()):_.value==="options"?(T(),F()):_.value==="changeToTranslateTheWholePage"?Me():_.value==="changeToTranslateTheMainPage"?_e():_.value==="about"?g():_.value==="toggleEnabled"?v():_.value==="openEbookViewer"?d():_.value==="openEbookBuilder"&&c())},menus:[m.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},m.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},m.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},m.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+en,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!ne()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!ne()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(m.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(m.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(Se?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),U("footer",{children:[U(hs,{isShowError:!1,request:u,setStorageBuildinConfig:s}),U("div",{class:"mt-3 text-sm flex justify-between",children:[U("a",{href:"#",class:"secondary",onClick:te,children:b("options")}),ne()&&U("a",{href:"#",class:"secondary",onClick:nt,children:b("close")}),U("span",{class:"immersive-translate-no-select muted",onClick:Em(7)(He),children:["V",t,m.enabled?null:U("a",{href:"#",onClick:v,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var Es={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return q.storage[n].get(a)},set:(e,t,n)=>q.storage[n].set({[e]:t})};function jo(e,t,n){let[a]=ke(()=>typeof t=="function"?t():t),[u]=ke(n),[r,o]=ke(a),[i,s]=ke(!1),[l,c]=ke("");Ct(()=>{Es.get(e,a,u).then(m=>{m[e]&&o(m[e]),s(!0),c("")}).catch(m=>{s(!1),c(m)})},[e,a,u]);let d=na(m=>{let g=typeof m=="function"?m(r):m;k.debug("new settings",g),Es.set(e,g,u).then(()=>{o(g),s(!0),c("")}).catch(f=>{o(g),s(!1),c(f)})},[u,e,r]);return[r,d,i,l]}function ys(e,t,n){let a=[];return function(){let[r,o,i,s]=jo(e,t,n),l=na(c=>{for(let d of a)d(c)},[]);return Ct(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,l,i,s]}}function Cm(e,t){return ys(e,t,"sync")}var x6="userConfig",C6={},w6=Cm(x6,C6);function wm(e){let[t,n,a,u]=w6(),r=na(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function zo(e){try{let t=new Date;k.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await q.storage.local.set({[iu]:t.toISOString()}),await v6(),ne()||await Kc()}catch(t){k.error("run cron task failed",t)}}async function vm(){let t=(await xt()).interval;if(t){let n=await q.storage.local.get(iu);if(n&&n[iu]){let a=n[iu];if(Date.now()-new Date(a).getTime()a?(await q.storage.local.set({buildinConfig:t}),k.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):k.debug(`no need to sync rules, latest: ${a}`):k.info(`local version is too old, please update to ${o} or later`)}catch(e){k.error("sync rules error: ",e)}}function Ts(e){let{onClose:t}=e,[n,a]=ke("Original"),[u,r,o,i]=wm(()=>{setTimeout(()=>{M("updateGlobalContext",!1)()},250)}),[s,l]=ke(null),[c,d]=ke(globalThis.location.href),[m,g]=ke("auto"),[f,v]=ke(null),T=N=>{a(N.detail)},p=N=>{g(N);let ge=bm(c,N,s.sourceLanguageUrlPattern);r(pe=>({...pe,sourceLanguageUrlPattern:ge})),Ut(N)},C=()=>{d(globalThis.location.href)};Ct(()=>(document.addEventListener(Qu,T,!1),xt().then(N=>{l(N);let ge=an();g(ge);let pe=Re();a(pe),zo(N.interval)}),document.addEventListener("urlChange",C),()=>{document.removeEventListener("pageTranslatedStatus",T),document.removeEventListener("urlChange",C)}),[]),Ct(()=>{xt().then(N=>{l(N)})},[u]),Ct(()=>{c&&s&&qt({url:c,config:s}).then(N=>{v(N)})},[c,s]);let M=(N,ge,pe={})=>()=>{Wa({method:N,data:pe||{}}),ge&&t()},L=()=>{t()},A=()=>{r(N=>({...N,enabled:!N.enabled})),setTimeout(()=>{L()},50)},y=()=>{ei(),setTimeout(()=>{L()},50)},S=()=>{ei(),setTimeout(()=>{L()},50)},D=(N="")=>{Lr(!0,N),setTimeout(()=>{t()},50)},x=()=>{Fr(),setTimeout(()=>{t()},50)},F=()=>{Pr(),setTimeout(()=>{t()},50)},O=()=>{qc(),setTimeout(()=>{t()},50)},w=()=>{Mr(),setTimeout(()=>{t()},50)},B=()=>{$c(),setTimeout(()=>{t()},50)},J=N=>{r(ge=>({...ge,generalRule:{...ge.generalRule,mouseHoverHoldKey:N}}))};return!s||!f?null:U(bs,{openEbookViewerPage:F,openEbookBuilderPage:w,onSwitchTranslationMode:N=>{M("switchTranslationMode",!0,{mode:N})()},onTranslateLocalHtmlFile:O,onTranslateLocalSubtitleFile:B,request:$,onClose:L,onToggleEnabled:A,onTranslateTheWholePage:M("translateTheWholePage",!0),openOptionsPage:D,onToggleTranslate:M("toggleTranslatePage",!0),onTranslateTheMainPage:M("translateTheMainPage",!0),ontranslateToThePageEndImmediately:M("translateToThePageEndImmediately",!0),onTranslatePage:M("translatePage",!0),onRestorePage:M("restorePage",!1),onTranslatePdf:y,openAboutPage:x,onTranslateLocalPdfFile:S,onSetPageLanguage:p,onUserConfigChange:r,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:m,onSetLocalConfig:Dr,onSetBuildinConfig:Oc,onMouseTriggerChanged:J})}function k6(e,t){for(let n of t){if(ne()&&!lr()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var xs={position:"right",right:0,top:335},wt={...xs},Wo=!1,aa=null,dn=null,qo=null,Cs=null,Ka=null,ws=null,km=6,Ho,Uo,Sm=null,Dm=null;async function ks(){let e=lt();ws=await Rc(),wt=ws.pagePopupConfig||wt;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Cs=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` -`);k6(n,[a]);let u=document.createElement("div");u.innerHTML=De.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),aa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");dn=o,qo=n.querySelector("#mount"),aa.setAttribute("style",vs(wt)),Ls(),o.addEventListener("mousedown",Lm),o.addEventListener("touchstart",D6),globalThis.addEventListener("resize",s=>{aa.setAttribute("style",vs(wt))})}function A6(){Bo(null,qo),qo.style.display="none",dn.style.display="block",Ka=setTimeout(()=>{Ls(!0)},2e3)}function Am(e){let t=e.querySelector("#mount"),n=()=>{A6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await xt();Bo(U(hm,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:Ud,children:U("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:U("div",{class:"immersive-translate-popup-wrapper",style:S6(),children:U(Ts,{onClose:n})})})}),t)})().then(()=>{dn.style.display="none",qo.style.display="block"})}function S6(){let e=As(),t=e.height,{position:n,top:a,left:u}=wt,r={position:"fixed"},o=300,i=300,s=100;return gl()&&(n=xs.position,a=xs.top),n==="right"||n==="left"?(r.top=a-s,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-s,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function As(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function Lm(e){Dm=aa.getAttribute("style"),Ho=e.pageX,Uo=e.pageY,Ka&&clearTimeout(Ka),Wo=!1,dn.style.opacity="1",dn.style.transform="none",Sm=dn.getAttribute("style"),globalThis.addEventListener("mousemove",Ss),globalThis.addEventListener("mouseup",Ds),globalThis.addEventListener("touchmove",Fm),globalThis.addEventListener("touchend",$o),globalThis.addEventListener("touchcancel",$o)}function D6(e){e.preventDefault&&e.preventDefault(),Lm(e.changedTouches[0])}function Fm(e){Ss(e.changedTouches[0])}function $o(e){e.preventDefault&&e.preventDefault(),Ds(e.changedTouches[0])}function Ss(e){e.preventDefault&&e.preventDefault(),Wo=!0,aa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Ds(e){e.preventDefault&&e.preventDefault(),F6(),Ka&&clearTimeout(Ka),Ho=Ho||0,Uo=Uo||0;let t=Math.abs(e.pageX-Ho),n=Math.abs(e.pageY-Uo);t{Ls(!0)},2e3)}function Ls(e=!1){dn.style.opacity="0.4";let t="";wt.position==="left"?t="translateX(-40%)":wt.position==="right"?t="translateX(40%)":wt.position==="top"?t="translateY(-40%)":wt.position==="bottom"&&(t="translateY(40%)"),dn.style.transform=t,e&&(dn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function F6(){globalThis.removeEventListener("mousemove",Ss),globalThis.removeEventListener("mouseup",Ds),globalThis.removeEventListener("touchmove",Fm),globalThis.removeEventListener("touchend",$o),globalThis.removeEventListener("touchcancel",$o)}function vs(e){let t=P6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function P6(e){let{position:t,...n}=e,a=As(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var Ko=!1;async function Pm(e){if(!e){let t=await xt(),n={url:globalThis.location.href,config:t};e=await qt(n)}e.config.debug&&k.setLevel("debug"),e.isTranslateExcludeUrl?k.debug("detect exclude url, do not inject anything."):(ha().any||ne())&&e.rule.isShowUserscriptPagePopup&&(Ko||(Ko=!0,ks().catch(t=>{k.error("init popup error",t)})))}async function Mm(){Ko||(Ko=!0,ks().catch(e=>{k.error("init popup error",e)}))}var _m=!1,Om=[()=>{je.unbind()}],Ps=[...Om],M6=ct(async()=>{await Lr()},50),_6=ct(async()=>{await Fr()},50),B6=ct(async()=>{await Mr()},50),R6=ct(async()=>{await Pr()},50),Nm=ct(e=>{Wa({method:e})},50),O6=ct(()=>{wr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),N6=ct(()=>{Sr();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),I6=ct(()=>{kr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function j6(e,t){let n=e.document;if(_m)return;if(_m=!0,ne()||Ac(),n.addEventListener("securitypolicyviolation",J6),n.addEventListener("immersiveTranslateEbookLoaded",V6),n.addEventListener(l4,G6),n.addEventListener("click",u=>{W6(u,t)}),ne()&&(globalThis.top!=globalThis.self?e.addEventListener("message",H6,!1):n.addEventListener(kn,z6)),globalThis.top===globalThis.self){let u=un.rootIframe(B0);u.handleAsk("getRateLimitDelay",u3),u.handleAsk("throttleRequest",w3)}}function Fu(e,t){Y6(),j6(t,e);let n=t.document,a=U6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Ps.push(()=>{n.removeEventListener("touchstart",a)}),ne()&&globalThis.top===globalThis.self&&(as(e.config),X6(e.config)),Rt()&&as(e.config)}function z6(e){Mm()}function H6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===Yu&&Ta(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function U6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?O6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?I6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&N6()}function W6(e,t){let n=e.target;if(!n||!n.getAttribute){Fs(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&$e(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${H}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),vr(),Fs(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${H}-tooltip-text`);Rm($6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Rm(q6.bind(null,t)));Fs(n)}async function Bm(e=!1){let t=document.querySelector(`.${H}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await Bc();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await _c(n)}function Rm(e){let t=`${H}-modal`,n=`${H}-modal-title`,a=`${H}-modal-body`,u=`${H}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),s=r.querySelector(`.${a}`);e(r,o,s,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=H+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=H+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(d){d.target==r&&(r.style.display="none")},e(r,s,l,c)}setTimeout(()=>{K6()},100)}function q6(e,t,n,a,u){let r=Im.bind(null,e);n.innerHTML=`
${D4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.createElement("p");o.innerHTML=`${r("searchEnhancementNotes")}`,a.appendChild(o);let i=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let m=0;m${r("option")}`})),a.appendChild(s);let l=a.querySelector(`.${H}-open-enhancement`);l&&(l.onclick=function(){Wc(!0)});let c=document.createElement("button");c.innerText=r("closeModal"),c.className=`${H}-btn ${H}-cancel-btn`;let d=document.createElement("button");d.className=`${H}-btn`,d.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(c),u.appendChild(d),c.onclick=function(){t.style.display="none"},d.onclick=function(){let m=a.getElementsByTagName("input"),g="";for(let f=0;f{Go()},10)}function J6(e){de.HAS_CSP_ERROR="1"}function Y6(){Ps.forEach(e=>{e()}),Ps=Om}function X6(e){if(ne()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Rr.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=Ua(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:L0,title:Ua("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:F0,title:Ua("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:S0,title:Ua("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:D0,title:Ua("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===S0?M6():r.id===D0?_6():r.id===F0?B6():r.id===L0?R6():Nm(r.id)},r.key)}}function Z6(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{k.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function jm(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Oe(i.left,r)&&Oe(i.width,u.width));return{prevP:u,curP:o}}function Ms(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function zm(e){return e?e==e[0].repeat(e.length):!0}function Oe(e,t,n=5){return Math.abs(e-t)<=n}var _s=[",","\\.","\uFF0C","\u3002"];function Hm(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Oe(a.left,u.left,7)&&Oe(a.nextTop,u.top,10)&&Vo(a,u)}function Um({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Km(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Gm({prevLineP:e,prevP:t},n){return Oe(e.left,n.left,1)&&Oe(e.right,t.right,1)&&t.mergedTimes>=1}function Bs(e,t){let{prevLineP:n}=e;return Km(e,t)&&(Oe(n.bottom,t.bottom)||Oe(n.nextTop,t.top)&&Oe(n.left,t.left))}function Vm(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return Km(e,t)&&n.width0&&a/u<.1&&n.left!Ms(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Je({text:n.map(r=>r.str).join(` -`).slice(0,1e3)});yr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await rn({sentences:u},e,(r,o,i)=>{let s=i.id,l=n[s];r?(l.translatedStr=r.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),e1(l)})}var Os={};async function Q6(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Os).filter(n=>!!n);await Jo(Qm,t)}function e1(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Os[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",Q6)):e.translateStatus=="success"&&(Os[e.id]=void 0,t.innerHTML=De.sanitize(e.translatedStr)))}function eg(e,t){let n=[],a=n1(e,t);return a1(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){Zm(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{Zm(e,n,o,!1)}),n.push("
")}}),` +`))),i&&In(e,i,"immersive-translate-dynamic-injected-css")}async function Ld(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Ve({text:_a(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=Kn(document.documentElement.lang)),e}function Fd(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function W0(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=W9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let d=n.substring(s+i.length,c),m=Object.keys(o).filter(g=>g!=="tag").map(g=>`${g}="${o[g]}"`).join(" ");n=n.replace(`${i}${d}`,`<${l} ${m}>${d}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function vu(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function ta(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=vu(e,n,t);return r===t&&n!==a&&(r=vu(e,a,t)),W0(r,u)}function W9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function bo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function q0(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(A4),e&&(r.push(`${z}-target-translation-theme-${e}`),t?r.push(`${Bi}-theme-${e}`):r.push(`${_i}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(Bi):(r.push(_i),u&&r.push(k4)),r}function $0(e){let t=["notranslate",w4];return e&&t.push(`${z}-target-translation-theme-${e}-inner`),t}function Pd(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,d=Ra(n),m="afterend",g=d[0].replace(/\//g,"/");g=g.replace(/"/g,'\\"'),g=g.replace(//g,">");let f=d[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let w=`${g}(\\d+)${f}`,T=new RegExp(w,"g"),p=bo(s);p=Ce.sanitize(p),o.length>0&&(p=p.replace(T,A=>{let y=p.indexOf(A),S=p[y-1]===" ",D=p[y+A.length]===" ",x=A.slice(d[0].length,-d[1].length),F=Number(x);if(isNaN(F))return A;let O=o[Number(F)];if(O&&O.type==="element"){let k=O.value.outerHTML;return S||(k=" "+k),D||(k=k+" "),k}else v.error("variable type not supported",O,A);return A}));let C=q0(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&C.push(v4);let M=$0(r),L="";return a.translationBlockStyle&&(L=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${L} class="${C.join(" ")}" ${an}="1"><${a.targetWrapperTag} class="${M.join(" ")}" ${an}="1">${p}`,e.inline||(l==="smart"?p=`
${p}`:p=`${l}${p}`),e.inline&&(l!=="smart"?p=`${l}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${an}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:m}}function Eo(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let s=0;s2&&(T=`<${u[2]}${w}>`),i[w]=l,o.push({text:T,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";d&&(f=jn(K0(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Bt(l,a)){let w=Object.keys(i).length,T=`${u[0]}${w}${u[1]}`;u.length>2&&(T=`<${u[2]}${w}>`),i[w]=l;let p=G0(o).endsWith(" ")?" ":"",C=jn(l.innerText||l.textContent),M=jn(l.nextSibling).startsWith(" ")?" ":"",L=Cu(p+C+M),A=L[0]+T+L[1];if(p===" ")A=A.trimStart();else if(!A.startsWith(" ")){let y=Cu(l.previousSibling)[1];y===""&&(y=" "),A=y+A}o.push({text:A,type:"variable"})}else{let f=G0(o).endsWith(" ")?" ":"",w=jn(l.innerText||l.textContent);d&&(w=jn(K0(l)));let T=jn(l.nextSibling).startsWith(" ")?" ":"",p=Cu(f+w+T),C=p[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+p[1];if(f===" ")C=C.trimStart();else{let M=Cu(l.previousSibling)[1];M===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(M=" "),C=M+C}o.push({text:C,type:"text"})}else{let f=G0(o).endsWith(" ")?" ":"",w="";l.textContent&&(w=jn(K0(l))),f===" "&&(w=w.trimStart()),o.push({text:w,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(d=o[l-1].text),l2){let c=l[2];return q9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=Pd(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function K0(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function q9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:d}=e;o=o||[];let m=bo(e.targetText);m=Ce.sanitize(m);let g=m,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),w=new RegExp(`<${t}(\\d+)>`);o.length>0&&(g=g.replace(f,M=>{let L=g.indexOf(M),A=g[L-1]===" ",y=g[L+M.length]===" ",S=M.match(w);if(!S)return M;let D=S[1],x=Number(D);if(isNaN(x))return M;let F=o[Number(x)];if(F&&F.type==="element"){let O=F.value.outerHTML;return A||(O=" "+O),y||(O=O+" "),O}else if(F&&F.type==="text"){let O=F.value;return A||(O=" "+O),y||(O=O+" "),O}else v.error("variable type not supported",F,M);return M}));let T=q0(l,n,a||[],i,c),p=$0(l),C="";return d&&(C=`style="${d}"`),g=`<${u} ${C} class="${T.join(" ")}" ${an}="1"><${u} class="${p.join(" ")}" ${an}="1">${g}`,n||(r==="smart"?g=`
${g}`:g=`${r}${g}`),n&&(r!=="smart"?g=`${r}${g}`:g=`<${u} class="notranslate" ${an}="1"> ${g}`),s==="smart"?g=`${g}`:g=`${g}${s}`,{html:g,position:"afterend"}}function G0(e){let t=e[e.length-1];return t?t.text:""}function $t(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var $9={sanitize:e=>e};function To(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:$t(e.ctx),onParagraph:ku.bind(null,e),onFrame:n=>{J0(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),ca&&Ye(t,"consumeContainer",e.id))}function J0(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Oa(t))return;v.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ha(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else v.debug("onFrame shadowRoot",t.host),Ha(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ha(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=$t(t.ctx),r=0;if(s(t,e,n))return;if(sn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(sn(c)&&(a&&I0(c,a),u&&z0(c,u)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(Lt.mark(l.currentNode,t.id);l.nextNode();){Lt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let d=l.currentNode;if(Lt.mark(l.currentNode,t.id),i(d)){o(d);continue}else break}if(!l.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){Lt.clearMark(l),r++,t.immediateTranslateCapacity>=0?To(t,l):(ca&&Ye(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return J0(t,l.shadowRoot,n),!1;if(c==="iframe")return J0(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let d=t.containerRule;if(d.selectors&&d.selectors?.length>0)return ho(l,d.selectors);if(d.pageHeight){let m=l.scrollHeight;if(m>0&&m0)return!0}return!1}function s(l,c,d){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||d&&Lt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let g=$t(l.ctx);return!!H0(c,{excludeSelectors:g.excludeSelectors,selectors:g.selectors,stayOriginalSelectors:g.stayOriginalSelectors})}}function Y0(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!Lt.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(yo(e.rootNodes),_d(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=V0(e.rootNodes);yo(e.rootNodes),za(o,a,e.targetNodes||[]),_d(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];za(o,a,e.rootNodes||[]),Bd(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=V0(e.rootNodes);za(o,a,e.targetNodes||[]),Bd(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=V0(e.targetNodes);yo(e.targetNodes),za(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&yo(e.targetNodes)}catch(o){v.error(o)}}}function _d(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Ye(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function Bd(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=Ba(a,"immersiveTranslateClassBak");go(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function V0(e){return e?e[e.length-1].nextSibling:null}function yo(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function za(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var K9=ct(Z0,300);async function ku(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||G9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,ca&&Ye(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Ra(u),i=Eo(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await Q0(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:po(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(s){if(v.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(V9(e,t.text),X0(e,t)):(ca&&Ye(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function G9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?sn(t)&&t.classList.contains(jt):!1}function V9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function X0(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),ca&&Ye(t.commonAncestorContainer,"consumeParagraph",e.id),K9.call(e,e.ctx)}async function Z0(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await on(a,t,(u,r,o)=>{let i=o.id,s=J9(e,i.toString());s&&Y9.call(null,u,r,o,s,t,n)})}catch(u){v.error("translateCurrentQueue error",u);return}}function J9(e,t){return e.find(n=>n.id===t)}function Y9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${z}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Na(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(v.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=u,l=n.id,c=document.createElement(s.targetWrapperTag);Ye(c,y4,l.toString()),c.classList.add("notranslate",jt,jt+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let d=a.rootNodes[a.rootNodes.length-1].nextSibling;za(d,a.commonAncestorContainer,[c]);let m=e.message.replaceAll(` +`,"");if(m=m.replaceAll('"',"""),i&&(i.error=new Error(m)),c){let g=ta(It,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=ta(It,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),w=`<${s.targetWrapperTag} class="${z}-error notranslate"><${s.targetWrapperTag} class="${z}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=Ce.sanitize(w)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=Md(a,u),l=document.createElement(u.rule.targetWrapperTag);l.classList.add("notranslate",jt),l.setAttribute("lang",u.targetLanguage),l.setAttribute(an,"1");let c=$9.sanitize(s);l.innerHTML=c,a.targetNodes=[l],Y0(a,r),o=!0}else v.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function Q0(e,t){let{text:n}=e,a=await Ve({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!bd({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Ea());let s=un(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return Ln(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(g=>Ln(c,g,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var X9=[];function Rd(e){X9.push(e)}function Od(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(ar)||es(e).catch(r=>{v.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var Co="";async function es(e){let t=document.title;if(!t||t.includes(ar))return;Co!==t&&(Co=t);let n=await en(e,t);if(!fo(e,n))try{let a=await Pa({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=Co+ar+a.text)}catch(a){throw a}}function Nd(e){e.rule.isTranslateTitle&&(document.title=Co)}var ts;function Id(e){let t=e.ctx.rule.aiRule;if(v.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=$t(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{wo(e,l,a)}),ts=new MutationObserver(l=>{l.forEach(function(c){if(sn(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(d=>{d===r&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,v.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),wo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(d=>{let m=d.previousSibling;!m||m.translated||(m.translated=!0,setTimeout(()=>{m.childNodes[0]?.translated||(v.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",m),wo(e,m,a))},100))})}})}),ts.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){En(l,[t.streamingSelector])&&(r=l,v.debug("streamingNode",r)),En(l,[t.messageWrapperSelector])&&(o=l,v.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),v.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),wo(e,o,a),r=void 0,o=null}}function wo(e,t,n){zn({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{ku(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function jd(){ts?.disconnect()}var j=null;function ko(){return j||null}function Ao(e){Z9(e),r6(e),n6(e),u6(e),ja(document,e),Tt("Translated"),a6(j),t6(j),Rd(Hn),Q9(j)}function Z9(e){e.rule.initialSelectorGlobalAttributes&&wd(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function Q9(e){Id(e)}function e6(){jd()}function t6(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ha(n,e)})}async function n6(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await mu({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function a6(e){e.ctx.rule.isTranslateTitle&&(es(e.ctx),e.titleDynamicObserver=Od(e.ctx))}function u6(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function r6(e){let t=_t();j&&(t=j.id),j=j||{},j.ctx=e,j.id=t,j.paragraphQueue=j.paragraphQueue||[],j.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},j.currentUrl=window.location.href,j.containerRule={pageHeight:screen.availHeight,selectors:j.rule.selectors},j.paragraphEntities=j.paragraphEntities||{},j.autoIncreaseParagraphId=j.autoIncreaseParagraphId||1,j.interruptEffectDOM=!1,j.urlChangeDelay=e.rule.urlChangeDelay,j.immediateTranslateCapacity=e.state.immediateTranslationTextCount,j.observeContainers=j.observeContainers||[],j.observeParagraphs=j.observeParagraphs||[],j.dynamicContainerObserver=j.dynamicContainerObserver||c6(j),j.ignoreResizeObserver=j.ignoreResizeObserver||d6(j),j.containerVisibleObserver=j.containerVisibleObserver||i6(j),j.paragraphVisibleObserver=j.paragraphVisibleObserver||s6(j),j.injectCssToDocument=vo,j.walkContainer=zn,j.translateState=e.state.translationMode||e.config.translationMode||"dual",j.allInlineWindows=[window],window.onerror=o6(j,e),window.immersiveTranslateSwitchTranslateState=as.bind(j)}function Hd(e,t){t.getRootNode()instanceof ShadowRoot?vo(t.getRootNode(),e):vo(t.ownerDocument,e),ns(e)}function ns(e){j||(j={},j.ctx=e,j.id=_t(),j.paragraphQueue=[],j.injectCssToDocument=vo,j.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},j.currentUrl=window.location.href,j.paragraphEntities={},j.autoIncreaseParagraphId=1,j.interruptEffectDOM=!1,j.urlChangeDelay=e.rule.urlChangeDelay,j.translateState=e.config.translationMode||"dual",j.observeContainers=[],j.observeParagraphs=[],j.allInlineWindows=[window],window.switchTranslateState=as.bind(j))}function Hn(e=!0){j&&(Tt("Original"),e6(),j.interruptEffectDOM=!0,j.ignoreResizeObserver?.disconnect(),j.dynamicContainerObserver?.disconnect(),j.containerVisibleObserver?.disconnect(),j.paragraphVisibleObserver?.disconnect(),j.titleDynamicObserver?.disconnect(),Nd(j.ctx),pd(),fd(),e&&as.call(j,"original"),Object.values(j.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),j=null)}function o6(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{Ao(t)},e.urlChangeDelay||2e3)),!0}}function i6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(To(e,a.target),n.unobserve(a.target))})})}function s6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{X0(e,o)}),n.unobserve(u)}})})}var zd;function l6(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(zd),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),zd=setTimeout(()=>{let u=e.ctx;Ao(u)},e.urlChangeDelay),!0)):!1}function c6(e){return new MutationObserver(t=>{if(!l6(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!Lt.isSkipMarkEle(n.target)&&!Lt.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...r,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&En(n.target,e.ctx.rule.mutationObserverContainerSelectors)){Lt.clearMark(n.target),n.target.paragraphs=void 0,To(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Ha(r,e))})}})}function d6(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);j0(r)||(n.unobserve(a.target),Ha(u,e))}})}function as(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{Y0(t,e)}),e=="original"&&document.querySelectorAll(`.${jt}`).forEach(t=>t.remove())}function vo(e,t){if(e instanceof HTMLIFrameElement){ja(e.contentDocument,t);return}ja(e,t)}async function Ud(e){let t=Qe(),n="auto";if(ne()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=R0(e.mainFrame):a=_a(e.mainFrame).slice(0,1e3),n=await Ve({text:a})}else if(t)n=await Ve({text:_a(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=R0(e.mainFrame),n=await Ve({text:a})}else n=await Hc();return n==="auto"&&(n=await Ld()),yr(n),n}async function Wd(){if(!j)return;document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=j.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){j.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${er}='${n}']`);r&&r.remove()}}Z0.call(j,j.ctx)}var qd={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},$d={...It,"zh-CN":{...qd["zh-CN"],...It["zh-CN"]},"zh-TW":{...qd["zh-TW"],...It["zh-TW"]}},Kd=$d;function Ua(e,t,n){return ta($d,e,t,ur,n)}var So=(e,t,n,a)=>{let u=D4[e]||e,r=L4[e],o=F4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${u})`}else return u};function Wa(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{v.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:Yu,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function us(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&je(o,i=>{i.preventDefault(),Wa({method:a[r]})})}}var _o,me,Xd,m6,Au,Gd,Zd,Fo={},Qd=[],g6=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Un(e,t){for(var n in t)e[n]=t[n];return e}function em(e){var t=e.parentNode;t&&t.removeChild(e)}function tm(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?_o.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return Do(e,o,a,u,null)}function Do(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++Xd};return u==null&&me.vnode!=null&&me.vnode(r),r}function ln(e){return e.children}function Lo(e,t){this.props=e,this.context=t}function qa(e,t){if(t==null)return e.__?qa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Do(g.type,g.props,g.key,g.ref?g.ref:null,g.__v):g)!=null){if(g.__=n,g.__b=n.__b+1,(m=p[c])===null||m&&g.key==m.key&&g.type===m.type)p[c]=void 0;else for(d=0;d=n.__.length&&n.__.push({__V:Ro}),n.__[e]}function Ae(e){return Su=1,b6(ym,e)}function b6(e,t,n){var a=No(Du++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):ym(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Ke,!Ke.u)){Ke.u=!0;var u=Ke.shouldComponentUpdate;Ke.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var d=c.__[0];c.__=c.__N,c.__N=void 0,d!==c.__[0]&&(l=!0)}}),!!l&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function Ct(e,t){var n=No(Du++,3);!me.__s&&Em(n.__H,t)&&(n.__=e,n.i=t,Ke.__H.__h.push(n))}function cs(e){return Su=5,bm(function(){return{current:e}},[])}function bm(e,t){var n=No(Du++,7);return Em(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function na(e,t){return Su=8,bm(function(){return e},t)}function ds(e){var t=Ke.context[e.__c],n=No(Du++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Ke)),t.props.value):e.__}function E6(){for(var e;e=hm.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Oo),e.__H.__h.forEach(ls),e.__H.__h=[]}catch(t){e.__H.__h=[],me.__e(t,e.__v)}}me.__b=function(e){typeof e.type!="function"||e.o||e.type===ln?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Ke=null,cm&&cm(e)},me.__r=function(e){dm&&dm(e),Du=0;var t=(Ke=e.__c).__H;t&&(ss===Ke?(t.__h=[],Ke.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Ro,n.__N=n.i=void 0})):(t.__h.forEach(Oo),t.__h.forEach(ls),t.__h=[])),ss=Ke},me.diffed=function(e){mm&&mm(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(hm.push(t)!==1&&lm===me.requestAnimationFrame||((lm=me.requestAnimationFrame)||y6)(E6)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Ro&&(n.__=n.__V),n.i=void 0,n.__V=Ro})),ss=Ke=null},me.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Oo),n.__h=n.__h.filter(function(a){return!a.__||ls(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],me.__e(a,n.__v)}}),gm&&gm(e,t)},me.unmount=function(e){pm&&pm(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Oo(a)}catch(u){t=u}}),n.__H=void 0,t&&me.__e(t,n.__v))};var fm=typeof requestAnimationFrame=="function";function y6(e){var t,n=function(){clearTimeout(a),fm&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);fm&&(t=requestAnimationFrame(n))}function Oo(e){var t=Ke,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Ke=t}function ls(e){var t=Ke;e.__c=e.__(),Ke=t}function Em(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function ym(e,t){return typeof t=="function"?t(e):t}var $a={},T6={root:"",lang:"en",fallbackLang:"en"};function ms(e,t){let n=Object.assign({},T6,e);$a=t||$a;let[a,u]=Ae(n.lang),[r,o]=Ae($a),[i,s]=Ae(!1),l=d=>{if(r.hasOwnProperty(d))return;s(!1);let m=Fd(n.root||"",d);n.getUrl&&(m=n.getUrl(n.root||"",d),fetch(m).then(g=>g.json()).then(g=>{$a[d]=g,o({...$a}),s(!0)}).catch(g=>{o({...$a}),s(!0)}))};return Ct(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:u,t:(d,m)=>{if(!r.hasOwnProperty(a))return d;let g=vu(r,a,d);return g===d&&a!==n.fallbackLang&&(g=vu(r,n.fallbackLang,d)),W0(g,m)},isReady:i}}var x6=0;function U(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--x6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return me.vnode&&me.vnode(s),s}var ps=is(null),gs={root:"assets",lang:"en",fallbackLang:"en"},Tm=e=>{let{t,setLang:n,lang:a,isReady:u}=ms({root:e.root||gs.root,lang:e.lang||gs.lang,fallbackLang:e.fallbackLang||gs.fallbackLang,getUrl:e.getUrl},e.translations);return U(ps.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function xm(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let l of r){let d=n[l].matches;for(let m of d)u[m]||(u[m]=[]),u[m].push(l)}let o=u[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(d=>d!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Cm(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function wm(e){let t;try{t=new URL(e)}catch{return!1}let n=Kc(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(C6(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function C6(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function vm(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function km(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function yn(e){let{items:t,maxWidth:n}=e;return n=n||128,U("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>U("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var Io="DROP_DOWN_DEFAULT_VALUE";function fs(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=cs(null);return U("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:Io,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==Io){o.current.value=Io,o.current?.dispatchEvent(new Event("change"));let l=u.find(c=>c.value===s);l&&n(l)}},children:[{value:Io,label:e.label}].concat(u).map((i,s)=>U("option",{value:i.value,children:i.label},"option-"+s))})}function cn(){return ds(ps)}function hs(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=cn(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[r,"\uFF1A"]}),U(yn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Lu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var w6=({date:e})=>{let{t}=cn(),[n,a]=Ae(!1);return Ct(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:U("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},v6=({minVersion:e})=>{let{t}=cn();return U("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},k6=()=>{let{t:e}=cn();return U("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},A6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=cn();return U("p",{class:"text-sm",children:[a("failToSyncRules")," ",U("a",{onClick:t,children:a("retry")}),U("br",{}),a("failedReason"),"\uFF1A",e,U("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function bs(e){let{isShowError:t,request:n}=e,[a,u]=Ae(null),{t:r}=cn(),[o,i]=Ae(null),[s,l]=Ae(null),[c,d]=Ae(""),[m,g]=Ae(!1),[f,w]=Ae(!1),[T,p]=Ae(!1),[C,M]=Ae(null),[L,A]=Ae(null),y=Fn(),S=async()=>{d("");let D=o;if(o===null)try{let x=await n({url:ru});x?(i(x),D=x,g(!0)):(d(r("unknownError")),l(null))}catch(x){l(null),d(x.message);return}D!==null?(e.setStorageBuildinConfig(D),l(!1),u(D.buildinConfigUpdatedAt)):(d(r("canNotFetchRemoteRule")),l(null))};return Ct(()=>{Gn().then(D=>{let x=D.buildinConfigUpdatedAt;M(D);let F=new Date(x);if(u(x),y==="0.0.0"){p(!0);return}n({url:ru}).then(O=>{let k=O,B=k.minVersion,J=y;i(k);let N=k.latestVersion;if(N&&(Lu(J,N)?A(!0):A(!1)),Lu(J,B)){let ge=k.buildinConfigUpdatedAt;new Date(ge)>F?(l(!0),S()):l(!1)}else w(!0),l(null)}).catch(O=>{l(null),d(O.message)})})},[]),Ct(()=>{Gn().then(D=>{M(D)})},[a]),C?U("div",{class:"text-sm mt-2",style:{maxWidth:218},children:T?U(k6,{}):c?t===!1?null:U(A6,{handleSyncing:S,message:c,date:a||""}):f?t===!1?null:U(v6,{minVersion:o.minVersion}):s===null||s===!0?null:m?U(w6,{date:a}):null}):null}function Es(e){let t=Fn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:d,config:m,openAboutPage:g,onTranslateTheWholePage:f,onToggleEnabled:w,openOptionsPage:T,ontranslateToThePageEndImmediately:p,onSetPageLanguage:C,onToggleTranslate:M,onTranslateLocalPdfFile:L,onTranslatePdf:A,onRestorePage:y,ctx:S,currentUrl:D,currentLang:x,onClose:F,onTranslatePage:O,onSetLocalConfig:k,onMouseTriggerChanged:B,errorMsg:J,disabledButton:N,noPermissionPDF:ge}=e,pe=a,[Ne,be]=Ae(""),[vt,ye]=Ae(J),{t:b,lang:I}=cn(),G=60;I.startsWith("zh")||(G=65);let le=null,V=null,Se=null,Q=null,Te=null,Z=null,ue=null,ce=null,Y=null,H=null,ee=null,Le=null,De=!0;if(m){Rt()&&m&&(De=m.generalRule.showSponsorOnSafari);let{translationService:_,translationServices:X,translationUrlPattern:we}=m;fn[_]&&(ce=Vi(_,S)),X&&X[_]?Le=X[_]||{}:Le={};try{Y=new URL(D||"")}catch{}if(D&&wm(D)){H=vm(Y.hostname),ee=km(D);let{matches:fe,excludeMatches:Ee}=we;V=fe.includes(H),le=fe.includes(Y.hostname),Q=Ee.includes(H),Se=Ee.includes(Y.hostname),Z=fe.includes(ee),ue=Ee.includes(ee)}}if(m&&x&&x!=="auto"){let{translationLanguagePattern:_}=m,{matches:X}=_;X.includes(x)?Te=!0:Te=!1}let te=_=>{_.preventDefault(),T()},He=_=>{pe(X=>(X.alpha?be("Success disable alpha!"):be("Success enable alpha!"),{...X,alpha:!X.alpha}))},tt=_=>{pe(X=>({...X,translationMode:_})),o(_)},Me=()=>{pe(_=>({..._,translationArea:"body"})),f()},_e=()=>{pe(_=>({..._,translationArea:"main"})),n()},Be=(_,X,we,fe)=>{if(_==="default"){pe(ot=>{let xe={...ot.translationUrlPattern};return{...ot,translationUrlPattern:{...ot.translationUrlPattern,matches:An([Y?.hostname,H,D],xe.matches),excludeMatches:An([Y?.hostname,H,D],xe.excludeMatches)}}});return}let Ee=_,Ie=Ee==="matches"?"excludeMatches":"matches";Y&&pe(ot=>{let xe={...ot.translationUrlPattern};return xe[Ee]=Wi(X,xe[Ee]),fe.length>0&&(xe[Ee]=An(fe,xe[Ee])),xe[Ie]=An(we,xe[Ie]),{...ot,translationUrlPattern:{...ot.translationUrlPattern,...xe}}}),Ee==="matches"&&l==="Original"?setTimeout(()=>{O(),F()},100):Ee==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{y(),F()},100)},kt=_=>{if(!_){pe(fe=>{let Ee={...fe.translationLanguagePattern};return{...fe,translationLanguagePattern:{...fe.translationLanguagePattern,matches:An(x,Ee.matches),excludeMatches:An(x,Ee.excludeMatches)}}});return}let X=_,we=X==="matches"?"excludeMatches":"matches";x&&pe(fe=>{let Ee={...fe.translationLanguagePattern};return Ee[X]=Wi(x,Ee[X]),Ee[we]=An(x,Ee[we]),{...fe,translationLanguagePattern:{...fe.translationLanguagePattern,...Ee}}}),X==="matches"&&l==="Original"&&setTimeout(()=>{O(),F()},100)},xn=Y?.pathname.toLowerCase().endsWith(".pdf"),Ue=b("translate");l==="Translated"||l==="Error"?Ue=b("show-original"):l==="Original"?xn?lr()&&Y.protocol==="file:"||ge?Ue=b("translate-firefox-local-pdf"):ne()?Ue=b("noSupportTranslate-pdf"):Ue=b("translate-pdf"):Ue=b("translate"):Ue=b(l);let tn=b("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(m.shortcuts.toggleTranslatePage&&(G4()&&S.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ue+=` (${b(`fingers.${S.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ue+=` (${m.shortcuts.toggleTranslatePage})`),m.shortcuts.toggleTranslateToThePageEndImmediately&&(tn+=` (${m.shortcuts.toggleTranslateToThePageEndImmediately})`));let Kt=[];S&&(Kt=Cc(S));let nt=_=>{_.preventDefault(),F()},Ft=nd(S.config.translationService,S.config.targetLanguage);return U("div",{class:"p-3",children:[U("div",{class:"text-sm",children:[U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),U(yn,{items:zt.map(_=>({label:So(_,m.interfaceLanguage),value:_,selected:_===S.sourceLanguage,onSelected:X=>{C(X.value)}}))})]}),m&&m.targetLanguage&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),U(yn,{items:Ft.filter(_=>_!=="auto").map(_=>({label:So(_,m.interfaceLanguage),value:_,selected:_===m.targetLanguage,onSelected:X=>{pe(we=>({...we,targetLanguage:X.value}))}}))})]}),ce&&Kt.length>0&&U(ln,{children:[U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),U(yn,{items:Kt.map(_=>({label:`${b("translationServices."+_.id)}${_.ok?"":" "+b("needAction")}`,value:_.id,selected:_.selected,onSelected:X=>{let we=Kt.find(fe=>fe.id===X.value);we.ok?(pe(fe=>({...fe,translationService:we.id})),we.props.length===0?setTimeout(()=>{O()},1):setTimeout(()=>{y()},1)):(pe(fe=>({...fe,translationService:we.id})),setTimeout(()=>{T()},100))}}))})]}),Le&&ce.props.length>0&&ce.props.map((_,X)=>U("div",{class:"pl-4 text-sm",children:U(hs,{field:_,value:Le[_.name],onChange:we=>{pe(fe=>{let Ee=fe.translationServices||{},Ie=Ee[ce.id]||{};return setTimeout(()=>{y()},1),{...fe,translationServices:{...Ee,[ce.id]:{...Ie,[_.name]:we}}}})}},"field-"+X)},"service"+X))]}),Y&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:b("forThisSite")}),U(yn,{items:[{label:b("default"),value:"default",selected:le===!1&&Se===!1&&!V&&!Q&&!Z&&!ue,onSelected:()=>{Be("default",Y.hostname,[],[]);let _=Y.hostname,X=S.localConfig.tempTranslationUrlMatches||[],we=X.filter(Ee=>Ee.match!==_),fe=!1;we.length!==X.length&&(fe=!0),fe&&k({...S.localConfig,tempTranslationUrlMatches:[...we]})}},ee&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:Z,onSelected:()=>{Be("matches",ee,[ee],[])}},{label:b("alwaysTranslateSomeSite",{hostname:Y.hostname}),value:"matches",selected:le,onSelected:_=>{Be(_.value,Y.hostname,[Y.hostname,H,ee],[H])}},H&&{label:b("alwaysTranslateSomeSite",{hostname:H}),value:"matchesWild",selected:V,onSelected:()=>{Be("matches",H,[ee,Y.hostname,H],[Y.hostname])}},ee&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:ue,onSelected:()=>{Be("excludeMatches",ee,[ee],[])}},{label:b("neverTranslateSomeSite",{hostname:Y.hostname}),value:"excludeMatches",selected:Se,onSelected:_=>{Be(_.value,Y.hostname,[Y.hostname,H,ee],[H])}},H&&{label:b("neverTranslateSomeSite",{hostname:H}),value:"excludeMatchesWild",selected:Q,onSelected:()=>{Be("excludeMatches",H,[Y.hostname,ee,H],[Y.hostname])}}].filter(Boolean)})]}),B&&lu()&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),U(yn,{items:rr.filter(_=>!(rr.includes(m.generalRule.mouseHoverHoldKey)&&_==="OtherCustom")).map(_=>{let X=b("mouseHoldKey",{key:_}),we=rr.includes(m.generalRule.mouseHoverHoldKey),fe=_===m.generalRule.mouseHoverHoldKey;return _==="Auto"?X=b("mouseHoldKeyAuto"):_==="Off"?X=b("mouseHoldKeyOff"):_==="OtherCustom"?X=we?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:m.generalRule.mouseHoverHoldKey}):_==="Other"&&(X=b("mouseHoldKeyOther")),we||_==="OtherCustom"&&(fe=!0),{label:X,value:_,selected:fe,onSelected:Ee=>{Ee.value==="Other"?T("#interface"):B(Ee.value)}}})})]})]}),U("div",{class:"",children:U("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{xn?A&&A():M()},"aria-busy":l==="Translating",disabled:N||l==="Translating",children:Ue})}),U("div",{class:"text-sm",children:Ne}),U("div",{class:"text-sm",children:vt}),U("div",{class:"flex justify-between flex-wrap",children:[x&&x!=="auto"?U("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[U("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Te,onChange:_=>{let X=_.target.checked;kt(X?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:So(x,m.interfaceLanguage,!1,!0)})]}):U("span",{}),U("div",{class:"flex flex-end flex-grow",children:U(fs,{label:b("more"),showArrow:!0,maxWidth:G,onSelected:_=>{_.value==="changeToOnlyTranslationMode"?tt("translation"):_.value==="changeToDualTranslationMode"?tt("dual"):_.value==="translateTheWholePage"?f():_.value==="translateToThePageEndImmediately"?p():_.value==="translateTheMainPage"?n():_.value==="showTranslationOnly"||(_.value==="translateLocalPdfFile"?L&&L():_.value==="translateLocalHtmlFile"?r&&r():_.value==="translateLocalSubtitleFile"?i&&i():_.value==="donate"?(globalThis.open(m.donateUrl),F()):_.value==="feedback"?(globalThis.open(m.feedbackUrl),F()):_.value==="options"?(T(),F()):_.value==="changeToTranslateTheWholePage"?Me():_.value==="changeToTranslateTheMainPage"?_e():_.value==="about"?g():_.value==="toggleEnabled"?w():_.value==="openEbookViewer"?d():_.value==="openEbookBuilder"&&c())},menus:[m.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},m.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},m.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},m.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+tn,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!ne()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!ne()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(m.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(m.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(De?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),U("footer",{children:[U(bs,{isShowError:!1,request:u,setStorageBuildinConfig:s}),U("div",{class:"mt-3 text-sm flex justify-between",children:[U("a",{href:"#",class:"secondary",onClick:te,children:b("options")}),ne()&&U("a",{href:"#",class:"secondary",onClick:nt,children:b("close")}),U("span",{class:"immersive-translate-no-select muted",onClick:Cm(7)(He),children:["V",t,m.enabled?null:U("a",{href:"#",onClick:w,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var ys={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return q.storage[n].get(a)},set:(e,t,n)=>q.storage[n].set({[e]:t})};function jo(e,t,n){let[a]=Ae(()=>typeof t=="function"?t():t),[u]=Ae(n),[r,o]=Ae(a),[i,s]=Ae(!1),[l,c]=Ae("");Ct(()=>{ys.get(e,a,u).then(m=>{m[e]&&o(m[e]),s(!0),c("")}).catch(m=>{s(!1),c(m)})},[e,a,u]);let d=na(m=>{let g=typeof m=="function"?m(r):m;v.debug("new settings",g),ys.set(e,g,u).then(()=>{o(g),s(!0),c("")}).catch(f=>{o(g),s(!1),c(f)})},[u,e,r]);return[r,d,i,l]}function Ts(e,t,n){let a=[];return function(){let[r,o,i,s]=jo(e,t,n),l=na(c=>{for(let d of a)d(c)},[]);return Ct(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,l,i,s]}}function Am(e,t){return Ts(e,t,"sync")}var S6="userConfig",D6={},L6=Am(S6,D6);function Sm(e){let[t,n,a,u]=L6(),r=na(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function zo(e){try{let t=new Date;v.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await q.storage.local.set({[iu]:t.toISOString()}),await F6(),ne()||await Yc()}catch(t){v.error("run cron task failed",t)}}async function Dm(){let t=(await xt()).interval;if(t){let n=await q.storage.local.get(iu);if(n&&n[iu]){let a=n[iu];if(Date.now()-new Date(a).getTime()a?(await q.storage.local.set({buildinConfig:t}),v.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):v.debug(`no need to sync rules, latest: ${a}`):v.info(`local version is too old, please update to ${o} or later`)}catch(e){v.error("sync rules error: ",e)}}function xs(e){let{onClose:t}=e,[n,a]=Ae("Original"),[u,r,o,i]=Sm(()=>{setTimeout(()=>{M("updateGlobalContext",!1)()},250)}),[s,l]=Ae(null),[c,d]=Ae(globalThis.location.href),[m,g]=Ae("auto"),[f,w]=Ae(null),T=N=>{a(N.detail)},p=N=>{g(N);let ge=xm(c,N,s.sourceLanguageUrlPattern);r(pe=>({...pe,sourceLanguageUrlPattern:ge})),Ut(N)},C=()=>{d(globalThis.location.href)};Ct(()=>(document.addEventListener(Qu,T,!1),xt().then(N=>{l(N);let ge=un();g(ge);let pe=Re();a(pe),zo(N.interval)}),document.addEventListener("urlChange",C),()=>{document.removeEventListener("pageTranslatedStatus",T),document.removeEventListener("urlChange",C)}),[]),Ct(()=>{xt().then(N=>{l(N)})},[u]),Ct(()=>{c&&s&&qt({url:c,config:s}).then(N=>{w(N)})},[c,s]);let M=(N,ge,pe={})=>()=>{Wa({method:N,data:pe||{}}),ge&&t()},L=()=>{t()},A=()=>{r(N=>({...N,enabled:!N.enabled})),setTimeout(()=>{L()},50)},y=()=>{t0(),setTimeout(()=>{L()},50)},S=()=>{t0(),setTimeout(()=>{L()},50)},D=(N="")=>{Lr(!0,N),setTimeout(()=>{t()},50)},x=()=>{Fr(),setTimeout(()=>{t()},50)},F=()=>{Pr(),setTimeout(()=>{t()},50)},O=()=>{Vc(),setTimeout(()=>{t()},50)},k=()=>{Mr(),setTimeout(()=>{t()},50)},B=()=>{Jc(),setTimeout(()=>{t()},50)},J=N=>{r(ge=>({...ge,generalRule:{...ge.generalRule,mouseHoverHoldKey:N}}))};return!s||!f?null:U(Es,{openEbookViewerPage:F,openEbookBuilderPage:k,onSwitchTranslationMode:N=>{M("switchTranslationMode",!0,{mode:N})()},onTranslateLocalHtmlFile:O,onTranslateLocalSubtitleFile:B,request:$,onClose:L,onToggleEnabled:A,onTranslateTheWholePage:M("translateTheWholePage",!0),openOptionsPage:D,onToggleTranslate:M("toggleTranslatePage",!0),onTranslateTheMainPage:M("translateTheMainPage",!0),ontranslateToThePageEndImmediately:M("translateToThePageEndImmediately",!0),onTranslatePage:M("translatePage",!0),onRestorePage:M("restorePage",!1),onTranslatePdf:y,openAboutPage:x,onTranslateLocalPdfFile:S,onSetPageLanguage:p,onUserConfigChange:r,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:m,onSetLocalConfig:Dr,onSetBuildinConfig:zc,onMouseTriggerChanged:J})}function P6(e,t){for(let n of t){if(ne()&&!lr()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Cs={position:"right",right:0,top:335},wt={...Cs},Wo=!1,aa=null,dn=null,qo=null,ws=null,Ka=null,vs=null,Lm=6,Ho,Uo,Pm=null,Mm=null;async function As(){let e=lt();vs=await jc(),wt=vs.pagePopupConfig||wt;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});ws=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` +`);P6(n,[a]);let u=document.createElement("div");u.innerHTML=Ce.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),aa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");dn=o,qo=n.querySelector("#mount"),aa.setAttribute("style",ks(wt)),Fs(),o.addEventListener("mousedown",_m),o.addEventListener("touchstart",B6),globalThis.addEventListener("resize",s=>{aa.setAttribute("style",ks(wt))})}function M6(){Bo(null,qo),qo.style.display="none",dn.style.display="block",Ka=setTimeout(()=>{Fs(!0)},2e3)}function Fm(e){let t=e.querySelector("#mount"),n=()=>{M6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await xt();Bo(U(Tm,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:Kd,children:U("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:U("div",{class:"immersive-translate-popup-wrapper",style:_6(),children:U(xs,{onClose:n})})})}),t)})().then(()=>{dn.style.display="none",qo.style.display="block"})}function _6(){let e=Ss(),t=e.height,{position:n,top:a,left:u}=wt,r={position:"fixed"},o=300,i=300,s=100;return bl()&&(n=Cs.position,a=Cs.top),n==="right"||n==="left"?(r.top=a-s,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-s,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function Ss(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function _m(e){Mm=aa.getAttribute("style"),Ho=e.pageX,Uo=e.pageY,Ka&&clearTimeout(Ka),Wo=!1,dn.style.opacity="1",dn.style.transform="none",Pm=dn.getAttribute("style"),globalThis.addEventListener("mousemove",Ds),globalThis.addEventListener("mouseup",Ls),globalThis.addEventListener("touchmove",Bm),globalThis.addEventListener("touchend",$o),globalThis.addEventListener("touchcancel",$o)}function B6(e){e.preventDefault&&e.preventDefault(),_m(e.changedTouches[0])}function Bm(e){Ds(e.changedTouches[0])}function $o(e){e.preventDefault&&e.preventDefault(),Ls(e.changedTouches[0])}function Ds(e){e.preventDefault&&e.preventDefault(),Wo=!0,aa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Ls(e){e.preventDefault&&e.preventDefault(),O6(),Ka&&clearTimeout(Ka),Ho=Ho||0,Uo=Uo||0;let t=Math.abs(e.pageX-Ho),n=Math.abs(e.pageY-Uo);t{Fs(!0)},2e3)}function Fs(e=!1){dn.style.opacity="0.4";let t="";wt.position==="left"?t="translateX(-40%)":wt.position==="right"?t="translateX(40%)":wt.position==="top"?t="translateY(-40%)":wt.position==="bottom"&&(t="translateY(40%)"),dn.style.transform=t,e&&(dn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function O6(){globalThis.removeEventListener("mousemove",Ds),globalThis.removeEventListener("mouseup",Ls),globalThis.removeEventListener("touchmove",Bm),globalThis.removeEventListener("touchend",$o),globalThis.removeEventListener("touchcancel",$o)}function ks(e){let t=N6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function N6(e){let{position:t,...n}=e,a=Ss(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var Ko=!1;async function Rm(e){if(!e){let t=await xt(),n={url:globalThis.location.href,config:t};e=await qt(n)}e.config.debug&&v.setLevel("debug"),e.isTranslateExcludeUrl?v.debug("detect exclude url, do not inject anything."):(ha().any||ne())&&e.rule.isShowUserscriptPagePopup&&(Ko||(Ko=!0,As().catch(t=>{v.error("init popup error",t)})))}async function Om(){Ko||(Ko=!0,As().catch(e=>{v.error("init popup error",e)}))}var Nm=!1,zm=[()=>{je.unbind()}],Ms=[...zm],I6=ct(async()=>{await Lr()},50),j6=ct(async()=>{await Fr()},50),z6=ct(async()=>{await Mr()},50),H6=ct(async()=>{await Pr()},50),Hm=ct(e=>{Wa({method:e})},50),U6=ct(()=>{wr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),W6=ct(()=>{Sr();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),q6=ct(()=>{kr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function $6(e,t){let n=e.document;if(Nm)return;if(Nm=!0,ne()||Fc(),n.addEventListener("securitypolicyviolation",t1),n.addEventListener("immersiveTranslateEbookLoaded",e1),n.addEventListener(g4,Q6),n.addEventListener("click",u=>{J6(u,t)}),ne()&&(globalThis.top!=globalThis.self?e.addEventListener("message",G6,!1):n.addEventListener(kn,K6)),globalThis.top===globalThis.self){let u=rn.rootIframe(Ri);u.handleAsk("getRateLimitDelay",s3),u.handleAsk("throttleRequest",S3)}}function Fu(e,t){n1(),$6(t,e);let n=t.document,a=V6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Ms.push(()=>{n.removeEventListener("touchstart",a)}),ne()&&globalThis.top===globalThis.self&&(us(e.config),a1(e.config)),Rt()&&us(e.config)}function K6(e){Om()}function G6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===Yu&&Ta(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function V6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?U6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?q6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&W6()}function J6(e,t){let n=e.target;if(!n||!n.getAttribute){Ps(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&Je(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${z}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),vr(),Ps(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${z}-tooltip-text`);jm(X6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),jm(Y6.bind(null,t)));Ps(n)}async function Im(e=!1){let t=document.querySelector(`.${z}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await Ic();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Nc(n)}function jm(e){let t=`${z}-modal`,n=`${z}-modal-title`,a=`${z}-modal-body`,u=`${z}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),s=r.querySelector(`.${a}`);e(r,o,s,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=z+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=z+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(d){d.target==r&&(r.style.display="none")},e(r,s,l,c)}setTimeout(()=>{Z6()},100)}function Y6(e,t,n,a,u){let r=Um.bind(null,e);n.innerHTML=`
${M4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.querySelector(`div[data-${z}-cancel-desc]`),i=document.createElement("p");i.innerHTML=o?Ce.sanitize(o.textContent||""):Ce.sanitize(r("searchEnhancementNotes")),i.style.cssText="margin-bottom:12px",a.appendChild(i);let s=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let g=0;g${r("option")}`})),a.appendChild(l);let c=a.querySelector(`.${z}-open-enhancement`);c&&(c.onclick=function(){Gc(!0)});let d=document.createElement("button");d.innerText=r("closeModal"),d.className=`${z}-btn ${z}-cancel-btn`;let m=document.createElement("button");m.className=`${z}-btn`,m.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(d),u.appendChild(m),d.onclick=function(){t.style.display="none"},m.onclick=function(){let g=a.getElementsByTagName("input"),f="";for(let w=0;w{Go()},10)}function t1(e){de.HAS_CSP_ERROR="1"}function n1(){Ms.forEach(e=>{e()}),Ms=zm}function a1(e){if(ne()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Rr.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=Ua(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:Fi,title:Ua("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:Pi,title:Ua("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:Di,title:Ua("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:Li,title:Ua("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===Di?I6():r.id===Li?j6():r.id===Pi?z6():r.id===Fi?H6():Hm(r.id)},r.key)}}function u1(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{v.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function Wm(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Oe(i.left,r)&&Oe(i.width,u.width));return{prevP:u,curP:o}}function _s(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function qm(e){return e?e==e[0].repeat(e.length):!0}function Oe(e,t,n=5){return Math.abs(e-t)<=n}var Bs=[",","\\.","\uFF0C","\u3002"];function $m(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Oe(a.left,u.left,7)&&Oe(a.nextTop,u.top,10)&&Vo(a,u)}function Km({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Ym(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Xm({prevLineP:e,prevP:t},n){return Oe(e.left,n.left,1)&&Oe(e.right,t.right,1)&&t.mergedTimes>=1}function Rs(e,t){let{prevLineP:n}=e;return Ym(e,t)&&(Oe(n.bottom,t.bottom)||Oe(n.nextTop,t.top)&&Oe(n.left,t.left))}function Zm(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return Ym(e,t)&&n.width0&&a/u<.1&&n.left!_s(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Ve({text:n.map(r=>r.str).join(` +`).slice(0,1e3)});yr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=n[s];r?(l.translatedStr=r.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),o1(l)})}var Ns={};async function r1(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Ns).filter(n=>!!n);await Jo(ag,t)}function o1(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Ns[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",r1)):e.translateStatus=="success"&&(Ns[e.id]=void 0,t.innerHTML=Ce.sanitize(e.translatedStr)))}function ug(e,t){let n=[],a=s1(e,t);return l1(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){ng(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{ng(e,n,o,!1)}),n.push("
")}}),`
${n.join("")} -
`}function Zm(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(u*o)+1).toFixed(2)}%`:"auto",d=`${(l.left*100/(u*o)).toFixed(2)}%`,m=`${(l.top*100/(r*o)).toFixed(2)}%`,g=H4()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,v=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${d};top: ${m};width:${c};max-width:${s};`,!g&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let T=Ms(l.str)?"":"translate-pending",p=l.str;l.translateStatus=="success"&&(p=l.translatedStr,T=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function t1(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(m=>{m[0].width>o&&(o=m[0].width)});let l=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,d=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${d};height:${s-i}px;overflow:auto;`}function n1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,Rs(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function a1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],Hm(e,a)){r.push(a);return}n.push([a])}),n}var tg="immersive-translate",Ga,Tn=[];async function ug(e){let t=globalThis.PDFViewerApplication;if(!t)return;if($e("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await ng(1);await Jo(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Tn=[],Ga=void 0,s1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await ng(a);await Jo(e,u||[])})}}function u1(e){if(Ga)return{...Ga,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ga={...i},i}async function ng(e){let t=u1(e);if(!t)return;Tn[e]||(Tn[e]=await r1(t,e,Tn[e-1]||[]));let n=Tn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${tg}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${tg}-page`);let r=eg(t,n);return u.innerHTML=De.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function r1(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,s]=a._pageInfo.view;Ga.pageWidth=i,Ga.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=i1(e,u);e.origLineParagraphs=l;let{prevP:c,curP:d}=jm(e,l);return d&&rg(c,void 0,d),o1(e,l)}function o1(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,qm(e,o)){if($m(e,o)){r(l,o);return}if(Gm(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},r(l,o);return}if(Vm(e,o)){r(l,o);return}if(Bs(e,o)){r(l,o);return}if(Jm(e,o)){r(l,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],s=r.transform[5],l=r.width*n,c=t.styles[r.fontName].fontFamily,d=r.transform[3],m=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+m)*d;isNaN(f)&&(f=d);let v=i*n,T=v+l,p=(a-s-f)*n,C=p+d*n,M=C+d*n*.2,L=T+d*n*.3,A={str:o,left:v,nextLeft:L,top:p,nextTop:M,id:`pageNum-${_t()}`,width:l,originFontName:r.fontName,fontName:c,fontSize:d,right:T,bottom:C,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(A);else{let y=u[u.length-1];if(e.prevLineP=y,Ym(e,A)){Wm(e,A)?y.str+=o:y.str+=" "+o,y.right=T,y.fontName=c,y.width=Math.max(y.width+l,T-y.left),y.nextLeft=L;return}if(Xm(e,A)){y.width=Math.max(y.width+l,T-y.left),y.right=T,y.nextLeft=L,y.attachList.push(A);return}u.push(A)}}),u}function rg(e,t,n){if(!Vo(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function s1(e){setTimeout(()=>{let t="";for(let n=1;n<=Tn.length;n++){let a=!1;if(Tn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Je({text:t}).then(n=>{$e("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ua={};async function Ns(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await on(e,n,1e3);return Ut(a),a}async function og(e){Tt("Translating");let t=an(),n=Ea(),a=[...document.querySelectorAll(".source-text")];if(fo(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Ye(r,"id",o+""),i&&(Na(i,o)?.remove(),i.appendChild(wu(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await rn({sentences:u},e,(r,o,i)=>{let s=i.id,l=Na(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),r?(c.innerHTML=De.sanitize(`${r.message}`),ua[s]={ok:!1,sentence:i}):o&&(c.innerHTML=De.sanitize(o.text),ua[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Tt("Translated")}}async function ig(e){Tt("Translating"),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ua),n=[],a=[];for(let u of t){let r=ua[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let s=i.parentElement;i.remove(),s&&(delete ua[u],s.appendChild(wu(e,u)),a.push(r.sentence))}}}try{await rn({sentences:a},e,(u,r,o)=>{let i=o.id,s=Na(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),u?(l.innerHTML=De.sanitize(`${u.message}`),ua[i]={ok:!1,sentence:o}):r&&(l.innerHTML=De.sanitize(r.text),ua[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Tt("Translated")}}function Is(){Tt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var js={};async function sg(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await on(e,n,1e3);return Ut(a),a}async function lg(e){Tt("Translating"),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(js),n=[];for(let a of t){let u=js[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${er}='${a}']`);o&&o.remove(),n.push(u)}}try{await xo(n,e,e.config.translationMode)}catch{}finally{Tt("Translated")}}function cg(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+jt);for(let u of a)u.remove()}Tt("Original")}async function dg(e){Tt("Translating");let t=_t(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ja(s,e);let l=s.body;if(!l)continue;let c=$t(e);c.isModifyImage=!1,zn({id:t,container:l,filterRule:c,onParagraph:d=>{a.push(d)}})}let r=po(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=Eo(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await Zi(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(u.push(l),js[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await xo(u,e,e.config.translationMode)}catch{}finally{Tt("Translated")}}var l1=new AbortController,{signal:c1}=l1,qs=0,$s=0,zs=!1,Hs=0,Pu=!1,ra,mg=0,oa=[];function Yo(e,t){d1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=ct(d=>{if(zs==!1&&Math.abs(d.clientX-qs)+Math.abs(d.clientY-$s)>3&&(Hs<2?Hs+=1:zs=!0),qs=d.clientX,$s=d.clientY,o||Pu&&!ra){let m=bg(a.rule,t);if(m){if(Ks(m))return;pg(a,m)}}},o?700:300),s=d=>{let m=d.target;Ks(m)||pg(a)},l=d=>{let m=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=je.getPressedKeyCodes();if(g.length>1&&je[m]&&(mg=Date.now(),Pu=!1),g.length===1&&je[m]){let f=Date.now();Pu=!0,ra&&clearTimeout(ra),ra=setTimeout(()=>{let v=mg-f;v>0&&v<=150?Pu=!1:s(d),ra=void 0},150)}};if(oa.push(()=>{ra&&clearTimeout(ra)}),r)return;Us("mousemove",i,t),oa.push(()=>{t.removeEventListener("mousemove",i)});function c(){zs=!1,Hs=0,i.cancel()}if(o)Us("blur",c,t),oa.push(()=>{t.removeEventListener("blur",c)});else{let d=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=["ctrl","alt","shift","cmd","command","option","control"];Us("keyup",gg,t),oa.push(()=>{t.removeEventListener("keyup",gg)}),m.includes(d)?je("*","mouseHover",l):je(u.generalRule.mouseHoverHoldKey,"mouseHover",s),je.setScope("mouseHover"),oa.push(()=>{je.deleteScope("mouseHover")})}}function d1(){oa.forEach(e=>e()),oa=[]}function gg(e){Pu=!1}function Us(e,t,n=window){return n.addEventListener(e,t,{signal:c1})}function pg(e,t,n=window){if(t=t||bg(e.rule,n),!t){k.debug("can not find selection part!");return}if(Ks(t)){k.debug("exclude dom");return}Nd(e,t);let a=ko();a?.currentUrl!==window.location.href&&(Hn(),ts(e)),a&&(a.setupMouseHoverListener=Yo);let u=$t(e);u.excludeSelectors=[],u.selectors=[];let r=!1;zn({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{ku(a,o,!0).then(i=>{if(i&&!r){r=!0;let s=Date.now();et(d4,s),$e("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function bg(e,t){return m1(qs,$s,e,t)}function m1(e,t,n,a){let u=sd(e,t,n,a);if(u==null)return;let r=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=ld(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:hg(l,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(l){k.debug("get mouse over word fail",l)}let s=u.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Xo&&self.removeEventListener("keydown",Xo),Xo=i,self.addEventListener("keydown",Xo);function i(l){if(Va)return;let c=l,d=c.target||c.srcElement,m=d?.tagName;(d?.isContentEditable||m=="INPUT"||m=="SELECT"||m=="TEXTAREA")&&(D1(l,u.triggerKey,u.codePrefixAlias)?s(l):r=0)}function s(l){Date.now()-o=u.triggerTimes&&(h1(e,u),r=0)}}function g1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let s=r+i;return u.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function Eg(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Ja;function p1(e){let t=e.parentElement;if(!t)return;Ja=document.createElement("div"),Ja.className=H+"-input",Ja.innerHTML=`
`,t.appendChild(Ja);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function f1(){Ja&&Ja.remove()}async function h1(e,t){if(!Va)try{let d=function(){o=e.config.inputTargetLanguage;let g=r.split(" ")[0];g&&g[0]&&(g=g[0].toLowerCase()+g.slice(1)),g.trim()&&t.flatAlias.includes(g)?(o=Eg(g,t.codeAlias),u=r.slice(g.length+1)):u=r},m=function(){o="";let g=g1(t),f=r.split(g);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let T=r.lastIndexOf(u),p=r.slice(0,T).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let v=r.slice(a.length+1,r.indexOf(u)).trim();if(o=Eg(v,t.codeAlias),!o){k.warn("not found alias",v);return}},n=document.activeElement;Va=!0,p1(n);let a="",u="",r=Mu(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?d():(m(),o||d()),S1(e);let i=b1(u,t),s=await on(e,i);k.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;et(m4,Date.now());let c=await Pa(l,e);A1(n,a+c.text),Va=!1}catch(n){throw Va=!1,n}finally{Va=!1,f1()}}function b1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function E1(e,t){let n=t.innerHTML,a=Mu(t);return{html:n.replace(a,e),text:e}}function yg(e,t,n=!1){let a=Mu(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function Mu(e){return e.value||e.innerText||e.textContent}async function ia(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function y1(e,t,n){await ia(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await ia(10)}async function T1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await ia(10))}async function x1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await ia(20),(t.value||t.value==="")&&(t.value=e.text)}async function C1(e,t){Tg(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await ia(20))}var w1=[y1.bind(null,["plain"])];function v1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function Tg(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function k1(e){if(Tg(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function A1(e,t){await k1(e),await ia(50);let n=E1(t,e);v1(e),k.debug("clearContnet",Mu(e)),await ia(50);for(let a of[...w1,C1,x1,T1])if(await a(n,e),k.debug("setContent",a.name,yg(n,e),Mu(e),n),yg(n,e))break}function S1(e){$e("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function D1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function vg(e){if(ha().any||!e.rule.enableSearchEnhancement||!/https:\/\/www\.google\..+\/search/.test(e.url))return;let t=_1(e.url);if(!t)return;let n=await on(e,t);if($e("detect_search_action",[{name:"detect_search_action"}],{...e,sourceLanguage:n}),!["zh-CN","zh-TW"].includes(n))return;k.debug("use dual search");let a=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")a=!0;else if(!wg(document.body))return;let r=document.querySelector(e.rule.searchEnhancementSelector);if(!r){let o=document.querySelector("#rcnt");if(!o)return;let i=o.children;if(i&&i.length>1)r=i[1];else{let s=i[0];r=document.createElement("div"),r.id="rhs",r.style.maxWidth="372px",r.style.marginLeft="50px",o.insertBefore(r,s.nextSibling)}}if(a||wg(document.body)){k.debug("find story");let o=await B1(e,t,n);k.debug("enKeyword",o);let i=await F1(o);if(k.debug("news list",i),i&&i.length<=0)return;let s=await M1(i,t,o);if(!s)return;$e("show_search_enhancement",[{name:"show_search_enhancement"}],{...e,sourceLanguage:"search_enhancement"}),L1(e,s,n),r.insertBefore(s,r?.firstChild)}}async function L1(e,t,n){let a=t.querySelectorAll('[translate="true"]');return R1(e,[...a],n),t}async function F1(e){let n=(await $({url:P1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,u=new DOMParser().parseFromString(n,"text/xml"),r=[],o=u.querySelectorAll("item");for(let i=0;i\u82F1\u6587\u641C\u7D22 ${n} \u7684\u76F8\u5173\u65B0\u95FB:
-
${r}
`,{ADD_ATTR:["target"]});let i=a.querySelector(`.${H}-search-more`);return i&&(i.onclick=()=>{let s=a.querySelector(`.${H}-expand-items`);s.style.display=="none"?(s.style.display="block",i.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(xg(n))}),a}function Cg(e){return e.map((t,n)=>{let a=t.title||"",u=t.source||"",r=a.split("-");return r.length>1&&(u=r[r.length-1].trim(),r=r.slice(0,r.length-1)),a=r.join("-"),a=a.trim(),`
${u}
`}function ng(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(u*o)+1).toFixed(2)}%`:"auto",d=`${(l.left*100/(u*o)).toFixed(2)}%`,m=`${(l.top*100/(r*o)).toFixed(2)}%`,g=$4()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,w=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${d};top: ${m};width:${c};max-width:${s};`,!g&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let T=_s(l.str)?"":"translate-pending",p=l.str;l.translateStatus=="success"&&(p=l.translatedStr,T=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function i1(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(m=>{m[0].width>o&&(o=m[0].width)});let l=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,d=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${d};height:${s-i}px;overflow:auto;`}function s1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,Os(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function l1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],$m(e,a)){r.push(a);return}n.push([a])}),n}var rg="immersive-translate",Ga,Tn=[];async function sg(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(Je("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await og(1);await Jo(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Tn=[],Ga=void 0,p1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await og(a);await Jo(e,u||[])})}}function c1(e){if(Ga)return{...Ga,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ga={...i},i}async function og(e){let t=c1(e);if(!t)return;Tn[e]||(Tn[e]=await d1(t,e,Tn[e-1]||[]));let n=Tn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${rg}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${rg}-page`);let r=ug(t,n);return u.innerHTML=Ce.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function d1(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,s]=a._pageInfo.view;Ga.pageWidth=i,Ga.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=g1(e,u);e.origLineParagraphs=l;let{prevP:c,curP:d}=Wm(e,l);return d&&lg(c,void 0,d),m1(e,l)}function m1(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,Vm(e,o)){if(Jm(e,o)){r(l,o);return}if(Xm(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},r(l,o);return}if(Zm(e,o)){r(l,o);return}if(Rs(e,o)){r(l,o);return}if(Qm(e,o)){r(l,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],s=r.transform[5],l=r.width*n,c=t.styles[r.fontName].fontFamily,d=r.transform[3]||r.height,m=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+m)*d;isNaN(f)&&(f=d);let w=i*n,T=w+l,p=(a-s-f)*n,C=p+d*n,M=C+d*n*.2,L=T+d*n*.3,A={str:o,left:w,nextLeft:L,top:p,nextTop:M,id:`pageNum-${_t()}`,width:l,originFontName:r.fontName,fontName:c,fontSize:d,right:T,bottom:C,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(A);else{let y=u[u.length-1];if(e.prevLineP=y,eg(e,A)){Gm(e,A)?y.str+=o:y.str+=" "+o,y.right=T,y.fontName=c,y.width=Math.max(y.width+l,T-y.left),y.nextLeft=L;return}if(tg(e,A)){y.width=Math.max(y.width+l,T-y.left),y.right=T,y.nextLeft=L,y.attachList.push(A);return}u.push(A)}}),u}function lg(e,t,n){if(!Vo(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function p1(e){setTimeout(()=>{let t="";for(let n=1;n<=Tn.length;n++){let a=!1;if(Tn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Ve({text:t}).then(n=>{Je("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ua={};async function Is(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await en(e,n,1e3);return Ut(a),a}async function cg(e){Tt("Translating");let t=un(),n=Ea(),a=[...document.querySelectorAll(".source-text")];if(fo(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Ye(r,"id",o+""),i&&(Na(i,o)?.remove(),i.appendChild(wu(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=Na(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),r?(c.innerHTML=Ce.sanitize(`${r.message}`),ua[s]={ok:!1,sentence:i}):o&&(c.innerHTML=Ce.sanitize(o.text),ua[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Tt("Translated")}}async function dg(e){Tt("Translating"),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ua),n=[],a=[];for(let u of t){let r=ua[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let s=i.parentElement;i.remove(),s&&(delete ua[u],s.appendChild(wu(e,u)),a.push(r.sentence))}}}try{await on({sentences:a},e,(u,r,o)=>{let i=o.id,s=Na(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),u?(l.innerHTML=Ce.sanitize(`${u.message}`),ua[i]={ok:!1,sentence:o}):r&&(l.innerHTML=Ce.sanitize(r.text),ua[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Tt("Translated")}}function js(){Tt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var zs={};async function mg(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await en(e,n,1e3);return Ut(a),a}async function gg(e){Tt("Translating"),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(zs),n=[];for(let a of t){let u=zs[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${er}='${a}']`);o&&o.remove(),n.push(u)}}try{await xo(n,e,e.config.translationMode)}catch{}finally{Tt("Translated")}}function pg(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+jt);for(let u of a)u.remove()}Tt("Original")}async function fg(e){Tt("Translating");let t=_t(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ja(s,e);let l=s.body;if(!l)continue;let c=$t(e);c.isModifyImage=!1,zn({id:t,container:l,filterRule:c,onParagraph:d=>{a.push(d)}})}let r=po(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=Eo(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await Q0(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(u.push(l),zs[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await xo(u,e,e.config.translationMode)}catch{}finally{Tt("Translated")}}var f1=new AbortController,{signal:h1}=f1,$s=0,Ks=0,Hs=!1,Us=0,Pu=!1,ra,hg=0,oa=[];function Yo(e,t){b1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=ct(d=>{if(Hs==!1&&Math.abs(d.clientX-$s)+Math.abs(d.clientY-Ks)>3&&(Us<2?Us+=1:Hs=!0),$s=d.clientX,Ks=d.clientY,o||Pu&&!ra){let m=xg(a.rule,t);if(m){if(Gs(m))return;Eg(a,m)}}},o?700:300),s=d=>{let m=d.target;Gs(m)||Eg(a)},l=d=>{let m=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=je.getPressedKeyCodes();if(g.length>1&&je[m]&&(hg=Date.now(),Pu=!1),g.length===1&&je[m]){let f=Date.now();Pu=!0,ra&&clearTimeout(ra),ra=setTimeout(()=>{let w=hg-f;w>0&&w<=150?Pu=!1:s(d),ra=void 0},150)}};if(oa.push(()=>{ra&&clearTimeout(ra)}),r)return;Ws("mousemove",i,t),oa.push(()=>{t.removeEventListener("mousemove",i)});function c(){Hs=!1,Us=0,i.cancel()}if(o)Ws("blur",c,t),oa.push(()=>{t.removeEventListener("blur",c)});else{let d=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=["ctrl","alt","shift","cmd","command","option","control"];Ws("keyup",bg,t),oa.push(()=>{t.removeEventListener("keyup",bg)}),m.includes(d)?je("*","mouseHover",l):je(u.generalRule.mouseHoverHoldKey,"mouseHover",s),je.setScope("mouseHover"),oa.push(()=>{je.deleteScope("mouseHover")})}}function b1(){oa.forEach(e=>e()),oa=[]}function bg(e){Pu=!1}function Ws(e,t,n=window){return n.addEventListener(e,t,{signal:h1})}function Eg(e,t,n=window){if(t=t||xg(e.rule,n),!t){v.debug("can not find selection part!");return}if(Gs(t)){v.debug("exclude dom");return}Hd(e,t);let a=ko();a?.currentUrl!==window.location.href&&(Hn(),ns(e)),a&&(a.setupMouseHoverListener=Yo);let u=$t(e);u.excludeSelectors=[],u.selectors=[];let r=!1;zn({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{ku(a,o,!0).then(i=>{if(i&&!r){r=!0;let s=Date.now();et(f4,s),Je("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function xg(e,t){return E1($s,Ks,e,t)}function E1(e,t,n,a){let u=md(e,t,n,a);if(u==null)return;let r=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=gd(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:Tg(l,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(l){v.debug("get mouse over word fail",l)}let s=u.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Xo&&self.removeEventListener("keydown",Xo),Xo=i,self.addEventListener("keydown",Xo);function i(l){if(Va)return;let c=l,d=c.target||c.srcElement,m=d?.tagName;(d?.isContentEditable||m=="INPUT"||m=="SELECT"||m=="TEXTAREA")&&(B1(l,u.triggerKey,u.codePrefixAlias)?s(l):r=0)}function s(l){Date.now()-o=u.triggerTimes&&(C1(e,u),r=0)}}function y1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let s=r+i;return u.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function Cg(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Ja;function T1(e){let t=e.parentElement;if(!t)return;Ja=document.createElement("div"),Ja.className=z+"-input",Ja.innerHTML=`
`,t.appendChild(Ja);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function x1(){Ja&&Ja.remove()}async function C1(e,t){if(!Va)try{let d=function(){o=e.config.inputTargetLanguage;let g=r.split(" ")[0];g&&g[0]&&(g=g[0].toLowerCase()+g.slice(1)),g.trim()&&t.flatAlias.includes(g)?(o=Cg(g,t.codeAlias),u=r.slice(g.length+1)):u=r},m=function(){o="";let g=y1(t),f=r.split(g);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let T=r.lastIndexOf(u),p=r.slice(0,T).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let w=r.slice(a.length+1,r.indexOf(u)).trim();if(o=Cg(w,t.codeAlias),!o){v.warn("not found alias",w);return}},n=document.activeElement;Va=!0,T1(n);let a="",u="",r=Mu(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?d():(m(),o||d()),_1(e);let i=w1(u,t),s=await en(e,i);v.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;et(h4,Date.now());let c=await Pa(l,e);M1(n,a+c.text),Va=!1}catch(n){throw Va=!1,n}finally{Va=!1,x1()}}function w1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function v1(e,t){let n=t.innerHTML,a=Mu(t);return{html:n.replace(a,e),text:e}}function wg(e,t,n=!1){let a=Mu(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function Mu(e){return e.value||e.innerText||e.textContent}async function ia(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function k1(e,t,n){await ia(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await ia(10)}async function A1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await ia(10))}async function S1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await ia(20),(t.value||t.value==="")&&(t.value=e.text)}async function D1(e,t){vg(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await ia(20))}var L1=[k1.bind(null,["plain"])];function F1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function vg(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function P1(e){if(vg(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function M1(e,t){await P1(e),await ia(50);let n=v1(t,e);F1(e),v.debug("clearContnet",Mu(e)),await ia(50);for(let a of[...L1,D1,S1,A1])if(await a(n,e),v.debug("setContent",a.name,wg(n,e),Mu(e),n),wg(n,e))break}function _1(e){Je("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function B1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function Sg(e,t,n){return(await Pa({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}function R1(e,t,n,a){let u=[],r="en";for(let o of n)u.push({text:o.textContent||"",id:u.length,from:r,to:a,url:"https://google.com",fromByClient:r});return new Promise((o,i)=>{on({sentences:u},{...e,translationService:"google"},(s,l,c)=>{if(s)return o([]);let d=l?.id||0,m=n[d];m&&m.className==z+"-search-title-wrapper"&&(m.innerHTML+=Ce.sanitize(`
${l?.text}
`,{ADD_ATTR:["target"]}))})})}function Zo(e,t,n){t&&Je(t.key,[{name:t.key}],{...e,sourceLanguage:t.sourceLanguage||n})}function Js(e,t,n,a){let u=n.querySelectorAll('[translate="true"]');return R1(e,t,[...u],a),n}async function Ys(e,t){let a=(await $({url:O1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,r=new DOMParser().parseFromString(a,"text/xml"),o=[],i=r.querySelectorAll("item");for(let s=0;s${e.cancelDescription}
`:""} +

\u82F1\u6587\u641C\u7D22 + ${n} \u7684\u76F8\u5173\u65B0\u95FB:
+

+
${o}
+ + `.replaceAll(` +`,""),{ADD_ATTR:["target"]});let l=u.querySelector(`.${z}-search-more`);return l&&(l.onclick=()=>{let c=u.querySelector(`.${z}-expand-items`);c.style.display=="none"?(c.style.display="block",l.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(kg(n))}),u}function Ag(e,t){let n=e.style;return t.map((a,u)=>{let r=a.title||"",o=a.source||"",i=r.split("-");return i.length>1&&(o=i[i.length-1].trim(),i=i.slice(0,i.length-1)),r=i.join("-"),r=r.trim(),`
${o}
+
+ ${a}
${fd(t.pubDate||"")}
+ >${r} +
+
${yd(a.pubDate||"")}
`}).join(` -`)}function wg(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}function _1(e){let n=new URL(e).searchParams.get("q");return n||""}async function B1(e,t,n){return(await Pa({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}async function R1(e,t,n){let a=[],u="en";for(let r of t)a.push({text:r.textContent||"",id:a.length,from:u,to:n,url:"https://google.com",fromByClient:u});return new Promise((r,o)=>{rn({sentences:a},{...e,translationService:"google"},(i,s,l)=>{if(i)return r([]);let c=s?.id||0,d=t[c];d&&d.className==H+"-search-title-wrapper"&&(d.innerHTML+=De.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}var se=null,Zo={},Ya,Qo;async function wr(){if(Re()==="Original"){let e={};Qo&&(e.translationMode=Qo),Ya&&(e.translationTheme=Ya),se&&(e={...se.state,...e}),await ft(ze(),e),await Jt(se)}else(Re()==="Translated"||Re()==="Error")&&Vn()}async function vr(){if(se=await ft(ze(),{}),se.rule.isEbookBuilder)return lg(se);if(se.rule.isSubtitleBuilder)return ig(se);jd()}async function kr(){if(Re()==="Original")se=await ft(ze(),{}),Ya||(Ya=se.state.translationTheme),se=await ft(ze(),{translationTheme:"mask"}),await Jt(se);else if(Re()==="Translated"){let e=md().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[se.mainFrame,...e],n=se?.state.translationTheme;for(let a of t){let u=Ba(a,ga,!0);n==="mask"?u!=="none"?Ye(a,ga,"none",!0):Ye(a,ga,"mask",!0):u!=="mask"?Ye(a,ga,"mask",!0):Ye(a,ga,"none",!0)}}}async function Z0(){let e=await ft(ze(),{});return e.rule.isSubtitleBuilder?Ns(e):Id(e)}function O1(e){Re()==="Original"?og(e):Is()}function N1(e){Re()==="Original"?Ao(e):Hn()}async function Vn(){let e=await ft(ze(),{});if(e.rule.isSubtitleBuilder){Is();return}else e.rule.isEbookBuilder&&cg();Hn()}async function Jt(e){if(Re()!=="Original"&&await Vn(),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Zo[e.translationService]||(Zo[e.translationService]=!0,Qe()||Fi(e).catch(t=>{k.warn("init translation engine error",t)})),$e("translage_page_daily",[{name:"translage_page_daily"}],e),$e("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:an()}),e.rule.isSubtitleBuilder)return O1(e);if(e.rule.isEbookBuilder)return dg(e);e.rule.isPdf||N1(e)}async function Sc(){Re()==="Original"?await Ar():(Re()==="Translated"||Re()==="Error")&&(se=await ft(ze(),{}),se.state.translationArea!=="main"?await Ar():Vn())}async function Ar(){se=await ft(ze(),{translationArea:"main"}),await Jt(se)}async function Q0(){se=await ft(ze(),{translationArea:"body"}),await Jt(se)}async function Sr(){if(Re()==="Original"){let e=await ft(ze(),{translationMode:"translation"});await Jt(e)}else(Re()==="Translated"||Re()==="Error")&&await Vn()}async function Dc(e){if(se=await ft(ze(),{}),$e("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...se,sourceLanguage:"unknown"}),Re()==="Original"){Jt(se);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function Lc(){if(Re()==="Original")await Q0();else if(Re()==="Translated"||Re()==="Error"){let e={};se&&se.state&&(e=se.state),se=await ft(ze(),e),se.state.translationArea!=="body"?(se.state.translationArea="body",se=await ft(ze(),se.state),await Jt(se)):Vn()}}async function Fc(){se=await ft(ze(),{translationStartMode:"immediate"}),await Jt(se)}async function kg(){let e=await ft(ze(),{});if(!(e.rule.isPdf||e.rule.isSubtitleBuilder||e.rule.isEbookBuilder||e.rule.isEbook)&&e.config.enableInputTranslation){if(!Wt(e.url,e.config.inputStyleBlockUrls)){let n=lt().IMMERSIVE_TRANSLATE_INPUT_INJECTED_CSS;In(document,n,"immersive-translate-input-injected-css")}Gs(e)}}async function Go(){let e=await ft(ze(),{});if(k.debug("init page ctx",e),e.rule.isSubtitleBuilder){Ns(e);return}if(e.rule.isEbookBuilder){sg(e);return}if(e.rule.isPdf){await ug(e);return}if(vg(e),Qo||(Qo=e.state.translationMode),Ya||(Ya=e.state.translationTheme),e.rule.urlChangeDelay&&await Xa(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await I1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=Hc(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){k.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Fn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){k.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&Ed(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await Z0():Ut(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(k.debug(`detect page language: ${e.url} ${t}`),Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||Yc(t,e.config.translationLanguagePattern)&&(n=!0,k.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&lu()&&Yo(e,window),n)se.state.isAutoTranslate=!0,Jt(se);else if(k.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Zo[e.translationService]||(Zo[e.translationService]=!0,Qe()||Fi(e).catch(a=>{k.warn("init translation engine error",a)})))}}async function ft(e,t){let n=Object.keys(t);if(se){let a={url:e,config:se.config,state:{...se.state,...t}};se=await qt(a)}else{let a=await xt(),u=t;n.length===0&&(u=void 0),se=await qt({url:e,config:a,state:u})}return se}async function Pc(){let e=await xt(),t;se&&se.state&&(t=se.state);let n={url:ze(),config:e,state:t},a=await qt(n);se=a;let u=ko(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Fu(a,o),lu()&&Yo(a,o),Gs(a)}),a}function I1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}async function Ag(e){if(!e){let n=await xt();e=await qt({config:n,url:ze()})}e.config.debug?k.setLevel("debug"):k.setLevel("info"),globalThis.top!=globalThis.self||await Pm().catch(n=>{k.error(`init popup page error: ${n}`)}),e.isTranslateExcludeUrl||(e.rule.isEbook||e.rule.isEbookBuilder||await Go(),globalThis.top===globalThis.self&&vm()),await kg()}var _u={capture:!0,once:!0,passive:!0},Lg=()=>document.readyState==="interactive"||document.readyState==="complete",j1=e=>document.readyState===e,Bu=(e,t)=>j1(e)||Lg()?(t(e),!0):!1,z1=()=>new Promise(e=>{Bu("loading",e)||document.addEventListener("readystatechange",()=>{document.readyState==="loading"&&e("loading")},_u)}),H1=()=>new Promise(e=>{Bu("interactive",e)||document.addEventListener("readystatechange",()=>{document.readyState==="interactive"&&e("interactive")},_u)}),U1=()=>new Promise(e=>{Bu("complete",e)||document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e("complete")},_u)}),Sg=()=>new Promise(e=>{Bu("domready",e)||document.addEventListener("DOMContentLoaded",()=>{e("domready")},_u)}),Dg=()=>new Promise(e=>{Bu("load",e)||window.addEventListener("load",()=>{e("load")},_u)}),Fg={};Object.defineProperties(Fg,{state:{get:function(){return document.readyState}},loading:{get:function(){return z1()}},interactive:{get:function(){return H1()}},complete:{get:function(){return U1()}},window:{get:function(){return Dg()}},load:{get:function(){return Dg()}},domready:{get:function(){return Sg()}},dom:{get:function(){return Sg()}},ready:{get:function(){return Lg()}}});var Pg=Fg;var Mg={NOT_FUNCTION:"Your executor is not a function. functions and promises are valid.",FAILED_TO_WAIT:"Failed to wait"};function W1(e){return async()=>await e()}function q1(e){if(typeof e!="function")throw new Error(Mg.NOT_FUNCTION)}var Vs=class{constructor({interval:t=100,timeout:n=1e3,stopOnFailure:a=!1,verbose:u=!1,backoffFactor:r=1,backoffMaxInterval:o,message:i=""}={}){this._interval=t,this._timeout=n,this._stopOnFailure=a,this._isWaiting=!1,this._isResolved=!1,this._verbose=u,this._userMessage=i,this.originalStacktraceError=new Error,this._Console=console,this._backoffFactor=r,this._backoffMaxInterval=o||n,this.start=+Date.now()}tryEvery(t){return this._interval=t,this}stopAfter(t){return this._timeout=t,this}execute(t){return this._applyPromiseHandlers(),q1(t),this._executeFn=W1(t),this.start=Date.now(),this._isWaiting=!0,this._log("starting to execute"),this._runFunction(),this.promise}getPromise(){return this.promise}isResolved(){return this._isResolved}isWaiting(){return this._isWaiting}stopOnFailure(t){return this._stopOnFailure=t,this}_applyPromiseHandlers(){this.promise=new Promise((t,n)=>{this.resolve=t,this.reject=n})}_timeFromStart(){return Date.now()-this.start}_shouldStopTrying(){return this._timeFromStart()>this._timeout}_executeAgain(){this._log("executing again");let t=this._interval,n=t*this._backoffFactor;this._interval=n>this._backoffMaxInterval?this._backoffMaxInterval:n,setTimeout(this._runFunction.bind(this),t)}_failedToWait(){let t=`${Mg.FAILED_TO_WAIT} after ${this._timeFromStart()}ms`;if(this._userMessage&&(t=`${t}: ${this._userMessage}`),this._lastError){this._lastError.message=`${t} +`)}function Dg(e,t){if(!e.keyword)return;let n=e.keyword.value||"";for(let a=0;anew RegExp(a.urlMatch).test(t))}async function Fg(e){if(ha().any)return;if(!e.rule.enableSearchEnhancement){v.debug("enable is false");return}let t=N1(e.rule.searchEnhancementConfig||[],e.url);if(!t){v.debug("not found siteConfig",e.url);return}let n=Dg(t,e.url);if(!n){v.debug("not found keyword",e.url);return}t.id=="google"?j1(e,t,n):I1(e,t,n)}async function I1(e,t,n){let a=await en(e,document.title);t.selector&&setTimeout(async()=>{let u=document.querySelector(t.selector);if(!u){v.debug("selector node not found",t.selector);return}let r=await Ys(n,t.showCount);if(r&&r.length<=0){v.debug("list not found");return}let o=await Xs(t,r,n,t.showCount);if(!o){v.debug("getInseredNode none");return}o.style.cssText=t.style.container||"";let i=t.selectorAction||"appendChild";i=="insertBefore"?u.parentElement?.insertBefore(o,u):i=="appendChild"?u.appendChild(o):i=="replace"&&u?.replaceWith(o),Js(e,t,o,a),Zo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a)},t.delayTime||0)}async function j1(e,t,n){let a=await en(e,n);if(Zo(e,{key:"detect_search_action"},a),!["zh-CN","zh-TW"].includes(a))return;v.debug("use dual search");let u=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")u=!0;else if(!Lg(document.body))return;let o=document.querySelector("#rhs");if(!o){let i=document.querySelector("#rcnt");if(!i)return;let s=i.children;if(s&&s.length>1)o=s[1];else{let l=s[0];o=document.createElement("div"),o.id="rhs",o.style.maxWidth="372px",o.style.marginLeft="50px",i.insertBefore(o,l.nextSibling)}}if(u||Lg(document.body)){v.debug("find story");let i=await Sg(e,n,a);v.debug("enKeyword",i);let s=await Ys(i,t.showCount);if(v.debug("news list",s),s&&s.length<=0)return;let l=await Xs(t,s,i,t.showCount);if(!l)return;Zo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a),Js(e,t,l,a),o.insertBefore(l,o?.firstChild)}}function Lg(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}var se=null,Qo={},Ya,ei;async function wr(){if(Re()==="Original"){let e={};ei&&(e.translationMode=ei),Ya&&(e.translationTheme=Ya),se&&(e={...se.state,...e}),await ft(ze(),e),await Jt(se)}else(Re()==="Translated"||Re()==="Error")&&Vn()}async function vr(){if(se=await ft(ze(),{}),se.rule.isEbookBuilder)return gg(se);if(se.rule.isSubtitleBuilder)return dg(se);Wd()}async function kr(){if(Re()==="Original")se=await ft(ze(),{}),Ya||(Ya=se.state.translationTheme),se=await ft(ze(),{translationTheme:"mask"}),await Jt(se);else if(Re()==="Translated"){let e=hd().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[se.mainFrame,...e],n=se?.state.translationTheme;for(let a of t){let u=Ba(a,ga,!0);n==="mask"?u!=="none"?Ye(a,ga,"none",!0):Ye(a,ga,"mask",!0):u!=="mask"?Ye(a,ga,"mask",!0):Ye(a,ga,"none",!0)}}}async function Qi(){let e=await ft(ze(),{});return e.rule.isSubtitleBuilder?Is(e):Ud(e)}function z1(e){Re()==="Original"?cg(e):js()}function H1(e){Re()==="Original"?Ao(e):Hn()}async function Vn(){let e=await ft(ze(),{});if(e.rule.isSubtitleBuilder){js();return}else e.rule.isEbookBuilder&&pg();Hn()}async function Jt(e){if(Re()!=="Original"&&await Vn(),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Qo[e.translationService]||(Qo[e.translationService]=!0,Qe()||P0(e).catch(t=>{v.warn("init translation engine error",t)})),Je("translage_page_daily",[{name:"translage_page_daily"}],e),Je("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:un()}),e.rule.isSubtitleBuilder)return z1(e);if(e.rule.isEbookBuilder)return fg(e);e.rule.isPdf||H1(e)}async function Pc(){Re()==="Original"?await Ar():(Re()==="Translated"||Re()==="Error")&&(se=await ft(ze(),{}),se.state.translationArea!=="main"?await Ar():Vn())}async function Ar(){se=await ft(ze(),{translationArea:"main"}),await Jt(se)}async function e0(){se=await ft(ze(),{translationArea:"body"}),await Jt(se)}async function Sr(){if(Re()==="Original"){let e=await ft(ze(),{translationMode:"translation"});await Jt(e)}else(Re()==="Translated"||Re()==="Error")&&await Vn()}async function Mc(e){if(se=await ft(ze(),{}),Je("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...se,sourceLanguage:"unknown"}),Re()==="Original"){Jt(se);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function _c(){if(Re()==="Original")await e0();else if(Re()==="Translated"||Re()==="Error"){let e={};se&&se.state&&(e=se.state),se=await ft(ze(),e),se.state.translationArea!=="body"?(se.state.translationArea="body",se=await ft(ze(),se.state),await Jt(se)):Vn()}}async function Bc(){se=await ft(ze(),{translationStartMode:"immediate"}),await Jt(se)}async function Pg(){let e=await ft(ze(),{});if(!(e.rule.isPdf||e.rule.isSubtitleBuilder||e.rule.isEbookBuilder||e.rule.isEbook)&&e.config.enableInputTranslation){if(!Wt(e.url,e.config.inputStyleBlockUrls)){let n=lt().IMMERSIVE_TRANSLATE_INPUT_INJECTED_CSS;In(document,n,"immersive-translate-input-injected-css")}Vs(e)}}async function Go(){let e=await ft(ze(),{});if(v.debug("init page ctx",e),e.rule.isSubtitleBuilder){Is(e);return}if(e.rule.isEbookBuilder){mg(e);return}if(e.rule.isPdf){await sg(e);return}if(Fg(e),ei||(ei=e.state.translationMode),Ya||(Ya=e.state.translationTheme),e.rule.urlChangeDelay&&await Xa(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await U1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=$c(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){v.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Fn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){v.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&Cd(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await Qi():Ut(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(v.debug(`detect page language: ${e.url} ${t}`),Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||e3(t,e.config.translationLanguagePattern)&&(n=!0,v.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&lu()&&Yo(e,window),n)se.state.isAutoTranslate=!0,Jt(se);else if(v.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Qo[e.translationService]||(Qo[e.translationService]=!0,Qe()||P0(e).catch(a=>{v.warn("init translation engine error",a)})))}}async function ft(e,t){let n=Object.keys(t);if(se){let a={url:e,config:se.config,state:{...se.state,...t}};se=await qt(a)}else{let a=await xt(),u=t;n.length===0&&(u=void 0),se=await qt({url:e,config:a,state:u})}return se}async function Rc(){let e=await xt(),t;se&&se.state&&(t=se.state);let n={url:ze(),config:e,state:t},a=await qt(n);se=a;let u=ko(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Fu(a,o),lu()&&Yo(a,o),Vs(a)}),a}function U1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}async function Mg(e){if(!e){let n=await xt();e=await qt({config:n,url:ze()})}e.config.debug?v.setLevel("debug"):v.setLevel("info"),globalThis.top!=globalThis.self||await Rm().catch(n=>{v.error(`init popup page error: ${n}`)}),e.isTranslateExcludeUrl||(e.rule.isEbook||e.rule.isEbookBuilder||await Go(),globalThis.top===globalThis.self&&Dm()),await Pg()}var _u={capture:!0,once:!0,passive:!0},Rg=()=>document.readyState==="interactive"||document.readyState==="complete",W1=e=>document.readyState===e,Bu=(e,t)=>W1(e)||Rg()?(t(e),!0):!1,q1=()=>new Promise(e=>{Bu("loading",e)||document.addEventListener("readystatechange",()=>{document.readyState==="loading"&&e("loading")},_u)}),$1=()=>new Promise(e=>{Bu("interactive",e)||document.addEventListener("readystatechange",()=>{document.readyState==="interactive"&&e("interactive")},_u)}),K1=()=>new Promise(e=>{Bu("complete",e)||document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e("complete")},_u)}),_g=()=>new Promise(e=>{Bu("domready",e)||document.addEventListener("DOMContentLoaded",()=>{e("domready")},_u)}),Bg=()=>new Promise(e=>{Bu("load",e)||window.addEventListener("load",()=>{e("load")},_u)}),Og={};Object.defineProperties(Og,{state:{get:function(){return document.readyState}},loading:{get:function(){return q1()}},interactive:{get:function(){return $1()}},complete:{get:function(){return K1()}},window:{get:function(){return Bg()}},load:{get:function(){return Bg()}},domready:{get:function(){return _g()}},dom:{get:function(){return _g()}},ready:{get:function(){return Rg()}}});var Ng=Og;var Ig={NOT_FUNCTION:"Your executor is not a function. functions and promises are valid.",FAILED_TO_WAIT:"Failed to wait"};function G1(e){return async()=>await e()}function V1(e){if(typeof e!="function")throw new Error(Ig.NOT_FUNCTION)}var Zs=class{constructor({interval:t=100,timeout:n=1e3,stopOnFailure:a=!1,verbose:u=!1,backoffFactor:r=1,backoffMaxInterval:o,message:i=""}={}){this._interval=t,this._timeout=n,this._stopOnFailure=a,this._isWaiting=!1,this._isResolved=!1,this._verbose=u,this._userMessage=i,this.originalStacktraceError=new Error,this._Console=console,this._backoffFactor=r,this._backoffMaxInterval=o||n,this.start=+Date.now()}tryEvery(t){return this._interval=t,this}stopAfter(t){return this._timeout=t,this}execute(t){return this._applyPromiseHandlers(),V1(t),this._executeFn=G1(t),this.start=Date.now(),this._isWaiting=!0,this._log("starting to execute"),this._runFunction(),this.promise}getPromise(){return this.promise}isResolved(){return this._isResolved}isWaiting(){return this._isWaiting}stopOnFailure(t){return this._stopOnFailure=t,this}_applyPromiseHandlers(){this.promise=new Promise((t,n)=>{this.resolve=t,this.reject=n})}_timeFromStart(){return Date.now()-this.start}_shouldStopTrying(){return this._timeFromStart()>this._timeout}_executeAgain(){this._log("executing again");let t=this._interval,n=t*this._backoffFactor;this._interval=n>this._backoffMaxInterval?this._backoffMaxInterval:n,setTimeout(this._runFunction.bind(this),t)}_failedToWait(){let t=`${Ig.FAILED_TO_WAIT} after ${this._timeFromStart()}ms`;if(this._userMessage&&(t=`${t}: ${this._userMessage}`),this._lastError){this._lastError.message=`${t} ${this._lastError.message}`;let n=this.originalStacktraceError.stack;n&&(this._lastError.stack+=n.substring(n.indexOf(` -`)+1))}else this._lastError=this.originalStacktraceError,this._lastError.message=t;return this._log(this._lastError),this._lastError}_runFunction(){if(this._shouldStopTrying()){this._isWaiting=!1,this.reject?.(this._failedToWait());return}this._executeFn().then(t=>{if(t===!1){this._log(`then execute again with result: ${t}`),this._executeAgain();return}this.resolve?.(t),this._isWaiting=!1,this._isResolved=!0,this._log(`then done waiting with result: ${t}`)}).catch(t=>this._stopOnFailure?(this._log(`stopped on failure with err: ${t}`),this.reject?.(t)):(this._lastError=t,this._log(`catch with err: ${t}`),this._executeAgain()))}_log(t){this._verbose&&this._Console&&this._Console.log&&this._Console.log(t)}},_g=(e,t)=>new Vs(t).execute(e);async function Bg(e){try{return await _g(()=>{let n=e.mainFrame.innerText||"";if(Ma(n,e.rule.mainFrameMinTextCount,e.rule.mainFrameMinWordCount))return!0;throw new Error("there is no main text")},{timeout:5e3}),!0}catch(t){if(Qe())throw t;return k.debug("check dom element ready failed:",t,e),!0}}function Rg(){let e=document.querySelector("meta[name=immersive-translate-options]");return!!(e&&e.getAttribute("content")==="true")}async function Ng(){if(!document.getElementById("immersive-translate-status")){k.error("Could not find status element");return}await Og("local"),await Og("sync"),K1();let t=document.getElementById("immersive-translate-page-ready");t&&setTimeout(()=>{t.value="true",t.dispatchEvent(new Event("change"))},100)}async function $1(e,t){let n;try{n=JSON.parse(e.detail)}catch(u){k.error("parse detail failed",u);return}let a=n.id||"default";try{let u=n.data||{},r=await t(u),o={id:a,ok:!0,data:r};document.dispatchEvent(new CustomEvent(Zu,{detail:JSON.stringify({...o,type:"answer"})}))}catch(u){let r={ok:!1,errorName:u.name,errorMessage:u.message,errorDetails:u.details||u.detail};document.dispatchEvent(new CustomEvent(Zu,{detail:JSON.stringify({...r,id:a,type:"answer"})}))}}function K1(){document.addEventListener(Xu,a=>{let u=a;if(k.debug("document message",u),u&&u.detail){let r;try{r=JSON.parse(u.detail)}catch(o){k.error("parse detail failed",o);return}r.type==="ask"?r.method==="request"&&$1(u,$):r.type==="tell"&&r.method==="updateCommands"&&_r(r.data)}});let e=document.getElementById("immersive-translate-manifest");if(!e){k.error("Could not find manifest element");return}let t=q.runtime.getManifest();Rt()&&(t._isSafari=!0),e.value=JSON.stringify(t),e.dispatchEvent(new Event("change")),document.getElementById("immersive-translate-message").addEventListener("change",a=>{try{let u=JSON.parse(a.target.value);u&&u.method==="removeStorageKey"&&u.data&&u.data.area&&u.data.keys&&q.storage[u.data.area].remove(u.data.keys)}catch(u){k.error("parse message error",u)}})}async function Og(e){let t=document.getElementById("immersive-translate-status"),n=document.getElementById(`immersive-translate-${e}-storage`);if(n){k.debug("init storage");let a=await q.storage[e].get(null);n.value=JSON.stringify(a),n.dispatchEvent(new Event("change")),n.addEventListener("change",u=>{try{let r=JSON.parse(u.target.value);q.storage[e].set(r)}catch(r){k.error("save to storage error",r)}})}else{k.error(`Could not find storage ${e} element`),t.innerText="Could not find storage local input element";return}}async function G1(){let e=await Gn(),t=ze(),n=await qt({config:e,url:t});$e("init_page_daily",[{name:"init_page_daily"}],n),Pg.domready.then(()=>{if(n.isTranslateExcludeUrl&&Rg())k.debug("detect web options page"),Fu(n,window),Ng();else{if(!n.config.enabled||Wt(n.url,n.config.blockUrls))return;Fu(n,window),Bg(n).then(()=>{Ag(n).catch(u=>{u&&k.error("translate page error",u.name,u.message,u.details||"",u)})}).catch(u=>{k.debug("can not detect a valid body: ",u)})}}).catch(a=>{a&&k.error("translate dom ready detect error",a)})}G1().catch(e=>{k.error("init error",e)});})(); +`)+1))}else this._lastError=this.originalStacktraceError,this._lastError.message=t;return this._log(this._lastError),this._lastError}_runFunction(){if(this._shouldStopTrying()){this._isWaiting=!1,this.reject?.(this._failedToWait());return}this._executeFn().then(t=>{if(t===!1){this._log(`then execute again with result: ${t}`),this._executeAgain();return}this.resolve?.(t),this._isWaiting=!1,this._isResolved=!0,this._log(`then done waiting with result: ${t}`)}).catch(t=>this._stopOnFailure?(this._log(`stopped on failure with err: ${t}`),this.reject?.(t)):(this._lastError=t,this._log(`catch with err: ${t}`),this._executeAgain()))}_log(t){this._verbose&&this._Console&&this._Console.log&&this._Console.log(t)}},jg=(e,t)=>new Zs(t).execute(e);async function zg(e){try{return await jg(()=>{let n=e.mainFrame.innerText||"";if(Ma(n,e.rule.mainFrameMinTextCount,e.rule.mainFrameMinWordCount))return!0;throw new Error("there is no main text")},{timeout:5e3}),!0}catch(t){if(Qe())throw t;return v.debug("check dom element ready failed:",t,e),!0}}function Hg(){let e=document.querySelector("meta[name=immersive-translate-options]");return!!(e&&e.getAttribute("content")==="true")}async function Wg(){if(!document.getElementById("immersive-translate-status")){v.error("Could not find status element");return}await Ug("local"),await Ug("sync"),Y1();let t=document.getElementById("immersive-translate-page-ready");t&&setTimeout(()=>{t.value="true",t.dispatchEvent(new Event("change"))},100)}async function J1(e,t){let n;try{n=JSON.parse(e.detail)}catch(u){v.error("parse detail failed",u);return}let a=n.id||"default";try{let u=n.data||{},r=await t(u),o={id:a,ok:!0,data:r};document.dispatchEvent(new CustomEvent(Zu,{detail:JSON.stringify({...o,type:"answer"})}))}catch(u){let r={ok:!1,errorName:u.name,errorMessage:u.message,errorDetails:u.details||u.detail};document.dispatchEvent(new CustomEvent(Zu,{detail:JSON.stringify({...r,id:a,type:"answer"})}))}}function Y1(){document.addEventListener(Xu,a=>{let u=a;if(v.debug("document message",u),u&&u.detail){let r;try{r=JSON.parse(u.detail)}catch(o){v.error("parse detail failed",o);return}r.type==="ask"?r.method==="request"&&J1(u,$):r.type==="tell"&&r.method==="updateCommands"&&_r(r.data)}});let e=document.getElementById("immersive-translate-manifest");if(!e){v.error("Could not find manifest element");return}let t=q.runtime.getManifest();Rt()&&(t._isSafari=!0),e.value=JSON.stringify(t),e.dispatchEvent(new Event("change")),document.getElementById("immersive-translate-message").addEventListener("change",a=>{try{let u=JSON.parse(a.target.value);u&&u.method==="removeStorageKey"&&u.data&&u.data.area&&u.data.keys&&q.storage[u.data.area].remove(u.data.keys)}catch(u){v.error("parse message error",u)}})}async function Ug(e){let t=document.getElementById("immersive-translate-status"),n=document.getElementById(`immersive-translate-${e}-storage`);if(n){v.debug("init storage");let a=await q.storage[e].get(null);n.value=JSON.stringify(a),n.dispatchEvent(new Event("change")),n.addEventListener("change",u=>{try{let r=JSON.parse(u.target.value);q.storage[e].set(r)}catch(r){v.error("save to storage error",r)}})}else{v.error(`Could not find storage ${e} element`),t.innerText="Could not find storage local input element";return}}async function X1(){let e=await Gn(),t=ze(),n=await qt({config:e,url:t});Je("init_page_daily",[{name:"init_page_daily"}],n),Ng.domready.then(()=>{if(n.isTranslateExcludeUrl&&Hg())v.debug("detect web options page"),Fu(n,window),Wg();else{if(!n.config.enabled||Wt(n.url,n.config.blockUrls))return;Fu(n,window),zg(n).then(()=>{Mg(n).catch(u=>{u&&v.error("translate page error",u.name,u.message,u.details||"",u)})}).catch(u=>{v.debug("can not detect a valid body: ",u)})}}).catch(a=>{a&&v.error("translate dom ready detect error",a)})}X1().catch(e=>{v.error("init error",e)});})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/dist/chrome/libs/foliate-js/make.js b/dist/chrome/libs/foliate-js/make.js index d897bdaa4..dea05dcd6 100644 --- a/dist/chrome/libs/foliate-js/make.js +++ b/dist/chrome/libs/foliate-js/make.js @@ -1,4 +1,4 @@ -(()=>{var Nd=Object.defineProperty;var zd=(t,e)=>{for(var n in e)Nd(t,n,{get:e[n],enumerable:!0})};var te={BUILD_TIME:"2023-07-04T16:25:26.171Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Nd=Object.defineProperty;var zd=(t,e)=>{for(var n in e)Nd(t,n,{get:e[n],enumerable:!0})};var te={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,7 +4067,7 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var Ud=(t,e)=>t.map((n,r,i)=>e(n,r,i)?r:null).filter(n=>n!=null),Ss=(t,e)=>[-1,...e,t.length].reduce(({xs:n,a:r},i)=>({xs:n?.concat([t.slice(r+1,i)])??[],a:i}),{}).xs,$d=(t,e)=>t.slice(0,-1).concat([t[t.length-1].concat(e[0])]).concat(e.slice(1)),ta=/\d/,Qn=/^epubcfi\((.*)\)$/,Cs=t=>t.replace(/[\^[\](),;=]/g,"^$&"),jd=t=>Qn.test(t)?t:`epubcfi(${t})`,Hd=t=>t.match(Qn)?.[1]??t,Wd=t=>(...e)=>`epubcfi(${t(...e.map(n=>n.match(Qn)?.[1]??n))})`,Es=Wd((...t)=>t.join("!")),qd=t=>{let e=[],n,r,i="",a=s=>(e.push(s),n=null,i=""),o=s=>(i+=s,r=!1);for(let s of Array.from(t.trim()).concat("")){if(s==="^"&&!r){r=!0;continue}if(n==="!")a(["!"]);else if(n===",")a([","]);else if(n==="/"||n===":")if(ta.test(s)){o(s);continue}else a([n,parseInt(i)]);else if(n==="~")if(ta.test(s)||s==="."){o(s);continue}else a(["~",parseFloat(i)]);else if(n==="@"){if(s===":"){a(["@",parseFloat(i)]),n="@";continue}if(ta.test(s)||s==="."){o(s);continue}else a(["@",parseFloat(i)])}else if(n==="["){s===";"&&!r?(a(["[",i]),n=";"):s===","&&!r?(a(["[",i]),n="["):s==="]"&&!r?a(["[",i]):o(s);continue}else if(n?.startsWith(";")){s==="="&&!r?(n=`;${i}`,i=""):s===";"&&!r?(a([n,i]),n=";"):s==="]"&&!r?a([n,i]):o(s);continue}(s==="/"||s===":"||s==="~"||s==="@"||s==="["||s==="!"||s===",")&&(n=s)}return e},As=(t,e)=>Ud(t,([n])=>n===e),Vd=t=>{let e=[],n;for(let[r,i]of t){if(r==="/")e.push({index:i});else{let a=e[e.length-1];if(r===":")a.offset=i;else if(r==="~")a.temporal=i;else if(r==="@")a.spatial=(a.spatial??[]).concat(i);else if(r===";s")a.side=i;else if(r==="[")if(n==="/"&&i)a.id=i;else{a.text=(a.text??[]).concat(i);continue}}n=r}return e},ks=t=>Ss(t,As(t,"!")).map(Vd),Zt=t=>{let e=qd(Hd(t)),n=As(e,",");if(!n.length)return ks(e);let[r,i,a]=Ss(e,n).map(ks);return{parent:r,start:i,end:a}},Kd=({index:t,id:e,offset:n,temporal:r,spatial:i,text:a,side:o})=>{let s=o?`;s=${o}`:"";return`/${t}`+(e?`[${Cs(e)}${s}]`:"")+(n!=null&&t%2?`:${n}`:"")+(r?`~${r}`:"")+(i?`@${i.join(":")}`:"")+(a||!e&&o?"["+(a?.map(Cs)?.join(",")??"")+s+"]":"")},Ms=t=>t.parent?[t.parent,t.start,t.end].map(Ms).join(","):t.map(e=>e.map(Kd).join("")).join("!"),Ir=t=>jd(Ms(t)),Ut=(t,e)=>typeof t=="string"?Ir(Ut(Zt(t),e)):t.parent?$d(t.parent,t[e?"end":"start"]):t,Gd=(t,e)=>{typeof t=="string"&&(t=Zt(t)),typeof e=="string"&&(e=Zt(e)),t=Ut(t),e=Ut(e,!0);let n=t[t.length-1],r=e[e.length-1],i=[],a=[],o=[],s=!0,l=Math.max(n.length,r.length);for(let c=0;c{if(typeof t=="string"&&(t=Zt(t)),typeof e=="string"&&(e=Zt(e)),t.start||e.start)return Jn(Ut(t),Ut(e))||Jn(Ut(t,!0),Ut(e,!0));for(let n=0;nl.index)return 1;if(s.indexl.offset)return 1;if(s.offsett===3||t===4,Dr=({nodeType:t})=>t===1,ia=t=>{let e=Array.from(t.childNodes).filter(n=>na(n)||Dr(n)).reduce((n,r)=>{let i=n[n.length-1];return i?na(r)?Array.isArray(i)?i.push(r):na(i)?n[n.length-1]=[i,r]:n.push(r):Dr(i)?n.push(null,r):n.push(r):n.push(r),n},[]);return Dr(e[0])&&e.unshift("first"),Dr(e[e.length-1])&&e.push("last"),e.unshift("before"),e.push("after"),e},Xd=(t,e)=>t?ia(t)[e]:null,ra=(t,e)=>{let{id:n}=e[e.length-1];if(n){let a=t.ownerDocument.getElementById(n);if(a)return{node:a,offset:0}}for(let{index:a}of e){let o=Xd(t,a);if(o==="first")return{node:t.firstChild??t};if(o==="last")return{node:t.lastChild??t};if(o==="before")return{node:t,before:!0};if(o==="after")return{node:t,after:!0};t=o}let{offset:r}=e[e.length-1];if(!Array.isArray(t))return{node:t,offset:r};let i=0;for(let a of t){let{length:o}=a.nodeValue;if(i+o>=r)return{node:a,offset:r-i};i+=o}},Fr=(t,e)=>{let{parentNode:n,id:r}=t,i=ia(n),a=i.findIndex(l=>Array.isArray(l)?l.some(u=>u===t):l===t),o=i[a];if(Array.isArray(o)){let l=0;for(let u of o)if(u===t){l+=e;break}else l+=u.nodeValue.length;e=l}let s={id:r,index:a,offset:e};return n!==t.ownerDocument.documentElement?Fr(n).concat(s):[s]},Ls=t=>{let{startContainer:e,startOffset:n,endContainer:r,endOffset:i}=t,a=Fr(e,n);if(t.collapsed)return Ir([a]);let o=Fr(r,i);return Gd([a],[o])},Pr=(t,e)=>{let n=Ut(e),r=Ut(e,!0),i=t.documentElement,a=ra(i,n[0]),o=ra(i,r[0]),s=t.createRange();return a.before?s.setStartBefore(a.node):a.after?s.setStartAfter(a.node):s.setStart(a.node,a.offset),o.before?s.setEndBefore(o.node):o.after?s.setEndAfter(o.node):s.setEnd(o.node,o.offset),s},Rs=t=>{let e=[],{parentNode:n}=t[0],r=Fr(n);for(let[i,a]of ia(n).entries()){let o=t[e.length];a===o&&e.push(Ir([r.concat({id:o.id,index:i})]))}return e},aa=(t,e)=>ra(t.documentElement,Ut(e)).node,oa={fromIndex:t=>`/6/${(t+1)*2}`,toIndex:t=>t?.at(-1).index/2-1};var Yd=t=>{let e=0,n=r=>{if(r.id=e++,r.subitems)for(let i of r.subitems)n(i)};for(let r of t)n(r);return t},Ds=t=>t.map(e=>e.subitems?.length?[e,Ds(e.subitems)].flat():e).flat(),er=class{constructor({toc:e,ids:n,splitHref:r,getFragment:i}){Yd(e);let a=Ds(e),o=new Map;for(let[l,u]of a.entries()){let[c,d]=r(u?.href)??[],f={fragment:d,item:u};o.has(c)?o.get(c).items.push(f):o.set(c,{prev:a[l-1],items:[f]})}let s=new Map;for(let[l,u]of n.entries())o.has(u)?s.set(u,o.get(u)):s.set(u,s.get(n[l-1]));this.ids=n,this.map=s,this.getFragment=i}getProgress(e,n){let r=this.ids[e],i=this.map.get(r);if(!i)return null;let{prev:a,items:o}=i;if(!o)return a;if(!n||o.length===1&&!o[0].fragment)return o[0].item;let s=n.startContainer.getRootNode();for(let[l,{fragment:u}]of o.entries()){let c=this.getFragment(s,u);if(c&&n.comparePoint(c,0)>0)return o[l-1]?.item??a}return o[o.length-1].item}},Nr=class{constructor(e,n,r){this.sizes=e.map(i=>i.linear==="no"?0:i.size),this.sizePerLoc=n,this.sizePerTimeUnit=r,this.sizeTotal=this.sizes.reduce((i,a)=>i+a,0)}getProgress(e,n){let{sizes:r,sizePerLoc:i,sizePerTimeUnit:a,sizeTotal:o}=this,s=r[e]??0,u=r.slice(0,e).reduce((f,p)=>f+p,0)+n*s,c=o-u,d=(1-n)*s;return{fraction:u/o,section:{current:e,total:r.length},location:{current:Math.floor(u/i),total:Math.ceil(o/i)},time:{section:d/a,total:c/a}}}getSection(e){let{sizes:n,sizeTotal:r}=this,i=e*r,a=-1,o=0,s=0;for(let[l,u]of n.entries()){let c=s+u;if(c>i){a=l,o=(i-s)/u;break}s=c}return[a,o]}};var Mn=t=>document.createElementNS("http://www.w3.org/2000/svg",t),zr=class{#e=Mn("svg");#t=new Map;constructor(){Object.assign(this.#e.style,{position:"absolute",top:"0",left:"0",width:"100%",height:"100%",pointerEvents:"none"});let e=matchMedia("(prefers-color-scheme: dark)"),n=()=>this.#e.style.mixBlendMode=e.matches?"normal":"multiply";e.addEventListener("change",n),n()}get element(){return this.#e}add(e,n,r,i){this.#t.has(e)&&this.remove(e),typeof n=="function"&&(n=n(this.#e.getRootNode()));let a=n.getClientRects(),o=r(a,i);this.#e.append(o),this.#t.set(e,{range:n,draw:r,options:i,element:o,rects:a})}remove(e){this.#t.has(e)&&(this.#e.removeChild(this.#t.get(e).element),this.#t.delete(e))}redraw(){for(let e of this.#t.values()){let{range:n,draw:r,options:i,element:a}=e;this.#e.removeChild(a);let o=n.getClientRects(),s=r(o,i);this.#e.append(s),e.element=s,e.rects=o}}hitTest({x:e,y:n}){let r=Array.from(this.#t.entries());for(let i=r.length-1;i>=0;i--){let[a,o]=r[i];for(let{left:s,top:l,right:u,bottom:c}of o.rects)if(l<=n&&s<=e&&c>n&&u>e)return[a,o.range]}return[]}static underline(e,n={}){let{color:r="red",width:i=2}=n,a=Mn("g");a.setAttribute("fill",r);for(let{left:o,bottom:s,width:l}of e){let u=Mn("rect");u.setAttribute("x",o),u.setAttribute("y",s-i),u.setAttribute("height",i),u.setAttribute("width",l),a.append(u)}return a}static highlight(e,n={}){let{color:r="red"}=n,i=Mn("g");i.setAttribute("fill",r),i.setAttribute("fill-opacity",.3);for(let{left:a,top:o,height:s,width:l}of e){let u=Mn("rect");u.setAttribute("x",a),u.setAttribute("y",o),u.setAttribute("height",s),u.setAttribute("width",l),i.append(u)}return i}static copyImage([e],n={}){let{src:r}=n,i=Mn("image"),{left:a,top:o,height:s,width:l}=e;return i.setAttribute("href",r),i.setAttribute("x",a),i.setAttribute("y",o),i.setAttribute("height",s),i.setAttribute("width",l),i}};var Br=class{#e=new Map;#t=new Map;#n=new Map;#r=new Map;constructor({resolve:e,compare:n,onAdd:r,onDelete:i,onUpdate:a}){this.resolve=e,this.compare=n,this.onAdd=r,this.onDelete=i,this.onUpdate=a}async add(e,n){let{value:r}=e;if(this.#t.has(r))return;let{index:i,anchor:a}=await this.resolve(r);if(this.#t.set(r,e),this.#r.set(r,i),this.#n.set(r,a),this.#e.has(i)){let o=this.#e.get(i);if(n)o.push(e),this.onAdd?.(e,i,o.length-1);else{let s=0;for(let l=0;la.value===e);r.splice(i,1),this.#t.delete(e),this.#r.delete(e),this.#n.delete(e),this.onDelete?.(e,n,i)}getByIndex(e){return this.#e.get(e)??[]}getAnchor(e){return this.#n.get(e)}};var Zd=t=>new Promise(e=>setTimeout(e,t)),Jd=(t,e,n)=>{let r;return(...i)=>{let a=()=>{r=null,n||t(...i)},o=n&&!r;r&&clearTimeout(r),r=setTimeout(a,e),o&&t(...i)}},Qd=t=>{if(!t?.collapsed)return t;let{endOffset:e,endContainer:n}=t;if(n.nodeType===1)return n;if(e+11)t.setStart(n,e-1);else return n.parentNode;return t},Ur=(t,e,n,r=n)=>{let i=t.createRange();return i.setStart(e,n),i.setEnd(e,r),i},$r=(t,e,n,r=0,i=e.nodeValue.length)=>{if(i-r===1)return n(Ur(t,e,r),Ur(t,e,i))<0?r:i;let a=Math.floor(r+(i-r)/2),o=n(Ur(t,e,r,a),Ur(t,e,a,i));return o<0?$r(t,e,n,r,a):o>0?$r(t,e,n,a,i):a},{SHOW_ELEMENT:ef,SHOW_TEXT:tf,SHOW_CDATA_SECTION:nf,FILTER_ACCEPT:Fs,FILTER_REJECT:Is,FILTER_SKIP:Ps}=NodeFilter,rf=ef|tf|nf,af=(t,e,n,r)=>{let i=f=>{let p=f.localName?.toLowerCase();if(p==="script"||p==="style")return Is;if(f.nodeType===1){let{left:b,right:g}=r(f.getBoundingClientRect());if(gn)return Is;if(b>=e&&g<=n)return Fs}else{if(!f.nodeValue?.trim())return Ps;let b=t.createRange();b.selectNodeContents(f);let{left:g,right:m}=r(b.getBoundingClientRect());if(m>=e&&g<=n)return Fs}return Ps},a=t.createTreeWalker(t.body,rf,{acceptNode:i}),o=[];for(let f=a.nextNode();f;f=a.nextNode())o.push(f);let s=o[0]??t.body,l=o[o.length-1]??s,u=s.nodeType===1?0:$r(t,s,(f,p)=>{let b=r(f.getBoundingClientRect()),g=r(p.getBoundingClientRect());return b.righte?0:g.left>e?-1:1}),c=l.nodeType===1?0:$r(t,l,(f,p)=>{let b=r(f.getBoundingClientRect()),g=r(p.getBoundingClientRect());return b.rightn?0:g.left>n?-1:1}),d=t.createRange();return d.setStart(s,u),d.setEnd(l,c),d},of=t=>{let{defaultView:e}=t,{writingMode:n,direction:r}=e.getComputedStyle(t.body),i=n==="vertical-rl"||n==="vertical-lr",a=t.body.dir==="rtl"||r==="rtl"||t.documentElement.dir==="rtl";return{vertical:i,rtl:a}},sf=t=>{let e=t.defaultView.getComputedStyle(t.body);return e.backgroundColor==="rgba(0, 0, 0, 0)"&&e.backgroundImage==="none"?t.defaultView.getComputedStyle(t.documentElement).background:e.background},sa=class{#e=document.createElement("div");#t=document.createElement("iframe");#n=document.createRange();#r;#i=!1;#a=!1;#o=!0;#s;#l={};constructor({container:e}){this.container=e,this.#t.classList.add("filter"),this.#e.append(this.#t),Object.assign(this.#e.style,{position:"relative",overflow:"hidden",flex:"0 0 auto",width:"100%",height:"100%"}),Object.assign(this.#t.style,{overflow:"hidden",border:"0",display:"none",width:"100%",height:"100%"}),this.#t.setAttribute("sandbox","allow-same-origin allow-scripts"),this.#t.setAttribute("scrolling","no")}get element(){return this.#e}get document(){return this.#t.contentDocument}async load(e,n,r){if(typeof e!="string")throw new Error(`${e} is not string`);return new Promise(i=>{this.#t.addEventListener("load",()=>{let a=this.document;n?.(a),this.#t.style.display="block";let{vertical:o,rtl:s}=of(a),l=sf(a);this.#t.style.display="none",this.#i=o,this.#a=s,this.#n.selectNodeContents(a.body);let u=r?.({vertical:o,rtl:s,background:l});this.#t.style.display="block",this.render(u),new ResizeObserver(()=>this.expand()).observe(a.body),i()},{once:!0}),this.#t.src=e})}render(e){this.#o=e.flow!=="scrolled",this.#l=e,this.#o?this.columnize(e):this.scrolled(e)}scrolled({gap:e,columnWidth:n}){let r=this.#i,i=this.document;Object.assign(i.documentElement.style,{boxSizing:"border-box",padding:r?`${e}px 0`:`0 ${e}px`,columnWidth:"auto",height:"auto",width:"auto"}),Object.assign(i.body.style,{[r?"maxHeight":"maxWidth"]:`${n}px`,margin:"auto"}),this.setImageSize(),this.expand()}columnize({width:e,height:n,gap:r,columnWidth:i}){let a=this.#i;this.#s=a?n:e;let o=this.document;Object.assign(o.documentElement.style,{boxSizing:"border-box",columnWidth:`${i}px`,columnGap:`${r}px`,columnFill:"auto",...a?{width:`${e}px`}:{height:`${n}px`},padding:a?`${r/2}px 0`:`0 ${r/2}px`,overflow:"hidden",overflowWrap:"anywhere",position:"static",border:"0",margin:"0",maxHeight:"none",maxWidth:"none",minHeight:"none",minWidth:"none",webkitLineBoxContain:"block glyphs replaced"}),Object.assign(o.body.style,{maxHeight:"none",maxWidth:"none",margin:"0"}),this.setImageSize(),this.expand()}setImageSize(){let{width:e,height:n,margin:r}=this.#l,i=this.#i,a=this.document;for(let o of a.body.querySelectorAll("img, svg, video")){let{maxHeight:s,maxWidth:l}=a.defaultView.getComputedStyle(o);Object.assign(o.style,{maxHeight:i?s!=="none"&&s!=="0px"?s:"100%":`${n-r*2}px`,maxWidth:i?`${e-r*2}px`:l!=="none"&&l!=="0px"?l:"100%",objectFit:"contain",pageBreakInside:"avoid",breakInside:"avoid",boxSizing:"border-box"})}}expand(){if(this.#o){let e=this.#i?"height":"width",n=this.#i?"width":"height",r=this.#n.getBoundingClientRect()[e],a=Math.ceil(r/this.#s)*this.#s;this.#e.style.padding="0",this.#t.style[e]=`${a}px`,this.#e.style[e]=`${a}px`,this.#t.style[n]="100%",this.#e.style[n]="100%",this.document&&(this.document.documentElement.style[e]=`${a}px`),this.#r&&(this.#r.element.style.margin="0",this.#r.element.style[e]=`${a}px`,this.#r.redraw())}else{let e=this.#i?"width":"height",n=this.#i?"height":"width",a=this.document?.documentElement?.getBoundingClientRect()?.[e],{margin:o}=this.#l,s=this.#i?`0 ${o}px`:`${o}px 0`;this.#e.style.padding=s,this.#t.style[e]=`${a}px`,this.#e.style[e]=`${a}px`,this.#t.style[n]="100%",this.#e.style[n]="100%",this.#r&&(this.#r.element.style.margin=s,this.#r.element.style[e]=`${a}px`,this.#r.redraw())}}set overlayer(e){this.#r=e,this.#e.append(e.element)}get overlayer(){return this.#r}},jr=class{#e=document.createElement("div");#t=document.createElement("div");#n;#r=!1;#i=!1;#a=-1;#o=0;#s=!1;#l=new WeakMap;layout={margin:48,gap:40,maxColumnWidth:700};constructor({book:e,onLoad:n,onRelocated:r,createOverlayer:i}){this.sections=e.sections,this.onLoad=n,this.onRelocated=r,this.createOverlayer=i,Object.assign(this.#e.style,{boxSizing:"border-box",width:"100%",height:"100%",position:"absolute"}),this.#e.append(this.#t),Object.assign(this.#t.style,{width:"100%",height:"100%"}),new ResizeObserver(()=>this.render()).observe(this.#e),this.#t.addEventListener("scroll",Jd(()=>{this.scrolled&&this.#b("scroll")},250))}get element(){return this.#e}#d(){return this.#n&&this.#t.removeChild(this.#n.element),this.#n=new sa({container:this.#e}),this.#t.append(this.#n.element),this.#n}#c({vertical:e,rtl:n,background:r}){this.#r=e,this.#i=n,this.#e.style.background=r;let{flow:i,margin:a,gap:o,maxColumnWidth:s}=this.layout;if(i==="scrolled"){this.#e.setAttribute("dir",e?"rtl":"ltr"),this.#e.style.padding="0",this.#t.style.overflow="scroll";let g=this.layout.maxColumnWidth;return{flow:i,margin:a,gap:o,columnWidth:g}}let{width:l,height:u}=this.#t.getBoundingClientRect(),c=e?u:l,d=Math.ceil(c/s),f=c/d-o;this.#e.setAttribute("dir",n?"rtl":"ltr");let p=`${e?o:o/2}px`,b=`${e?a-o/2:a}px`;return this.#e.style.padding=`${b} ${p}`,this.#t.style.overflow="hidden",{height:u,width:l,margin:a,gap:o,columnWidth:f}}render(){this.#n&&(this.#n.render(this.#c({vertical:this.#r,rtl:this.#i})),this.#g())}get scrolled(){return this.layout.flow==="scrolled"}get scrollProp(){let{scrolled:e}=this;return this.#r?e?"scrollLeft":"scrollTop":e?"scrollTop":"scrollLeft"}get sideProp(){let{scrolled:e}=this;return this.#r?e?"width":"height":e?"height":"width"}get size(){return this.#t.getBoundingClientRect()[this.sideProp]}get viewSize(){return this.#n.element.getBoundingClientRect()[this.sideProp]}get start(){return Math.abs(this.#t[this.scrollProp])}get end(){return this.start+this.size}get page(){return Math.floor((this.start+this.end)/2/this.size)}get pages(){return Math.round(this.viewSize/this.size)}#u(){if(this.scrolled){let n=this.viewSize,r=this.layout.margin;return this.#r?({left:i,right:a})=>({left:n-a-r,right:n-i-r}):({top:i,bottom:a})=>({left:i+r,right:a+r})}let e=this.pages*this.size;return this.#i?({left:n,right:r})=>({left:e-r,right:e-n}):this.#r?({top:n,bottom:r})=>({left:n,right:r}):n=>n}async#h(e,n){if(this.scrolled){let i=this.#u()(e).left;return this.#f(i,n)}let r=this.#u()(e).left+this.layout.margin/2;return this.#p(Math.floor(r/this.size),n)}async#f(e,n){let r=this.#t,{scrollProp:i}=this;if(r[i]===e){this.#b(n);return}this.scrolled&&this.#r&&(e=-e),r[i]=e,this.#b(n)}async#p(e,n){let r=this.size*(this.#i?-e:e);return this.#f(r,n)}async#g(e){let n=Qd(this.#o).getBoundingClientRect?.();if(n){await this.#h(n,"anchor"),e&&this.#T();return}if(this.scrolled){await this.#f(this.#o*this.viewSize,"anchor");return}let{pages:r}=this;if(!r)return;let i=Math.round(this.#o*(r-1));await this.#p(i,"anchor")}#T(){let{defaultView:e}=this.#n.document;if(this.#o instanceof e.Range){let n=e.getSelection();n.removeAllRanges(),n.addRange(this.#o)}}#_(){return af(this.#n.document,this.start,this.end,this.#u(),this.scrolled)}#b(e){let n=this.#_();e!=="anchor"&&(this.#o=n);let r=this.#a;this.scrolled?this.onRelocated?.(n,r,this.end/this.viewSize):this.pages>0&&this.onRelocated?.(n,r,(this.page+1)/this.pages)}async#w(e){let{index:n,src:r,anchor:i,onLoad:a,select:o}=await e;if(this.#a=n,r){let s=this.#d(),l=d=>{if(d.head){let f=d.createElement("style");d.head.append(f),this.#l.set(d,f)}a?.(d,n)},u=this.#c.bind(this);await s.load(r,l,u);let c=this.createOverlayer?.(s.document,n);c&&(s.overlayer=c),this.#n=s}this.#o=(typeof i=="function"?i(this.#n.document):i)??0,await this.#g(o)}#v(e){return e>-1&&e0?this.#f(Math.max(0,this.start-this.size)):null;let e=this.page-1;return this.#v(e)?this.#p(e):null}scrollNext(){if(!this.#n)return null;if(this.scrolled)return this.viewSize-this.end>2?this.#f(Math.min(this.viewSize,this.end)):null;let e=this.page+1;return this.#v(e)?this.#p(e):null}#x(e){return e>=0&&e<=this.sections.length-1}async#y(e,n,r){if(this.#s)return;r&&(this.#s=!0);let i=e?.();if(i)await i;else{let{index:a,anchor:o,select:s}=await n;if(!this.#x(a))return this.#s=!1,null;if(a===this.#a)await this.#w({index:a,anchor:o,select:s});else{let l=this.#a,u=(...c)=>{this.sections[l]?.unload?.(),this.onLoad?.(...c)};await this.#w(Promise.resolve(this.sections[a].load()).then(c=>({index:a,src:c,anchor:o,onLoad:u,select:s})).catch(c=>({})))}}r&&(await Zd(100),this.#s=!1)}async goTo(e){return this.#y(null,e)}#m(e){for(let n=this.#a+e;this.#x(n);n+=e)if(this.sections[n]?.linear!=="no")return n}prev(){let e=this.#m(-1);return this.#y(()=>this.scrollPrev(),{index:e,anchor:()=>1},!0)}next(){let e=this.#m(1);return this.#y(()=>this.scrollNext(),{index:e},!0)}prevSection(){return this.goTo({index:this.#m(-1)})}nextSection(){return this.goTo({index:this.#m(1)})}firstSection(){let e=this.sections.findIndex(n=>n.linear!=="no");return this.goTo({index:e})}lastSection(){let e=this.sections.findLastIndex(n=>n.linear!=="no");return this.goTo({index:e})}getOverlayer(){if(this.#n)return{index:this.#a,overlayer:this.#n.overlayer,doc:this.#n.document}}setStyle(e){let n=this.#l.get(this.#n?.document);n&&(n.textContent=e)}async#C(e,n){this.#o=e,await this.#g(n)}};var Ns=t=>t?.split(/[,;\s]/)?.filter(e=>e)?.map(e=>e.split("=").map(n=>n.trim())),lf=(t,e)=>{if(t.documentElement.nodeName==="svg"){let[,,i,a]=t.documentElement.getAttribute("viewBox")?.split(/\s/)??[];return{width:i,height:a}}let n=Ns(t.querySelector('meta[name="viewport"]')?.getAttribute("content"));if(n)return Object.fromEntries(n);if(typeof e=="string")return Ns(e);if(e)return e;let r=t.querySelector("img");return r?{width:r.naturalWidth,height:r.naturalHeight}:{width:1e3,height:2e3}},la=class{#e=document.createElement("div");defaultViewport;spread;#t=!1;#n;#r;#i;#a;constructor(){Object.assign(this.#e.style,{width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"}),new ResizeObserver(()=>this.render()).observe(this.#e)}get element(){return this.#e}get side(){return this.#a}async#o(e){let n=document.createElement("div"),r=document.createElement("iframe");return n.append(r),Object.assign(r.style,{border:"0",display:"none",overflow:"hidden"}),r.setAttribute("scrolling","no"),r.classList.add("filter"),this.#e.append(n),e?new Promise(i=>{let a=()=>{r.removeEventListener("load",a),this.onLoad?.(r);let o=r.contentDocument,{width:s,height:l}=lf(o,this.defaultViewport);i({element:n,iframe:r,width:parseFloat(s),height:parseFloat(l)})};r.addEventListener("load",a),r.src=e}):{blank:!0,element:n,iframe:r}}render(e=this.#a){if(!e)return;let n=this.#n??{},r=this.#i??this.#r,i=e==="left"?n:r,{width:a,height:o}=this.#e.getBoundingClientRect(),s=this.spread!=="both"&&this.spread!=="portrait"&&o>a;this.#t=s;let l=n.width??r.width,u=n.height??r.height,c=s?Math.min(a/(i.width??l),o/(i.height??u)):Math.min(a/((n.width??l)+(r.width??l)),o/Math.max(n.height??u,r.height??u)),d=f=>{let{element:p,iframe:b,width:g,height:m}=f;Object.assign(b.style,{width:`${g}px`,height:`${m}px`,transform:`scale(${c})`,transformOrigin:"top left",display:"block"}),Object.assign(p.style,{width:`${(g??l)*c}px`,height:`${(m??u)*c}px`,overflow:"hidden",display:"block"}),s&&f!==i&&(p.style.display="none")};this.#i?d(this.#i):(d(n),d(r))}async showSpread({left:e,right:n,center:r,side:i}){this.#e.replaceChildren(),this.#n=null,this.#r=null,this.#i=null,r?(this.#i=await this.#o(r),this.#a="center",this.render()):(this.#n=await this.#o(e),this.#r=await this.#o(n),this.#a=i,this.render())}goLeft(){if(!this.#i){if(this.#n?.blank)return!0;if(this.#t&&this.#n?.element?.style?.display==="none")return this.#r.element.style.display="none",this.#n.element.style.display="block",this.#a="left",!0}}goRight(){if(!this.#i){if(this.#r?.blank)return!0;if(this.#t&&this.#r?.element?.style?.display==="none")return this.#n.element.style.display="none",this.#r.element.style.display="block",this.#a="right",!0}}},Hr=class{#e;#t=-1;#n=new la;constructor({book:e,onLoad:n,onRelocated:r}){this.book=e,this.onLoad=n,this.onRelocated=r;let{rendition:i}=e;this.#n.spread=i?.spread,this.#n.defaultViewport=i?.viewport;let a=e.dir==="rtl",o=!a;this.rtl=a,i?.spread==="none"?this.#e=e.sections.map(s=>({center:s})):this.#e=e.sections.reduce((s,l)=>{let u=s[s.length-1],{linear:c,pageSpread:d}=l;if(c==="no")return s;let f=()=>{let p={};return s.push(p),p};if(d==="center")f().center=l;else if(d==="left"){let p=u.center||u.left||o?f():u;p.left=l}else if(d==="right"){let p=u.center||u.right||a?f():u;p.right=l}else o?u.center||u.right?f().left=l:u.left?u.right=l:u.left=l:u.center||u.left?f().right=l:u.right?u.left=l:u.right=l;return s},[{}])}get element(){return this.#n.element}get index(){let e=this.#e[this.#t],n=e?.center??(this.#n.side==="left"?e.left??e.right:e.right??e.left);return this.book.sections.indexOf(n)}getSpreadOf(e){let n=this.#e;for(let r=0;rthis.#e.length-1)return;if(e===this.#t){this.#n.render(n);return}this.#t=e;let r=this.#e[e];if(r.center){let i=await r.center?.load?.();await this.#n.showSpread({center:i})}else{let i=await r.left?.load?.(),a=await r.right?.load?.();await this.#n.showSpread({left:i,right:a,side:n})}this.onRelocated?.(null,this.index,0,1)}async select(e){await this.goTo(e)}async goTo(e){let{book:n}=this,r=await e,i=n.sections[r.index];if(!i)return;let{index:a,side:o}=this.getSpreadOf(i);await this.goToSpread(a,o)}async next(){if(this.rtl?this.#n.goLeft():this.#n.goRight())this.onRelocated?.(null,this.index,0,1);else return this.goToSpread(this.#t+1,this.rtl?"right":"left")}async prev(){if(this.rtl?this.#n.goRight():this.#n.goLeft())this.onRelocated?.(null,this.index,0,1);else return this.goToSpread(this.#t-1,this.rtl?"left":"right")}};var zs=t=>t.replace(/\s+/g," "),cf=(t,{startIndex:e,startOffset:n,endIndex:r,endOffset:i})=>{let a=t[e],o=t[r],s=a===o?a.slice(n,i):a.slice(n)+t.slice(a+1,o).join("")+o.slice(0,i),l=zs(a.slice(0,n)).trimStart(),u=zs(o.slice(i)).trimEnd(),c=l.length<50?"":"\u2026",d=u.length<50?"":"\u2026",f=`${c}${l.slice(-50)}`,p=`${u.slice(0,50)}${d}`;return{pre:f,match:s,post:p}},uf=function*(t,e,n={}){let{locales:r="en",granularity:i="word",sensitivity:a="base"}=n,o,s;try{o=new Intl.Segmenter(r,{usage:"search",granularity:i}),s=new Intl.Collator(r,{sensitivity:a})}catch{o=new Intl.Segmenter("en",{usage:"search",granularity:i}),s=new Intl.Collator("en",{sensitivity:a})}let l=Array.from(o.segment(e)).length,u=[],c=0,d=o.segment(t[c])[Symbol.iterator]();e:for(;cp.segment).join("");if(s.compare(e,f)===0){let p=c,b=u[u.length-1],g=b.index+b.segment.length,m=u[0].strIndex,h=u[0].index,y={startIndex:m,startOffset:h,endIndex:p,endOffset:g};yield{range:y,excerpt:cf(t,y)}}u.shift()}},Bs=(t,e)=>{let{defalutLocale:n,matchCase:r,matchDiacritics:i,matchWholeWords:a}=e;return function*(o,s){let l=t(o,function*(u,c){for(let d of uf(u,s,{locales:o.body.lang||o.documentElement.lang||n||"en",granularity:a?"word":"grapheme",sensitivity:i&&r?"variant":i&&!r?"accent":!i&&r?"case":"base"})){let{startIndex:f,startOffset:p,endIndex:b,endOffset:g}=d.range;d.range=c(f,p,b,g),yield d}});for(let u of l)yield u}};var df=function*(t,e){let n=NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT|NodeFilter.SHOW_CDATA_SECTION,{FILTER_ACCEPT:r,FILTER_REJECT:i,FILTER_SKIP:a}=NodeFilter,o=d=>{let f=d.localName?.toLowerCase();return f==="script"||f==="style"?i:d.nodeType===1?a:r},s=t.createTreeWalker(t.body,n,{acceptNode:o}),l=[];for(let d=s.nextNode();d;d=s.nextNode())l.push(d);let u=l.map(d=>d.nodeValue),c=(d,f,p,b)=>{let g=t.createRange();return g.setStart(l[d],f),g.setEnd(l[p],b),g};for(let d of e(u,c))yield d};var Us=Object.fromEntries(Array.from(Object.entries({isRef:["annoref","biblioref","glossref","noteref"],isLink:["backlink"],isNote:["annotation","note","footnote","endnote","rearnote"]}),([t,e])=>[t,n=>n.getAttributeNS("http://www.idpf.org/2007/ops","type")?.split(/s/)?.some(r=>e.includes(r))])),Wr=class{#e;#t;#n;#r;language="en";textDirection="";isCJK=!1;isFixedLayout=!1;annotations=new Br({resolve:e=>this.resolveCFI(e),compare:Jn,onAdd:(e,n,r)=>{let i=this.#s(n);i&&this.#o(i.doc,i.overlayer,e);let a=this.#t.getProgress(n)?.label??"";this?.emit({type:"add-annotation",annotation:e,label:a,index:n,position:r})},onDelete:(e,n,r)=>{this.#s(n)?.overlayer?.remove(e),this?.emit({type:"delete-annotation",index:n,position:r})},onUpdate:(e,n)=>{let r=this.#s(n);r&&(r.overlayer.remove(e.value),this.#o(r.doc,r.overlayer,e))}});constructor(e,n){if(this.book=e,this.emit=n,e.metadata?.language)try{let r=e.metadata.language;e.metadata.language=Intl.getCanonicalLocales(r)[0];let i=typeof r=="string"?r:r[0],a=new Intl.Locale(i);this.isCJK=["zh","ja","kr"].includes(a.language),a.textInfo&&a.textInfo.direction&&(this.textDirection=a.textInfo.direction)}catch{}if(e.splitTOCHref&&e.getTOCFragment){let r=e.sections.map(o=>o.id);this.#e=new Nr(e.sections,150,1600);let i=e.splitTOCHref.bind(e),a=e.getTOCFragment.bind(e);this.#t=new er({toc:e.toc??[],ids:r,splitHref:i,getFragment:a}),this.#n=new er({toc:e.pageList??[],ids:r,splitHref:i,getFragment:a})}}async display(){let e={book:this.book,onLoad:this.#a.bind(this),onRelocated:this.#i.bind(this),createOverlayer:this.#l.bind(this)};return this.isFixedLayout=this.book.rendition?.layout==="pre-paginated",this.isFixedLayout?this.renderer=new Hr(e):this.renderer=new jr(e),this.renderer.element}async init({lastLocation:e,annotations:n}){if(e){let r=this.resolveNavigation(e);r?await this.renderer.goTo(r):await this.renderer.next()}else await this.renderer.next();if(n){n.sort((r,i)=>Jn(r.value,i.value));for(let r of n)await this.annotations.add(r,!0)}}#i(e,n,r){if(!this.#e)return;let i=this.#e.getProgress(n,r),a=this.#t.getProgress(n,e),o=this.#n.getProgress(n,e),s=this.getCFI(n,e);this.emit?.({type:"relocated",...i,tocItem:a,pageItem:o,cfi:s})}#a(e,n){let{book:r}=this;e.documentElement.lang||=this.language,e.documentElement.dir||=this.isCJK?"":this.textDirection,this.renderer.setStyle(this.#r);let i=r.sections[n];for(let a of e.querySelectorAll("a[href]"))a.addEventListener("click",o=>{o.preventDefault();let s=a.getAttribute("href"),l=i?.resolveHref?.(s)??s;if(r?.isExternal?.(l))this.emit?.({type:"external-link",uri:l});else if(Us.isRef(a)){let{index:u,anchor:c}=r.resolveHref(l);Promise.resolve(r.sections[u].createDocument()).then(d=>[c(d),d.contentType]).then(([d,f])=>[d?.innerHTML,f,Us.isNote(d)]).then(([d,f,p])=>d?this.emit?.({type:"reference",href:p?null:l,content:d,contentType:f,element:a}):null).catch(d=>{});return}else this.goTo(l)});this.emit?.({type:"loaded",doc:e,index:n})}#o(e,n,r){let{value:i}=r,a=this.annotations.getAnchor(i),o=e?a(e):a,[s,l]=this.emit({type:"draw-annotation",annotation:r});n.add(i,o,s,l)}#s(e){let n=this.renderer.getOverlayer();if(n.index===e)return n}#l(e,n){let r=new zr;for(let i of this.annotations.getByIndex(n))this.#o(e,r,i);return e.addEventListener("click",i=>{let[a,o]=r.hitTest(i);a&&this.emit?.({type:"show-annotation",value:a,range:o})},!1),r}async showAnnotation(e){let{value:n}=e,{index:r,anchor:i}=await this.goTo(n),{doc:a}=this.#s(r),o=i(a);this.emit?.({type:"show-annotation",value:n,range:o})}getCFI(e,n){if(!n)return"";let r=this.book.sections[e].cfi??oa.fromIndex(e);return Es(r,Ls(n))}resolveCFI(e){if(this.book.resolveCFI)return this.book.resolveCFI(e);{let n=Zt(e);return{index:oa.toIndex((n.parent??n).shift()),anchor:a=>Pr(a,n)}}}resolveNavigation(e){try{return typeof e=="number"?{index:e}:Qn.test(e)?this.resolveCFI(e):this.book.resolveHref(e)}catch{}}async goTo(e){let n=this.resolveNavigation(e);try{return await this.renderer.goTo(n),n}catch{}}async goToFraction(e){let[n,r]=this.#e.getSection(e);return this.renderer.goTo({index:n,anchor:r})}async select(e){try{let n=await this.resolveNavigation(e);await this.renderer.goTo({...n,select:!0})}catch{}}goLeft(){return this.book.dir==="rtl"?this.renderer.next():this.renderer.prev()}goRight(){return this.book.dir==="rtl"?this.renderer.prev():this.renderer.next()}setAppearance({layout:e,css:n}){this.isFixedLayout||(Object.assign(this.renderer.layout,e),this.#r=n,this.renderer.setStyle(n),this.renderer.render())}async*#d(e,n,r){let i=await this.book.sections[r].createDocument();for(let{range:a,excerpt:o}of e(i,n))yield{cfi:this.getCFI(r,a),excerpt:o}}async*#c(e,n){let{sections:r}=this.book;for(let[i,{createDocument:a}]of r.entries()){if(!a)continue;let o=await a(),s=Array.from(e(o,n),({range:u,excerpt:c})=>({cfi:this.getCFI(i,u),excerpt:c}));yield{progress:(i+1)/r.length},s.length&&(yield{index:i,subitems:s})}}async*search(e){let{query:n,index:r}=e,i=Bs(df,{defaultLocale:this.language,...e}),a=r!=null?this.#d(i,n,r):this.#c(i,n);for await(let o of a)yield"subitems"in o?{label:this.#t.getProgress(o.index)?.label??"",subitems:o.subitems}:o}};var ff=(t,e,n)=>{let r=document.createElement("ul");r.setAttribute("role","group"),r.setAttribute("aria-label",t);let i=new Map,a=o=>{n(o);let s=i.get(o);for(let l of r.children)l.setAttribute("aria-checked",l===s?"true":"false")};for(let[o,s]of e){let l=document.createElement("li");l.setAttribute("role","menuitemradio"),l.innerText=o,l.onclick=()=>a(s),i.set(s,l),r.append(l)}return{element:r,select:a}},$s=t=>{let e={},n=document.createElement("ul");n.setAttribute("role","menu");let r=()=>n.classList.remove("show"),i=a=>(...o)=>(r(),a(...o));for(let{name:a,label:o,type:s,items:l,onclick:u}of t){let c=s==="radio"?ff(o,l,i(u)):null;a&&(e[a]=c),n.append(c.element)}return window.addEventListener("blur",()=>r()),window.addEventListener("click",a=>{n.parentNode.contains(a.target)||r()}),{element:n,groups:e}};function tr(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():te}var Rg=tr();var Og=tr().PROD==="1",Dg=tr().PROD!=="1";var js=({entries:t,loadBlob:e,getSize:n},r)=>{let i=new Map,a=new Map,o=async d=>{if(i.has(d))return i.get(d);let f=URL.createObjectURL(await e(d)),p=URL.createObjectURL(new Blob([``],{type:"text/html"}));return a.set(d,[f,p]),i.set(d,p),p},s=d=>{a.get(d)?.forEach?.(f=>URL.revokeObjectURL(f)),a.delete(d),i.delete(d)},l=[".jpg",".jpeg",".png",".gif",".bmp",".webp",".svg"],u=t.map(d=>d.filename).filter(d=>l.some(f=>d.endsWith(f))).sort(),c={};return c.getCover=()=>e(u[0]),c.metadata={title:r.name},c.sections=u.map(d=>({id:d,load:()=>o(d),unload:()=>s(d),size:n(d)})),c.toc=u.map(d=>({label:d,href:d})),c.rendition={layout:"pre-paginated"},c.resolveHref=d=>({index:c.sections.findIndex(f=>f.id===d)}),c.splitTOCHref=d=>[d,null],c.getTOCFragment=d=>d.documentElement,c};var Hs=t=>t?.trim()?.replace(/\s{2,}/g," "),_t=t=>Hs(t?.textContent),qr={XLINK:"http://www.w3.org/1999/xlink",EPUB:"http://www.idpf.org/2007/ops"},Vr={XML:"application/xml",XHTML:"application/xhtml+xml"},Ot={strong:["strong","self"],emphasis:["em","self"],style:["span","self"],a:"anchor",strikethrough:["s","self"],sub:["sub","self"],sup:["sup","self"],code:["code","self"],image:"image"},hf={tr:["tr",["align"]],th:["th",["colspan","rowspan","align","valign"]],td:["td",["colspan","rowspan","align","valign"]]},Ws={epigraph:["blockquote"],subtitle:["h2",Ot],"text-author":["p",Ot],date:["p",Ot],stanza:"stanza"},Kr={title:["header",{p:["h1",Ot],"empty-line":["br"]}],epigraph:["blockquote","self"],image:"image",annotation:["aside"],section:["section","self"],p:["p",Ot],poem:["blockquote",Ws],subtitle:["h2",Ot],cite:["blockquote","self"],"empty-line":["br"],table:["table",hf],"text-author":["p",Ot]};Ws.epigraph.push(Kr);var pf={image:"image",title:["section",{p:["h1",Ot],"empty-line":["br"]}],epigraph:["section",Kr],section:["section",Kr]},qs=t=>{let e=t.getAttributeNS(qr.XLINK,"href"),[,n]=e.split("#"),r=t.getRootNode().getElementById(n);return r?`data:${r.getAttribute("content-type")};base64,${r.textContent}`:e},ua=class{constructor(e){this.fb2=e,this.doc=document.implementation.createDocument(qr.XHTML,"html")}image(e){let n=this.doc.createElement("img");return n.alt=e.getAttribute("alt"),n.title=e.getAttribute("title"),n.setAttribute("src",qs(e)),n}anchor(e){let n=this.convert(e,{a:["a",Ot]});return n.setAttribute("href",e.getAttributeNS(qr.XLINK,"href")),e.getAttribute("type")==="note"&&n.setAttributeNS(qr.EPUB,"epub:type","noteref"),n}stanza(e){let n=this.convert(e,{stanza:["p",{title:["header",{p:["strong",Ot],"empty-line":["br"]}],subtitle:["p",Ot]}]});for(let r of e.children)r.nodeName==="v"&&(n.append(this.doc.createTextNode(r.textContent)),n.append(this.doc.createElement("br")));return n}convert(e,n){if(e.nodeType===3)return this.doc.createTextNode(e.textContent);if(e.nodeType===4)return this.doc.createCDATASection(e.textContent);if(e.nodeType===8)return this.doc.createComment(e.textContent);let r=n?.[e.nodeName];if(!r)return null;if(typeof r=="string")return this[r](e);let[i,a]=r,o=this.doc.createElement(i);if(e.id&&(o.id=e.id),o.classList.add(e.nodeName),Array.isArray(a))for(let u of a)o.setAttribute(u,e.getAttribute(u));let s=a==="self"?n:Array.isArray(a)?null:a,l=e.firstChild;for(;l;){let u=this.convert(l,s);u&&o.append(u),l=l.nextSibling}return o}},mf=async t=>{let e=await t.arrayBuffer(),n=new TextDecoder("utf-8").decode(e),r=new DOMParser,i=r.parseFromString(n,Vr.XML),a=i.xmlEncoding||n.match(/^<\?xml\s+version\s*=\s*["']1.\d+"\s+encoding\s*=\s*["']([A-Za-z0-9._-]*)["']/)?.[1];if(a&&a.toLowerCase()!=="utf-8"){let o=new TextDecoder(a).decode(e);return r.parseFromString(o,Vr.XML)}return i},gf=URL.createObjectURL(new Blob([` +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"chrome_zip"};var Ud=(t,e)=>t.map((n,r,i)=>e(n,r,i)?r:null).filter(n=>n!=null),Ss=(t,e)=>[-1,...e,t.length].reduce(({xs:n,a:r},i)=>({xs:n?.concat([t.slice(r+1,i)])??[],a:i}),{}).xs,$d=(t,e)=>t.slice(0,-1).concat([t[t.length-1].concat(e[0])]).concat(e.slice(1)),ta=/\d/,Qn=/^epubcfi\((.*)\)$/,Cs=t=>t.replace(/[\^[\](),;=]/g,"^$&"),jd=t=>Qn.test(t)?t:`epubcfi(${t})`,Hd=t=>t.match(Qn)?.[1]??t,Wd=t=>(...e)=>`epubcfi(${t(...e.map(n=>n.match(Qn)?.[1]??n))})`,Es=Wd((...t)=>t.join("!")),qd=t=>{let e=[],n,r,i="",a=s=>(e.push(s),n=null,i=""),o=s=>(i+=s,r=!1);for(let s of Array.from(t.trim()).concat("")){if(s==="^"&&!r){r=!0;continue}if(n==="!")a(["!"]);else if(n===",")a([","]);else if(n==="/"||n===":")if(ta.test(s)){o(s);continue}else a([n,parseInt(i)]);else if(n==="~")if(ta.test(s)||s==="."){o(s);continue}else a(["~",parseFloat(i)]);else if(n==="@"){if(s===":"){a(["@",parseFloat(i)]),n="@";continue}if(ta.test(s)||s==="."){o(s);continue}else a(["@",parseFloat(i)])}else if(n==="["){s===";"&&!r?(a(["[",i]),n=";"):s===","&&!r?(a(["[",i]),n="["):s==="]"&&!r?a(["[",i]):o(s);continue}else if(n?.startsWith(";")){s==="="&&!r?(n=`;${i}`,i=""):s===";"&&!r?(a([n,i]),n=";"):s==="]"&&!r?a([n,i]):o(s);continue}(s==="/"||s===":"||s==="~"||s==="@"||s==="["||s==="!"||s===",")&&(n=s)}return e},As=(t,e)=>Ud(t,([n])=>n===e),Vd=t=>{let e=[],n;for(let[r,i]of t){if(r==="/")e.push({index:i});else{let a=e[e.length-1];if(r===":")a.offset=i;else if(r==="~")a.temporal=i;else if(r==="@")a.spatial=(a.spatial??[]).concat(i);else if(r===";s")a.side=i;else if(r==="[")if(n==="/"&&i)a.id=i;else{a.text=(a.text??[]).concat(i);continue}}n=r}return e},ks=t=>Ss(t,As(t,"!")).map(Vd),Zt=t=>{let e=qd(Hd(t)),n=As(e,",");if(!n.length)return ks(e);let[r,i,a]=Ss(e,n).map(ks);return{parent:r,start:i,end:a}},Kd=({index:t,id:e,offset:n,temporal:r,spatial:i,text:a,side:o})=>{let s=o?`;s=${o}`:"";return`/${t}`+(e?`[${Cs(e)}${s}]`:"")+(n!=null&&t%2?`:${n}`:"")+(r?`~${r}`:"")+(i?`@${i.join(":")}`:"")+(a||!e&&o?"["+(a?.map(Cs)?.join(",")??"")+s+"]":"")},Ms=t=>t.parent?[t.parent,t.start,t.end].map(Ms).join(","):t.map(e=>e.map(Kd).join("")).join("!"),Ir=t=>jd(Ms(t)),Ut=(t,e)=>typeof t=="string"?Ir(Ut(Zt(t),e)):t.parent?$d(t.parent,t[e?"end":"start"]):t,Gd=(t,e)=>{typeof t=="string"&&(t=Zt(t)),typeof e=="string"&&(e=Zt(e)),t=Ut(t),e=Ut(e,!0);let n=t[t.length-1],r=e[e.length-1],i=[],a=[],o=[],s=!0,l=Math.max(n.length,r.length);for(let c=0;c{if(typeof t=="string"&&(t=Zt(t)),typeof e=="string"&&(e=Zt(e)),t.start||e.start)return Jn(Ut(t),Ut(e))||Jn(Ut(t,!0),Ut(e,!0));for(let n=0;nl.index)return 1;if(s.indexl.offset)return 1;if(s.offsett===3||t===4,Dr=({nodeType:t})=>t===1,ia=t=>{let e=Array.from(t.childNodes).filter(n=>na(n)||Dr(n)).reduce((n,r)=>{let i=n[n.length-1];return i?na(r)?Array.isArray(i)?i.push(r):na(i)?n[n.length-1]=[i,r]:n.push(r):Dr(i)?n.push(null,r):n.push(r):n.push(r),n},[]);return Dr(e[0])&&e.unshift("first"),Dr(e[e.length-1])&&e.push("last"),e.unshift("before"),e.push("after"),e},Xd=(t,e)=>t?ia(t)[e]:null,ra=(t,e)=>{let{id:n}=e[e.length-1];if(n){let a=t.ownerDocument.getElementById(n);if(a)return{node:a,offset:0}}for(let{index:a}of e){let o=Xd(t,a);if(o==="first")return{node:t.firstChild??t};if(o==="last")return{node:t.lastChild??t};if(o==="before")return{node:t,before:!0};if(o==="after")return{node:t,after:!0};t=o}let{offset:r}=e[e.length-1];if(!Array.isArray(t))return{node:t,offset:r};let i=0;for(let a of t){let{length:o}=a.nodeValue;if(i+o>=r)return{node:a,offset:r-i};i+=o}},Fr=(t,e)=>{let{parentNode:n,id:r}=t,i=ia(n),a=i.findIndex(l=>Array.isArray(l)?l.some(u=>u===t):l===t),o=i[a];if(Array.isArray(o)){let l=0;for(let u of o)if(u===t){l+=e;break}else l+=u.nodeValue.length;e=l}let s={id:r,index:a,offset:e};return n!==t.ownerDocument.documentElement?Fr(n).concat(s):[s]},Ls=t=>{let{startContainer:e,startOffset:n,endContainer:r,endOffset:i}=t,a=Fr(e,n);if(t.collapsed)return Ir([a]);let o=Fr(r,i);return Gd([a],[o])},Pr=(t,e)=>{let n=Ut(e),r=Ut(e,!0),i=t.documentElement,a=ra(i,n[0]),o=ra(i,r[0]),s=t.createRange();return a.before?s.setStartBefore(a.node):a.after?s.setStartAfter(a.node):s.setStart(a.node,a.offset),o.before?s.setEndBefore(o.node):o.after?s.setEndAfter(o.node):s.setEnd(o.node,o.offset),s},Rs=t=>{let e=[],{parentNode:n}=t[0],r=Fr(n);for(let[i,a]of ia(n).entries()){let o=t[e.length];a===o&&e.push(Ir([r.concat({id:o.id,index:i})]))}return e},aa=(t,e)=>ra(t.documentElement,Ut(e)).node,oa={fromIndex:t=>`/6/${(t+1)*2}`,toIndex:t=>t?.at(-1).index/2-1};var Yd=t=>{let e=0,n=r=>{if(r.id=e++,r.subitems)for(let i of r.subitems)n(i)};for(let r of t)n(r);return t},Ds=t=>t.map(e=>e.subitems?.length?[e,Ds(e.subitems)].flat():e).flat(),er=class{constructor({toc:e,ids:n,splitHref:r,getFragment:i}){Yd(e);let a=Ds(e),o=new Map;for(let[l,u]of a.entries()){let[c,d]=r(u?.href)??[],f={fragment:d,item:u};o.has(c)?o.get(c).items.push(f):o.set(c,{prev:a[l-1],items:[f]})}let s=new Map;for(let[l,u]of n.entries())o.has(u)?s.set(u,o.get(u)):s.set(u,s.get(n[l-1]));this.ids=n,this.map=s,this.getFragment=i}getProgress(e,n){let r=this.ids[e],i=this.map.get(r);if(!i)return null;let{prev:a,items:o}=i;if(!o)return a;if(!n||o.length===1&&!o[0].fragment)return o[0].item;let s=n.startContainer.getRootNode();for(let[l,{fragment:u}]of o.entries()){let c=this.getFragment(s,u);if(c&&n.comparePoint(c,0)>0)return o[l-1]?.item??a}return o[o.length-1].item}},Nr=class{constructor(e,n,r){this.sizes=e.map(i=>i.linear==="no"?0:i.size),this.sizePerLoc=n,this.sizePerTimeUnit=r,this.sizeTotal=this.sizes.reduce((i,a)=>i+a,0)}getProgress(e,n){let{sizes:r,sizePerLoc:i,sizePerTimeUnit:a,sizeTotal:o}=this,s=r[e]??0,u=r.slice(0,e).reduce((f,p)=>f+p,0)+n*s,c=o-u,d=(1-n)*s;return{fraction:u/o,section:{current:e,total:r.length},location:{current:Math.floor(u/i),total:Math.ceil(o/i)},time:{section:d/a,total:c/a}}}getSection(e){let{sizes:n,sizeTotal:r}=this,i=e*r,a=-1,o=0,s=0;for(let[l,u]of n.entries()){let c=s+u;if(c>i){a=l,o=(i-s)/u;break}s=c}return[a,o]}};var Mn=t=>document.createElementNS("http://www.w3.org/2000/svg",t),zr=class{#e=Mn("svg");#t=new Map;constructor(){Object.assign(this.#e.style,{position:"absolute",top:"0",left:"0",width:"100%",height:"100%",pointerEvents:"none"});let e=matchMedia("(prefers-color-scheme: dark)"),n=()=>this.#e.style.mixBlendMode=e.matches?"normal":"multiply";e.addEventListener("change",n),n()}get element(){return this.#e}add(e,n,r,i){this.#t.has(e)&&this.remove(e),typeof n=="function"&&(n=n(this.#e.getRootNode()));let a=n.getClientRects(),o=r(a,i);this.#e.append(o),this.#t.set(e,{range:n,draw:r,options:i,element:o,rects:a})}remove(e){this.#t.has(e)&&(this.#e.removeChild(this.#t.get(e).element),this.#t.delete(e))}redraw(){for(let e of this.#t.values()){let{range:n,draw:r,options:i,element:a}=e;this.#e.removeChild(a);let o=n.getClientRects(),s=r(o,i);this.#e.append(s),e.element=s,e.rects=o}}hitTest({x:e,y:n}){let r=Array.from(this.#t.entries());for(let i=r.length-1;i>=0;i--){let[a,o]=r[i];for(let{left:s,top:l,right:u,bottom:c}of o.rects)if(l<=n&&s<=e&&c>n&&u>e)return[a,o.range]}return[]}static underline(e,n={}){let{color:r="red",width:i=2}=n,a=Mn("g");a.setAttribute("fill",r);for(let{left:o,bottom:s,width:l}of e){let u=Mn("rect");u.setAttribute("x",o),u.setAttribute("y",s-i),u.setAttribute("height",i),u.setAttribute("width",l),a.append(u)}return a}static highlight(e,n={}){let{color:r="red"}=n,i=Mn("g");i.setAttribute("fill",r),i.setAttribute("fill-opacity",.3);for(let{left:a,top:o,height:s,width:l}of e){let u=Mn("rect");u.setAttribute("x",a),u.setAttribute("y",o),u.setAttribute("height",s),u.setAttribute("width",l),i.append(u)}return i}static copyImage([e],n={}){let{src:r}=n,i=Mn("image"),{left:a,top:o,height:s,width:l}=e;return i.setAttribute("href",r),i.setAttribute("x",a),i.setAttribute("y",o),i.setAttribute("height",s),i.setAttribute("width",l),i}};var Br=class{#e=new Map;#t=new Map;#n=new Map;#r=new Map;constructor({resolve:e,compare:n,onAdd:r,onDelete:i,onUpdate:a}){this.resolve=e,this.compare=n,this.onAdd=r,this.onDelete=i,this.onUpdate=a}async add(e,n){let{value:r}=e;if(this.#t.has(r))return;let{index:i,anchor:a}=await this.resolve(r);if(this.#t.set(r,e),this.#r.set(r,i),this.#n.set(r,a),this.#e.has(i)){let o=this.#e.get(i);if(n)o.push(e),this.onAdd?.(e,i,o.length-1);else{let s=0;for(let l=0;la.value===e);r.splice(i,1),this.#t.delete(e),this.#r.delete(e),this.#n.delete(e),this.onDelete?.(e,n,i)}getByIndex(e){return this.#e.get(e)??[]}getAnchor(e){return this.#n.get(e)}};var Zd=t=>new Promise(e=>setTimeout(e,t)),Jd=(t,e,n)=>{let r;return(...i)=>{let a=()=>{r=null,n||t(...i)},o=n&&!r;r&&clearTimeout(r),r=setTimeout(a,e),o&&t(...i)}},Qd=t=>{if(!t?.collapsed)return t;let{endOffset:e,endContainer:n}=t;if(n.nodeType===1)return n;if(e+11)t.setStart(n,e-1);else return n.parentNode;return t},Ur=(t,e,n,r=n)=>{let i=t.createRange();return i.setStart(e,n),i.setEnd(e,r),i},$r=(t,e,n,r=0,i=e.nodeValue.length)=>{if(i-r===1)return n(Ur(t,e,r),Ur(t,e,i))<0?r:i;let a=Math.floor(r+(i-r)/2),o=n(Ur(t,e,r,a),Ur(t,e,a,i));return o<0?$r(t,e,n,r,a):o>0?$r(t,e,n,a,i):a},{SHOW_ELEMENT:ef,SHOW_TEXT:tf,SHOW_CDATA_SECTION:nf,FILTER_ACCEPT:Fs,FILTER_REJECT:Is,FILTER_SKIP:Ps}=NodeFilter,rf=ef|tf|nf,af=(t,e,n,r)=>{let i=f=>{let p=f.localName?.toLowerCase();if(p==="script"||p==="style")return Is;if(f.nodeType===1){let{left:b,right:g}=r(f.getBoundingClientRect());if(gn)return Is;if(b>=e&&g<=n)return Fs}else{if(!f.nodeValue?.trim())return Ps;let b=t.createRange();b.selectNodeContents(f);let{left:g,right:m}=r(b.getBoundingClientRect());if(m>=e&&g<=n)return Fs}return Ps},a=t.createTreeWalker(t.body,rf,{acceptNode:i}),o=[];for(let f=a.nextNode();f;f=a.nextNode())o.push(f);let s=o[0]??t.body,l=o[o.length-1]??s,u=s.nodeType===1?0:$r(t,s,(f,p)=>{let b=r(f.getBoundingClientRect()),g=r(p.getBoundingClientRect());return b.righte?0:g.left>e?-1:1}),c=l.nodeType===1?0:$r(t,l,(f,p)=>{let b=r(f.getBoundingClientRect()),g=r(p.getBoundingClientRect());return b.rightn?0:g.left>n?-1:1}),d=t.createRange();return d.setStart(s,u),d.setEnd(l,c),d},of=t=>{let{defaultView:e}=t,{writingMode:n,direction:r}=e.getComputedStyle(t.body),i=n==="vertical-rl"||n==="vertical-lr",a=t.body.dir==="rtl"||r==="rtl"||t.documentElement.dir==="rtl";return{vertical:i,rtl:a}},sf=t=>{let e=t.defaultView.getComputedStyle(t.body);return e.backgroundColor==="rgba(0, 0, 0, 0)"&&e.backgroundImage==="none"?t.defaultView.getComputedStyle(t.documentElement).background:e.background},sa=class{#e=document.createElement("div");#t=document.createElement("iframe");#n=document.createRange();#r;#i=!1;#a=!1;#o=!0;#s;#l={};constructor({container:e}){this.container=e,this.#t.classList.add("filter"),this.#e.append(this.#t),Object.assign(this.#e.style,{position:"relative",overflow:"hidden",flex:"0 0 auto",width:"100%",height:"100%"}),Object.assign(this.#t.style,{overflow:"hidden",border:"0",display:"none",width:"100%",height:"100%"}),this.#t.setAttribute("sandbox","allow-same-origin allow-scripts"),this.#t.setAttribute("scrolling","no")}get element(){return this.#e}get document(){return this.#t.contentDocument}async load(e,n,r){if(typeof e!="string")throw new Error(`${e} is not string`);return new Promise(i=>{this.#t.addEventListener("load",()=>{let a=this.document;n?.(a),this.#t.style.display="block";let{vertical:o,rtl:s}=of(a),l=sf(a);this.#t.style.display="none",this.#i=o,this.#a=s,this.#n.selectNodeContents(a.body);let u=r?.({vertical:o,rtl:s,background:l});this.#t.style.display="block",this.render(u),new ResizeObserver(()=>this.expand()).observe(a.body),i()},{once:!0}),this.#t.src=e})}render(e){this.#o=e.flow!=="scrolled",this.#l=e,this.#o?this.columnize(e):this.scrolled(e)}scrolled({gap:e,columnWidth:n}){let r=this.#i,i=this.document;Object.assign(i.documentElement.style,{boxSizing:"border-box",padding:r?`${e}px 0`:`0 ${e}px`,columnWidth:"auto",height:"auto",width:"auto"}),Object.assign(i.body.style,{[r?"maxHeight":"maxWidth"]:`${n}px`,margin:"auto"}),this.setImageSize(),this.expand()}columnize({width:e,height:n,gap:r,columnWidth:i}){let a=this.#i;this.#s=a?n:e;let o=this.document;Object.assign(o.documentElement.style,{boxSizing:"border-box",columnWidth:`${i}px`,columnGap:`${r}px`,columnFill:"auto",...a?{width:`${e}px`}:{height:`${n}px`},padding:a?`${r/2}px 0`:`0 ${r/2}px`,overflow:"hidden",overflowWrap:"anywhere",position:"static",border:"0",margin:"0",maxHeight:"none",maxWidth:"none",minHeight:"none",minWidth:"none",webkitLineBoxContain:"block glyphs replaced"}),Object.assign(o.body.style,{maxHeight:"none",maxWidth:"none",margin:"0"}),this.setImageSize(),this.expand()}setImageSize(){let{width:e,height:n,margin:r}=this.#l,i=this.#i,a=this.document;for(let o of a.body.querySelectorAll("img, svg, video")){let{maxHeight:s,maxWidth:l}=a.defaultView.getComputedStyle(o);Object.assign(o.style,{maxHeight:i?s!=="none"&&s!=="0px"?s:"100%":`${n-r*2}px`,maxWidth:i?`${e-r*2}px`:l!=="none"&&l!=="0px"?l:"100%",objectFit:"contain",pageBreakInside:"avoid",breakInside:"avoid",boxSizing:"border-box"})}}expand(){if(this.#o){let e=this.#i?"height":"width",n=this.#i?"width":"height",r=this.#n.getBoundingClientRect()[e],a=Math.ceil(r/this.#s)*this.#s;this.#e.style.padding="0",this.#t.style[e]=`${a}px`,this.#e.style[e]=`${a}px`,this.#t.style[n]="100%",this.#e.style[n]="100%",this.document&&(this.document.documentElement.style[e]=`${a}px`),this.#r&&(this.#r.element.style.margin="0",this.#r.element.style[e]=`${a}px`,this.#r.redraw())}else{let e=this.#i?"width":"height",n=this.#i?"height":"width",a=this.document?.documentElement?.getBoundingClientRect()?.[e],{margin:o}=this.#l,s=this.#i?`0 ${o}px`:`${o}px 0`;this.#e.style.padding=s,this.#t.style[e]=`${a}px`,this.#e.style[e]=`${a}px`,this.#t.style[n]="100%",this.#e.style[n]="100%",this.#r&&(this.#r.element.style.margin=s,this.#r.element.style[e]=`${a}px`,this.#r.redraw())}}set overlayer(e){this.#r=e,this.#e.append(e.element)}get overlayer(){return this.#r}},jr=class{#e=document.createElement("div");#t=document.createElement("div");#n;#r=!1;#i=!1;#a=-1;#o=0;#s=!1;#l=new WeakMap;layout={margin:48,gap:40,maxColumnWidth:700};constructor({book:e,onLoad:n,onRelocated:r,createOverlayer:i}){this.sections=e.sections,this.onLoad=n,this.onRelocated=r,this.createOverlayer=i,Object.assign(this.#e.style,{boxSizing:"border-box",width:"100%",height:"100%",position:"absolute"}),this.#e.append(this.#t),Object.assign(this.#t.style,{width:"100%",height:"100%"}),new ResizeObserver(()=>this.render()).observe(this.#e),this.#t.addEventListener("scroll",Jd(()=>{this.scrolled&&this.#b("scroll")},250))}get element(){return this.#e}#d(){return this.#n&&this.#t.removeChild(this.#n.element),this.#n=new sa({container:this.#e}),this.#t.append(this.#n.element),this.#n}#c({vertical:e,rtl:n,background:r}){this.#r=e,this.#i=n,this.#e.style.background=r;let{flow:i,margin:a,gap:o,maxColumnWidth:s}=this.layout;if(i==="scrolled"){this.#e.setAttribute("dir",e?"rtl":"ltr"),this.#e.style.padding="0",this.#t.style.overflow="scroll";let g=this.layout.maxColumnWidth;return{flow:i,margin:a,gap:o,columnWidth:g}}let{width:l,height:u}=this.#t.getBoundingClientRect(),c=e?u:l,d=Math.ceil(c/s),f=c/d-o;this.#e.setAttribute("dir",n?"rtl":"ltr");let p=`${e?o:o/2}px`,b=`${e?a-o/2:a}px`;return this.#e.style.padding=`${b} ${p}`,this.#t.style.overflow="hidden",{height:u,width:l,margin:a,gap:o,columnWidth:f}}render(){this.#n&&(this.#n.render(this.#c({vertical:this.#r,rtl:this.#i})),this.#g())}get scrolled(){return this.layout.flow==="scrolled"}get scrollProp(){let{scrolled:e}=this;return this.#r?e?"scrollLeft":"scrollTop":e?"scrollTop":"scrollLeft"}get sideProp(){let{scrolled:e}=this;return this.#r?e?"width":"height":e?"height":"width"}get size(){return this.#t.getBoundingClientRect()[this.sideProp]}get viewSize(){return this.#n.element.getBoundingClientRect()[this.sideProp]}get start(){return Math.abs(this.#t[this.scrollProp])}get end(){return this.start+this.size}get page(){return Math.floor((this.start+this.end)/2/this.size)}get pages(){return Math.round(this.viewSize/this.size)}#u(){if(this.scrolled){let n=this.viewSize,r=this.layout.margin;return this.#r?({left:i,right:a})=>({left:n-a-r,right:n-i-r}):({top:i,bottom:a})=>({left:i+r,right:a+r})}let e=this.pages*this.size;return this.#i?({left:n,right:r})=>({left:e-r,right:e-n}):this.#r?({top:n,bottom:r})=>({left:n,right:r}):n=>n}async#h(e,n){if(this.scrolled){let i=this.#u()(e).left;return this.#f(i,n)}let r=this.#u()(e).left+this.layout.margin/2;return this.#p(Math.floor(r/this.size),n)}async#f(e,n){let r=this.#t,{scrollProp:i}=this;if(r[i]===e){this.#b(n);return}this.scrolled&&this.#r&&(e=-e),r[i]=e,this.#b(n)}async#p(e,n){let r=this.size*(this.#i?-e:e);return this.#f(r,n)}async#g(e){let n=Qd(this.#o).getBoundingClientRect?.();if(n){await this.#h(n,"anchor"),e&&this.#T();return}if(this.scrolled){await this.#f(this.#o*this.viewSize,"anchor");return}let{pages:r}=this;if(!r)return;let i=Math.round(this.#o*(r-1));await this.#p(i,"anchor")}#T(){let{defaultView:e}=this.#n.document;if(this.#o instanceof e.Range){let n=e.getSelection();n.removeAllRanges(),n.addRange(this.#o)}}#_(){return af(this.#n.document,this.start,this.end,this.#u(),this.scrolled)}#b(e){let n=this.#_();e!=="anchor"&&(this.#o=n);let r=this.#a;this.scrolled?this.onRelocated?.(n,r,this.end/this.viewSize):this.pages>0&&this.onRelocated?.(n,r,(this.page+1)/this.pages)}async#w(e){let{index:n,src:r,anchor:i,onLoad:a,select:o}=await e;if(this.#a=n,r){let s=this.#d(),l=d=>{if(d.head){let f=d.createElement("style");d.head.append(f),this.#l.set(d,f)}a?.(d,n)},u=this.#c.bind(this);await s.load(r,l,u);let c=this.createOverlayer?.(s.document,n);c&&(s.overlayer=c),this.#n=s}this.#o=(typeof i=="function"?i(this.#n.document):i)??0,await this.#g(o)}#v(e){return e>-1&&e0?this.#f(Math.max(0,this.start-this.size)):null;let e=this.page-1;return this.#v(e)?this.#p(e):null}scrollNext(){if(!this.#n)return null;if(this.scrolled)return this.viewSize-this.end>2?this.#f(Math.min(this.viewSize,this.end)):null;let e=this.page+1;return this.#v(e)?this.#p(e):null}#x(e){return e>=0&&e<=this.sections.length-1}async#y(e,n,r){if(this.#s)return;r&&(this.#s=!0);let i=e?.();if(i)await i;else{let{index:a,anchor:o,select:s}=await n;if(!this.#x(a))return this.#s=!1,null;if(a===this.#a)await this.#w({index:a,anchor:o,select:s});else{let l=this.#a,u=(...c)=>{this.sections[l]?.unload?.(),this.onLoad?.(...c)};await this.#w(Promise.resolve(this.sections[a].load()).then(c=>({index:a,src:c,anchor:o,onLoad:u,select:s})).catch(c=>({})))}}r&&(await Zd(100),this.#s=!1)}async goTo(e){return this.#y(null,e)}#m(e){for(let n=this.#a+e;this.#x(n);n+=e)if(this.sections[n]?.linear!=="no")return n}prev(){let e=this.#m(-1);return this.#y(()=>this.scrollPrev(),{index:e,anchor:()=>1},!0)}next(){let e=this.#m(1);return this.#y(()=>this.scrollNext(),{index:e},!0)}prevSection(){return this.goTo({index:this.#m(-1)})}nextSection(){return this.goTo({index:this.#m(1)})}firstSection(){let e=this.sections.findIndex(n=>n.linear!=="no");return this.goTo({index:e})}lastSection(){let e=this.sections.findLastIndex(n=>n.linear!=="no");return this.goTo({index:e})}getOverlayer(){if(this.#n)return{index:this.#a,overlayer:this.#n.overlayer,doc:this.#n.document}}setStyle(e){let n=this.#l.get(this.#n?.document);n&&(n.textContent=e)}async#C(e,n){this.#o=e,await this.#g(n)}};var Ns=t=>t?.split(/[,;\s]/)?.filter(e=>e)?.map(e=>e.split("=").map(n=>n.trim())),lf=(t,e)=>{if(t.documentElement.nodeName==="svg"){let[,,i,a]=t.documentElement.getAttribute("viewBox")?.split(/\s/)??[];return{width:i,height:a}}let n=Ns(t.querySelector('meta[name="viewport"]')?.getAttribute("content"));if(n)return Object.fromEntries(n);if(typeof e=="string")return Ns(e);if(e)return e;let r=t.querySelector("img");return r?{width:r.naturalWidth,height:r.naturalHeight}:{width:1e3,height:2e3}},la=class{#e=document.createElement("div");defaultViewport;spread;#t=!1;#n;#r;#i;#a;constructor(){Object.assign(this.#e.style,{width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"}),new ResizeObserver(()=>this.render()).observe(this.#e)}get element(){return this.#e}get side(){return this.#a}async#o(e){let n=document.createElement("div"),r=document.createElement("iframe");return n.append(r),Object.assign(r.style,{border:"0",display:"none",overflow:"hidden"}),r.setAttribute("scrolling","no"),r.classList.add("filter"),this.#e.append(n),e?new Promise(i=>{let a=()=>{r.removeEventListener("load",a),this.onLoad?.(r);let o=r.contentDocument,{width:s,height:l}=lf(o,this.defaultViewport);i({element:n,iframe:r,width:parseFloat(s),height:parseFloat(l)})};r.addEventListener("load",a),r.src=e}):{blank:!0,element:n,iframe:r}}render(e=this.#a){if(!e)return;let n=this.#n??{},r=this.#i??this.#r,i=e==="left"?n:r,{width:a,height:o}=this.#e.getBoundingClientRect(),s=this.spread!=="both"&&this.spread!=="portrait"&&o>a;this.#t=s;let l=n.width??r.width,u=n.height??r.height,c=s?Math.min(a/(i.width??l),o/(i.height??u)):Math.min(a/((n.width??l)+(r.width??l)),o/Math.max(n.height??u,r.height??u)),d=f=>{let{element:p,iframe:b,width:g,height:m}=f;Object.assign(b.style,{width:`${g}px`,height:`${m}px`,transform:`scale(${c})`,transformOrigin:"top left",display:"block"}),Object.assign(p.style,{width:`${(g??l)*c}px`,height:`${(m??u)*c}px`,overflow:"hidden",display:"block"}),s&&f!==i&&(p.style.display="none")};this.#i?d(this.#i):(d(n),d(r))}async showSpread({left:e,right:n,center:r,side:i}){this.#e.replaceChildren(),this.#n=null,this.#r=null,this.#i=null,r?(this.#i=await this.#o(r),this.#a="center",this.render()):(this.#n=await this.#o(e),this.#r=await this.#o(n),this.#a=i,this.render())}goLeft(){if(!this.#i){if(this.#n?.blank)return!0;if(this.#t&&this.#n?.element?.style?.display==="none")return this.#r.element.style.display="none",this.#n.element.style.display="block",this.#a="left",!0}}goRight(){if(!this.#i){if(this.#r?.blank)return!0;if(this.#t&&this.#r?.element?.style?.display==="none")return this.#n.element.style.display="none",this.#r.element.style.display="block",this.#a="right",!0}}},Hr=class{#e;#t=-1;#n=new la;constructor({book:e,onLoad:n,onRelocated:r}){this.book=e,this.onLoad=n,this.onRelocated=r;let{rendition:i}=e;this.#n.spread=i?.spread,this.#n.defaultViewport=i?.viewport;let a=e.dir==="rtl",o=!a;this.rtl=a,i?.spread==="none"?this.#e=e.sections.map(s=>({center:s})):this.#e=e.sections.reduce((s,l)=>{let u=s[s.length-1],{linear:c,pageSpread:d}=l;if(c==="no")return s;let f=()=>{let p={};return s.push(p),p};if(d==="center")f().center=l;else if(d==="left"){let p=u.center||u.left||o?f():u;p.left=l}else if(d==="right"){let p=u.center||u.right||a?f():u;p.right=l}else o?u.center||u.right?f().left=l:u.left?u.right=l:u.left=l:u.center||u.left?f().right=l:u.right?u.left=l:u.right=l;return s},[{}])}get element(){return this.#n.element}get index(){let e=this.#e[this.#t],n=e?.center??(this.#n.side==="left"?e.left??e.right:e.right??e.left);return this.book.sections.indexOf(n)}getSpreadOf(e){let n=this.#e;for(let r=0;rthis.#e.length-1)return;if(e===this.#t){this.#n.render(n);return}this.#t=e;let r=this.#e[e];if(r.center){let i=await r.center?.load?.();await this.#n.showSpread({center:i})}else{let i=await r.left?.load?.(),a=await r.right?.load?.();await this.#n.showSpread({left:i,right:a,side:n})}this.onRelocated?.(null,this.index,0,1)}async select(e){await this.goTo(e)}async goTo(e){let{book:n}=this,r=await e,i=n.sections[r.index];if(!i)return;let{index:a,side:o}=this.getSpreadOf(i);await this.goToSpread(a,o)}async next(){if(this.rtl?this.#n.goLeft():this.#n.goRight())this.onRelocated?.(null,this.index,0,1);else return this.goToSpread(this.#t+1,this.rtl?"right":"left")}async prev(){if(this.rtl?this.#n.goRight():this.#n.goLeft())this.onRelocated?.(null,this.index,0,1);else return this.goToSpread(this.#t-1,this.rtl?"left":"right")}};var zs=t=>t.replace(/\s+/g," "),cf=(t,{startIndex:e,startOffset:n,endIndex:r,endOffset:i})=>{let a=t[e],o=t[r],s=a===o?a.slice(n,i):a.slice(n)+t.slice(a+1,o).join("")+o.slice(0,i),l=zs(a.slice(0,n)).trimStart(),u=zs(o.slice(i)).trimEnd(),c=l.length<50?"":"\u2026",d=u.length<50?"":"\u2026",f=`${c}${l.slice(-50)}`,p=`${u.slice(0,50)}${d}`;return{pre:f,match:s,post:p}},uf=function*(t,e,n={}){let{locales:r="en",granularity:i="word",sensitivity:a="base"}=n,o,s;try{o=new Intl.Segmenter(r,{usage:"search",granularity:i}),s=new Intl.Collator(r,{sensitivity:a})}catch{o=new Intl.Segmenter("en",{usage:"search",granularity:i}),s=new Intl.Collator("en",{sensitivity:a})}let l=Array.from(o.segment(e)).length,u=[],c=0,d=o.segment(t[c])[Symbol.iterator]();e:for(;cp.segment).join("");if(s.compare(e,f)===0){let p=c,b=u[u.length-1],g=b.index+b.segment.length,m=u[0].strIndex,h=u[0].index,y={startIndex:m,startOffset:h,endIndex:p,endOffset:g};yield{range:y,excerpt:cf(t,y)}}u.shift()}},Bs=(t,e)=>{let{defalutLocale:n,matchCase:r,matchDiacritics:i,matchWholeWords:a}=e;return function*(o,s){let l=t(o,function*(u,c){for(let d of uf(u,s,{locales:o.body.lang||o.documentElement.lang||n||"en",granularity:a?"word":"grapheme",sensitivity:i&&r?"variant":i&&!r?"accent":!i&&r?"case":"base"})){let{startIndex:f,startOffset:p,endIndex:b,endOffset:g}=d.range;d.range=c(f,p,b,g),yield d}});for(let u of l)yield u}};var df=function*(t,e){let n=NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT|NodeFilter.SHOW_CDATA_SECTION,{FILTER_ACCEPT:r,FILTER_REJECT:i,FILTER_SKIP:a}=NodeFilter,o=d=>{let f=d.localName?.toLowerCase();return f==="script"||f==="style"?i:d.nodeType===1?a:r},s=t.createTreeWalker(t.body,n,{acceptNode:o}),l=[];for(let d=s.nextNode();d;d=s.nextNode())l.push(d);let u=l.map(d=>d.nodeValue),c=(d,f,p,b)=>{let g=t.createRange();return g.setStart(l[d],f),g.setEnd(l[p],b),g};for(let d of e(u,c))yield d};var Us=Object.fromEntries(Array.from(Object.entries({isRef:["annoref","biblioref","glossref","noteref"],isLink:["backlink"],isNote:["annotation","note","footnote","endnote","rearnote"]}),([t,e])=>[t,n=>n.getAttributeNS("http://www.idpf.org/2007/ops","type")?.split(/s/)?.some(r=>e.includes(r))])),Wr=class{#e;#t;#n;#r;language="en";textDirection="";isCJK=!1;isFixedLayout=!1;annotations=new Br({resolve:e=>this.resolveCFI(e),compare:Jn,onAdd:(e,n,r)=>{let i=this.#s(n);i&&this.#o(i.doc,i.overlayer,e);let a=this.#t.getProgress(n)?.label??"";this?.emit({type:"add-annotation",annotation:e,label:a,index:n,position:r})},onDelete:(e,n,r)=>{this.#s(n)?.overlayer?.remove(e),this?.emit({type:"delete-annotation",index:n,position:r})},onUpdate:(e,n)=>{let r=this.#s(n);r&&(r.overlayer.remove(e.value),this.#o(r.doc,r.overlayer,e))}});constructor(e,n){if(this.book=e,this.emit=n,e.metadata?.language)try{let r=e.metadata.language;e.metadata.language=Intl.getCanonicalLocales(r)[0];let i=typeof r=="string"?r:r[0],a=new Intl.Locale(i);this.isCJK=["zh","ja","kr"].includes(a.language),a.textInfo&&a.textInfo.direction&&(this.textDirection=a.textInfo.direction)}catch{}if(e.splitTOCHref&&e.getTOCFragment){let r=e.sections.map(o=>o.id);this.#e=new Nr(e.sections,150,1600);let i=e.splitTOCHref.bind(e),a=e.getTOCFragment.bind(e);this.#t=new er({toc:e.toc??[],ids:r,splitHref:i,getFragment:a}),this.#n=new er({toc:e.pageList??[],ids:r,splitHref:i,getFragment:a})}}async display(){let e={book:this.book,onLoad:this.#a.bind(this),onRelocated:this.#i.bind(this),createOverlayer:this.#l.bind(this)};return this.isFixedLayout=this.book.rendition?.layout==="pre-paginated",this.isFixedLayout?this.renderer=new Hr(e):this.renderer=new jr(e),this.renderer.element}async init({lastLocation:e,annotations:n}){if(e){let r=this.resolveNavigation(e);r?await this.renderer.goTo(r):await this.renderer.next()}else await this.renderer.next();if(n){n.sort((r,i)=>Jn(r.value,i.value));for(let r of n)await this.annotations.add(r,!0)}}#i(e,n,r){if(!this.#e)return;let i=this.#e.getProgress(n,r),a=this.#t.getProgress(n,e),o=this.#n.getProgress(n,e),s=this.getCFI(n,e);this.emit?.({type:"relocated",...i,tocItem:a,pageItem:o,cfi:s})}#a(e,n){let{book:r}=this;e.documentElement.lang||=this.language,e.documentElement.dir||=this.isCJK?"":this.textDirection,this.renderer.setStyle(this.#r);let i=r.sections[n];for(let a of e.querySelectorAll("a[href]"))a.addEventListener("click",o=>{o.preventDefault();let s=a.getAttribute("href"),l=i?.resolveHref?.(s)??s;if(r?.isExternal?.(l))this.emit?.({type:"external-link",uri:l});else if(Us.isRef(a)){let{index:u,anchor:c}=r.resolveHref(l);Promise.resolve(r.sections[u].createDocument()).then(d=>[c(d),d.contentType]).then(([d,f])=>[d?.innerHTML,f,Us.isNote(d)]).then(([d,f,p])=>d?this.emit?.({type:"reference",href:p?null:l,content:d,contentType:f,element:a}):null).catch(d=>{});return}else this.goTo(l)});this.emit?.({type:"loaded",doc:e,index:n})}#o(e,n,r){let{value:i}=r,a=this.annotations.getAnchor(i),o=e?a(e):a,[s,l]=this.emit({type:"draw-annotation",annotation:r});n.add(i,o,s,l)}#s(e){let n=this.renderer.getOverlayer();if(n.index===e)return n}#l(e,n){let r=new zr;for(let i of this.annotations.getByIndex(n))this.#o(e,r,i);return e.addEventListener("click",i=>{let[a,o]=r.hitTest(i);a&&this.emit?.({type:"show-annotation",value:a,range:o})},!1),r}async showAnnotation(e){let{value:n}=e,{index:r,anchor:i}=await this.goTo(n),{doc:a}=this.#s(r),o=i(a);this.emit?.({type:"show-annotation",value:n,range:o})}getCFI(e,n){if(!n)return"";let r=this.book.sections[e].cfi??oa.fromIndex(e);return Es(r,Ls(n))}resolveCFI(e){if(this.book.resolveCFI)return this.book.resolveCFI(e);{let n=Zt(e);return{index:oa.toIndex((n.parent??n).shift()),anchor:a=>Pr(a,n)}}}resolveNavigation(e){try{return typeof e=="number"?{index:e}:Qn.test(e)?this.resolveCFI(e):this.book.resolveHref(e)}catch{}}async goTo(e){let n=this.resolveNavigation(e);try{return await this.renderer.goTo(n),n}catch{}}async goToFraction(e){let[n,r]=this.#e.getSection(e);return this.renderer.goTo({index:n,anchor:r})}async select(e){try{let n=await this.resolveNavigation(e);await this.renderer.goTo({...n,select:!0})}catch{}}goLeft(){return this.book.dir==="rtl"?this.renderer.next():this.renderer.prev()}goRight(){return this.book.dir==="rtl"?this.renderer.prev():this.renderer.next()}setAppearance({layout:e,css:n}){this.isFixedLayout||(Object.assign(this.renderer.layout,e),this.#r=n,this.renderer.setStyle(n),this.renderer.render())}async*#d(e,n,r){let i=await this.book.sections[r].createDocument();for(let{range:a,excerpt:o}of e(i,n))yield{cfi:this.getCFI(r,a),excerpt:o}}async*#c(e,n){let{sections:r}=this.book;for(let[i,{createDocument:a}]of r.entries()){if(!a)continue;let o=await a(),s=Array.from(e(o,n),({range:u,excerpt:c})=>({cfi:this.getCFI(i,u),excerpt:c}));yield{progress:(i+1)/r.length},s.length&&(yield{index:i,subitems:s})}}async*search(e){let{query:n,index:r}=e,i=Bs(df,{defaultLocale:this.language,...e}),a=r!=null?this.#d(i,n,r):this.#c(i,n);for await(let o of a)yield"subitems"in o?{label:this.#t.getProgress(o.index)?.label??"",subitems:o.subitems}:o}};var ff=(t,e,n)=>{let r=document.createElement("ul");r.setAttribute("role","group"),r.setAttribute("aria-label",t);let i=new Map,a=o=>{n(o);let s=i.get(o);for(let l of r.children)l.setAttribute("aria-checked",l===s?"true":"false")};for(let[o,s]of e){let l=document.createElement("li");l.setAttribute("role","menuitemradio"),l.innerText=o,l.onclick=()=>a(s),i.set(s,l),r.append(l)}return{element:r,select:a}},$s=t=>{let e={},n=document.createElement("ul");n.setAttribute("role","menu");let r=()=>n.classList.remove("show"),i=a=>(...o)=>(r(),a(...o));for(let{name:a,label:o,type:s,items:l,onclick:u}of t){let c=s==="radio"?ff(o,l,i(u)):null;a&&(e[a]=c),n.append(c.element)}return window.addEventListener("blur",()=>r()),window.addEventListener("click",a=>{n.parentNode.contains(a.target)||r()}),{element:n,groups:e}};function tr(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():te}var Rg=tr();var Og=tr().PROD==="1",Dg=tr().PROD!=="1";var js=({entries:t,loadBlob:e,getSize:n},r)=>{let i=new Map,a=new Map,o=async d=>{if(i.has(d))return i.get(d);let f=URL.createObjectURL(await e(d)),p=URL.createObjectURL(new Blob([``],{type:"text/html"}));return a.set(d,[f,p]),i.set(d,p),p},s=d=>{a.get(d)?.forEach?.(f=>URL.revokeObjectURL(f)),a.delete(d),i.delete(d)},l=[".jpg",".jpeg",".png",".gif",".bmp",".webp",".svg"],u=t.map(d=>d.filename).filter(d=>l.some(f=>d.endsWith(f))).sort(),c={};return c.getCover=()=>e(u[0]),c.metadata={title:r.name},c.sections=u.map(d=>({id:d,load:()=>o(d),unload:()=>s(d),size:n(d)})),c.toc=u.map(d=>({label:d,href:d})),c.rendition={layout:"pre-paginated"},c.resolveHref=d=>({index:c.sections.findIndex(f=>f.id===d)}),c.splitTOCHref=d=>[d,null],c.getTOCFragment=d=>d.documentElement,c};var Hs=t=>t?.trim()?.replace(/\s{2,}/g," "),_t=t=>Hs(t?.textContent),qr={XLINK:"http://www.w3.org/1999/xlink",EPUB:"http://www.idpf.org/2007/ops"},Vr={XML:"application/xml",XHTML:"application/xhtml+xml"},Ot={strong:["strong","self"],emphasis:["em","self"],style:["span","self"],a:"anchor",strikethrough:["s","self"],sub:["sub","self"],sup:["sup","self"],code:["code","self"],image:"image"},hf={tr:["tr",["align"]],th:["th",["colspan","rowspan","align","valign"]],td:["td",["colspan","rowspan","align","valign"]]},Ws={epigraph:["blockquote"],subtitle:["h2",Ot],"text-author":["p",Ot],date:["p",Ot],stanza:"stanza"},Kr={title:["header",{p:["h1",Ot],"empty-line":["br"]}],epigraph:["blockquote","self"],image:"image",annotation:["aside"],section:["section","self"],p:["p",Ot],poem:["blockquote",Ws],subtitle:["h2",Ot],cite:["blockquote","self"],"empty-line":["br"],table:["table",hf],"text-author":["p",Ot]};Ws.epigraph.push(Kr);var pf={image:"image",title:["section",{p:["h1",Ot],"empty-line":["br"]}],epigraph:["section",Kr],section:["section",Kr]},qs=t=>{let e=t.getAttributeNS(qr.XLINK,"href"),[,n]=e.split("#"),r=t.getRootNode().getElementById(n);return r?`data:${r.getAttribute("content-type")};base64,${r.textContent}`:e},ua=class{constructor(e){this.fb2=e,this.doc=document.implementation.createDocument(qr.XHTML,"html")}image(e){let n=this.doc.createElement("img");return n.alt=e.getAttribute("alt"),n.title=e.getAttribute("title"),n.setAttribute("src",qs(e)),n}anchor(e){let n=this.convert(e,{a:["a",Ot]});return n.setAttribute("href",e.getAttributeNS(qr.XLINK,"href")),e.getAttribute("type")==="note"&&n.setAttributeNS(qr.EPUB,"epub:type","noteref"),n}stanza(e){let n=this.convert(e,{stanza:["p",{title:["header",{p:["strong",Ot],"empty-line":["br"]}],subtitle:["p",Ot]}]});for(let r of e.children)r.nodeName==="v"&&(n.append(this.doc.createTextNode(r.textContent)),n.append(this.doc.createElement("br")));return n}convert(e,n){if(e.nodeType===3)return this.doc.createTextNode(e.textContent);if(e.nodeType===4)return this.doc.createCDATASection(e.textContent);if(e.nodeType===8)return this.doc.createComment(e.textContent);let r=n?.[e.nodeName];if(!r)return null;if(typeof r=="string")return this[r](e);let[i,a]=r,o=this.doc.createElement(i);if(e.id&&(o.id=e.id),o.classList.add(e.nodeName),Array.isArray(a))for(let u of a)o.setAttribute(u,e.getAttribute(u));let s=a==="self"?n:Array.isArray(a)?null:a,l=e.firstChild;for(;l;){let u=this.convert(l,s);u&&o.append(u),l=l.nextSibling}return o}},mf=async t=>{let e=await t.arrayBuffer(),n=new TextDecoder("utf-8").decode(e),r=new DOMParser,i=r.parseFromString(n,Vr.XML),a=i.xmlEncoding||n.match(/^<\?xml\s+version\s*=\s*["']1.\d+"\s+encoding\s*=\s*["']([A-Za-z0-9._-]*)["']/)?.[1];if(a&&a.toLowerCase()!=="utf-8"){let o=new TextDecoder(a).decode(e);return r.parseFromString(o,Vr.XML)}return i},gf=URL.createObjectURL(new Blob([` @namespace epub "http://www.idpf.org/2007/ops"; body > img, section > img { display: block; @@ -4116,7 +4124,7 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph { margin-inline-end: 0; }`)),await this.replaceResources(n);let i=this.serializer.serializeToString(n),a=URL.createObjectURL(new Blob([i],{type:this.#a}));return this.#n.set(e,a),a}resolveHref(e){let n=e.match(/filepos:(.*)/)[1],r=Number(n);return{index:this.#r.findIndex(o=>o.end>r),anchor:o=>o.getElementById(`filepos${n}`)}}splitTOCHref(e){let n=e.match(/filepos:(.*)/)[1],r=Number(n);return[this.#r.findIndex(a=>a.end>r),`filepos${n}`]}getTOCFragment(e,n){return e.getElementById(n)}isExternal(e){return/^(?!blob|filepos)\w+:/i.test(e)}},tl=/kindle:(flow|embed):(\w+)(?:\?mime=(\w+\/[-+.\w]+))?/,Uf=/kindle:pos:fid:(\w+):off:(\w+)/,$f=t=>{let[e,n,r]=t.match(tl).slice(1);return{resourceType:e,id:parseInt(n,32),type:r}},Xs=t=>{let[e,n]=t.match(Uf).slice(1);return{fid:parseInt(e,32),off:parseInt(n,32)}},Ys=(t=0,e=0)=>`kindle:pos:fid:${t.toString(32).toUpperCase().padStart(4,"0")}:off:${e.toString(32).toUpperCase().padStart(10,"0")}`,Zs=t=>{let e=t.match(/\s(id|name|aid)\s*=\s*['"]([^'"]*)['"]/i);if(!e)return;let[,n,r]=e;return`[${n}="${CSS.escape(r)}"]`},jf=async(t,e,n)=>{let r=[];t.replace(e,(...a)=>(r.push(a),null));let i=[];for(let a of r)i.push(await n(...a));return t.replace(e,()=>i.shift())},pa=class{parser=new DOMParser;#e=new Map;#t=new Map;#n=new Map;#r={};#i;#a;#o=new Uint8Array;#s=new Uint8Array;#l=-1;#d=-1;#c=!0;#u=vn.XHTML;constructor(e){this.mobi=e}async init(){let e=this.mobi.loadRecord.bind(this.mobi),{kf8:n}=this.mobi.headers;try{let s=await e(n.fdst),l=Ct(Sf,s);if(l.magic!=="FDST")throw new Error("Missing FDST record");let u=Array.from({length:l.numEntries},(c,d)=>12+d*8).map(c=>[it(s.slice(c,c+4)),it(s.slice(c+4,c+8))]);this.#r.fdstTable=u,this.#a=u[u.length-1][1]}catch{}let r=(await Xr(n.skel,e)).table.map(({name:s,tagMap:l},u)=>({index:u,name:s,numFrag:l[1][0],offset:l[6][0],length:l[6][1]})),i=await Xr(n.frag,e),a=i.table.map(({name:s,tagMap:l})=>({insertOffset:parseInt(s),selector:i.cncx[l[2][0]],index:l[4][0],offset:l[6][0],length:l[6][1]}));this.#r.skelTable=r,this.#r.fragTable=a,this.#i=r.reduce((s,l)=>{let u=s[s.length-1],c=u?.fragEnd??0,d=c+l.numFrag,f=a.slice(c,d),p=l.length+f.map(g=>g.length).reduce((g,m)=>g+m),b=(u?.totalLength??0)+p;return s.concat({skel:l,frags:f,fragEnd:d,length:p,totalLength:b})},[]),this.#i.unshift({frags:[]}),this.sections=this.#i.map((s,l)=>s.frags.length?{id:l,load:()=>this.loadSection(s),createDocument:()=>this.createDocument(s),size:s.length}:{linear:"no"});try{let s=await this.mobi.getNCX(),l=({label:u,pos:c,children:d})=>{let[f,p]=c,b=Ys(f,p),g=this.#t.get(f);return g?g.push(p):this.#t.set(f,[p]),{label:an(u),href:b,subitems:d?.map(l)}};this.toc=s?.map(l),this.landmarks=await this.getGuide()}catch{}let{exth:o}=this.mobi.headers;return this.dir=o.pageProgressionDirection,this.rendition={layout:o.fixedLayout==="true"?"pre-paginated":"reflowable",viewport:Object.fromEntries(o.originalResolution?.split("x")?.slice(0,2)?.map((s,l)=>[l?"height":"width",s])??[])},this.metadata=this.mobi.getMetadata(),this.getCover=this.mobi.getCover.bind(this.mobi),this}async getResourcesByMagic(e){let n={},r=this.mobi.headers.kf8.resourceStart,i=this.mobi.pdb.numRecords;for(let a=r;al===o);s&&(n[s]=a)}catch{}return n}async getGuide(){let e=this.mobi.headers.kf8.guide;if(e<4294967295){let n=this.mobi.loadRecord.bind(this.mobi),{table:r,cncx:i}=await Xr(e,n);return r.map(({name:a,tagMap:o})=>({label:i[o[1][0]]??"",type:a?.split(/\s/),href:Ys(o[6]?.[0]??o[3]?.[0])}))}}async loadResourceBlob(e){let{resourceType:n,id:r,type:i}=$f(e),a=n==="flow"?await this.loadFlow(r):await this.mobi.loadResource(r-1),o=[vn.XHTML,vn.HTML,vn.CSS,vn.SVG].includes(i)?await this.replaceResources(this.mobi.decode(a)):a;return new Blob([o],{type:i})}async loadResource(e){if(this.#e.has(e))return this.#e.get(e);let n=await this.loadResourceBlob(e),r=URL.createObjectURL(n);return this.#e.set(e,r),r}replaceResources(e){let n=new RegExp(tl,"g");return jf(e,n,this.loadResource.bind(this))}async loadRaw(e,n){let r=n-this.#o.length,i=this.#a==null?1/0:this.#a-this.#s.length-e;if(r<0||re;){let o=this.mobi.headers.palmdoc.numTextRecords-1-++this.#d,s=await this.mobi.loadText(o);this.#s=Yr(s,this.#s)}let a=this.#a-this.#s.length;return this.#s.slice(e-a,n-a)}loadFlow(e){if(e<4294967295)return this.loadRaw(...this.#r.fdstTable[e])}async loadText(e){let{skel:n,frags:r,length:i}=e,a=await this.loadRaw(n.offset,n.offset+i),o=a.slice(0,n.length);for(let s of r){let l=s.insertOffset-n.offset,u=n.length+s.offset,c=a.slice(u,u+s.length);o=Js(o.slice(0,l),c,o.slice(l));let d=this.#t.get(s.index);if(d)for(let f of d){let p=this.mobi.decode(c).slice(f),b=Zs(p);this.#h(s.index,f,b)}}return this.mobi.decode(o)}async createDocument(e){let n=await this.loadText(e);return this.parser.parseFromString(n,this.#u)}async loadSection(e){if(this.#e.has(e))return this.#e.get(e);let n=await this.loadText(e);this.#c&&this.parser.parseFromString(n,this.#u).querySelector("parsererror")&&(this.#u=vn.HTML),this.#c&&(this.#c=!1);let r=await this.replaceResources(n),i=URL.createObjectURL(new Blob([r],{type:this.#u}));return this.#e.set(e,i),i}getIndexByFID(e){return this.#i.findIndex(n=>n.frags.some(r=>r.index===e))}#h(e,n,r){let i=this.#n.get(e);if(i)i.set(n,r);else{let a=new Map;this.#n.set(e,a),a.set(n,r)}}async resolveHref(e){let{fid:n,off:r}=Xs(e),i=this.getIndexByFID(n);if(i<0)return;let a=this.#n.get(n)?.get(r);if(a)return{index:i,anchor:b=>b.querySelector(a)};let{skel:o,frags:s}=this.#i[i],l=s.find(b=>b.index===n),u=o.offset+o.length+l.offset,c=await this.loadRaw(u,u+l.length),d=this.mobi.decode(c).slice(r),f=Zs(d);return this.#h(n,r,f),{index:i,anchor:b=>b.querySelector(f)}}splitTOCHref(e){let n=Xs(e);return[this.getIndexByFID(n.fid),n]}getTOCFragment(e,{fid:n,off:r}){let i=this.#n.get(n)?.get(r);return e.querySelector(i)}isExternal(e){return/^(?!blob|kindle)\w+:/i.test(e)}};var Ge={CONTAINER:"urn:oasis:names:tc:opendocument:xmlns:container",XHTML:"http://www.w3.org/1999/xhtml",OPF:"http://www.idpf.org/2007/opf",EPUB:"http://www.idpf.org/2007/ops",DC:"http://purl.org/dc/elements/1.1/",DCTERMS:"http://purl.org/dc/terms/",ENC:"http://www.w3.org/2001/04/xmlenc#",NCX:"http://www.daisy.org/z3986/2005/ncx/",XLINK:"http://www.w3.org/1999/xlink",SMIL:"http://www.w3.org/ns/SMIL"},at={XML:"application/xml",NCX:"application/x-dtbncx+xml",XHTML:"application/xhtml+xml",HTML:"text/html",CSS:"text/css",SVG:"image/svg+xml",JS:/\/(x-)?(javascript|ecmascript)/},Qr=t=>t.toLowerCase().replace(/[-:](.)/g,(e,n)=>n.toUpperCase()),Hf=t=>t?t.trim().replace(/\s{2,}/g," "):"",rr=(t,e,n)=>n?r=>r.getAttribute(t)?.split(/\s/)?.includes(e):typeof e=="function"?r=>e(r.getAttribute(t)):r=>r.getAttribute(t)===e,ei=(...t)=>e=>e?Object.fromEntries(t.map(n=>[Qr(n),e.getAttribute(n)])):null,sn=t=>Hf(t?.textContent),ar=(t,e)=>{let n=t.lookupNamespaceURI(null)===e||t.lookupPrefix(e),r=n?(i,a)=>o=>o.namespaceURI===e&&o.localName===a:(i,a)=>o=>o.localName===a;return{$:(i,a)=>[...i.children].find(r(i,a)),$$:(i,a)=>[...i.children].filter(r(i,a)),$$$:n?(i,a)=>[...i.getElementsByTagNameNS(e,a)]:(i,a)=>[...i.getElementsByTagName(e,a)]}},Ln=(t,e)=>{try{if(e.includes(":"))return new URL(t,e);let n="file:///";return decodeURI(new URL(t,n+e).href.replace(n,""))}catch{return t}},il=t=>/^(?!blob)\w+:/i.test(t),Wf=(t,e)=>{if(!t)return e;let n=t.replace(/\/$/,"").split("/"),r=e.replace(/\/$/,"").split("/"),i=(n.length>r.length?n:r).findIndex((a,o)=>n[o]!==r[o]);return i<0?"":Array(n.length-i).fill("..").concat(r.slice(i)).join("/")},qf=t=>t.slice(0,t.lastIndexOf("/")+1),Jr=async(t,e,n)=>{let r=[];t.replace(e,(...a)=>(r.push(a),null));let i=[];for(let a of r)i.push(await n(...a));return t.replace(e,()=>i.shift())},Vf=t=>t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),on={attrs:["dir","xml:lang"]},xn={name:"alternate-script",many:!0,...on,props:["file-as"]},nl={many:!0,...on,props:[{name:"role",many:!0,attrs:["scheme"]},"file-as",xn]},Kf=[{name:"title",many:!0,...on,props:["title-type","display-seq","file-as",xn]},{name:"identifier",many:!0,props:[{name:"identifier-type",attrs:["scheme"]}]},{name:"language",many:!0},{name:"creator",...nl},{name:"contributor",...nl},{name:"publisher",...on,props:["file-as",xn]},{name:"description",...on,props:[xn]},{name:"rights",...on,props:[xn]},{name:"date"},{name:"dcterms:modified",type:"meta"},{name:"subject",many:!0,...on,props:["term","authority",xn]},{name:"belongs-to-collection",type:"meta",many:!0,...on,props:["collection-type","group-position","dcterms:identifier","file-as",xn,{name:"belongs-to-collection",recursive:!0}]}],Gf=t=>{let{$:e,$$:n}=ar(t,Ge.OPF),r=e(t.documentElement,"metadata"),i=Array.from(r.children),a=(d,f)=>{if(!f)return null;let{props:p=[],attrs:b=[]}=d,g=sn(f);if(!p.length&&!b.length)return g;let m=f.getAttribute("id"),h=m?i.filter(rr("refines","#"+m)):[];return Object.fromEntries([["value",g]].concat(p.map(y=>{let{many:w,recursive:S}=y,_=typeof y=="string"?y:y.name,x=rr("property",_),k=S?d:y;return[Qr(_),w?h.filter(x).map(v=>a(k,v)):a(k,h.find(x))]})).concat(b.map(y=>[Qr(y),f.getAttribute(y)])))},o=i.filter(rr("refines",null)),s=Object.fromEntries(Kf.map(d=>{let{type:f,name:p,many:b}=d,g=f==="meta"?m=>m.namespaceURI===Ge.OPF&&m.getAttribute("property")===p:m=>m.namespaceURI===Ge.DC&&m.localName===p;return[Qr(p),b?o.filter(g).map(m=>a(d,m)):a(d,o.find(g))]})),l=d=>Object.fromEntries(n(r,"meta").filter(rr("property",f=>f?.startsWith(d))).map(f=>[f.getAttribute("property").replace(d,""),sn(f)])),u=l("rendition:"),c=l("media:");return{metadata:s,rendition:u,media:c}},Xf=(t,e=n=>n)=>{let{$:n,$$:r,$$$:i}=ar(t,Ge.XHTML),a=b=>b?decodeURI(e(b)):null,o=b=>g=>{let m=n(g,"a")??n(g,"span"),h=n(g,"ol"),y=a(m?.getAttribute("href")),S={label:sn(m)||m?.getAttribute("title"),href:y,subitems:s(h)};return b&&(S.type=m?.getAttributeNS(Ge.EPUB,"type")?.split(/\s/)),S},s=(b,g)=>b?r(b,"li").map(o(g)):null,l=(b,g)=>s(n(b,"ol"),g),u=i(t,"nav"),c=null,d=null,f=null,p=[];for(let b of u){let g=b.getAttributeNS(Ge.EPUB,"type")?.split(/\s/)??[];g.includes("toc")?c??=l(b):g.includes("page-list")?d??=l(b):g.includes("landmarks")?f??=l(b,!0):p.push({label:sn(b.firstElementChild),type:g,list:l(b)})}return{toc:c,pageList:d,landmarks:f,others:p}},Yf=(t,e=n=>n)=>{let{$:n,$$:r}=ar(t,Ge.NCX),i=l=>l?decodeURI(e(l)):null,a=l=>{let u=n(l,"navLabel"),c=n(l,"content"),d=sn(u),f=i(c.getAttribute("src"));if(l.localName==="navPoint"){let p=r(l,"navPoint");return{label:d,href:f,subitems:p.length?p.map(a):null}}return{label:d,href:f}},o=(l,u)=>r(l,u).map(a),s=(l,u)=>{let c=n(t.documentElement,l);return c?o(c,u):null};return{toc:s("navMap","navPoint"),pageList:s("pageList","pageTarget"),others:r(t.documentElement,"navList").map(l=>({label:sn(n(l,"navLabel")),list:o(l,"navTarget")}))}},ga=t=>{if(!t)return;let e=t.split(":").map(o=>parseFloat(o));if(e.length===3){let[o,s,l]=e;return o*60*60+s*60+l}if(e.length===2){let[o,s]=e;return o*60+s}let[n,r]=t.split(/(?=[^\d.])/),i=parseFloat(n),a=r==="h"?60*60:r==="min"?60:r==="ms"?.001:1;return i*a},Zf=(t,e=n=>n)=>{let{$:n,$$$:r}=ar(t,Ge.SMIL),i=a=>a?decodeURI(e(a)):null;return r(t,"par").map(a=>{let o=n(a,"text")?.getAttribute("src")?.split("#")?.[1],s=n(a,"audio");return s?{id:o,audio:{src:i(s.getAttribute("src")),clipBegin:ga(s.getAttribute("clipBegin")),clipEnd:ga(s.getAttribute("clipEnd"))}}:{id:o}})},Jf=/([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})/,Qf=t=>{for(let e of t.getElementsByTagNameNS(Ge.DC,"identifier")){let[n]=sn(e).split(":").slice(-1);if(Jf.test(n))return n}return""},al=t=>sn(t.getElementById(t.documentElement.getAttribute("unique-identifier"))??t.getElementsByTagNameNS(Ge.DC,"identifier")[0]),rl=async(t,e,n)=>{let r=new Uint8Array(await n.slice(0,e).arrayBuffer());e=Math.min(e,r.length);for(var i=0;i{let e=new TextEncoder().encode(t),n=await globalThis.crypto.subtle.digest("SHA-1",e);return new Uint8Array(n)},th=(t=eh)=>({"http://www.idpf.org/2008/embedding":{key:e=>t(al(e).replaceAll(/[\u0020\u0009\u000d\u000a]/g,"")),decode:(e,n)=>rl(e,1040,n)},"http://ns.adobe.com/pdf/enc#RC":{key:e=>{let n=Qf(e).replaceAll("-","");return Uint8Array.from({length:16},(r,i)=>parseInt(n.slice(i*2,i*2+2),16))},decode:(e,n)=>rl(e,1024,n)}}),ba=class{#e=new Map;#t=new Map;#n;constructor(e){this.#n=e}async init(e,n){if(!e)return;let r=Array.from(e.getElementsByTagNameNS(Ge.ENC,"EncryptedData"),i=>({algorithm:i.getElementsByTagNameNS(Ge.ENC,"EncryptionMethod")[0]?.getAttribute("Algorithm"),uri:i.getElementsByTagNameNS(Ge.ENC,"CipherReference")[0]?.getAttribute("URI")}));for(let{algorithm:i,uri:a}of r){if(!this.#t.has(i)){let o=this.#n[i];if(!o)continue;let s=await o.key(n);this.#t.set(i,l=>o.decode(s,l))}this.#e.set(a,i)}}getDecoder(e){return this.#t.get(this.#e.get(e))??(n=>n)}},ya=class{constructor({opf:e,resolveHref:n}){this.opf=e;let{$:r,$$:i,$$$:a}=ar(e,Ge.OPF),o=r(e.documentElement,"manifest"),s=r(e.documentElement,"spine"),l=i(s,"itemref");this.manifest=i(o,"item").map(ei("href","id","media-type","properties","media-overlay")).map(c=>(c.href=n(c.href),c.properties=c.properties?.split(/\s/),c)),this.spine=l.map(ei("idref","id","linear","properties")).map(c=>(c.properties=c.properties?.split(/\s/),c)),this.pageProgressionDirection=s.getAttribute("page-progression-direction"),this.navPath=this.getItemByProperty("nav")?.href,this.ncxPath=(this.getItemByID(s.getAttribute("toc"))??this.manifest.find(c=>c.mediaType===at.NCX))?.href;let u=r(e.documentElement,"guide");u&&(this.guide=i(u,"reference").map(ei("type","title","href")).map(({type:c,title:d,href:f})=>({label:d,type:c.split(/\s/),href:n(f)}))),this.cover=this.getItemByProperty("cover-image")??this.getItemByID(a(e,"meta").find(rr("name","cover"))?.getAttribute("content"))??this.getItemByHref(this.guide?.find(c=>c.type.includes("cover"))?.href),this.cfis=Rs(l)}getItemByID(e){return this.manifest.find(n=>n.id===e)}getItemByHref(e){return this.manifest.find(n=>n.href===e)}getItemByProperty(e){return this.manifest.find(n=>n.properties?.includes(e))}resolveCFI(e){let n=Zt(e),r=(n.parent??n).shift(),i=aa(this.opf,r);i&&i.nodeName!=="idref"&&(r.at(-1).id=null,i=aa(this.opf,r));let a=i?.getAttribute("idref");return{index:this.spine.findIndex(l=>l.idref===a),anchor:l=>Pr(l,n)}}},wa=class{#e=new Map;#t=new Map;#n=new Map;allowScript=!1;constructor({loadText:e,loadBlob:n,resources:r}){this.loadText=e,this.loadBlob=n,this.manifest=r.manifest,this.assets=r.manifest}createURL(e,n,r,i){if(!n)return"";let a=URL.createObjectURL(new Blob([n],{type:r}));if(this.#e.set(e,a),this.#n.set(e,1),i){let o=this.#t.get(i);o?o.push(e):this.#t.set(i,[e])}return a}ref(e,n){let r=this.#t.get(n);return r?.includes(e)||(this.#n.set(e,this.#n.get(e)+1),r?r.push(e):this.#t.set(n,[e])),this.#e.get(e)}unref(e){if(!this.#n.has(e))return;let n=this.#n.get(e)-1;if(n<1){URL.revokeObjectURL(this.#e.get(e)),this.#e.delete(e),this.#n.delete(e);let r=this.#t.get(e);if(r)for(;r.length;)this.unref(r.pop());this.#t.delete(e)}else this.#n.set(e,n)}async loadItem(e,n=[]){if(!e)return null;let{href:r,mediaType:i}=e,a=at.JS.test(e.mediaType);if(a&&!this.allowScript)return null;let o=n.at(-1);return this.#e.has(r)?this.ref(r,o):(a||[at.XHTML,at.HTML,at.CSS,at.SVG].includes(i))&&n.every(l=>l!==r)?this.loadReplaced(e,n):this.createURL(r,await this.loadBlob(r),i,o)}async loadHref(e,n,r=[]){if(il(e))return e;let i=Ln(e,n),a=this.manifest.find(o=>o.href===i);return a?this.loadItem(a,r.concat(n)):e}async loadReplaced(e,n=[]){let{href:r,mediaType:i}=e,a=n.at(-1),o=await this.loadText(r);if(!o)return null;if([at.XHTML,at.HTML,at.SVG].includes(i)){let l=new DOMParser().parseFromString(o,i);if(i===at.XHTML&&l.querySelector("parsererror")&&(e.mediaType=at.HTML,l=new DOMParser().parseFromString(o,e.mediaType)),[at.XHTML,at.SVG].includes(e.mediaType)){let d=l.firstChild;for(;d instanceof ProcessingInstruction;){if(d.data){let f=await Jr(d.data,/(?:^|\s*)(href\s*=\s*['"])([^'"]*)(['"])/i,(p,b,g,m)=>this.loadHref(g,r,n).then(h=>`${b}${h}${m}`));d.replaceWith(l.createProcessingInstruction(d.target,f))}d=d.nextSibling}}let u=async(d,f)=>d.setAttribute(f,await this.loadHref(d.getAttribute(f),r,n));for(let d of l.querySelectorAll("link[href]"))await u(d,"href");for(let d of l.querySelectorAll("[src]"))await u(d,"src");for(let d of l.querySelectorAll("[poster]"))await u(d,"poster");for(let d of l.querySelectorAll("object[data]"))await u(d,"data");for(let d of l.querySelectorAll("[*|href]:not([href]"))d.setAttributeNS(Ge.XLINK,"href",await this.loadHref(d.getAttributeNS(Ge.XLINK,"href"),r,n));for(let d of l.querySelectorAll("style"))d.textContent&&(d.textContent=await this.replaceCSS(d.textContent,r,n));for(let d of l.querySelectorAll("[style]"))d.setAttribute("style",await this.replaceCSS(d.getAttribute("style"),r,n));let c=new XMLSerializer().serializeToString(l);return this.createURL(r,c,e.mediaType,a)}let s=i===at.CSS?await this.replaceCSS(o,r,n):await this.replaceString(o,r,n);return this.createURL(r,s,i,a)}async replaceCSS(e,n,r=[]){let i=await Jr(e,/url\(\s*["']?([^'"\n]*?)\s*["']?\s*\)/gi,(l,u)=>this.loadHref(u,n,r).then(c=>`url("${c}")`)),a=await Jr(i,/@import\s*["']([^"'\n]*?)["']/gi,(l,u)=>this.loadHref(u,n,r).then(c=>`@import "${c}"`)),o=window?.innerWidth??800,s=window?.innerHeight??600;return a.replace(/-epub-/gi,"").replace(/(\d*\.?\d+)vw/gi,(l,u)=>parseFloat(u)*o/100+"px").replace(/(\d*\.?\d+)vh/gi,(l,u)=>parseFloat(u)*s/100+"px").replace(/page-break-(after|before|inside)/gi,(l,u)=>`-webkit-column-break-${u}`)}replaceString(e,n,r=[]){let i=new Map,a=this.assets.map(s=>{if(s.href===n)return;let l=Wf(qf(n),s.href),u=encodeURI(l),c="/"+s.href,d=encodeURI(c),f=new Set([l,u,c,d]);for(let p of f)i.set(p,s);return Array.from(f)}).flat().filter(s=>s);if(!a.length)return e;let o=new RegExp(a.map(Vf).join("|"),"g");return Jr(e,o,async s=>this.loadItem(i.get(s.replace(/^\//,"")),r.concat(n)))}unloadItem(e){this.unref(e?.href)}},nh=(t,e)=>t.getElementById(e)??t.querySelector(`[name="${CSS.escape(e)}"]`),rh=t=>{for(let e of t){if(e==="page-spread-left"||e==="rendition:page-spread-left")return"left";if(e==="page-spread-right"||e==="rendition:page-spread-right")return"right";if(e==="rendition:page-spread-center")return"center"}},ir=class{parser=new DOMParser;#e;constructor({loadText:e,loadBlob:n,getSize:r,sha1:i}){this.loadText=e,this.loadBlob=n,this.getSize=r,this.#e=new ba(th(i))}#t(e){return e?this.parser.parseFromString(e,at.XML):null}async#n(e){return this.#t(await this.loadText(e))}opfPath=null;async init(){let e=await this.#n("META-INF/container.xml");if(!e)throw new Error("Failed to load container file");let n=Array.from(e.getElementsByTagNameNS(Ge.CONTAINER,"rootfile"),ei("full-path","media-type")).filter(g=>g.mediaType==="application/oebps-package+xml");if(!n.length)throw new Error("No package document defined in container");let r=n[0].fullPath;this.opfPath=r;let i=await this.#n(r);if(!i)throw new Error("Failed to load package document");let a=await this.#n("META-INF/encryption.xml");await this.#e.init(a,i),this.resources=new ya({opf:i,resolveHref:g=>Ln(g,r)});let o=new wa({loadText:this.loadText,loadBlob:g=>Promise.resolve(this.loadBlob(g)).then(this.#e.getDecoder(g)),resources:this.resources});this.sections=this.resources.spine.map((g,m)=>{let{idref:h,linear:y,properties:w=[]}=g,S=this.resources.getItemByID(h);return S?{id:this.resources.getItemByID(h)?.href,load:()=>o.loadItem(S),unload:()=>o.unloadItem(S),createDocument:()=>this.loadDocument(S),size:this.getSize(S.href),cfi:this.resources.cfis[m],linear:y,pageSpread:rh(w),resolveHref:_=>Ln(_,S.href),loadMediaOverlay:()=>this.loadMediaOverlay(S)}:null}).filter(g=>g);let{navPath:s,ncxPath:l}=this.resources;if(s)try{let g=h=>Ln(h,s),m=Xf(await this.#n(s),g);this.toc=m.toc,this.pageList=m.pageList,this.landmarks=m.landmarks}catch{}if(!this.toc&&l)try{let g=h=>Ln(h,l),m=Yf(await this.#n(l),g);this.toc=m.toc,this.pageList=m.pageList}catch{}this.landmarks??=this.resources.guide;let{metadata:u,rendition:c,media:d}=Gf(i);this.rendition=c,this.media=d,d.duration=ga(d.duration),this.dir=this.resources.pageProgressionDirection,this.rawMetadata=u;let f=u?.title?.[0];this.metadata={title:f?.value,sortAs:f?.fileAs,language:u?.language,identifier:al(i),description:u?.description?.value,publisher:u?.publisher?.value,published:u?.date,modified:u?.dctermsModified,subject:u?.subject?.filter(({value:g,code:m})=>g||m)?.map(({value:g,code:m,scheme:h})=>({name:g,code:m,scheme:h})),rights:u?.rights?.value};let p={art:"artist",aut:"author",bkp:"producer",clr:"colorist",edt:"editor",ill:"illustrator",trl:"translator",pbl:"publisher"},b=g=>m=>{let h=[...new Set(m.role?.map(({value:w,scheme:S})=>(!S||S==="marc:relators"?p[w]:null)??g))],y={name:m.value,sortAs:m.fileAs};return[h?.length?h:[g],y]};return u?.creator?.map(b("author"))?.concat(u?.contributor?.map?.(b("contributor")))?.forEach(([g,m])=>g.forEach(h=>{this.metadata[h]?this.metadata[h].push(m):this.metadata[h]=[m]})),this}async loadDocument(e){let n=await this.loadText(e.href);return this.parser.parseFromString(n,e.mediaType)}async loadMediaOverlay(e){let n=e.mediaOverlay;if(!n)return null;let r=this.resources.getItemByID(n),i=await this.#n(r.href);return Zf(i,o=>Ln(o,r.href))}resolveCFI(e){return this.resources.resolveCFI(e)}resolveHref(e){let[n,r]=e.split("#"),i=this.resources.getItemByHref(decodeURI(n));return i?{index:this.resources.spine.findIndex(({idref:s})=>s===i.id),anchor:r?s=>nh(s,r):()=>0}:null}splitTOCHref(e){return e?.split("#")??[]}getTOCFragment(e,n){return e.getElementById(n)??e.querySelector(`[name="${CSS.escape(n)}"]`)}isExternal(e){return il(e)}async getCover(){let e=this.resources?.cover;return e?.href?new Blob([await this.loadBlob(e.href)],{type:e.mediaType}):null}async getCalibreBookmarks(){let e=await this.loadText("META-INF/calibre_bookmarks.txt"),n="encoding=json+base64:";if(e?.startsWith(n)){let r=atob(e.slice(n.length));return JSON.parse(r)}}};var so={};zd(so,{BlobReader:()=>Ja,BlobWriter:()=>Qa,Data64URIReader:()=>M2,Data64URIWriter:()=>L2,ERR_BAD_FORMAT:()=>fi,ERR_CENTRAL_DIRECTORY_NOT_FOUND:()=>Kc,ERR_DUPLICATED_NAME:()=>e0,ERR_ENCRYPTED:()=>Yc,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:()=>Vc,ERR_EOCDR_NOT_FOUND:()=>Wc,ERR_EOCDR_ZIP64_NOT_FOUND:()=>qc,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:()=>Xc,ERR_HTTP_RANGE:()=>mr,ERR_INVALID_COMMENT:()=>t0,ERR_INVALID_ENCRYPTION_STRENGTH:()=>i0,ERR_INVALID_ENTRY_COMMENT:()=>n0,ERR_INVALID_ENTRY_NAME:()=>r0,ERR_INVALID_EXTRAFIELD_DATA:()=>o0,ERR_INVALID_EXTRAFIELD_TYPE:()=>a0,ERR_INVALID_PASSWORD:()=>qa,ERR_INVALID_SIGNATURE:()=>Va,ERR_INVALID_VERSION:()=>Ha,ERR_ITERATOR_COMPLETED_TOO_SOON:()=>_c,ERR_LOCAL_FILE_HEADER_NOT_FOUND:()=>Gc,ERR_SPLIT_ZIP_FILE:()=>ja,ERR_UNSUPPORTED_COMPRESSION:()=>$a,ERR_UNSUPPORTED_ENCRYPTION:()=>Zc,ERR_UNSUPPORTED_FORMAT:()=>Ci,HttpRangeReader:()=>I2,HttpReader:()=>Lc,Reader:()=>pn,SplitDataReader:()=>to,SplitDataWriter:()=>hr,SplitZipReader:()=>B2,SplitZipWriter:()=>U2,TextReader:()=>R2,TextWriter:()=>O2,Uint8ArrayReader:()=>P2,Uint8ArrayWriter:()=>N2,Writer:()=>Za,ZipReader:()=>G2,ZipWriter:()=>rp,configure:()=>xi,getMimeType:()=>Ph,initReader:()=>no,initStream:()=>Jt,initWriter:()=>ro,readUint8Array:()=>et,terminateWorkers:()=>v2});function wi(t){return vi(t.map(([e,n])=>new Array(e).fill(n,0,e)))}function vi(t){return t.reduce((e,n)=>e.concat(Array.isArray(n)?vi(n):n),[])}var ol=[0,1,2,3].concat(...wi([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function Ae(){let t=this;function e(i){let a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.extra_bits,l=t.stat_desc.extra_base,u=t.stat_desc.max_length,c,d,f,p,b,g,m=0;for(p=0;p<=15;p++)i.bl_count[p]=0;for(a[i.heap[i.heap_max]*2+1]=0,c=i.heap_max+1;c<573;c++)d=i.heap[c],p=a[a[d*2+1]*2+1]+1,p>u&&(p=u,m++),a[d*2+1]=p,!(d>t.max_code)&&(i.bl_count[p]++,b=0,d>=l&&(b=s[d-l]),g=a[d*2],i.opt_len+=g*(p+b),o&&(i.static_len+=g*(o[d*2+1]+b)));if(m!==0){do{for(p=u-1;i.bl_count[p]===0;)p--;i.bl_count[p]--,i.bl_count[p+1]+=2,i.bl_count[u]--,m-=2}while(m>0);for(p=u;p!==0;p--)for(d=i.bl_count[p];d!==0;)f=i.heap[--c],!(f>t.max_code)&&(a[f*2+1]!=p&&(i.opt_len+=(p-a[f*2+1])*a[f*2],a[f*2+1]=p),d--)}}function n(i,a){let o=0;do o|=i&1,i>>>=1,o<<=1;while(--a>0);return o>>>1}function r(i,a,o){let s=[],l=0,u,c,d;for(u=1;u<=15;u++)s[u]=l=l+o[u-1]<<1;for(c=0;c<=a;c++)d=i[c*2+1],d!==0&&(i[c*2]=n(s[d]++,d))}t.build_tree=function(i){let a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.elems,l,u,c=-1,d;for(i.heap_len=0,i.heap_max=573,l=0;l=1;l--)i.pqdownheap(a,l);d=s;do l=i.heap[1],i.heap[1]=i.heap[i.heap_len--],i.pqdownheap(a,1),u=i.heap[1],i.heap[--i.heap_max]=l,i.heap[--i.heap_max]=u,a[d*2]=a[l*2]+a[u*2],i.depth[d]=Math.max(i.depth[l],i.depth[u])+1,a[l*2+1]=a[u*2+1]=d,i.heap[1]=d++,i.pqdownheap(a,1);while(i.heap_len>=2);i.heap[--i.heap_max]=i.heap[1],e(i),r(a,t.max_code,i.bl_count)}}Ae._length_code=[0,1,2,3,4,5,6,7].concat(...wi([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]]));Ae.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0];Ae.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576];Ae.d_code=function(t){return t<256?ol[t]:ol[256+(t>>>7)]};Ae.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0];Ae.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];Ae.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];Ae.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function Xe(t,e,n,r,i){let a=this;a.static_tree=t,a.extra_bits=e,a.extra_base=n,a.elems=r,a.max_length=i}var ih=[12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227],ah=wi([[144,8],[112,9],[24,7],[8,8]]);Xe.static_ltree=vi(ih.map((t,e)=>[t,ah[e]]));var oh=[0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23],sh=wi([[30,5]]);Xe.static_dtree=vi(oh.map((t,e)=>[t,sh[e]]));Xe.static_l_desc=new Xe(Xe.static_ltree,Ae.extra_lbits,256+1,286,15);Xe.static_d_desc=new Xe(Xe.static_dtree,Ae.extra_dbits,0,30,15);Xe.static_bl_desc=new Xe(null,Ae.extra_blbits,0,19,7);var lh=9,ch=8;function $t(t,e,n,r,i){let a=this;a.good_length=t,a.max_lazy=e,a.nice_length=n,a.max_chain=r,a.func=i}var Gl=0,ci=1,_n=2,Dt=[new $t(0,0,0,0,Gl),new $t(4,4,8,4,ci),new $t(4,5,16,8,ci),new $t(4,6,32,32,ci),new $t(4,4,16,16,_n),new $t(8,16,32,32,_n),new $t(8,16,128,128,_n),new $t(8,32,128,256,_n),new $t(32,128,258,1024,_n),new $t(32,258,258,4096,_n)],ti=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Ft=0,ni=1,or=2,ri=3,uh=32,va=42,ii=113,sr=666,xa=8,dh=0,Ta=1,fh=2,Oe=3,ui=258,mt=ui+Oe+1;function sl(t,e,n,r){let i=t[e*2],a=t[n*2];return i=3&&z[Ae.bl_order[D]*2+1]===0;D--);return t.opt_len+=3*(D+1)+5+5+4,D}function oe(D){t.pending_buf[t.pending++]=D}function le(D){oe(D&255),oe(D>>>8&255)}function J(D){oe(D>>8&255),oe(D&255&255)}function ae(D,B){let F,U=B;G>16-U?(F=D,q|=F<>>16-G,G+=U-16):(q|=D<=8&&(oe(q&255),q>>>=8,G-=8)}function Ie(){ae(Ta<<1,3),de(256,Xe.static_ltree),Le(),1+$+10-G<9&&(ae(Ta<<1,3),de(256,Xe.static_ltree),Le()),$=7}function ve(D,B){let F,U,j;if(t.dist_buf[M]=D,t.lc_buf[M]=B&255,M++,D===0?O[B*2]++:(I++,D--,O[(Ae._length_code[B]+256+1)*2]++,N[Ae.d_code(D)*2]++),!(M&8191)&&E>2){for(F=M*8,U=_-h,j=0;j<30;j++)F+=N[j*2]*(5+Ae.extra_dbits[j]);if(F>>>=3,I8?le(q):G>0&&oe(q&255),q=0,G=0}function ct(D,B,F){Ue(),$=8,F&&(le(B),le(~B)),t.pending_buf.set(l.subarray(D,D+B),t.pending),t.pending+=B}function rn(D,B,F){ae((dh<<1)+(F?1:0),3),ct(D,B,!0)}function Tt(D,B,F){let U,j,X=0;E>0?(Y.build_tree(t),ne.build_tree(t),X=ie(),U=t.opt_len+3+7>>>3,j=t.static_len+3+7>>>3,j<=U&&(U=j)):U=j=B+5,B+4<=U&&D!=-1?rn(D,B,F):j==U?(ae((Ta<<1)+(F?1:0),3),Re(Xe.static_ltree,Xe.static_dtree)):(ae((fh<<1)+(F?1:0),3),re(Y.max_code+1,ne.max_code+1,X+1),Re(O,N)),pe(),F&&Ue()}function Qe(D){Tt(h>=0?h:-1,_-h,D),h=_,e.flush_pending()}function Bt(){let D,B,F,U;do{if(U=u-k-_,U===0&&_===0&&k===0)U=a;else if(U==-1)U--;else if(_>=a+a-mt){l.set(l.subarray(a,a+a),0),x-=a,_-=a,h-=a,D=p,F=D;do B=d[--F]&65535,d[F]=B>=a?B-a:0;while(--D!==0);D=a,F=D;do B=c[--F]&65535,c[F]=B>=a?B-a:0;while(--D!==0);U+=a}if(e.avail_in===0)return;D=e.read_buf(l,_+k,U),k+=D,k>=Oe&&(f=l[_]&255,f=(f<r-5&&(B=r-5);;){if(k<=1){if(Bt(),k===0&&D==0)return Ft;if(k===0)break}if(_+=k,k=0,F=h+B,(_===0||_>=F)&&(k=_-F,_=F,Qe(!1),e.avail_out===0)||_-h>=a-mt&&(Qe(!1),e.avail_out===0))return Ft}return Qe(D==4),e.avail_out===0?D==4?or:Ft:D==4?ri:ni}function ut(D){let B=A,F=_,U,j,X=v,se=_>a-mt?_-(a-mt):0,Ke=P,dt=s,wn=_+ui,Yn=l[F+X-1],Zn=l[F+X];v>=L&&(B>>=2),Ke>k&&(Ke=k);do if(U=D,!(l[U+X]!=Zn||l[U+X-1]!=Yn||l[U]!=l[F]||l[++U]!=l[F+1])){F+=2,U++;do;while(l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&FX){if(x=D,X=j,j>=Ke)break;Yn=l[F+X-1],Zn=l[F+X]}}while((D=c[D&dt]&65535)>se&&--B!==0);return X<=k?X:k}function je(D){let B=0,F;for(;;){if(k=Oe&&(f=(f<=Oe)if(F=ve(_-x,y-Oe),k-=y,y<=C&&k>=Oe){y--;do _++,f=(f<=Oe&&(f=(f<4096)&&(y=Oe-1)),v>=Oe&&y<=v){U=_+k-Oe,F=ve(_-1-w,v-Oe),k-=v-1,v-=2;do++_<=U&&(f=(f<lh||U!=xa||F<9||F>15||B<0||B>9||X<0||X>2?-2:(D.dstate=t,o=F,a=1<9||F<0||F>2?-2:(Dt[E].func!=Dt[B].func&&D.total_in!==0&&(U=D.deflate(1)),E!=B&&(E=B,C=Dt[E].max_lazy,L=Dt[E].good_length,P=Dt[E].nice_length,A=Dt[E].max_chain),R=F,U)},t.deflateSetDictionary=function(D,B,F){let U=F,j,X=0;if(!B||n!=va)return-2;if(Ua-mt&&(U=a-mt,X=F-U),l.set(B.subarray(X,X+U),0),_=U,h=U,f=l[0]&255,f=(f<4||B<0)return-2;if(!D.next_out||!D.next_in&&D.avail_in!==0||n==sr&&B!=4)return D.msg=ti[2- -2],-2;if(D.avail_out===0)return D.msg=ti[2- -5],-5;if(e=D,X=i,i=B,n==va&&(U=xa+(o-8<<4)<<8,j=(E-1&255)>>1,j>3&&(j=3),U|=j<<6,_!==0&&(U|=uh),U+=31-U%31,n=ii,J(U)),t.pending!==0){if(e.flush_pending(),e.avail_out===0)return i=-1,0}else if(e.avail_in===0&&B<=X&&B!=4)return e.msg=ti[2- -5],-5;if(n==sr&&e.avail_in!==0)return D.msg=ti[2- -5],-5;if(e.avail_in!==0||k!==0||B!=0&&n!=sr){switch(se=-1,Dt[E].func){case Gl:se=$e(B);break;case ci:se=je(B);break;case _n:se=nt(B);break;default:}if((se==or||se==ri)&&(n=sr),se==Ft||se==or)return e.avail_out===0&&(i=-1),0;if(se==ni){if(B==1)Ie();else if(rn(0,0,!1),B==3)for(F=0;Fn&&(i=n),i===0?0:(r.avail_in-=i,t.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),e),r.next_in_index+=i,r.total_in+=i,i)},flush_pending(){let t=this,e=t.dstate.pending;e>t.avail_out&&(e=t.avail_out),e!==0&&(t.next_out.set(t.dstate.pending_buf.subarray(t.dstate.pending_out,t.dstate.pending_out+e),t.next_out_index),t.next_out_index+=e,t.dstate.pending_out+=e,t.total_out+=e,t.avail_out-=e,t.dstate.pending-=e,t.dstate.pending===0&&(t.dstate.pending_out=0))}};function ph(t){let e=this,n=new Xl,r=mh(t&&t.chunkSize?t.chunkSize:64*1024),i=0,a=new Uint8Array(r),o=t?t.level:-1;typeof o>"u"&&(o=-1),n.deflateInit(o),n.next_out=a,e.append=function(s,l){let u,c,d=0,f=0,p=0,b=[];if(s.length){n.next_in_index=0,n.next_in=s,n.avail_in=s.length;do{if(n.next_out_index=0,n.avail_out=r,u=n.deflate(i),u!=0)throw new Error("deflating: "+n.msg);n.next_out_index&&(n.next_out_index==r?b.push(new Uint8Array(a)):b.push(a.slice(0,n.next_out_index))),p+=n.next_out_index,l&&n.next_in_index>0&&n.next_in_index!=d&&(l(n.next_in_index),d=n.next_in_index)}while(n.avail_in>0||n.avail_out===0);return b.length>1?(c=new Uint8Array(p),b.forEach(function(g){c.set(g,f),f+=g.length})):c=b[0]||new Uint8Array,c}},e.flush=function(){let s,l,u=0,c=0,d=[];do{if(n.next_out_index=0,n.avail_out=r,s=n.deflate(4),s!=1&&s!=0)throw new Error("deflating: "+n.msg);r-n.avail_out>0&&d.push(a.slice(0,n.next_out_index)),c+=n.next_out_index}while(n.avail_in>0||n.avail_out===0);return n.deflateEnd(),l=new Uint8Array(c),d.forEach(function(f){l.set(f,u),u+=f.length}),l}}function mh(t){return t+5*(Math.floor(t/16383)+1)}var gt=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],Yl=1440,gh=0,bh=4,yh=9,wh=5,vh=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],xh=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],Th=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],_h=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],Ch=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],kh=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],ln=15;function Oa(){let t=this,e,n,r,i,a,o;function s(u,c,d,f,p,b,g,m,h,y,w){let S,_,x,k,v,A,C,E,R,L,P,O,N,z,Y;L=0,v=d;do r[u[c+L]]++,L++,v--;while(v!==0);if(r[0]==d)return g[0]=-1,m[0]=0,0;for(E=m[0],A=1;A<=ln&&r[A]===0;A++);for(C=A,Ev&&(E=v),m[0]=E,z=1<O+E;){if(k++,O+=E,Y=x-O,Y=Y>E?E:Y,(_=1<<(A=C-O))>S+1&&(_-=S+1,N=C,AYl)return-3;a[k]=P=y[0],y[0]+=Y,k!==0?(o[k]=v,i[0]=A,i[1]=E,A=v>>>O-E,i[2]=P-a[k-1]-A,h.set(i,(a[k-1]+A)*3)):g[0]=P}for(i[1]=C-O,L>=d?i[0]=128+64:w[L]>>O;A>>=1)v^=A;for(v^=A,R=(1<257?(y==-3?h.msg="oversubscribed distance tree":y==-5?(h.msg="incomplete distance tree",y=-3):y!=-4&&(h.msg="empty distance tree with lengths",y=-3),y):0)}}Oa.inflate_trees_fixed=function(t,e,n,r){return t[0]=yh,e[0]=wh,n[0]=vh,r[0]=xh,0};var ai=0,ll=1,cl=2,ul=3,dl=4,fl=5,hl=6,_a=7,pl=8,oi=9;function Sh(){let t=this,e,n=0,r,i=0,a=0,o=0,s=0,l=0,u=0,c=0,d,f=0,p,b=0;function g(m,h,y,w,S,_,x,k){let v,A,C,E,R,L,P,O,N,z,Y,ne,K,ee,M,I;P=k.next_in_index,O=k.avail_in,R=x.bitb,L=x.bitk,N=x.write,z=N>=A[I+1],L-=A[I+1],x.win[N++]=A[I+2],z--;continue}do{if(R>>=A[I+1],L-=A[I+1],E&16){for(E&=15,K=A[I+2]+(R>[E]),R>>=E,L-=E;L<15;)O--,R|=(k.read_byte(P++)&255)<>=A[I+1],L-=A[I+1],E&16){for(E&=15;L>=E,L-=E,z-=K,N>=ee)M=N-ee,N-M>0&&2>N-M?(x.win[N++]=x.win[M++],x.win[N++]=x.win[M++],K-=2):(x.win.set(x.win.subarray(M,M+2),N),N+=2,M+=2,K-=2);else{M=N-ee;do M+=x.end;while(M<0);if(E=x.end-M,K>E){if(K-=E,N-M>0&&E>N-M)do x.win[N++]=x.win[M++];while(--E!==0);else x.win.set(x.win.subarray(M,M+E),N),N+=E,M+=E,E=0;M=0}}if(N-M>0&&K>N-M)do x.win[N++]=x.win[M++];while(--K!==0);else x.win.set(x.win.subarray(M,M+K),N),N+=K,M+=K,K=0;break}else if(!(E&64))v+=A[I+2],v+=R>[E],I=(C+v)*3,E=A[I];else return k.msg="invalid distance code",K=k.avail_in-O,K=L>>3>3:K,O+=K,P-=K,L-=K<<3,x.bitb=R,x.bitk=L,k.avail_in=O,k.total_in+=P-k.next_in_index,k.next_in_index=P,x.write=N,-3;while(!0);break}if(E&64)return E&32?(K=k.avail_in-O,K=L>>3>3:K,O+=K,P-=K,L-=K<<3,x.bitb=R,x.bitk=L,k.avail_in=O,k.total_in+=P-k.next_in_index,k.next_in_index=P,x.write=N,1):(k.msg="invalid literal/length code",K=k.avail_in-O,K=L>>3>3:K,O+=K,P-=K,L-=K<<3,x.bitb=R,x.bitk=L,k.avail_in=O,k.total_in+=P-k.next_in_index,k.next_in_index=P,x.write=N,-3);if(v+=A[I+2],v+=R>[E],I=(C+v)*3,(E=A[I])===0){R>>=A[I+1],L-=A[I+1],x.win[N++]=A[I+2],z--;break}}while(!0)}while(z>=258&&O>=10);return K=k.avail_in-O,K=L>>3>3:K,O+=K,P-=K,L-=K<<3,x.bitb=R,x.bitk=L,k.avail_in=O,k.total_in+=P-k.next_in_index,k.next_in_index=P,x.write=N,0}t.init=function(m,h,y,w,S,_){e=ai,u=m,c=h,d=y,f=w,p=S,b=_,r=null},t.proc=function(m,h,y){let w,S,_,x=0,k=0,v=0,A,C,E,R;for(v=h.next_in_index,A=h.avail_in,x=m.bitb,k=m.bitk,C=m.write,E=C=258&&A>=10&&(m.bitb=x,m.bitk=k,h.avail_in=A,h.total_in+=v-h.next_in_index,h.next_in_index=v,m.write=C,y=g(u,c,d,f,p,b,m,h),v=h.next_in_index,A=h.avail_in,x=m.bitb,k=m.bitk,C=m.write,E=C>>=r[S+1],k-=r[S+1],_=r[S],_===0){o=r[S+2],e=hl;break}if(_&16){s=_&15,n=r[S+2],e=cl;break}if(!(_&64)){a=_,i=S/3+r[S+2];break}if(_&32){e=_a;break}return e=oi,h.msg="invalid literal/length code",y=-3,m.bitb=x,m.bitk=k,h.avail_in=A,h.total_in+=v-h.next_in_index,h.next_in_index=v,m.write=C,m.inflate_flush(h,y);case cl:for(w=s;k>=w,k-=w,a=c,r=p,i=b,e=ul;case ul:for(w=a;k>=r[S+1],k-=r[S+1],_=r[S],_&16){s=_&15,l=r[S+2],e=dl;break}if(!(_&64)){a=_,i=S/3+r[S+2];break}return e=oi,h.msg="invalid distance code",y=-3,m.bitb=x,m.bitk=k,h.avail_in=A,h.total_in+=v-h.next_in_index,h.next_in_index=v,m.write=C,m.inflate_flush(h,y);case dl:for(w=s;k>=w,k-=w,e=fl;case fl:for(R=C-l;R<0;)R+=m.end;for(;n!==0;){if(E===0&&(C==m.end&&m.read!==0&&(C=0,E=C7&&(k-=8,A++,v--),m.write=C,y=m.inflate_flush(h,y),C=m.write,E=Cg.avail_out&&(h=g.avail_out),h!==0&&m==-5&&(m=0),g.avail_out-=h,g.total_out+=h,g.next_out.set(n.win.subarray(w,w+h),y),y+=h,w+=h,w==n.end&&(w=0,n.write==n.end&&(n.write=0),h=n.write-w,h>g.avail_out&&(h=g.avail_out),h!==0&&m==-5&&(m=0),g.avail_out-=h,g.total_out+=h,g.next_out.set(n.win.subarray(w,w+h),y),y+=h,w+=h),g.next_out_index=y,n.read=w,m},n.proc=function(g,m){let h,y,w,S,_,x,k,v;for(S=g.next_in_index,_=g.avail_in,y=n.bitb,w=n.bitk,x=n.write,k=x>>1){case 0:y>>>=3,w-=3,h=w&7,y>>>=h,w-=h,r=Ca;break;case 1:A=[],C=[],E=[[]],R=[[]],Oa.inflate_trees_fixed(A,C,E,R),c.init(A[0],C[0],E[0],0,R[0],0),y>>>=3,w-=3,r=si;break;case 2:y>>>=3,w-=3,r=bl;break;case 3:return y>>>=3,w-=3,r=Tn,g.msg="invalid block type",m=-3,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m)}break;case Ca:for(;w<32;){if(_!==0)m=0;else return n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);_--,y|=(g.read_byte(S++)&255)<>>16&65535)!=(y&65535))return r=Tn,g.msg="invalid stored block lengths",m=-3,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);i=y&65535,y=w=0,r=i!==0?gl:d!==0?li:Rn;break;case gl:if(_===0||k===0&&(x==n.end&&n.read!==0&&(x=0,k=x_&&(h=_),h>k&&(h=k),n.win.set(g.read_buf(S,h),x),S+=h,_-=h,x+=h,k-=h,(i-=h)!==0)break;r=d!==0?li:Rn;break;case bl:for(;w<14;){if(_!==0)m=0;else return n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);_--,y|=(g.read_byte(S++)&255)<29||(h>>5&31)>29)return r=Tn,g.msg="too many length or distance symbols",m=-3,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);if(h=258+(h&31)+(h>>5&31),!s||s.length>>=14,w-=14,o=0,r=yl;case yl:for(;o<4+(a>>>10);){for(;w<3;){if(_!==0)m=0;else return n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);_--,y|=(g.read_byte(S++)&255)<>>=3,w-=3}for(;o<19;)s[ml[o++]]=0;if(l[0]=7,h=b.inflate_trees_bits(s,l,u,f,g),h!=0)return m=h,m==-3&&(s=null,r=Tn),n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);o=0,r=wl;case wl:for(;h=a,!(o>=258+(h&31)+(h>>5&31));){let z,Y;for(h=l[0];w>>=h,w-=h,s[o++]=Y;else{for(v=Y==18?7:Y-14,z=Y==18?11:3;w>>=h,w-=h,z+=y>[v],y>>>=v,w-=v,v=o,h=a,v+z>258+(h&31)+(h>>5&31)||Y==16&&v<1)return s=null,r=Tn,g.msg="invalid bit length repeat",m=-3,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);Y=Y==16?s[v-1]:0;do s[v++]=Y;while(--z!==0);o=v}}if(u[0]=-1,L=[],P=[],O=[],N=[],L[0]=9,P[0]=6,h=a,h=b.inflate_trees_dynamic(257+(h&31),1+(h>>5&31),s,L,P,O,N,f,g),h!=0)return h==-3&&(s=null,r=Tn),m=h,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);c.init(L[0],P[0],f,O[0],f,N[0]),r=si;case si:if(n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,(m=c.proc(n,g,m))!=1)return n.inflate_flush(g,m);if(m=0,c.free(g),S=g.next_in_index,_=g.avail_in,y=n.bitb,w=n.bitk,x=n.write,k=x15?(t.inflateEnd(n),-2):(t.wbits=r,n.istate.blocks=new Eh(n,1<>4)+8>o.wbits){o.mode=cn,n.msg="invalid win size",o.marker=5;break}o.mode=xl;case xl:if(n.avail_in===0)return i;if(i=r,n.avail_in--,n.total_in++,a=n.read_byte(n.next_in_index++)&255,((o.method<<8)+a)%31!==0){o.mode=cn,n.msg="incorrect header check",o.marker=5;break}if(!(a&Ah)){o.mode=lr;break}o.mode=Tl;case Tl:if(n.avail_in===0)return i;i=r,n.avail_in--,n.total_in++,o.need=(n.read_byte(n.next_in_index++)&255)<<24&4278190080,o.mode=_l;case _l:if(n.avail_in===0)return i;i=r,n.avail_in--,n.total_in++,o.need+=(n.read_byte(n.next_in_index++)&255)<<16&16711680,o.mode=Cl;case Cl:if(n.avail_in===0)return i;i=r,n.avail_in--,n.total_in++,o.need+=(n.read_byte(n.next_in_index++)&255)<<8&65280,o.mode=kl;case kl:return n.avail_in===0?i:(i=r,n.avail_in--,n.total_in++,o.need+=n.read_byte(n.next_in_index++)&255,o.mode=ka,2);case ka:return o.mode=cn,n.msg="need dictionary",o.marker=0,-2;case lr:if(i=o.blocks.proc(n,i),i==-3){o.mode=cn,o.marker=0;break}if(i==0&&(i=r),i!=1)return i;i=r,o.blocks.reset(n,o.was),o.mode=Sl;case Sl:return n.avail_in=0,1;case cn:return-3;default:return-2}},t.inflateSetDictionary=function(n,r,i){let a=0,o=i;if(!n||!n.istate||n.istate.mode!=ka)return-2;let s=n.istate;return o>=1<0&&n.next_in_index!=f&&(l(n.next_in_index),f=n.next_in_index)}while(n.avail_in>0||n.avail_out===0);return u.length>1?(d=new Uint8Array(b),u.forEach(function(g){d.set(g,p),p+=g.length})):d=u[0]||new Uint8Array,d}},e.flush=function(){n.inflateEnd()}}var di="/",El=new Date(2107,11,31),Al=new Date(1980,0,1),Ne=void 0,pi="undefined",Jl="function",Ml=class{constructor(t){return class extends TransformStream{constructor(e,n){let r=new t(n);super({transform(i,a){a.enqueue(r.append(i))},flush(i){let a=r.flush();a&&i.enqueue(a)}})}}}},Fh=64,Ql=2;try{typeof navigator!=pi&&navigator.hardwareConcurrency&&(Ql=navigator.hardwareConcurrency)}catch{}var Ih={chunkSize:512*1024,maxWorkers:Ql,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:Ne,CompressionStreamNative:typeof CompressionStream!=pi&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=pi&&DecompressionStream},hn=Object.assign({},Ih);function Wa(){return hn}function ec(t){return Math.max(t.chunkSize,Fh)}function xi(t){let{baseURL:e,chunkSize:n,maxWorkers:r,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:s,Inflate:l,CompressionStream:u,DecompressionStream:c,workerScripts:d}=t;if(un("baseURL",e),un("chunkSize",n),un("maxWorkers",r),un("terminateWorkerTimeout",i),un("useCompressionStream",a),un("useWebWorkers",o),s&&(hn.CompressionStream=new Ml(s)),l&&(hn.DecompressionStream=new Ml(l)),un("CompressionStream",u),un("DecompressionStream",c),d!==Ne){let{deflate:f,inflate:p}=d;if((f||p)&&(hn.workerScripts||(hn.workerScripts={})),f){if(!Array.isArray(f))throw new Error("workerScripts.deflate must be an array");hn.workerScripts.deflate=f}if(p){if(!Array.isArray(p))throw new Error("workerScripts.inflate must be an array");hn.workerScripts.inflate=p}}}function un(t,e){e!==Ne&&(hn[t]=e)}function Ph(){return"application/octet-stream"}var tc=[];for(let t=0;t<256;t++){let e=t;for(let n=0;n<8;n++)e&1?e=e>>>1^3988292384:e=e>>>1;tc[t]=e}var mi=class{constructor(t){this.crc=t||-1}append(t){let e=this.crc|0;for(let n=0,r=t.length|0;n>>8^tc[(e^t[n])&255];this.crc=e}get(){return~this.crc}},nc=class extends TransformStream{constructor(){let t=new mi;super({transform(e){t.append(e)},flush(e){let n=new Uint8Array(4);new DataView(n.buffer).setUint32(0,t.get()),e.enqueue(n)}})}};function Da(t){if(typeof TextEncoder>"u"){t=unescape(encodeURIComponent(t));let e=new Uint8Array(t.length);for(let n=0;n0&&e&&(t[n-1]=ot.partial(e,t[n-1]&2147483648>>e-1,1)),t},partial(t,e,n){return t===32?e:(n?e|0:e<<32-t)+t*1099511627776},getPartial(t){return Math.round(t/1099511627776)||32},_shiftRight(t,e,n,r){for(r===void 0&&(r=[]);e>=32;e-=32)r.push(n),n=0;if(e===0)return r.concat(t);for(let o=0;o>>e),n=t[o]<<32-e;let i=t.length?t[t.length-1]:0,a=ot.getPartial(i);return r.push(ot.partial(e+a&31,e+a>32?n:r.pop(),1)),r}},gi={bytes:{fromBits(t){let e=ot.bitLength(t)/8,n=new Uint8Array(e),r;for(let i=0;i>>24,r<<=8;return n},toBits(t){let e=[],n,r=0;for(n=0;n9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");let a=new Uint32Array(n),o=0;for(let s=e.blockSize+r-(e.blockSize+r&e.blockSize-1);s<=i;s+=e.blockSize)e._block(a.subarray(16*o,16*(o+1))),o+=1;return n.splice(0,16*o),e}finalize(){let t=this,e=t._buffer,n=t._h;e=ot.concat(e,[ot.partial(1,1)]);for(let r=e.length+2;r&15;r++)e.push(0);for(e.push(Math.floor(t._length/4294967296)),e.push(t._length|0);e.length;)t._block(e.splice(0,16));return t.reset(),n}_f(t,e,n,r){if(t<=19)return e&n|~e&r;if(t<=39)return e^n^r;if(t<=59)return e&n|e&r|n&r;if(t<=79)return e^n^r}_S(t,e){return e<>>32-t}_block(t){let e=this,n=e._h,r=Array(80);for(let u=0;u<16;u++)r[u]=t[u];let i=n[0],a=n[1],o=n[2],s=n[3],l=n[4];for(let u=0;u<=79;u++){u>=16&&(r[u]=e._S(1,r[u-3]^r[u-8]^r[u-14]^r[u-16]));let c=e._S(5,i)+e._f(u,a,o,s)+l+r[u]+e._key[Math.floor(u/20)]|0;l=s,s=o,o=e._S(30,a),a=i,i=c}n[0]=n[0]+i|0,n[1]=n[1]+a|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+l|0}};var ic={};ic.aes=class{constructor(t){let e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();let n=e._tables[0][4],r=e._tables[1],i=t.length,a,o,s,l=1;if(i!==4&&i!==6&&i!==8)throw new Error("invalid aes key size");for(e._key=[o=t.slice(0),s=[]],a=i;a<4*i+28;a++){let u=o[a-1];(a%i===0||i===8&&a%i===4)&&(u=n[u>>>24]<<24^n[u>>16&255]<<16^n[u>>8&255]<<8^n[u&255],a%i===0&&(u=u<<8^u>>>24^l<<24,l=l<<1^(l>>7)*283)),o[a]=o[a-i]^u}for(let u=0;a;u++,a--){let c=o[u&3?a:a-4];a<=4||u<4?s[u]=c:s[u]=r[0][n[c>>>24]]^r[1][n[c>>16&255]]^r[2][n[c>>8&255]]^r[3][n[c&255]]}}encrypt(t){return this._crypt(t,0)}decrypt(t){return this._crypt(t,1)}_precompute(){let t=this._tables[0],e=this._tables[1],n=t[4],r=e[4],i=[],a=[],o,s,l,u;for(let c=0;c<256;c++)a[(i[c]=c<<1^(c>>7)*283)^c]=c;for(let c=o=0;!n[c];c^=s||1,o=a[o]||1){let d=o^o<<1^o<<2^o<<3^o<<4;d=d>>8^d&255^99,n[c]=d,r[d]=c,u=i[l=i[s=i[c]]];let f=u*16843009^l*65537^s*257^c*16843008,p=i[d]*257^d*16843008;for(let b=0;b<4;b++)t[b][c]=p=p<<24^p>>>8,e[b][d]=f=f<<24^f>>>8}for(let c=0;c<5;c++)t[c]=t[c].slice(0),e[c]=e[c].slice(0)}_crypt(t,e){if(t.length!==4)throw new Error("invalid aes block size");let n=this._key[e],r=n.length/4-2,i=[0,0,0,0],a=this._tables[e],o=a[0],s=a[1],l=a[2],u=a[3],c=a[4],d=t[0]^n[0],f=t[e?3:1]^n[1],p=t[2]^n[2],b=t[e?1:3]^n[3],g=4,m,h,y;for(let w=0;w>>24]^s[f>>16&255]^l[p>>8&255]^u[b&255]^n[g],h=o[f>>>24]^s[p>>16&255]^l[b>>8&255]^u[d&255]^n[g+1],y=o[p>>>24]^s[b>>16&255]^l[d>>8&255]^u[f&255]^n[g+2],b=o[b>>>24]^s[d>>16&255]^l[f>>8&255]^u[p&255]^n[g+3],g+=4,d=m,f=h,p=y;for(let w=0;w<4;w++)i[e?3&-w:w]=c[d>>>24]<<24^c[f>>16&255]<<16^c[p>>8&255]<<8^c[b&255]^n[g++],m=d,d=f,f=p,p=b,b=m;return i}};var Nh={getRandomValues(t){let e=new Uint32Array(t.buffer),n=r=>{let i=987654321,a=4294967295;return function(){return i=36969*(i&65535)+(i>>16)&a,r=18e3*(r&65535)+(r>>16)&a,(((i<<16)+r&a)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let r=0,i;r>24&255)===255){let e=t>>16&255,n=t>>8&255,r=t&255;e===255?(e=0,n===255?(n=0,r===255?r=0:++r):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=r}else t+=1<<24;return t}incCounter(t){(t[0]=this.incWord(t[0]))===0&&(t[1]=this.incWord(t[1]))}calculate(t,e,n){let r;if(!(r=e.length))return[];let i=ot.bitLength(e);for(let a=0;a>5)+1<<2,a,o,s,l,u,c=new ArrayBuffer(i),d=new DataView(c),f=0,p=ot;for(e=gi.bytes.toBits(e),u=1;f<(i||1);u++){for(a=o=t.encrypt(p.concat(e,[u])),s=1;si&&(t=new n().update(t).finalize());for(let a=0;athis.resolveReady=r),password:t,signed:e,strength:n-1,pending:new Uint8Array})},async transform(r,i){let a=this,{password:o,strength:s,resolveReady:l,ready:u}=a;o?(await Yh(a,s,o,kt(r,0,ur[s]+2)),r=kt(r,ur[s]+2),l()):await u;let c=new Uint8Array(r.length-dn-(r.length-dn)%On);i.enqueue(dc(a,r,c,0,dn,!0))},async flush(r){let{signed:i,ctr:a,hmac:o,pending:s,ready:l}=this;await l;let u=kt(s,0,s.length-dn),c=kt(s,s.length-dn),d=new Uint8Array;if(u.length){let f=fr(Ht,u);o.update(f);let p=a.update(f);d=dr(Ht,p)}if(i){let f=kt(dr(Ht,o.digest()),0,dn);for(let p=0;pthis.resolveReady=r),password:t,strength:e-1,pending:new Uint8Array})},async transform(r,i){let a=this,{password:o,strength:s,resolveReady:l,ready:u}=a,c=new Uint8Array;o?(c=await Zh(a,s,o),l()):await u;let d=new Uint8Array(c.length+r.length-r.length%On);d.set(c,0),i.enqueue(dc(a,r,d,c.length,0))},async flush(r){let{ctr:i,hmac:a,pending:o,ready:s}=this;await s;let l=new Uint8Array;if(o.length){let u=i.update(fr(Ht,o));a.update(u),l=dr(Ht,u)}n.signature=dr(Ht,a.digest()).slice(0,dn),r.enqueue(Ka(l,n.signature))}}),n=this}};function dc(t,e,n,r,i,a){let{ctr:o,hmac:s,pending:l}=t,u=e.length-i;l.length&&(e=Ka(l,e),n=e2(n,u-u%On));let c;for(c=0;c<=u-On;c+=On){let d=fr(Ht,kt(e,c,c+On));a&&s.update(d);let f=o.update(d);a||s.update(f),n.set(dr(Ht,f),c+r)}return t.pending=kt(e,c),n}async function Yh(t,e,n,r){let i=await fc(t,e,n,kt(r,0,ur[e])),a=kt(r,ur[e]);if(i[0]!=a[0]||i[1]!=a[1])throw new Error(qa)}async function Zh(t,e,n){let r=oc(new Uint8Array(ur[e])),i=await fc(t,e,n,r);return Ka(r,i)}async function fc(t,e,n,r){t.password=null;let i=Da(n),a=await Jh(Bh,i,jh,!1,Hh),o=await Qh(Object.assign({salt:r},Fa),a,8*(cr[e]*2+2)),s=new Uint8Array(o),l=fr(Ht,kt(s,0,cr[e])),u=fr(Ht,kt(s,cr[e],cr[e]*2)),c=kt(s,cr[e]*2);return Object.assign(t,{keys:{key:l,authentication:u,passwordVerification:c},ctr:new Vh(new qh(l),Array.from(Wh)),hmac:new Kh(u)}),c}async function Jh(t,e,n,r,i){if(Ll)try{return await pr.importKey(t,e,n,r,i)}catch{return Ll=!1,Cn.importKey(e)}else return Cn.importKey(e)}async function Qh(t,e,n){if(Rl)try{return await pr.deriveBits(t,e,n)}catch{return Rl=!1,Cn.pbkdf2(e,t.salt,Fa.iterations,n)}else return Cn.pbkdf2(e,t.salt,Fa.iterations,n)}function Ka(t,e){let n=t;return t.length+e.length&&(n=new Uint8Array(t.length+e.length),n.set(t,0),n.set(e,t.length)),n}function e2(t,e){if(e&&e>t.length){let n=t;t=new Uint8Array(e),t.set(n,0)}return t}function kt(t,e,n){return t.subarray(e,n)}function dr(t,e){return t.fromBits(e)}function fr(t,e){return t.toBits(e)}var Dn=12,t2=class extends TransformStream{constructor({password:t,passwordVerification:e}){super({start(){Object.assign(this,{password:t,passwordVerification:e}),hc(this,t)},transform(n,r){let i=this;if(i.password){let a=Ol(i,n.subarray(0,Dn));if(i.password=null,a[Dn-1]!=i.passwordVerification)throw new Error(qa);n=n.subarray(Dn)}r.enqueue(Ol(i,n))}})}},n2=class extends TransformStream{constructor({password:t,passwordVerification:e}){super({start(){Object.assign(this,{password:t,passwordVerification:e}),hc(this,t)},transform(n,r){let i=this,a,o;if(i.password){i.password=null;let s=oc(new Uint8Array(Dn));s[Dn-1]=i.passwordVerification,a=new Uint8Array(n.length+s.length),a.set(Dl(i,s),0),o=Dn}else a=new Uint8Array(n.length),o=0;a.set(Dl(i,n),o),r.enqueue(a)}})}};function Ol(t,e){let n=new Uint8Array(e.length);for(let r=0;r>>24]),i=~t.crcKey2.get(),t.keys=[n,r,i]}function pc(t){let e=t.keys[2]|2;return mc(Math.imul(e,e^1)>>>8)}function mc(t){return t&255}function Fl(t){return t&4294967295}var Il="deflate-raw",r2=class extends TransformStream{constructor(t,{chunkSize:e,CompressionStream:n,CompressionStreamNative:r}){super({});let{compressed:i,encrypted:a,useCompressionStream:o,zipCrypto:s,signed:l,level:u}=t,c=this,d,f,p=gc(super.readable);(!a||s)&&l&&([p,d]=p.tee(),d=Wt(d,new nc)),i&&(p=yc(p,o,{level:u,chunkSize:e},r,n)),a&&(s?p=Wt(p,new n2(t)):(f=new Xh(t),p=Wt(p,f))),bc(c,p,async()=>{let b;a&&!s&&(b=f.signature),(!a||s)&&l&&(b=await d.getReader().read(),b=new DataView(b.value.buffer).getUint32(0)),c.signature=b})}},i2=class extends TransformStream{constructor(t,{chunkSize:e,DecompressionStream:n,DecompressionStreamNative:r}){super({});let{zipCrypto:i,encrypted:a,signed:o,signature:s,compressed:l,useCompressionStream:u}=t,c,d,f=gc(super.readable);a&&(i?f=Wt(f,new t2(t)):(d=new Gh(t),f=Wt(f,d))),l&&(f=yc(f,u,{chunkSize:e},r,n)),(!a||i)&&o&&([f,c]=f.tee(),c=Wt(c,new nc)),bc(this,f,async()=>{if((!a||i)&&o){let p=await c.getReader().read(),b=new DataView(p.value.buffer);if(s!=b.getUint32(0,!1))throw new Error(Va)}})}};function gc(t){return Wt(t,new TransformStream({transform(e,n){e&&e.length&&n.enqueue(e)}}))}function bc(t,e,n){e=Wt(e,new TransformStream({flush:n})),Object.defineProperty(t,"readable",{get(){return e}})}function yc(t,e,n,r,i){try{let a=e&&r?r:i;t=Wt(t,new a(Il,n))}catch(a){if(e)t=Wt(t,new i(Il,n));else throw a}return t}function Wt(t,e){return t.pipeThrough(e)}var a2="message",o2="start",s2="pull",Pl="data",l2="ack",c2="close",wc="deflate",vc="inflate",u2=class extends TransformStream{constructor(t,e){super({});let n=this,{codecType:r}=t,i;r.startsWith(wc)?i=r2:r.startsWith(vc)&&(i=i2);let a=0,o=new i(t,e),s=super.readable,l=new TransformStream({transform(u,c){u&&u.length&&(a+=u.length,c.enqueue(u))},flush(){let{signature:u}=o;Object.assign(n,{signature:u,size:a})}});Object.defineProperty(n,"readable",{get(){return s.pipeThrough(o).pipeThrough(l)}})}},d2=typeof Worker!=pi,Sa=class{constructor(t,{readable:e,writable:n},{options:r,config:i,streamOptions:a,useWebWorkers:o,transferStreams:s,scripts:l},u){let{signal:c}=a;return Object.assign(t,{busy:!0,readable:e.pipeThrough(new f2(e,a,i),{signal:c}),writable:n,options:Object.assign({},r),scripts:l,transferStreams:s,terminate(){let{worker:d,busy:f}=t;d&&!f&&(d.terminate(),t.interface=null)},onTaskFinished(){t.busy=!1,u(t)}}),(o&&d2?p2:h2)(t,i)}},f2=class extends TransformStream{constructor(t,{onstart:e,onprogress:n,size:r,onend:i},{chunkSize:a}){let o=0;super({start(){e&&Ea(e,r)},async transform(s,l){o+=s.length,n&&await Ea(n,o,r),l.enqueue(s)},flush(){t.size=o,i&&Ea(i,o)}},{highWaterMark:1,size:()=>a})}};async function Ea(t,...e){try{await t(...e)}catch{}}function h2(t,e){return{run:()=>m2(t,e)}}function p2(t,{baseURL:e,chunkSize:n}){return t.interface||Object.assign(t,{worker:y2(t.scripts[0],e,t),interface:{run:()=>g2(t,{chunkSize:n})}}),t.interface}async function m2({options:t,readable:e,writable:n,onTaskFinished:r},i){let a=new u2(t,i);try{await e.pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});let{signature:o,size:s}=a;return{signature:o,size:s}}finally{r()}}async function g2(t,e){let n,r,i=new Promise((d,f)=>{n=d,r=f});Object.assign(t,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});let{readable:a,options:o,scripts:s}=t,{writable:l,closed:u}=b2(t.writable);Ia({type:o2,scripts:s.slice(1),options:o,config:e,readable:a,writable:l},t)||Object.assign(t,{reader:a.getReader(),writer:l.getWriter()});let c=await i;try{await l.close()}catch{}return await u,c}function b2(t){let e=t.getWriter(),n,r=new Promise(i=>n=i);return{writable:new WritableStream({async write(i){await e.ready,await e.write(i)},close(){e.releaseLock(),n()},abort(i){return e.abort(i)}}),closed:r}}var Nl=!0,zl=!0;function y2(t,e,n){let r={type:"module"},i,a;typeof t==Jl&&(t=t());try{i=new URL(t,e)}catch{i=t}if(Nl)try{a=new Worker(i)}catch{Nl=!1,a=new Worker(i,r)}else a=new Worker(i,r);return a.addEventListener(a2,o=>w2(o,n)),a}function Ia(t,{worker:e,writer:n,onTaskFinished:r,transferStreams:i}){try{let{value:a,readable:o,writable:s}=t,l=[];if(a){let{buffer:u,length:c}=a;c!=u.byteLength&&(a=new Uint8Array(a)),t.value=a.buffer,l.push(t.value)}if(i&&zl?(o&&l.push(o),s&&l.push(s)):t.readable=t.writable=null,l.length)try{return e.postMessage(t,l),!0}catch{zl=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(a){throw n&&n.releaseLock(),r(),a}}async function w2({data:t},e){let{type:n,value:r,messageId:i,result:a,error:o}=t,{reader:s,writer:l,resolveResult:u,rejectResult:c,onTaskFinished:d}=e;try{if(o){let{message:p,stack:b,code:g,name:m}=o,h=new Error(p);Object.assign(h,{stack:b,code:g,name:m}),f(h)}else{if(n==s2){let{value:p,done:b}=await s.read();Ia({type:Pl,value:p,done:b,messageId:i},e)}n==Pl&&(await l.ready,await l.write(new Uint8Array(r)),Ia({type:l2,messageId:i},e)),n==c2&&f(null,a)}}catch(p){f(p)}function f(p,b){p?c(p):u(b),l&&l.releaseLock(),d()}}var fn=[],Aa=[],Bl=0;async function xc(t,e){let{options:n,config:r}=e,{transferStreams:i,useWebWorkers:a,useCompressionStream:o,codecType:s,compressed:l,signed:u,encrypted:c}=n,{workerScripts:d,maxWorkers:f,terminateWorkerTimeout:p}=r;e.transferStreams=i||i===Ne;let b=!l&&!u&&!c&&!e.transferStreams;e.useWebWorkers=!b&&(a||a===Ne&&r.useWebWorkers),e.scripts=e.useWebWorkers&&d?d[s]:[],n.useCompressionStream=o||o===Ne&&r.useCompressionStream;let g,m=fn.find(y=>!y.busy);if(m)Pa(m),g=new Sa(m,t,e,h);else if(fn.lengthAa.push({resolve:y,stream:t,workerOptions:e}));return g.run();function h(y){if(Aa.length){let[{resolve:w,stream:S,workerOptions:_}]=Aa.splice(0,1);w(new Sa(y,S,_,h))}else y.worker?(Pa(y),Number.isFinite(p)&&p>=0&&(y.terminateTimeout=setTimeout(()=>{fn=fn.filter(w=>w!=y),y.terminate()},p))):fn=fn.filter(w=>w!=y)}}function Pa(t){let{terminateTimeout:e}=t;e&&(clearTimeout(e),t.terminateTimeout=null)}function v2(){fn.forEach(t=>{Pa(t),t.terminate()})}var Tc="HTTP error ",mr="HTTP Range not supported",_c="Writer iterator completed too soon",x2="text/plain",T2="Content-Length",_2="Content-Range",C2="Accept-Ranges",k2="Range",S2="Content-Type",E2="HEAD",Xa="GET",Cc="bytes",A2=64*1024,Ya="writable",_i=class{constructor(){this.size=0}init(){this.initialized=!0}},pn=class extends _i{get readable(){let t=this,{chunkSize:e=A2}=t,n=new ReadableStream({start(){this.chunkOffset=0},async pull(r){let{offset:i=0,size:a,diskNumberStart:o}=n,{chunkOffset:s}=this;r.enqueue(await et(t,i+s,Math.min(e,a-s),o)),s+e>a?r.close():this.chunkOffset+=e}});return n}},Za=class extends _i{constructor(){super();let t=this,e=new WritableStream({write(n){return t.writeUint8Array(n)}});Object.defineProperty(t,Ya,{get(){return e}})}writeUint8Array(){}},M2=class extends pn{constructor(t){super();let e=t.length;for(;t.charAt(e-1)=="=";)e--;let n=t.indexOf(",")+1;Object.assign(this,{dataURI:t,dataStart:n,size:Math.floor((e-n)*.75)})}readUint8Array(t,e){let{dataStart:n,dataURI:r}=this,i=new Uint8Array(e),a=Math.floor(t/3)*4,o=atob(r.substring(a+n,Math.ceil((t+e)/3)*4+n)),s=t-Math.floor(a/4)*3;for(let l=s;l2?e.data+=btoa(r):e.pending=r}getData(){return this.data+btoa(this.pending)}},Ja=class extends pn{constructor(t){super(),Object.assign(this,{blob:t,size:t.size})}async readUint8Array(t,e){let n=this,r=t+e,i=t||r{Object.assign(r,{onload:({target:o})=>i(o.result),onerror:()=>a(r.error)}),r.readAsText(n,t)})}}},D2=class extends pn{constructor(t,e){super(),kc(this,t,e)}async init(){await Sc(this,Na,Ul),super.init()}readUint8Array(t,e){return Ec(this,t,e,Na,Ul)}},F2=class extends pn{constructor(t,e){super(),kc(this,t,e)}async init(){await Sc(this,za,$l),super.init()}readUint8Array(t,e){return Ec(this,t,e,za,$l)}};function kc(t,e,n){let{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:a}=n;n=Object.assign({},n),delete n.preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.useXHR,Object.assign(t,{url:e,options:n,preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:a})}async function Sc(t,e,n){let{url:r,useRangeHeader:i,forceRangeRequests:a}=t;if(z2(r)&&(i||a)){let{headers:o}=await e(Xa,t,Ac(t));if(!a&&o.get(C2)!=Cc)throw new Error(mr);{let s,l=o.get(_2);if(l){let u=l.trim().split(/\s*\/\s*/);if(u.length){let c=u[1];c&&c!="*"&&(s=Number(c))}}s===Ne?await jl(t,e,n):t.size=s}}else await jl(t,e,n)}async function Ec(t,e,n,r,i){let{useRangeHeader:a,forceRangeRequests:o,options:s}=t;if(a||o){let l=await r(Xa,t,Ac(t,e,n));if(l.status!=206)throw new Error(mr);return new Uint8Array(await l.arrayBuffer())}else{let{data:l}=t;return l||await i(t,s),new Uint8Array(t.data.subarray(e,e+n))}}function Ac(t,e=0,n=1){return Object.assign({},eo(t),{[k2]:Cc+"="+e+"-"+(e+n-1)})}function eo({options:t}){let{headers:e}=t;if(e)return Symbol.iterator in e?Object.fromEntries(e):e}async function Ul(t){await Mc(t,Na)}async function $l(t){await Mc(t,za)}async function Mc(t,e){let n=await e(Xa,t,eo(t));t.data=new Uint8Array(await n.arrayBuffer()),t.size||(t.size=t.data.length)}async function jl(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{let r=(await e(E2,t,eo(t))).headers.get(T2);r?t.size=Number(r):await n(t,t.options)}}async function Na(t,{options:e,url:n},r){let i=await fetch(n,Object.assign({},e,{method:t,headers:r}));if(i.status<400)return i;throw i.status==416?new Error(mr):new Error(Tc+(i.statusText||i.status))}function za(t,{url:e},n){return new Promise((r,i)=>{let a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status<400){let o=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(s=>{let l=s.trim().split(/\s*:\s*/);l[0]=l[0].trim().replace(/^[a-z]|-[a-z]/g,u=>u.toUpperCase()),o.push(l)}),r({status:a.status,arrayBuffer:()=>a.response,headers:new Map(o)})}else i(a.status==416?new Error(mr):new Error(Tc+(a.statusText||a.status)))},!1),a.addEventListener("error",o=>i(o.detail.error),!1),a.open(t,e),n)for(let o of Object.entries(n))a.setRequestHeader(o[0],o[1]);a.responseType="arraybuffer",a.send()})}var Lc=class extends pn{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR?new F2(t,e):new D2(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}},I2=class extends Lc{constructor(t,e={}){e.useRangeHeader=!0,super(t,e)}},P2=class extends pn{constructor(t){super(),Object.assign(this,{array:t,size:t.length})}readUint8Array(t,e){return this.array.slice(t,t+e)}},N2=class extends Za{init(t=0){Object.assign(this,{offset:0,array:new Uint8Array(t)}),super.init()}writeUint8Array(t){let e=this;if(e.offset+t.length>e.array.length){let n=e.array;e.array=new Uint8Array(n.length+t.length),e.array.set(n)}e.array.set(t,e.offset),e.offset+=t.length}getData(){return this.array}},to=class extends pn{constructor(t){super(),this.readers=t}async init(){let t=this,{readers:e}=t;t.lastDiskNumber=0,await Promise.all(e.map(async n=>{await n.init(),t.size+=n.size})),super.init()}async readUint8Array(t,e,n=0){let r=this,{readers:i}=this,a,o=n;o==-1&&(o=i.length-1);let s=t;for(;s>=i[o].size;)s-=i[o].size,o++;let l=i[o],u=l.size;if(s+e<=u)a=await et(l,s,e);else{let c=u-s;a=new Uint8Array(e),a.set(await et(l,s,c)),a.set(await r.readUint8Array(t+c,e-c,n),c)}return r.lastDiskNumber=Math.max(o,r.lastDiskNumber),a}},hr=class extends _i{constructor(t,e=4294967295){super();let n=this;Object.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});let r,i,a,o=new WritableStream({async write(u){let{availableSize:c}=n;if(a)u.length>=c?(await s(u.slice(0,c)),await l(),n.diskOffset+=r.size,n.diskNumber++,a=null,await this.write(u.slice(c))):await s(u);else{let{value:d,done:f}=await t.next();if(f&&!d)throw new Error(_c);r=d,r.size=0,r.maxSize&&(n.maxSize=r.maxSize),n.availableSize=n.maxSize,await Jt(r),i=d.writable,a=i.getWriter(),await this.write(u)}},async close(){await a.ready,await l()}});Object.defineProperty(n,Ya,{get(){return o}});async function s(u){let c=u.length;c&&(await a.ready,await a.write(u),r.size+=c,n.size+=c,n.availableSize-=c)}async function l(){i.size=r.size,await a.close()}}};function z2(t){let{baseURL:e}=Wa(),{protocol:n}=new URL(t,e);return n=="http:"||n=="https:"}async function Jt(t,e){t.init&&!t.initialized&&await t.init(e)}function no(t){return Array.isArray(t)&&(t=new to(t)),t instanceof ReadableStream&&(t={readable:t}),t}function ro(t){t.writable===Ne&&typeof t.next==Jl&&(t=new hr(t)),t instanceof WritableStream&&(t={writable:t});let{writable:e}=t;return e.size===Ne&&(e.size=0),t instanceof hr||Object.assign(t,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),t}function et(t,e,n,r){return t.readUint8Array(e,n,r)}var B2=to,U2=hr,Rc="\0\u263A\u263B\u2665\u2666\u2663\u2660\u2022\u25D8\u25CB\u25D9\u2642\u2640\u266A\u266B\u263C\u25BA\u25C4\u2195\u203C\xB6\xA7\u25AC\u21A8\u2191\u2193\u2192\u2190\u221F\u2194\u25B2\u25BC !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0 ".split(""),$2=Rc.length==256;function j2(t){if($2){let e="";for(let n=0;nthis[e]=t[e])}},fi="File format is not recognized",Wc="End of central directory not found",qc="End of Zip64 central directory not found",Vc="End of Zip64 central directory locator not found",Kc="Central directory header not found",Gc="Local file header not found",Xc="Zip64 extra field not found",Yc="File contains encrypted entry",Zc="Encryption method not supported",$a="Compression method not supported",ja="Split zip file",Hl="utf-8",Wl="cp437",V2=[[Pc,4294967295],[Nc,4294967295],[zc,4294967295],[Ua,65535]],K2={[65535]:{getValue:De,bytes:4},[4294967295]:{getValue:hi,bytes:8}},G2=class{constructor(t,e={}){Object.assign(this,{reader:no(t),options:e,config:Wa()})}async*getEntriesGenerator(t={}){let e=this,{reader:n}=e,{config:r}=e;if(await Jt(n),(n.size===Ne||!n.readUint8Array)&&(n=new Ja(await new Response(n.readable).blob()),await Jt(n)),n.size<22)throw new Error(fi);n.chunkSize=ec(r);let i=await ep(n,101010256,n.size,22,65535*16);if(!i){let v=await et(n,0,4),A=Ye(v);throw De(A)==134695760?new Error(ja):new Error(Wc)}let a=Ye(i),o=De(a,12),s=De(a,16),l=i.offset,u=We(a,20),c=l+22+u,d=We(a,4),f=n.lastDiskNumber||0,p=We(a,6),b=We(a,8),g=0,m=0;if(s==4294967295||o==4294967295||b==65535||p==65535){let v=await et(n,i.offset-20,20),A=Ye(v);if(De(A,0)!=117853008)throw new Error(qc);s=hi(A,8);let C=await et(n,s,56,-1),E=Ye(C),R=i.offset-20-56;if(De(E,0)!=101075792&&s!=R){let L=s;s=R,g=s-L,C=await et(n,s,56,-1),E=Ye(C)}if(De(E,0)!=101075792)throw new Error(Vc);d==65535&&(d=De(E,16)),p==65535&&(p=De(E,20)),b==65535&&(b=hi(E,32)),o==4294967295&&(o=hi(E,40)),s-=o}if(f!=d)throw new Error(ja);if(s<0||s>=n.size)throw new Error(fi);let h=0,y=await et(n,s,o,p),w=Ye(y);if(o){let v=i.offset-o;if(De(w,h)!=33639248&&s!=v){let A=s;s=v,g=s-A,y=await et(n,s,o,p),w=Ye(y)}}if(s<0||s>=n.size)throw new Error(fi);let S=It(e,t,"filenameEncoding"),_=It(e,t,"commentEncoding");for(let v=0;vA.getData(pe,G,me),h=Y;let{onprogress:ce}=t;if(ce)try{await ce(v+1,b,new bi(A))}catch{}yield G}let x=It(e,t,"extractPrependedData"),k=It(e,t,"extractAppendedData");return x&&(e.prependedData=m>0?await et(n,0,m):new Uint8Array),e.comment=u?await et(n,l+22,u):new Uint8Array,k&&(e.appendedData=c>>8&255:d>>>24&255),signature:d,compressed:l!=0,encrypted:w,useWebWorkers:It(r,n,"useWebWorkers"),useCompressionStream:It(r,n,"useCompressionStream"),transferStreams:It(r,n,"transferStreams")},config:u,streamOptions:{signal:v,size:k,onstart:C,onprogress:E,onend:R}};return A.size+=(await xc({readable:x,writable:A},L)).size,It(r,n,"preventClose")||await A.close(),t.getData?t.getData():A}};function Jc(t,e,n){let r=t.rawBitFlag=We(e,n+2),i=(r&1)==1,a=De(e,n+6);Object.assign(t,{encrypted:i,version:We(e,n),bitFlag:{level:(r&6)>>1,dataDescriptor:(r&8)==8,languageEncodingFlag:(r&2048)==2048},rawLastModDate:a,lastModDate:tp(a),filenameLength:We(e,n+22),extraFieldLength:We(e,n+24)})}async function Qc(t,e,n,r){let{rawExtraField:i}=e,a=e.extraField=new Map,o=Ye(new Uint8Array(i)),s=0;try{for(;se[i]==a);for(let i=0,a=0;i{if(t.data.length>=o+4){let u=De(n,o);e[s]=t[s]=new Date(u*1e3);let c=a[l];t[c]=u}o+=4})}async function ep(t,e,n,r,i){let a=new Uint8Array(4),o=Ye(a);np(o,0,e);let s=r+i;return await l(r)||await l(Math.min(s,n));async function l(u){let c=n-u,d=await et(t,c,u);for(let f=d.length-r;f>=0;f--)if(d[f]==a[0]&&d[f+1]==a[1]&&d[f+2]==a[2]&&d[f+3]==a[3])return{offset:c+f,buffer:d.slice(f,f+r).buffer}}}function It(t,e,n){return e[n]===Ne?t.options[n]:e[n]}function tp(t){let e=(t&4294901760)>>16,n=t&65535;try{return new Date(1980+((e&65024)>>9),((e&480)>>5)-1,e&31,(n&63488)>>11,(n&2016)>>5,(n&31)*2,0)}catch{}}function Ma(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function Fn(t,e){return t.getUint8(e)}function We(t,e){return t.getUint16(e,!0)}function De(t,e){return t.getUint32(e,!0)}function hi(t,e){return Number(t.getBigUint64(e,!0))}function np(t,e,n){t.setUint32(e,n,!0)}function Ye(t){return new DataView(t.buffer)}var e0="File already exists",t0="Zip file comment exceeds 64KB",n0="File entry comment exceeds 64KB",r0="File entry name exceeds 64KB",Ha="Version exceeds 65535",i0="The strength must equal 1, 2, or 3",a0="Extra field type exceeds 65535",o0="Extra field data exceeds 64KB",Ci="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Vl=new Uint8Array([7,0,2,0,65,69,3,0,0]),La=0,Kl=[],rp=class{constructor(t,e={}){t=ro(t),Object.assign(this,{writer:t,addSplitZipSignature:t instanceof hr,options:e,config:Wa(),files:new Map,filenames:new Set,offset:t.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new Set,bufferedWrites:0})}async add(t="",e,n={}){let r=this,{pendingAddFileCalls:i,config:a}=r;LaKl.push(s));let o;try{if(t=t.trim(),r.filenames.has(t))throw new Error(e0);return r.filenames.add(t),o=ip(r,t,e,n),i.add(o),await o}catch(s){throw r.filenames.delete(t),s}finally{i.delete(o);let s=Kl.shift();s?s():La--}}async close(t=new Uint8Array,e={}){let n=this,{pendingAddFileCalls:r,writer:i}=this,{writable:a}=i;for(;r.size;)await Promise.all(Array.from(r));return await fp(this,t,e),Ee(n,e,"preventClose")||await a.close(),i.getData?i.getData():a}};async function ip(t,e,n,r){e=e.trim(),r.directory&&!e.endsWith(di)?e+=di:r.directory=e.endsWith(di);let i=Da(e);if(Te(i)>65535)throw new Error(r0);let a=r.comment||"",o=Da(a);if(Te(o)>65535)throw new Error(n0);let s=Ee(t,r,"version",20);if(s>65535)throw new Error(Ha);let l=Ee(t,r,"versionMadeBy",20);if(l>65535)throw new Error(Ha);let u=Ee(t,r,io,new Date),c=Ee(t,r,ao),d=Ee(t,r,oo),f=Ee(t,r,jc,!0),p=Ee(t,r,Uc,0),b=Ee(t,r,$c,0),g=Ee(t,r,"password"),m=Ee(t,r,"encryptionStrength",3),h=Ee(t,r,"zipCrypto"),y=Ee(t,r,"extendedTimestamp",!0),w=Ee(t,r,"keepOrder",!0),S=Ee(t,r,"level"),_=Ee(t,r,"useWebWorkers"),x=Ee(t,r,"bufferedWrite"),k=Ee(t,r,"dataDescriptorSignature",!1),v=Ee(t,r,"signal"),A=Ee(t,r,"useCompressionStream"),C=Ee(t,r,"dataDescriptor",!0),E=Ee(t,r,Hc);if(g!==Ne&&m!==Ne&&(m<1||m>3))throw new Error(i0);let R=new Uint8Array,{extraField:L}=r;if(L){let pe=0,me=0;L.forEach(Z=>pe+=4+Te(Z)),R=new Uint8Array(pe),L.forEach((Z,ie)=>{if(ie>65535)throw new Error(a0);if(Te(Z)>65535)throw new Error(o0);qe(R,new Uint16Array([ie]),me),qe(R,new Uint16Array([Te(Z)]),me+2),qe(R,Z,me+4),me+=4+Te(Z)})}let P=0,O=0,N=0,z=E===!0;n&&(n=no(n),await Jt(n),n.size===Ne?(C=!0,(E||E===Ne)&&(E=!0,P=4294967295)):(N=n.size,P=pp(N)));let{diskOffset:Y,diskNumber:ne,maxSize:K}=t.writer,ee=z||N>=4294967295,M=z||P>=4294967295,I=z||t.offset+t.pendingEntriesSize-Y>=4294967295,$=Ee(t,r,"supportZip64SplitFile",!0)&&z||ne+Math.ceil(t.pendingEntriesSize/K)>=65535;if(I||ee||M||$){if(E===!1||!w)throw new Error(Ci);E=!0}E=E||!1,r=Object.assign({},r,{rawFilename:i,rawComment:o,version:s,versionMadeBy:l,lastModDate:u,lastAccessDate:c,creationDate:d,rawExtraField:R,zip64:E,zip64UncompressedSize:ee,zip64CompressedSize:M,zip64Offset:I,zip64DiskNumberStart:$,password:g,level:S,useWebWorkers:_,encryptionStrength:m,extendedTimestamp:y,zipCrypto:h,bufferedWrite:x,keepOrder:w,dataDescriptor:C,dataDescriptorSignature:k,signal:v,msDosCompatible:f,internalFileAttribute:p,externalFileAttribute:b,useCompressionStream:A});let q=sp(r),G=lp(r);O=Te(q.localHeaderArray,G.dataDescriptorArray)+P,t.pendingEntriesSize+=O;let ce;try{ce=await ap(t,e,n,{headerInfo:q,dataDescriptorInfo:G},r)}finally{t.pendingEntriesSize-=O}return Object.assign(ce,{name:e,comment:a,extraField:L}),new bi(ce)}async function ap(t,e,n,r,i){let{files:a,writer:o}=t,{keepOrder:s,dataDescriptor:l,signal:u}=i,{headerInfo:c}=r,d=Array.from(a.values()).pop(),f={},p,b,g,m,h,y;a.set(e,f);try{let x;s&&(x=d&&d.lock,w()),i.bufferedWrite||t.writerLocked||t.bufferedWrites&&s||!l?(y=new Qa,y.writable.size=0,p=!0,t.bufferedWrites++,await Jt(o)):(y=o,await S()),await Jt(y);let{writable:k}=o,{diskOffset:v}=o;if(t.addSplitZipSignature){delete t.addSplitZipSignature;let C=new Uint8Array(4),E=pt(C);ye(E,0,134695760),await jt(k,C),t.offset+=4}p||(await x,await _(k));let{diskNumber:A}=o;if(h=!0,f.diskNumberStart=A,f=await op(n,y,f,r,t.config,i),h=!1,a.set(e,f),f.filename=e,p){await y.writable.close();let C=await y.getData();await x,await S(),m=!0,l||(C=await up(f,C,k,i)),await _(k),f.diskNumberStart=o.diskNumber,v=o.diskOffset,await C.stream().pipeTo(k,{preventClose:!0,preventAbort:!0,signal:u}),k.size+=C.size,m=!1}if(f.offset=t.offset-v,f.zip64)dp(f,i);else if(f.offset>=4294967295)throw new Error(Ci);return t.offset+=f.length,f}catch(x){if(p&&m||!p&&h){if(t.hasCorruptedEntries=!0,x)try{x.corruptedEntry=!0}catch{}p?t.offset+=y.writable.size:t.offset=y.writable.size}throw a.delete(e),x}finally{p&&t.bufferedWrites--,g&&g(),b&&b()}function w(){f.lock=new Promise(x=>g=x)}async function S(){t.writerLocked=!0;let{lockWriter:x}=t;t.lockWriter=new Promise(k=>b=()=>{t.writerLocked=!1,k()}),await x}async function _(x){c.localHeaderArray.length>o.availableSize&&(o.availableSize=0,await jt(x,new Uint8Array))}}async function op(t,e,{diskNumberStart:n,lock:r},i,a,o){let{headerInfo:s,dataDescriptorInfo:l}=i,{localHeaderArray:u,headerArray:c,lastModDate:d,rawLastModDate:f,encrypted:p,compressed:b,version:g,compressionMethod:m,rawExtraFieldExtendedTimestamp:h,rawExtraFieldNTFS:y,rawExtraFieldAES:w}=s,{dataDescriptorArray:S}=l,{rawFilename:_,lastAccessDate:x,creationDate:k,password:v,level:A,zip64:C,zip64UncompressedSize:E,zip64CompressedSize:R,zip64Offset:L,zip64DiskNumberStart:P,zipCrypto:O,dataDescriptor:N,directory:z,versionMadeBy:Y,rawComment:ne,rawExtraField:K,useWebWorkers:ee,onstart:M,onprogress:I,onend:$,signal:q,encryptionStrength:G,extendedTimestamp:ce,msDosCompatible:pe,internalFileAttribute:me,externalFileAttribute:Z,useCompressionStream:ie}=o,oe={lock:r,versionMadeBy:Y,zip64:C,directory:!!z,filenameUTF8:!0,rawFilename:_,commentUTF8:!0,rawComment:ne,rawExtraFieldExtendedTimestamp:h,rawExtraFieldNTFS:y,rawExtraFieldAES:w,rawExtraField:K,extendedTimestamp:ce,msDosCompatible:pe,internalFileAttribute:me,externalFileAttribute:Z,diskNumberStart:n},le=0,J=0,ae,{writable:de}=e;if(t){t.chunkSize=ec(a),await jt(de,u);let re=t.readable,Le=re.size=t.size,Ie={options:{codecType:wc,level:A,password:v,encryptionStrength:G,zipCrypto:p&&O,passwordVerification:p&&O&&f>>8&255,signed:!0,compressed:b,encrypted:p,useWebWorkers:ee,useCompressionStream:ie,transferStreams:!1},config:a,streamOptions:{signal:q,size:Le,onstart:M,onprogress:I,onend:$}},ve=await xc({readable:re,writable:de},Ie);de.size+=ve.size,ae=ve.signature,J=t.size=re.size,le=ve.size}else await jt(de,u);let be;if(C){let re=4;E&&(re+=8),R&&(re+=8),L&&(re+=8),P&&(re+=4),be=new Uint8Array(re)}else be=new Uint8Array;return t&&cp({signature:ae,rawExtraFieldZip64:be,compressedSize:le,uncompressedSize:J,headerInfo:s,dataDescriptorInfo:l},o),N&&await jt(de,S),Object.assign(oe,{uncompressedSize:J,compressedSize:le,lastModDate:d,rawLastModDate:f,creationDate:k,lastAccessDate:x,encrypted:p,length:Te(u,S)+le,compressionMethod:m,version:g,headerArray:c,signature:ae,rawExtraFieldZip64:be,zip64UncompressedSize:E,zip64CompressedSize:R,zip64Offset:L,zip64DiskNumberStart:P}),oe}function sp(t){let{rawFilename:e,lastModDate:n,lastAccessDate:r,creationDate:i,password:a,level:o,zip64:s,zipCrypto:l,dataDescriptor:u,directory:c,rawExtraField:d,encryptionStrength:f,extendedTimestamp:p}=t,b=o!==0&&!c,g=!!(a&&Te(a)),m=t.version,h;if(g&&!l){h=new Uint8Array(Te(Vl)+2);let O=pt(h);Ce(O,0,39169),qe(h,Vl,2),yi(O,8,f)}else h=new Uint8Array;let y,w;if(p){w=new Uint8Array(9+(r?4:0)+(i?4:0));let O=pt(w);Ce(O,0,21589),Ce(O,2,Te(w)-4);let N=1+(r?2:0)+(i?4:0);yi(O,4,N),ye(O,5,Math.floor(n.getTime()/1e3)),r&&ye(O,9,Math.floor(r.getTime()/1e3)),i&&ye(O,13,Math.floor(i.getTime()/1e3));try{y=new Uint8Array(36);let z=pt(y),Y=Ra(n);Ce(z,0,10),Ce(z,2,32),Ce(z,8,1),Ce(z,10,24),ht(z,12,Y),ht(z,20,Ra(r)||Y),ht(z,28,Ra(i)||Y)}catch{y=new Uint8Array}}else y=w=new Uint8Array;let S=2048;u&&(S=S|8);let _=0;b&&(_=8),s&&(m=m>45?m:45),g&&(S=S|1,l||(m=m>51?m:51,_=99,b&&(h[9]=8)));let x=new Uint8Array(26),k=pt(x);Ce(k,0,m),Ce(k,2,S),Ce(k,4,_);let v=new Uint32Array(1),A=pt(v),C;nEl?C=El:C=n,Ce(A,0,(C.getHours()<<6|C.getMinutes())<<5|C.getSeconds()/2),Ce(A,2,(C.getFullYear()-1980<<4|C.getMonth()+1)<<5|C.getDate());let E=v[0];ye(k,6,E),Ce(k,22,Te(e));let R=Te(h,w,y,d);Ce(k,24,R);let L=new Uint8Array(30+Te(e)+R),P=pt(L);return ye(P,0,67324752),qe(L,x,4),qe(L,e,30),qe(L,h,30+Te(e)),qe(L,w,30+Te(e,h)),qe(L,y,30+Te(e,h,w)),qe(L,d,30+Te(e,h,w,y)),{localHeaderArray:L,headerArray:x,headerView:k,lastModDate:n,rawLastModDate:E,encrypted:g,compressed:b,version:m,compressionMethod:_,rawExtraFieldExtendedTimestamp:w,rawExtraFieldNTFS:y,rawExtraFieldAES:h}}function lp(t){let{zip64:e,dataDescriptor:n,dataDescriptorSignature:r}=t,i=new Uint8Array,a,o=0;return n&&(i=new Uint8Array(e?r?24:20:r?16:12),a=pt(i),r&&(o=4,ye(a,0,134695760))),{dataDescriptorArray:i,dataDescriptorView:a,dataDescriptorOffset:o}}function cp(t,e){let{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:s}=t,{headerView:l,encrypted:u}=o,{dataDescriptorView:c,dataDescriptorOffset:d}=s,{zip64:f,zip64UncompressedSize:p,zip64CompressedSize:b,zipCrypto:g,dataDescriptor:m}=e;if((!u||g)&&n!==Ne&&(ye(l,10,n),m&&ye(c,d,n)),f){let h=pt(r);Ce(h,0,1),Ce(h,2,r.length-4);let y=4;p&&(ye(l,18,4294967295),ht(h,y,BigInt(a)),y+=8),b&&(ye(l,14,4294967295),ht(h,y,BigInt(i))),m&&(ht(c,d+4,BigInt(i)),ht(c,d+12,BigInt(a)))}else ye(l,14,i),ye(l,18,a),m&&(ye(c,d+4,i),ye(c,d+8,a))}async function up(t,e,n,{zipCrypto:r}){let i=await hp(e,0,26),a=new DataView(i);return(!t.encrypted||r)&&ye(a,14,t.signature),t.zip64?(ye(a,18,4294967295),ye(a,22,4294967295)):(ye(a,18,t.compressedSize),ye(a,22,t.uncompressedSize)),await jt(n,new Uint8Array(i)),e.slice(i.byteLength)}function dp(t,e){let{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=t,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:s,zip64DiskNumberStart:l}=e,u=pt(n),c=4;a&&(c+=8),o&&(c+=8),s&&(ht(u,c,BigInt(r)),c+=8),l&&ye(u,c,i)}async function fp(t,e,n){let{files:r,writer:i}=t,{diskOffset:a,writable:o}=i,{diskNumber:s}=i,l=0,u=0,c=t.offset-a,d=r.size;for(let[,{rawFilename:_,rawExtraFieldZip64:x,rawExtraFieldAES:k,rawExtraField:v,rawComment:A,rawExtraFieldExtendedTimestamp:C,rawExtraFieldNTFS:E}]of r)u+=46+Te(_,A,x,k,C,E,v);let f=new Uint8Array(u),p=pt(f);await Jt(i);let b=0;for(let[_,x]of Array.from(r.values()).entries()){let{offset:k,rawFilename:v,rawExtraFieldZip64:A,rawExtraFieldAES:C,rawExtraFieldNTFS:E,rawExtraField:R,rawComment:L,versionMadeBy:P,headerArray:O,directory:N,zip64:z,zip64UncompressedSize:Y,zip64CompressedSize:ne,zip64DiskNumberStart:K,zip64Offset:ee,msDosCompatible:M,internalFileAttribute:I,externalFileAttribute:$,extendedTimestamp:q,lastModDate:G,diskNumberStart:ce,uncompressedSize:pe,compressedSize:me}=x,Z;if(q){Z=new Uint8Array(9);let J=pt(Z);Ce(J,0,21589),Ce(J,2,Te(Z)-4),yi(J,4,1),ye(J,5,Math.floor(G.getTime()/1e3))}else Z=new Uint8Array;let ie=Te(A,C,Z,E,R);ye(p,l,33639248),Ce(p,l+4,P);let oe=pt(O);Y||ye(oe,18,pe),ne||ye(oe,14,me),qe(f,O,l+6),Ce(p,l+30,ie),Ce(p,l+32,Te(L)),Ce(p,l+34,z&&K?65535:ce),Ce(p,l+36,I),$?ye(p,l+38,$):N&&M&&yi(p,l+38,16),ye(p,l+42,z&&ee?4294967295:k),qe(f,v,l+46),qe(f,A,l+46+Te(v)),qe(f,C,l+46+Te(v,A)),qe(f,Z,l+46+Te(v,A,C)),qe(f,E,l+46+Te(v,A,C,Z)),qe(f,R,l+46+Te(v,A,C,Z,E)),qe(f,L,l+46+Te(v)+ie);let le=46+Te(v,L)+ie;if(l-b>i.availableSize&&(i.availableSize=0,await jt(o,f.slice(b,l)),b=l),l+=le,n.onprogress)try{await n.onprogress(_+1,r.size,new bi(x))}catch{}}await jt(o,b?f.slice(b):f);let g=i.diskNumber,{availableSize:m}=i;m<22&&g++;let h=Ee(t,n,"zip64");if(c>=4294967295||u>=4294967295||d>=65535||g>=65535){if(h===!1)throw new Error(Ci);h=!0}let y=new Uint8Array(h?98:22),w=pt(y);l=0,h&&(ye(w,0,101075792),ht(w,4,BigInt(44)),Ce(w,12,45),Ce(w,14,45),ye(w,16,g),ye(w,20,s),ht(w,24,BigInt(d)),ht(w,32,BigInt(d)),ht(w,40,BigInt(u)),ht(w,48,BigInt(c)),ye(w,56,117853008),ht(w,64,BigInt(c)+BigInt(u)),ye(w,72,g+1),Ee(t,n,"supportZip64SplitFile",!0)&&(g=65535,s=65535),d=65535,c=4294967295,u=4294967295,l+=56+20),ye(w,l,101010256),Ce(w,l+4,g),Ce(w,l+6,s),Ce(w,l+8,d),Ce(w,l+10,d),ye(w,l+12,u),ye(w,l+16,c);let S=Te(e);if(S)if(S<=65535)Ce(w,l+20,S);else throw new Error(t0);await jt(o,y),S&&await jt(o,e)}function hp(t,e,n){return e||n?t.slice(e,n).arrayBuffer():t.arrayBuffer()}async function jt(t,e){let n=t.getWriter();await n.ready,t.size+=Te(e),await n.write(e),n.releaseLock()}function Ra(t){if(t)return(BigInt(t.getTime())+BigInt(116444736e5))*BigInt(1e4)}function Ee(t,e,n,r){let i=e[n]===Ne?t.options[n]:e[n];return i===Ne?r:i}function pp(t){return t+5*(Math.floor(t/16383)+1)}function yi(t,e,n){t.setUint8(e,n)}function Ce(t,e,n){t.setUint16(e,n,!0)}function ye(t,e,n){t.setUint32(e,n,!0)}function ht(t,e,n){t.setBigUint64(e,n,!0)}function qe(t,e,n){t.set(e,n)}function pt(t){return new DataView(t.buffer)}function Te(...t){let e=0;return t.forEach(n=>n&&(e+=n.length)),e}xi({Deflate:ph,Inflate:Dh});var s0={},mp=function(t,e,n,r,i){var a=new Worker(s0[e]||(s0[e]=URL.createObjectURL(new Blob([t+';addEventListener("error",function(e){e=e.error;postMessage({$e$:[e.message,e.code,e.stack]})})'],{type:"text/javascript"}))));return a.onmessage=function(o){var s=o.data,l=s.$e$;if(l){var u=new Error(l[0]);u.code=l[1],u.stack=l[2],i(u,null)}else i(null,s)},a.postMessage(n,r),a},ke=Uint8Array,tt=Uint16Array,Un=Uint32Array,$n=new ke([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),jn=new ke([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),gr=new ke([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),h0=function(t,e){for(var n=new tt(31),r=0;r<31;++r)n[r]=e+=1<>>1|(_e&21845)<<1,Qt=(Qt&52428)>>>2|(Qt&13107)<<2,Qt=(Qt&61680)>>>4|(Qt&3855)<<4,br[_e]=((Qt&65280)>>>8|(Qt&255)<<8)>>>1;var Qt,_e,Et=function(t,e,n){for(var r=t.length,i=0,a=new tt(e);i>>l]=u}else for(s=new tt(r),i=0;i>>15-t[i]);return s},tn=new ke(288);for(_e=0;_e<144;++_e)tn[_e]=8;var _e;for(_e=144;_e<256;++_e)tn[_e]=9;var _e;for(_e=256;_e<280;++_e)tn[_e]=7;var _e;for(_e=280;_e<288;++_e)tn[_e]=8;var _e,Bn=new ke(32);for(_e=0;_e<32;++_e)Bn[_e]=5;var _e,b0=Et(tn,9,0),y0=Et(tn,9,1),w0=Et(Bn,5,0),v0=Et(Bn,5,1),Si=function(t){for(var e=t[0],n=1;ne&&(e=t[n]);return e},St=function(t,e,n){var r=e/8|0;return(t[r]|t[r+1]<<8)>>(e&7)&n},Ei=function(t,e){var n=e/8|0;return(t[n]|t[n+1]<<8|t[n+2]<<16)>>(e&7)},yr=function(t){return(t+7)/8|0},Vt=function(t,e,n){(e==null||e<0)&&(e=0),(n==null||n>t.length)&&(n=t.length);var r=new(t.BYTES_PER_ELEMENT==2?tt:t.BYTES_PER_ELEMENT==4?Un:ke)(n-e);return r.set(t.subarray(e,n)),r};var x0=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],fe=function(t,e,n){var r=new Error(e||x0[t]);if(r.code=t,Error.captureStackTrace&&Error.captureStackTrace(r,fe),!n)throw r;return r},Fi=function(t,e,n){var r=t.length;if(!r||n&&n.f&&!n.l)return e||new ke(0);var i=!e||n,a=!n||n.i;n||(n={}),e||(e=new ke(r*3));var o=function(G){var ce=e.length;if(G>ce){var pe=new ke(Math.max(ce*2,G));pe.set(e),e=pe}},s=n.f||0,l=n.p||0,u=n.b||0,c=n.l,d=n.d,f=n.m,p=n.n,b=r*8;do{if(!c){s=St(t,l,1);var g=St(t,l+1,3);if(l+=3,g)if(g==1)c=y0,d=v0,f=9,p=5;else if(g==2){var m=St(t,l,31)+257,h=St(t,l+10,15)+4,y=m+St(t,l+5,31)+1;l+=14;for(var w=new ke(y),S=new ke(19),_=0;_>>4;if(C<16)w[_++]=C;else{var E=0,R=0;for(C==16?(R=3+St(t,l,3),l+=2,E=w[_-1]):C==17?(R=3+St(t,l,7),l+=3):C==18&&(R=11+St(t,l,127),l+=7);R--;)w[_++]=E}}var L=w.subarray(0,m),P=w.subarray(m);f=Si(L),p=Si(P),c=Et(L,f,1),d=Et(P,p,1)}else fe(1);else{var C=yr(l)+4,O=t[C-4]|t[C-3]<<8,N=C+O;if(N>r){a&&fe(0);break}i&&o(u+O),e.set(t.subarray(C,N),u),n.b=u+=O,n.p=l=N*8,n.f=s;continue}if(l>b){a&&fe(0);break}}i&&o(u+131072);for(var z=(1<>>4;if(l+=E&15,l>b){a&&fe(0);break}if(E||fe(2),K<256)e[u++]=K;else if(K==256){ne=l,c=null;break}else{var ee=K-254;if(K>264){var _=K-257,M=$n[_];ee=St(t,l,(1<>>4;I||fe(3),l+=I&15;var P=g0[$];if($>3){var M=jn[$];P+=Ei(t,l)&(1<b){a&&fe(0);break}i&&o(u+131072);for(var q=u+ee;u>>8},In=function(t,e,n){n<<=e&7;var r=e/8|0;t[r]|=n,t[r+1]|=n>>>8,t[r+2]|=n>>>16},Ai=function(t,e){for(var n=[],r=0;rf&&(f=a[r].s);var p=new tt(f+1),b=Ri(n[c-1],p,0);if(b>e){var r=0,g=0,m=b-e,h=1<e)g+=h-(1<>>=m;g>0;){var w=a[r].s;p[w]=0&&g;--r){var S=a[r].s;p[S]==e&&(--p[S],++g)}b=e}return[new ke(p),b]},Ri=function(t,e,n){return t.s==-1?Math.max(Ri(t.l,e,n+1),Ri(t.r,e,n+1)):e[t.s]=n},uo=function(t){for(var e=t.length;e&&!t[--e];);for(var n=new tt(++e),r=0,i=t[0],a=1,o=function(l){n[r++]=l},s=1;s<=e;++s)if(t[s]==i&&s!=e)++a;else{if(!i&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(i),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(i);a=1,i=t[s]}return[n.subarray(0,r),e]},Pn=function(t,e){for(var n=0,r=0;r>>8,t[i+2]=t[i]^255,t[i+3]=t[i+1]^255;for(var a=0;a4&&!C[gr[R-1]];--R);var L=u+5<<3,P=Pn(i,tn)+Pn(a,Bn)+o,O=Pn(i,f)+Pn(a,g)+o+14+3*R+Pn(k,C)+(2*k[16]+3*k[17]+7*k[18]);if(L<=P&&L<=O)return Oi(e,c,t.subarray(l,l+u));var N,z,Y,ne;if(qt(e,c,1+(O15&&(qt(e,c,I[v]>>>5&127),c+=I[v]>>>12)}}else N=b0,z=tn,Y=w0,ne=Bn;for(var v=0;v255){var $=r[v]>>>18&31;In(e,c,N[$+257]),c+=z[$+257],$>7&&(qt(e,c,r[v]>>>23&31),c+=$n[$]);var q=r[v]&31;In(e,c,Y[q]),c+=ne[q],q>3&&(In(e,c,r[v]>>>5&8191),c+=jn[q])}else In(e,c,N[r[v]]),c+=z[r[v]];return In(e,c,N[256]),c+z[256]},T0=new Un([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),en=new ke(0),_0=function(t,e,n,r,i,a){var o=t.length,s=new ke(r+o+5*(1+Math.ceil(o/7e3))+i),l=s.subarray(r,s.length-i),u=0;if(!e||o<8)for(var c=0;c<=o;c+=65535){var d=c+65535;d>=o&&(l[u>>3]=a),u=Oi(l,u+1,t.subarray(c,d))}else{for(var f=T0[e-1],p=f>>>13,b=f&8191,g=(1<7e3||C>24576)&&N>423){u=fo(t,l,0,_,x,k,A,C,R,c-R,u),C=v=A=0,R=c;for(var z=0;z<286;++z)x[z]=0;for(var z=0;z<30;++z)k[z]=0}var Y=2,ne=0,K=b,ee=P-O&32767;if(N>2&&L==S(c-ee))for(var M=Math.min(p,N)-1,I=Math.min(32767,c),$=Math.min(258,N);ee<=I&&--K&&P!=O;){if(t[c+Y]==t[c+Y-ee]){for(var q=0;q<$&&t[c+q]==t[c+q-ee];++q);if(q>Y){if(Y=q,ne=ee,q>M)break;for(var G=Math.min(ee,q-2),ce=0,z=0;zce&&(ce=Z,O=pe)}}}P=O,O=m[P],ee+=P-O+32768&32767}if(ne){_[C++]=268435456|Li[Y]<<18|co[ne];var ie=Li[Y]&31,oe=co[ne]&31;A+=$n[ie]+jn[oe],++x[257+ie],++k[oe],E=c+Y,++v}else _[C++]=t[c],++x[t[c]]}}u=fo(t,l,a,_,x,k,A,C,R,c-R,u),!a&&u&7&&(u=Oi(l,u+1,en))}return Vt(s,0,r+yr(u)+i)},C0=function(){for(var t=new Int32Array(256),e=0;e<256;++e){for(var n=e,r=9;--r;)n=(n&1&&-306674912)^n>>>1;t[e]=n}return t}(),yo=function(){var t=-1;return{p:function(e){for(var n=t,r=0;r>>8;t=n},d:function(){return~t}}},k0=function(){var t=1,e=0;return{p:function(n){for(var r=t,i=e,a=n.length|0,o=0;o!=a;){for(var s=Math.min(o+2655,a);o>16),i=(i&65535)+15*(i>>16)}t=r,e=i},d:function(){return t%=65521,e%=65521,(t&255)<<24|t>>>8<<16|(e&255)<<8|e>>>8}}},wr=function(t,e,n,r,i){return _0(t,e.level==null?6:e.level,e.mem==null?Math.ceil(Math.max(8,Math.min(13,Math.log(t.length)))*1.5):12+e.mem,n,r,!i)},S0=function(t,e){var n={};for(var r in t)n[r]=t[r];for(var r in e)n[r]=e[r];return n},l0=function(t,e,n){for(var r=t(),i=t.toString(),a=i.slice(i.indexOf("[")+1,i.lastIndexOf("]")).replace(/\s+/g,"").split(","),o=0;o>>0},lo=function(t,e){return zn(t,e)+zn(t,e+4)*4294967296},Se=function(t,e,n){for(;n;++e)t[e]=n,n>>>=8},A0=function(t,e){var n=e.filename;if(t[0]=31,t[1]=139,t[2]=8,t[8]=e.level<2?4:e.level==9?2:0,t[9]=3,e.mtime!=0&&Se(t,4,Math.floor(new Date(e.mtime||Date.now())/1e3)),n){t[3]=8;for(var r=0;r<=n.length;++r)t[r+10]=n.charCodeAt(r)}},M0=function(t){(t[0]!=31||t[1]!=139||t[2]!=8)&&fe(6,"invalid gzip data");var e=t[3],n=10;e&4&&(n+=t[10]|(t[11]<<8)+2);for(var r=(e>>3&1)+(e>>4&1);r>0;r-=!t[n++]);return n+(e&2)},_p=function(t){var e=t.length;return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0},L0=function(t){return 10+(t.filename&&t.filename.length+1||0)},R0=function(t,e){var n=e.level,r=n==0?0:n<6?1:n==9?3:2;t[0]=120,t[1]=r<<6|(r?32-2*r:1)},O0=function(t){((t[0]&15)!=8||t[0]>>>4>7||(t[0]<<8|t[1])%31)&&fe(6,"invalid zlib data"),t[1]&32&&fe(6,"invalid zlib data: preset dictionaries not supported")};function xo(t,e){return!e&&typeof t=="function"&&(e=t,t={}),this.ondata=e,t}var nn=function(){function t(e,n){!n&&typeof e=="function"&&(n=e,e={}),this.ondata=n,this.o=e||{}}return t.prototype.p=function(e,n){this.ondata(wr(e,this.o,0,0,!n),n)},t.prototype.push=function(e,n){this.ondata||fe(5),this.d&&fe(4),this.d=n,this.p(e,n||!1)},t}(),Cp=function(){function t(e,n){Hn([vo,function(){return[At,nn]}],this,xo.call(this,e,n),function(r){var i=new nn(r.data);onmessage=At(i)},6)}return t}();function kp(t,e){return wr(t,e||{},0,0)}var bt=function(){function t(e){this.s={},this.p=new ke(0),this.ondata=e}return t.prototype.e=function(e){this.ondata||fe(5),this.d&&fe(4);var n=this.p.length,r=new ke(n+e.length);r.set(this.p),r.set(e,n),this.p=r},t.prototype.c=function(e){this.d=this.s.i=e||!1;var n=this.s.b,r=Fi(this.p,this.o,this.s);this.ondata(Vt(r,n,this.s.b),this.d),this.o=Vt(r,this.s.b-32768),this.s.b=this.o.length,this.p=Vt(this.p,this.s.p/8|0),this.s.p&=7},t.prototype.push=function(e,n){this.e(e),this.c(n)},t}(),D0=function(){function t(e){this.ondata=e,Hn([wo,function(){return[At,bt]}],this,0,function(){var n=new bt;onmessage=At(n)},7)}return t}();function Sp(t,e){return Fi(t,e)}var c0=function(){function t(e,n){this.c=yo(),this.l=0,this.v=1,nn.call(this,e,n)}return t.prototype.push=function(e,n){nn.prototype.push.call(this,e,n)},t.prototype.p=function(e,n){this.c.p(e),this.l+=e.length;var r=wr(e,this.o,this.v&&L0(this.o),n&&8,!n);this.v&&(A0(r,this.o),this.v=0),n&&(Se(r,r.length-8,this.c.d()),Se(r,r.length-4,this.l)),this.ondata(r,n)},t}(),O3=function(){function t(e,n){Hn([vo,yp,function(){return[At,nn,c0]}],this,xo.call(this,e,n),function(r){var i=new c0(r.data);onmessage=At(i)},8)}return t}();var ho=function(){function t(e){this.v=1,bt.call(this,e)}return t.prototype.push=function(e,n){if(bt.prototype.e.call(this,e),this.v){var r=this.p.length>3?M0(this.p):4;if(r>=this.p.length&&!n)return;this.p=this.p.subarray(r),this.v=0}n&&(this.p.length<8&&fe(6,"invalid gzip data"),this.p=this.p.subarray(0,-8)),bt.prototype.c.call(this,n)},t}(),Ep=function(){function t(e){this.ondata=e,Hn([wo,wp,function(){return[At,bt,ho]}],this,0,function(){var n=new ho;onmessage=At(n)},9)}return t}();var u0=function(){function t(e,n){this.c=k0(),this.v=1,nn.call(this,e,n)}return t.prototype.push=function(e,n){nn.prototype.push.call(this,e,n)},t.prototype.p=function(e,n){this.c.p(e);var r=wr(e,this.o,this.v&&2,n&&4,!n);this.v&&(R0(r,this.o),this.v=0),n&&Se(r,r.length-4,this.c.d()),this.ondata(r,n)},t}(),D3=function(){function t(e,n){Hn([vo,vp,function(){return[At,nn,u0]}],this,xo.call(this,e,n),function(r){var i=new u0(r.data);onmessage=At(i)},10)}return t}();var po=function(){function t(e){this.v=1,bt.call(this,e)}return t.prototype.push=function(e,n){if(bt.prototype.e.call(this,e),this.v){if(this.p.length<2&&!n)return;this.p=this.p.subarray(2),this.v=0}n&&(this.p.length<4&&fe(6,"invalid zlib data"),this.p=this.p.subarray(0,-4)),bt.prototype.c.call(this,n)},t}(),Ap=function(){function t(e){this.ondata=e,Hn([wo,xp,function(){return[At,bt,po]}],this,0,function(){var n=new po;onmessage=At(n)},11)}return t}();function F0(t,e){return Fi((O0(t),t.subarray(2,-4)),e)}var Mp=function(){function t(e){this.G=ho,this.I=bt,this.Z=po,this.ondata=e}return t.prototype.push=function(e,n){if(this.ondata||fe(5),this.s)this.s.push(e,n);else{if(this.p&&this.p.length){var r=new ke(this.p.length+e.length);r.set(this.p),r.set(e,this.p.length)}else this.p=e;if(this.p.length>2){var i=this,a=function(){i.ondata.apply(i,arguments)};this.s=this.p[0]==31&&this.p[1]==139&&this.p[2]==8?new this.G(a):(this.p[0]&15)!=8||this.p[0]>>4>7||(this.p[0]<<8|this.p[1])%31?new this.I(a):new this.Z(a),this.s.push(this.p,n),this.p=null}}},t}(),F3=function(){function t(e){this.G=Ep,this.I=D0,this.Z=Ap,this.ondata=e}return t.prototype.push=function(e,n){Mp.prototype.push.call(this,e,n)},t}();var d0=typeof TextEncoder<"u"&&new TextEncoder,mo=typeof TextDecoder<"u"&&new TextDecoder,I0=0;try{mo.decode(en,{stream:!0}),I0=1}catch{}var P0=function(t){for(var e="",n=0;;){var r=t[n++],i=(r>127)+(r>223)+(r>239);if(n+i>t.length)return[e,Vt(t,n-1)];i?i==3?(r=((r&15)<<18|(t[n++]&63)<<12|(t[n++]&63)<<6|t[n++]&63)-65536,e+=String.fromCharCode(55296|r>>10,56320|r&1023)):i&1?e+=String.fromCharCode((r&31)<<6|t[n++]&63):e+=String.fromCharCode((r&15)<<12|(t[n++]&63)<<6|t[n++]&63):e+=String.fromCharCode(r)}},I3=function(){function t(e){this.ondata=e,I0?this.t=new TextDecoder:this.p=en}return t.prototype.push=function(e,n){if(this.ondata||fe(5),n=!!n,this.t){this.ondata(this.t.decode(e,{stream:!0}),n),n&&(this.t.decode().length&&fe(8),this.t=null);return}this.p||fe(4);var r=new ke(this.p.length+e.length);r.set(this.p),r.set(e,this.p.length);var i=P0(r),a=i[0],o=i[1];n?(o.length&&fe(8),this.p=null):this.p=o,this.ondata(a,n)},t}(),P3=function(){function t(e){this.ondata=e}return t.prototype.push=function(e,n){this.ondata||fe(5),this.d&&fe(4),this.ondata(go(e),this.d=n||!1)},t}();function go(t,e){if(e){for(var n=new ke(t.length),r=0;r>1)),o=0,s=function(d){a[o++]=d},r=0;ra.length){var l=new ke(o+8+(i-r<<1));l.set(a),a=l}var u=t.charCodeAt(r);u<128||e?s(u):u<2048?(s(192|u>>6),s(128|u&63)):u>55295&&u<57344?(u=65536+(u&1047552)|t.charCodeAt(++r)&1023,s(240|u>>18),s(128|u>>12&63),s(128|u>>6&63),s(128|u&63)):(s(224|u>>12),s(128|u>>6&63),s(128|u&63))}return Vt(a,0,o)}function Lp(t,e){if(e){for(var n="",r=0;r65535&&fe(9),e+=r+4}return e},f0=function(t,e,n,r,i,a,o,s){var l=r.length,u=n.extra,c=s&&s.length,d=Mi(u);Se(t,e,o!=null?33639248:67324752),e+=4,o!=null&&(t[e++]=20,t[e++]=n.os),t[e]=20,e+=2,t[e++]=n.flag<<1|(a<0&&8),t[e++]=i&&8,t[e++]=n.compression&255,t[e++]=n.compression>>8;var f=new Date(n.mtime==null?Date.now():n.mtime),p=f.getFullYear()-1980;if((p<0||p>119)&&fe(10),Se(t,e,p<<25|f.getMonth()+1<<21|f.getDate()<<16|f.getHours()<<11|f.getMinutes()<<5|f.getSeconds()>>>1),e+=4,a!=-1&&(Se(t,e,n.crc),Se(t,e+4,a<0?-a-2:a),Se(t,e+8,n.size)),Se(t,e+12,l),Se(t,e+14,d),e+=16,o!=null&&(Se(t,e,c),Se(t,e+6,n.attrs),Se(t,e+10,o),e+=14),t.set(r,e),e+=l,d)for(var b in u){var g=u[b],m=g.length;Se(t,e,+b),Se(t,e+2,m),t.set(g,e+4),e+=4+m}return c&&(t.set(s,e),e+=c),e},Op=function(t,e,n,r,i){Se(t,e,101010256),Se(t,e+8,n),Se(t,e+10,n),Se(t,e+12,r),Se(t,e+16,i)},Di=function(){function t(e){this.filename=e,this.c=yo(),this.size=0,this.compression=0}return t.prototype.process=function(e,n){this.ondata(null,e,n)},t.prototype.push=function(e,n){this.ondata||fe(5),this.c.p(e),this.size+=e.length,n&&(this.crc=this.c.d()),this.process(e,n||!1)},t}(),N3=function(){function t(e,n){var r=this;n||(n={}),Di.call(this,e),this.d=new nn(n,function(i,a){r.ondata(null,i,a)}),this.compression=8,this.flag=N0(n.level)}return t.prototype.process=function(e,n){try{this.d.push(e,n)}catch(r){this.ondata(r,null,n)}},t.prototype.push=function(e,n){Di.prototype.push.call(this,e,n)},t}(),z3=function(){function t(e,n){var r=this;n||(n={}),Di.call(this,e),this.d=new Cp(n,function(i,a,o){r.ondata(i,a,o)}),this.compression=8,this.flag=N0(n.level),this.terminate=this.d.terminate}return t.prototype.process=function(e,n){this.d.push(e,n)},t.prototype.push=function(e,n){Di.prototype.push.call(this,e,n)},t}(),B3=function(){function t(e){this.ondata=e,this.u=[],this.d=1}return t.prototype.add=function(e){var n=this;if(this.ondata||fe(5),this.d&2)this.ondata(fe(4+(this.d&1)*8,0,1),null,!1);else{var r=go(e.filename),i=r.length,a=e.comment,o=a&&go(a),s=i!=e.filename.length||o&&a.length!=o.length,l=i+Mi(e.extra)+30;i>65535&&this.ondata(fe(11,0,1),null,!1);var u=new ke(l);f0(u,0,e,r,s,-1);var c=[u],d=function(){for(var m=0,h=c;m0){var i=Math.min(this.c,e.length),a=e.subarray(0,i);if(this.c-=i,this.d?this.d.push(a,!this.c):this.k[0].push(a),e=e.subarray(i),e.length)return this.push(e,n)}else{var o=0,s=0,l=void 0,u=void 0;this.p.length?e.length?(u=new ke(this.p.length+e.length),u.set(this.p),u.set(e,this.p.length)):u=this.p:u=e;for(var c=u.length,d=this.c,f=d&&this.d,p=function(){var h,y=zn(u,s);if(y==67324752){o=1,l=s,b.d=null,b.c=0;var w=Nn(u,s+6),S=Nn(u,s+8),_=w&2048,x=w&8,k=Nn(u,s+26),v=Nn(u,s+28);if(c>s+30+k+v){var A=[];b.k.unshift(A),o=2;var C=zn(u,s+18),E=zn(u,s+22),R=Lp(u.subarray(s+30,s+=30+k),!_);C==4294967295?(h=x?[-2]:Rp(u,s),C=h[0],E=h[1]):x&&(C=-1),s+=v,b.c=C;var L,P={name:R,compression:S,start:function(){if(P.ondata||fe(5),!C)P.ondata(null,en,!0);else{var O=r.o[S];O||P.ondata(fe(14,"unknown compression type "+S,1),null,!1),L=C<0?new O(R):new O(R,C,E),L.ondata=function(ne,K,ee){P.ondata(ne,K,ee)};for(var N=0,z=A;N=0&&(P.size=C,P.originalSize=E),b.onfile(P)}return"break"}else if(d){if(y==134695760)return l=s+=12+(d==-2&&8),o=3,b.c=0,"break";if(y==33639248)return l=s-=4,o=3,b.c=0,"break"}},b=this;st.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function Pi(t){for(var e=9,n=t.length;n--;)e=Math.imul(e^t.charCodeAt(n),1597334677);return"#"+((e^e>>>9)>>>0).toString(36)}function Ni(t,e="@media "){return e+yt(t).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(r=>`(${r}-width:${n[r]})`).join(" and "))).join(",")}function yt(t=[]){return Array.isArray(t)?t:t==null?[]:[t]}function Ip(){}var Ze={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function G0(t){return t.match(/[-=:;]/g)?.length||0}function Ao(t){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(t)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(G0(t),15)<<18}var Pp=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function Do({n:t,i:e,v:n=[]},r,i,a){t&&(t=Oo({n:t,i:e,v:n})),a=[...yt(a)];for(let s of n){let l=r.theme("screens",s);for(let u of yt(l&&Ni(l)||r.v(s))){var o;a.push(u),i|=l?67108864|Ao(u):s=="dark"?1073741824:u[0]=="@"?Ao(u):(o=u,1<<~(/:([a-z-]+)/.test(o)&&~Pp.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:t,p:i,r:a,i:e}}var Fo=new Map;function z0(t){if(t.d){let e=[],n=_o(t.r.reduce((r,i)=>i[0]=="@"?(e.push(i),r):i?_o(r,a=>_o(i,o=>{let s=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(s){let l=a.indexOf(s[1]);return~l?a.slice(0,l)+s[0]+a.slice(l+s[1].length):Co(a,o)}return Co(o,a)})):r,"&"),r=>Co(r,t.n?"."+K0(t.n):""));return n&&e.push(n.replace(/:merge\((.+?)\)/g,"$1")),e.reduceRight((r,i)=>i+"{"+r+"}",t.d)}}function _o(t,e){return t.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,r,i)=>e(r)+i)}function Co(t,e){return t.replace(/&/g,e)}var B0=new Intl.Collator("en",{numeric:!0});function Np(t,e){for(var n=0,r=t.length;n>1;0>=X0(t[i],e)?n=i+1:r=i}return r}function X0(t,e){let n=t.p&Ze.o;return n==(e.p&Ze.o)&&(n==Ze.b||n==Ze.o)?0:t.p-e.p||t.o-e.o||B0.compare(U0(t.n),U0(e.n))||B0.compare($0(t.n),$0(e.n))}function U0(t){return(t||"").split(/:/).pop().split("/").pop()||"\0"}function $0(t){return(t||"").replace(/\W/g,e=>String.fromCharCode(127+e.charCodeAt(0)))+"\0"}function ko(t,e){return Math.round(parseInt(t,16)*e)}function mn(t,e={}){if(typeof t=="function")return t(e);let{opacityValue:n="1",opacityVariable:r}=e,i=r?`var(${r})`:n;if(t.includes(""))return t.replace("",i);if(t[0]=="#"&&(t.length==4||t.length==7)){let a=(t.length-1)/3,o=[17,1,.062272][a-1];return`rgba(${[ko(t.substr(1,a),o),ko(t.substr(1+a,a),o),ko(t.substr(1+2*a,a),o),i]})`}return i=="1"?t:i=="0"?"#0000":t.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${i})`)}function Y0(t,e,n,r,i=[]){return function a(o,{n:s,p:l,r:u=[],i:c},d){let f=[],p="",b=0,g=0;for(let y in o||{}){var m,h;let w=o[y];if(y[0]=="@"){if(!w)continue;if(y[1]=="a"){f.push(...J0(s,l,Po(""+w),d,l,u,c,!0));continue}if(y[1]=="l"){for(let S of yt(w))f.push(...a(S,{n:s,p:(m=Ze[y[7]],l&~Ze.o|m),r:y[7]=="d"?[]:u,i:c},d));continue}if(y[1]=="i"){f.push(...yt(w).map(S=>({p:-1,o:0,r:[],d:y+" "+S})));continue}if(y[1]=="k"){f.push({p:Ze.d,o:0,r:[y],d:a(w,{p:Ze.d},d).map(z0).join("")});continue}if(y[1]=="f"){f.push(...yt(w).map(S=>({p:Ze.d,o:0,r:[y],d:a(S,{p:Ze.d},d).map(z0).join("")})));continue}}if(typeof w!="object"||Array.isArray(w))y=="label"&&w?s=w+Pi(JSON.stringify([l,c,o])):(w||w===0)&&(y=y.replace(/[A-Z]/g,S=>"-"+S.toLowerCase()),g+=1,b=Math.max(b,(h=y)[0]=="-"?0:G0(h)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(h)?+!!RegExp.$1||-!!RegExp.$2:0)+1),p+=(p?";":"")+yt(w).map(S=>d.s(y,Z0(""+S,d.theme)+(c?" !important":""))).join(";"));else if(y[0]=="@"||y.includes("&")){let S=l;y[0]=="@"&&(y=y.replace(/\bscreen\(([^)]+)\)/g,(_,x)=>{let k=d.theme("screens",x);return k?(S|=67108864,Ni(k,"")):_}),S|=Ao(y)),f.push(...a(w,{n:s,p:S,r:[...u,y],i:c},d))}else f.push(...a(w,{p:l,r:[...u,y]},d))}return f.unshift({n:s,p:l,o:Math.max(0,15-g)+1.5*Math.min(b||15,15),r:u,d:p}),f.sort(X0)}(t,Do(e,n,r,i),n)}function Z0(t,e){return t.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,r,i,a,o="")=>{let s=e(i,o);return typeof s=="function"&&/color|fill|stroke/i.test(i)?mn(s):""+yt(s).filter(l=>Object(l)!==l)})}function Io(t,e){let n,r=[];for(let i of t)i.d&&i.n?n?.p==i.p&&""+n.r==""+i.r?(n.c=[n.c,i.c].filter(Boolean).join(" "),n.d=n.d+";"+i.d):r.push(n={...i,n:i.n&&e}):r.push({...i,n:i.n&&e});return r}function Mo(t,e,n=Ze.u,r,i){let a=[];for(let o of t)for(let s of function(l,u,c,d,f){l={...l,i:l.i||f};let p=function(b,g){let m=Fo.get(b.n);return m?m(b,g):g.r(b.n,b.v[0]=="dark")}(l,u);return p?typeof p=="string"?({r:d,p:c}=Do(l,u,c,d),Io(Mo(Po(p),u,c,d,l.i),l.n)):Array.isArray(p)?p.map(b=>{var g,m;return{o:0,...b,r:[...yt(d),...yt(b.r)],p:(g=c,m=b.p??c,g&~Ze.o|m)}}):Y0(p,l,u,c,d):[{c:Oo(l),p:0,o:0,r:[]}]}(o,e,n,r,i))a.splice(Np(a,s),0,s);return a}function J0(t,e,n,r,i,a,o,s){return Io((s?n.flatMap(l=>Mo([l],r,i,a,o)):Mo(n,r,i,a,o)).map(l=>l.p&Ze.o&&(l.n||e==Ze.b)?{...l,p:l.p&~Ze.o|e,o:0}:l),t)}function zp(t,e,n,r){var i;return i=(a,o)=>{let{n:s,p:l,r:u,i:c}=Do(a,o,e);return n&&J0(s,e,n,o,l,u,c,r)},Fo.set(t,i),t}function So(t,e,n){if(t[t.length-1]!="("){let r=[],i=!1,a=!1,o="";for(let s of t)if(!(s=="("||/[~@]$/.test(s))){if(s[0]=="!"&&(s=s.slice(1),i=!i),s.endsWith(":")){r[s=="dark:"?"unshift":"push"](s.slice(0,-1));continue}s[0]=="-"&&(s=s.slice(1),a=!a),s.endsWith("-")&&(s=s.slice(0,-1)),s&&s!="&"&&(o+=(o&&"-")+s)}o&&(a&&(o="-"+o),e[0].push({n:o,v:r.filter(Bp),i}))}}function Bp(t,e,n){return n.indexOf(t)==e}var j0=new Map;function Po(t){let e=j0.get(t);if(!e){let n=[],r=[[]],i=0,a=0,o=null,s=0,l=(u,c=0)=>{i!=s&&(n.push(t.slice(i,s+c)),u&&So(n,r)),i=s+1};for(;s1?d.slice(0,-1)+Pi(JSON.stringify([d,f])):d+"("+V0(f)+")",Ze.a,f,/@$/.test(d))],r)}c=n.lastIndexOf("(",c-1)}n.length=c+1}else/[~@]/.test(u)&&t[s+1]=="("&&r.unshift([])}l(!0),j0.set(t,e=r[0])}return e}function Q0(t,e,n){return e.reduce((r,i,a)=>r+n(i)+t[a+1],t[0])}function eu(t,e){return Array.isArray(t)&&Array.isArray(t.raw)?Q0(t,e,n=>Eo(n).trim()):e.filter(Boolean).reduce((n,r)=>n+Eo(r),t?Eo(t):"")}function Eo(t){let e,n="";if(t&&typeof t=="object")if(Array.isArray(t))(e=eu(t[0],t.slice(1)))&&(n+=" "+e);else for(let r in t)t[r]&&(n+=" "+r);else t!=null&&typeof t!="boolean"&&(n+=" "+t);return n}var K3=tu("@"),G3=tu("~");function tu(t){return new Proxy(function(n,...r){return e("",n,r)},{get(n,r){return r in n?n[r]:function(i,...a){return e(r,i,a)}}});function e(n,r,i){return V0(Po(n+t+"("+eu(r,i)+")"))}}function Lo(t,e){return Array.isArray(t)?H0(Q0(t,e,n=>n!=null&&typeof n!="boolean"?n:"")):typeof t=="string"?H0(t):[t]}var Up=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function H0(t){let e;t=t.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],r=[n[0]],i=[];for(;e=Up.exec(t);)e[4]&&(n.shift(),i.shift()),e[3]?(i.unshift(e[3]),n.unshift({}),r.push(i.reduce((a,o)=>({[o]:a}),n[0]))):e[4]||(n[0][e[1]]&&(n.unshift({}),r.push(i.reduce((a,o)=>({[o]:a}),n[0]))),n[0][e[1]]=e[2]);return r}function nu(t,...e){var n;let r=Lo(t,e),i=(r.find(a=>a.label)?.label||"css")+Pi(JSON.stringify(r));return n=(a,o)=>Io(r.flatMap(s=>Y0(s,a,o,Ze.o)),i),Fo.set(i,n),i}var X3=new Proxy(function(t,e){return W0("animation",t,e)},{get(t,e){return e in t?t[e]:function(n,r){return W0(e,n,r)}}});function W0(t,e,n){return{toString(){return nu({label:t,"@layer components":{...typeof e=="object"?e:{animation:e},animationName:""+n}})}}}function W(t,e,n){return[t,$p(e,n)]}function $p(t,e){return typeof t=="function"?t:typeof t=="string"&&/^[\w-]+$/.test(t)?(n,r)=>({[t]:e?e(n,r):Ro(n,1)}):n=>t||{[n[1]]:Ro(n,2)}}function Ro(t,e,n=t.slice(e).find(Boolean)||t.$$||t.input){return t.input[0]=="-"?`calc(${n} * -1)`:n}function V(t,e,n,r){return[t,jp(e,n,r)]}function jp(t,e,n){let r=typeof e=="string"?(i,a)=>({[e]:n?n(i,a):i._}):e||(({1:i,_:a},o,s)=>({[i||s]:a}));return(i,a)=>{let o=ru(t||i[1]),s=a.theme(o,i.$$)??Wn(i.$$,o,a);if(s!=null)return i._=Ro(i,0,s),r(i,a,o)}}function ze(t,e={},n){return[t,Hp(e,n)]}function Hp(t={},e){return(n,r)=>{let{section:i=ru(n[0]).replace("-","")+"Color"}=t,[a,o]=Wp(n.$$);if(!a)return;let s=r.theme(i,a)||Wn(a,i,r);if(!s||typeof s=="object")return;let{opacityVariable:l=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:u=i.replace("Color","Opacity"),property:c=i,selector:d}=t,f=r.theme(u,o||"DEFAULT")||o&&Wn(o,u,r),p=e||(({_:g})=>{let m=vr(c,g);return d?{[d]:m}:m});n._={value:mn(s,{opacityVariable:l||void 0,opacityValue:f||void 0}),color:g=>mn(s,g),opacityVariable:l||void 0,opacityValue:f||void 0};let b=p(n,r);if(!n.dark){let g=r.d(i,a,s);g&&g!==s&&(n._={value:mn(g,{opacityVariable:l||void 0,opacityValue:f||"1"}),color:m=>mn(g,m),opacityVariable:l||void 0,opacityValue:f||void 0},b={"&":b,[r.v("dark")]:p(n,r)})}return b}}function Wp(t){return(t.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function vr(t,e){let n={};return typeof e=="string"?n[t]=e:(e.opacityVariable&&e.value.includes(e.opacityVariable)&&(n[e.opacityVariable]=e.opacityValue||"1"),n[t]=e.value),n}function Wn(t,e,n){if(t[0]=="["&&t.slice(-1)=="]"){if(t=Ii(Z0(t.slice(1,-1),n.theme)),!e)return t;if(!(/color|fill|stroke/i.test(e)&&!(/^color:/.test(t)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(t))||/image/i.test(e)&&!(/^image:/.test(t)||/^[a-z-]+\(/.test(t))||/weight/i.test(e)&&!(/^(number|any):/.test(t)||/^\d+$/.test(t))||/position/i.test(e)&&/^(length|size):/.test(t)))return t.replace(/^[a-z-]+:/,"")}}function ru(t){return t.replace(/-./g,e=>e[1].toUpperCase())}function Ii(t){return t.includes("url(")?t.replace(/(.*?)(url\(.*?\))(.*?)/g,(e,n="",r,i="")=>Ii(n)+r+Ii(i)):t.replace(/(^|[^\\])_+/g,(e,n)=>n+" ".repeat(e.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,e=>e.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var Y3=Symbol();var iu=new Proxy(Ip,{apply(t,e,n){return To(n[0])},get(t,e){let n=To[e];return typeof n=="function"?function(){return n.apply(To,arguments)}:n}});var Z3=function t(e){return new Proxy(function(n,...r){return q0(e,"",n,r)},{get(n,r){return r==="bind"?t:r in n?n[r]:function(i,...a){return q0(e,r,i,a)}}})}();function q0(t,e,n,r){return{toString(){let i=Lo(n,r),a=K0(e+Pi(JSON.stringify([e,i])));return(typeof t=="function"?t:iu)(nu({[`@keyframes ${a}`]:Lo(n,r)})),a}}}var au={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...wt(4,"rem",4,.5,.5),...wt(12,"rem",4,5),14:"3.5rem",...wt(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:we("blur"),backdropBrightness:we("brightness"),backdropContrast:we("contrast"),backdropGrayscale:we("grayscale"),backdropHueRotate:we("hueRotate"),backdropInvert:we("invert"),backdropOpacity:we("opacity"),backdropSaturate:we("saturate"),backdropSepia:we("sepia"),backgroundColor:we("colors"),backgroundImage:{none:"none"},backgroundOpacity:we("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...wt(200,"",100,0,50),...wt(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:t})=>({DEFAULT:t("colors.gray.200","currentColor"),...t("colors")}),borderOpacity:we("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:we("spacing"),borderWidth:{DEFAULT:"1px",...Mt(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:we("colors"),caretColor:we("colors"),accentColor:({theme:t})=>({auto:"auto",...t("colors")}),contrast:{...wt(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:we("borderColor"),divideOpacity:we("borderOpacity"),divideWidth:we("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:t})=>({...t("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:t})=>({...t("spacing"),...xr(2,6),...xr(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:we("spacing"),gradientColorStops:we("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:t})=>({...t("spacing"),...xr(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:t})=>({...t("spacing"),...xr(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...wt(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:t})=>({auto:"auto",...t("spacing")}),maxHeight:({theme:t})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...t("spacing")}),maxWidth:({theme:t,breakpoints:e})=>({...e(t("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...wt(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:we("spacing"),placeholderColor:we("colors"),placeholderOpacity:we("opacity"),outlineColor:we("colors"),outlineOffset:Mt(8,"px"),outlineWidth:Mt(8,"px"),ringColor:({theme:t})=>({...t("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:we("colors"),ringOffsetWidth:Mt(8,"px"),ringOpacity:({theme:t})=>({...t("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...Mt(8,"px")},rotate:{...Mt(2,"deg"),...Mt(12,"deg",3),...Mt(180,"deg",45)},saturate:wt(200,"",100,0,50),scale:{...wt(150,"",100,0,50),...wt(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:we("spacing"),scrollPadding:we("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...Mt(2,"deg"),...Mt(12,"deg",3)},space:we("spacing"),stroke:({theme:t})=>({...t("colors"),none:"none"}),strokeWidth:wt(2),textColor:we("colors"),textDecorationColor:we("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...Mt(8,"px")},textUnderlineOffset:{auto:"auto",...Mt(8,"px")},textIndent:we("spacing"),textOpacity:we("opacity"),transitionDuration:({theme:t})=>({...t("durations"),DEFAULT:"150ms"}),transitionDelay:we("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:t})=>({...t("spacing"),...xr(2,4),full:"100%"}),width:({theme:t})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...t("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...wt(50,"",1,0,10),auto:"auto"}};function xr(t,e){let n={};do for(var r=1;re(t)}var mb={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${au.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${au.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},bb=[W("\\[([-\\w]+):(.+)]",({1:t,2:e},n)=>({"@layer overrides":{"&":{[t]:Wn(`[${e}]`,"",n)}}})),W("(group|peer)([~/][^-[]+)?",({input:t},{h:e})=>[{c:e(t)}]),V("aspect-","aspectRatio"),W("container",(t,{theme:e})=>{let{screens:n=e("screens"),center:r,padding:i}=e("container"),a={width:"100%",marginRight:r&&"auto",marginLeft:r&&"auto",...o("xs")};for(let s in n){let l=n[s];typeof l=="string"&&(a[Ni(l)]={"&":{maxWidth:l,...o(s)}})}return a;function o(s){let l=i&&(typeof i=="string"?i:i[s]||i.DEFAULT);if(l)return{paddingRight:l,paddingLeft:l}}}),V("content-","content",({_:t})=>({"--tw-content":t,content:"var(--tw-content)"})),W("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),W("box-(border|content)","boxSizing",({1:t})=>t+"-box"),W("hidden",{display:"none"}),W("table-(auto|fixed)","tableLayout"),W(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",W("isolate","isolation"),W("object-(contain|cover|fill|none|scale-down)","objectFit"),V("object-","objectPosition"),W("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",zi),W("overscroll(-[xy])?-(auto|contain|none)",({1:t="",2:e})=>({["overscroll-behavior"+t]:e})),W("(static|fixed|absolute|relative|sticky)","position"),V("-?inset(-[xy])?(?:$|-)","inset",({1:t,_:e})=>({top:t!="-x"&&e,right:t!="-y"&&e,bottom:t!="-x"&&e,left:t!="-y"&&e})),V("-?(top|bottom|left|right)(?:$|-)","inset"),W("(visible|collapse)","visibility"),W("invisible",{visibility:"hidden"}),V("-?z-","zIndex"),W("flex-((row|col)(-reverse)?)","flexDirection",ou),W("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),V("(flex-(?:grow|shrink))(?:$|-)"),V("(flex)-"),V("grow(?:$|-)","flexGrow"),V("shrink(?:$|-)","flexShrink"),V("basis-","flexBasis"),V("-?(order)-"),"-?(order)-(\\d+)",V("grid-cols-","gridTemplateColumns"),W("grid-cols-(\\d+)","gridTemplateColumns",uu),V("col-","gridColumn"),W("col-(span)-(\\d+)","gridColumn",cu),V("col-start-","gridColumnStart"),W("col-start-(auto|\\d+)","gridColumnStart"),V("col-end-","gridColumnEnd"),W("col-end-(auto|\\d+)","gridColumnEnd"),V("grid-rows-","gridTemplateRows"),W("grid-rows-(\\d+)","gridTemplateRows",uu),V("row-","gridRow"),W("row-(span)-(\\d+)","gridRow",cu),V("row-start-","gridRowStart"),W("row-start-(auto|\\d+)","gridRowStart"),V("row-end-","gridRowEnd"),W("row-end-(auto|\\d+)","gridRowEnd"),W("grid-flow-((row|col)(-dense)?)","gridAutoFlow",t=>zi(ou(t))),W("grid-flow-(dense)","gridAutoFlow"),V("auto-cols-","gridAutoColumns"),V("auto-rows-","gridAutoRows"),V("gap-x(?:$|-)","gap","columnGap"),V("gap-y(?:$|-)","gap","rowGap"),V("gap(?:$|-)","gap"),"(justify-(?:items|self))-",W("justify-","justifyContent",su),W("(content|items|self)-",t=>({["align-"+t[1]]:su(t)})),W("(place-(content|items|self))-",({1:t,$$:e})=>({[t]:("wun".includes(e[3])?"space-":"")+e})),V("p([xytrbl])?(?:$|-)","padding",qn("padding")),V("-?m([xytrbl])?(?:$|-)","margin",qn("margin")),V("-?space-(x|y)(?:$|-)","space",({1:t,_:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${t}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[t]]:`calc(${e} * calc(1 - var(--tw-space-${t}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[t]]:`calc(${e} * var(--tw-space-${t}-reverse))`}})),W("space-(x|y)-reverse",({1:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${t}-reverse`]:"1"}})),V("w-","width"),V("min-w-","minWidth"),V("max-w-","maxWidth"),V("h-","height"),V("min-h-","minHeight"),V("max-h-","maxHeight"),V("font-","fontWeight"),V("font-","fontFamily",({_:t})=>typeof(t=yt(t))[1]=="string"?{fontFamily:Pt(t)}:{fontFamily:Pt(t[0]),...t[1]}),W("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),W("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),W("italic","fontStyle"),W("not-italic",{fontStyle:"normal"}),W("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:t,2:e="",3:n})=>e=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(e[0])?"numeric-spacing":e?"numeric-figure":t)]:t,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...gn({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),V("tracking-","letterSpacing"),V("leading-","lineHeight"),W("list-(inside|outside)","listStylePosition"),V("list-","listStyleType"),W("list-","listStyleType"),V("placeholder-opacity-","placeholderOpacity",({_:t})=>({"&::placeholder":{"--tw-placeholder-opacity":t}})),ze("placeholder-",{property:"color",selector:"&::placeholder"}),W("text-(left|center|right|justify|start|end)","textAlign"),W("text-(ellipsis|clip)","textOverflow"),V("text-opacity-","textOpacity","--tw-text-opacity"),ze("text-",{property:"color"}),V("text-","fontSize",({_:t})=>typeof t=="string"?{fontSize:t}:{fontSize:t[0],...typeof t[1]=="string"?{lineHeight:t[1]}:t[1]}),V("indent-","textIndent"),W("(overline|underline|line-through)","textDecorationLine"),W("no-underline",{textDecorationLine:"none"}),V("underline-offset-","textUnderlineOffset"),ze("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),V("decoration-","textDecorationThickness"),W("decoration-","textDecorationStyle"),W("(uppercase|lowercase|capitalize)","textTransform"),W("normal-case",{textTransform:"none"}),W("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),W("align-","verticalAlign"),W("whitespace-","whiteSpace"),W("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),W("break-words",{overflowWrap:"break-word"}),W("break-all",{wordBreak:"break-all"}),W("break-keep",{wordBreak:"keep-all"}),ze("caret-",{opacityVariable:!1,opacitySection:"opacity"}),ze("accent-",{opacityVariable:!1,opacitySection:"opacity"}),W("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:t})=>`linear-gradient(to ${kn(t," ")},var(--tw-gradient-stops))`),ze("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-gradient-from":t.value,"--tw-gradient-to":t.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),ze("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-gradient-to":t.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${t.value},var(--tw-gradient-to)`})),ze("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),W("bg-(fixed|local|scroll)","backgroundAttachment"),W("bg-origin-(border|padding|content)","backgroundOrigin",({1:t})=>t+"-box"),W(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),W("bg-blend-","backgroundBlendMode"),W("bg-clip-(border|padding|content|text)","backgroundClip",({1:t})=>t+(t=="text"?"":"-box")),V("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),ze("bg-",{section:"backgroundColor"}),V("bg-","backgroundImage"),V("bg-","backgroundPosition"),W("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",zi),V("bg-","backgroundSize"),V("rounded(?:$|-)","borderRadius"),V("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:t,_:e})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[t]||[t,t];return{[`border-${kn(n[0])}-radius`]:e,[`border-${kn(n[1])}-radius`]:e}}),W("border-(collapse|separate)","borderCollapse"),V("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),W("border-(solid|dashed|dotted|double|none)","borderStyle"),V("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:t,_:e})=>({...gn({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(t||"-x")]:e,["--tw-border-spacing"+(t||"-y")]:e,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),ze("border-([xytrbl])-",{section:"borderColor"},qn("border","Color")),ze("border-"),V("border-([xytrbl])(?:$|-)","borderWidth",qn("border","Width")),V("border(?:$|-)","borderWidth"),V("divide-opacity(?:$|-)","divideOpacity",({_:t})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":t}})),W("divide-(solid|dashed|dotted|double|none)",({1:t})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:t}})),W("divide-([xy]-reverse)",({1:t})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+t]:"1"}})),V("divide-([xy])(?:$|-)","divideWidth",({1:t,_:e})=>{let n={x:"lr",y:"tb"}[t];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${t}-reverse`]:"0",[`border-${kn(n[0])}Width`]:`calc(${e} * calc(1 - var(--tw-divide-${t}-reverse)))`,[`border-${kn(n[1])}Width`]:`calc(${e} * var(--tw-divide-${t}-reverse))`}}}),ze("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),V("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),ze("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),V("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),W("ring-inset",{"--tw-ring-inset":"inset"}),ze("ring-",{property:"--tw-ring-color"}),V("ring(?:$|-)","ringWidth",({_:t},{theme:e})=>({...gn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":e("ringOffsetWidth","","0px"),"--tw-ring-offset-color":mn(e("ringOffsetColor","","#fff")),"--tw-ring-color":mn(e("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":e("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${t} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),ze("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-shadow-color":t.value,"--tw-shadow":"var(--tw-shadow-colored)"})),V("shadow(?:$|-)","boxShadow",({_:t})=>({...gn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":Pt(t),"--tw-shadow-colored":Pt(t).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),V("(opacity)-"),W("mix-blend-","mixBlendMode"),...lu(),...lu("backdrop-"),V("transition(?:$|-)","transitionProperty",(t,{theme:e})=>({transitionProperty:Pt(t),transitionTimingFunction:t._=="none"?void 0:Pt(e("transitionTimingFunction","")),transitionDuration:t._=="none"?void 0:Pt(e("transitionDuration",""))})),V("duration(?:$|-)","transitionDuration","transitionDuration",Pt),V("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",Pt),V("delay(?:$|-)","transitionDelay","transitionDelay",Pt),V("animate(?:$|-)","animation",(t,{theme:e,h:n,e:r})=>{let i=Pt(t),a=i.split(" "),o=e("keyframes",a[0]);return o?{["@keyframes "+(a[0]=r(n(a[0])))]:o,animation:a.join(" ")}:{animation:i}}),"(transform)-(none)",W("transform",zo),W("transform-(cpu|gpu)",({1:t})=>({"--tw-transform":du(t=="gpu")})),V("scale(-[xy])?-","scale",({1:t,_:e})=>({["--tw-scale"+(t||"-x")]:e,["--tw-scale"+(t||"-y")]:e,...zo()})),V("-?(rotate)-","rotate",No),V("-?(translate-[xy])-","translate",No),V("-?(skew-[xy])-","skew",No),W("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",zi),"(appearance)-",V("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",V("(cursor)-"),"(cursor)-",W("snap-(none)","scroll-snap-type"),W("snap-(x|y|both)",({1:t})=>({...gn({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":t+" var(--tw-scroll-snap-strictness)"})),W("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),W("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),W("snap-(normal|always)","scroll-snap-stop"),W("scroll-(auto|smooth)","scroll-behavior"),V("scroll-p([xytrbl])?(?:$|-)","padding",qn("scroll-padding")),V("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",qn("scroll-margin")),W("touch-(auto|none|manipulation)","touch-action"),W("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:t,2:e,3:n})=>({...gn({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${e?"pan-x":n?"pan-y":t}`]:t,"touch-action":"var(--tw-touch-action)"})),W("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),W("outline",{outlineStyle:"solid"}),W("outline-(dashed|dotted|double)","outlineStyle"),V("-?(outline-offset)-"),ze("outline-",{opacityVariable:!1,opacitySection:"opacity"}),V("outline-","outlineWidth"),"(pointer-events)-",V("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:t})=>({x:"horizontal",y:"vertical"})[t]||t||"both"],W("select-(none|text|all|auto)","userSelect"),ze("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),ze("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),V("stroke-","strokeWidth"),W("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),W("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function zi(t){return(typeof t=="string"?t:t[1]).replace(/-/g," ").trim()}function ou(t){return(typeof t=="string"?t:t[1]).replace("col","column")}function kn(t,e="-"){let n=[];for(let r of t)n.push({t:"top",r:"right",b:"bottom",l:"left"}[r]);return n.join(e)}function Pt(t){return t&&""+(t._||t)}function su({$$:t}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[t[3]||""]||"")+t}function qn(t,e=""){return({1:n,_:r})=>{let i={x:"lr",y:"tb"}[n]||n+n;return i?{...vr(t+"-"+kn(i[0])+e,r),...vr(t+"-"+kn(i[1])+e,r)}:vr(t+e,r)}}function lu(t=""){let e=["blur","brightness","contrast","grayscale","hue-rotate","invert",t&&"opacity","saturate","sepia",!t&&"drop-shadow"].filter(Boolean),n={};for(let r of e)n[`--tw-${t}${r}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...gn(n),[`${t}filter`]:e.map(r=>`var(--tw-${t}${r})`).join(" ")},[`(${t}filter)-(none)`,W(`${t}filter`,n),...e.map(r=>V(`${r[0]=="h"?"-?":""}(${t}${r})(?:$|-)`,r,({1:i,_:a})=>({[`--tw-${i}`]:yt(a).map(o=>`${r}(${o})`).join(" "),...n})))]}function No({1:t,_:e}){return{["--tw-"+t]:e,...zo()}}function zo(){return{...gn({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":du()}),transform:"var(--tw-transform)"}}function du(t){return[t?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function cu({1:t,2:e}){return`${t} ${e} / ${t} ${e}`}function uu({1:t}){return`repeat(${t},minmax(0,1fr))`}function gn(t){return{"@layer defaults":{"*,::before,::after":t,"::backdrop":t}}}var bu,ge,yu,Kp,Tr,fu,Gp,wu={},vu=[],Xp=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function bn(t,e){for(var n in e)t[n]=e[n];return t}function xu(t){var e=t.parentNode;e&&e.removeChild(t)}function Bo(t,e,n,r,i){var a={type:t,props:e,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:i??++yu};return i==null&&ge.vnode!=null&&ge.vnode(a),a}function Kn(t){return t.children}function Bi(t,e){this.props=t,this.context=e}function Vn(t,e){if(e==null)return t.__?Vn(t.__,t.__.__k.indexOf(t)+1):null;for(var n;e0?Bo(p.type,p.props,p.key,p.ref?p.ref:null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(f=h[c])===null||f&&p.key==f.key&&p.type===f.type)h[c]=void 0;else for(d=0;d()=>(e||t((e={exports:{}}).exports,e),e.exports),c1=(t,e)=>{for(var n in e)Wo(t,n,{get:e[n],enumerable:!0})},Ho=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of a1(e))!s1.call(t,i)&&i!==n&&Wo(t,i,{get:()=>e[i],enumerable:!(r=i1(e,i))||r.enumerable});return t},u1=(t,e,n)=>(Ho(t,e,"default"),n&&Ho(n,e,"default")),zu=(t,e,n)=>(n=t!=null?r1(o1(t)):{},Ho(e||!t||!t.__esModule?Wo(n,"default",{value:t,enumerable:!0}):n,t)),Bu=l1((t,e)=>{(function(n,r){typeof define=="function"&&define.amd?define([],r):typeof t<"u"?r():(r(),n.FileSaver={})})(t,function(){"use strict";function n(u,c){return typeof c>"u"?c={autoBom:!1}:typeof c!="object"&&(c={autoBom:!c}),c.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(u.type)?new Blob(["\uFEFF",u],{type:u.type}):u}function r(u,c,d){var f=new XMLHttpRequest;f.open("GET",u),f.responseType="blob",f.onload=function(){l(f.response,c,d)},f.onerror=function(){},f.send()}function i(u){var c=new XMLHttpRequest;c.open("HEAD",u,!1);try{c.send()}catch{}return 200<=c.status&&299>=c.status}function a(u){try{u.dispatchEvent(new MouseEvent("click"))}catch{var c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),u.dispatchEvent(c)}}var o=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof Hi=="object"&&Hi.global===Hi?Hi:void 0,s=o.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),l=o.saveAs||(typeof window!="object"||window!==o?function(){}:"download"in HTMLAnchorElement.prototype&&!s?function(u,c,d){var f=o.URL||o.webkitURL,p=document.createElement("a");c=c||u.name||"download",p.download=c,p.rel="noopener",typeof u=="string"?(p.href=u,p.origin===location.origin?a(p):i(p.href)?r(u,c,d):a(p,p.target="_blank")):(p.href=f.createObjectURL(u),setTimeout(function(){f.revokeObjectURL(p.href)},4e4),setTimeout(function(){a(p)},0))}:"msSaveOrOpenBlob"in navigator?function(u,c,d){if(c=c||u.name||"download",typeof u!="string")navigator.msSaveOrOpenBlob(n(u,d),c);else if(i(u))r(u,c,d);else{var f=document.createElement("a");f.href=u,f.target="_blank",setTimeout(function(){a(f)})}}:function(u,c,d,f){if(f=f||open("","_blank"),f&&(f.document.title=f.document.body.innerText="downloading..."),typeof u=="string")return r(u,c,d);var p=u.type==="application/octet-stream",b=/constructor/i.test(o.HTMLElement)||o.safari,g=/CriOS\/[\d]+/.test(navigator.userAgent);if((g||p&&b||s)&&typeof FileReader<"u"){var m=new FileReader;m.onloadend=function(){var w=m.result;w=g?w:w.replace(/^data:[^;]*;/,"data:attachment/file;"),f?f.location.href=w:location=w,f=null},m.readAsDataURL(u)}else{var h=o.URL||o.webkitURL,y=h.createObjectURL(u);f?f.location=y:location.href=y,f=null,setTimeout(function(){h.revokeObjectURL(y)},4e4)}});o.saveAs=l.saveAs=l,typeof e<"u"&&(e.exports=l)})}),Uu={};c1(Uu,{default:()=>_r});var d1=zu(Bu());u1(Uu,zu(Bu()));var{default:Nu,...f1}=d1,_r=Nu!==void 0?Nu:f1;var vt=window,ju=!1,Hu=!!(vt.Worker&&vt.Blob&&vt.Promise&&vt.OffscreenCanvas&&vt.OffscreenCanvasRenderingContext2D&&vt.HTMLCanvasElement&&vt.HTMLCanvasElement.prototype.transferControlToOffscreen&&vt.URL&&vt.URL.createObjectURL);function $u(){}function Go(t){var e=vt.Promise,n=e!==void 0?e:vt.Promise;return typeof n=="function"?new n(t):(t($u,$u),null)}var qo=function(){var t=Math.floor(16.666666666666668),e,n,r={},i=0;return typeof requestAnimationFrame=="function"&&typeof cancelAnimationFrame=="function"?(e=function(a){var o=Math.random();return r[o]=requestAnimationFrame(function s(l){i===l||i+t-1{t={async resolve(a){await a,e="fulfilled",r(a)},reject(a){e="rejected",i(a)}}});return Object.defineProperty(n,"state",{get:()=>e}),Object.assign(n,t)}var Wu=class{#e=0;#t=[];#n=[];#r=Cr();add(e){++this.#e,this.#i(e[Symbol.asyncIterator]())}async#i(e){try{let{value:n,done:r}=await e.next();r?--this.#e:this.#t.push({iterator:e,value:n})}catch(n){this.#n.push(n)}this.#r.resolve()}async*iterate(){for(;this.#e>0;){await this.#r;for(let e=0;e<~]))"].join("|"),"g");var Y8=Number.isNaN||function(t){return typeof t=="number"&&t!==t};var Wi=globalThis||(typeof window<"u"?window:self),D1=Object.create,Zo=Object.defineProperty,F1=Object.getOwnPropertyDescriptor,I1=Object.getOwnPropertyNames,P1=Object.getPrototypeOf,N1=Object.prototype.hasOwnProperty,z1=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),B1=(t,e)=>{for(var n in e)Zo(t,n,{get:e[n],enumerable:!0})},Yo=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of I1(e))!N1.call(t,i)&&i!==n&&Zo(t,i,{get:()=>e[i],enumerable:!(r=F1(e,i))||r.enumerable});return t},U1=(t,e,n)=>(Yo(t,e,"default"),n&&Yo(n,e,"default")),Ku=(t,e,n)=>(n=t!=null?D1(P1(t)):{},Yo(e||!t||!t.__esModule?Zo(n,"default",{value:t,enumerable:!0}):n,t)),Gu=z1((t,e)=>{var n="Expected a function",r=NaN,i="[object Symbol]",a=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt,c=typeof Wi=="object"&&Wi&&Wi.Object===Object&&Wi,d=typeof self=="object"&&self&&self.Object===Object&&self,f=c||d||Function("return this")(),p=Object.prototype,b=p.toString,g=Math.max,m=Math.min,h=function(){return f.Date.now()};function y(v,A,C){var E,R,L,P,O,N,z=0,Y=!1,ne=!1,K=!0;if(typeof v!="function")throw new TypeError(n);A=k(A)||0,S(C)&&(Y=!!C.leading,ne="maxWait"in C,L=ne?g(k(C.maxWait)||0,A):L,K="trailing"in C?!!C.trailing:K);function ee(Z){var ie=E,oe=R;return E=R=void 0,z=Z,P=v.apply(oe,ie),P}function M(Z){return z=Z,O=setTimeout(q,A),Y?ee(Z):P}function I(Z){var ie=Z-N,oe=Z-z,le=A-ie;return ne?m(le,L-oe):le}function $(Z){var ie=Z-N,oe=Z-z;return N===void 0||ie>=A||ie<0||ne&&oe>=L}function q(){var Z=h();if($(Z))return G(Z);O=setTimeout(q,I(Z))}function G(Z){return O=void 0,K&&E?ee(Z):(E=R=void 0,P)}function ce(){O!==void 0&&clearTimeout(O),z=0,E=N=R=O=void 0}function pe(){return O===void 0?P:G(h())}function me(){var Z=h(),ie=$(Z);if(E=arguments,R=this,N=Z,ie){if(O===void 0)return M(N);if(ne)return O=setTimeout(q,A),ee(N)}return O===void 0&&(O=setTimeout(q,A)),P}return me.cancel=ce,me.flush=pe,me}function w(v,A,C){var E=!0,R=!0;if(typeof v!="function")throw new TypeError(n);return S(C)&&(E="leading"in C?!!C.leading:E,R="trailing"in C?!!C.trailing:R),y(v,A,{leading:E,maxWait:A,trailing:R})}function S(v){var A=typeof v;return!!v&&(A=="object"||A=="function")}function _(v){return!!v&&typeof v=="object"}function x(v){return typeof v=="symbol"||_(v)&&b.call(v)==i}function k(v){if(typeof v=="number")return v;if(x(v))return r;if(S(v)){var A=typeof v.valueOf=="function"?v.valueOf():v;v=S(A)?A+"":A}if(typeof v!="string")return v===0?v:+v;v=v.replace(a,"");var C=s.test(v);return C||l.test(v)?u(v.slice(2),C?2:8):o.test(v)?r:+v}e.exports=w}),Xu={};B1(Xu,{default:()=>Jo});var $1=Ku(Gu());U1(Xu,Ku(Gu()));var{default:Vu,...j1}=$1,Jo=Vu!==void 0?Vu:j1;var H1=Object.create,es=Object.defineProperty,W1=Object.getOwnPropertyDescriptor,q1=Object.getOwnPropertyNames,V1=Object.getPrototypeOf,K1=Object.prototype.hasOwnProperty,G1=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),X1=(t,e)=>{for(var n in e)es(t,n,{get:e[n],enumerable:!0})},Qo=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of q1(e))!K1.call(t,i)&&i!==n&&es(t,i,{get:()=>e[i],enumerable:!(r=W1(e,i))||r.enumerable});return t},Y1=(t,e,n)=>(Qo(t,e,"default"),n&&Qo(n,e,"default")),Zu=(t,e,n)=>(n=t!=null?H1(V1(t)):{},Qo(e||!t||!t.__esModule?es(n,"default",{value:t,enumerable:!0}):n,t)),Ju=G1((t,e)=>{(function(n,r){typeof t=="object"&&typeof e=="object"?e.exports=r():typeof define=="function"&&define.amd?define([],r):typeof t=="object"?t.notie=r():n.notie=r()})(t,function(){return function(n){function r(a){if(i[a])return i[a].exports;var o=i[a]={i:a,l:!1,exports:{}};return n[a].call(o.exports,o,o.exports,r),o.l=!0,o.exports}var i={};return r.m=n,r.c=i,r.i=function(a){return a},r.d=function(a,o,s){r.o(a,o)||Object.defineProperty(a,o,{configurable:!1,enumerable:!0,get:s})},r.n=function(a){var o=a&&a.__esModule?function(){return a.default}:function(){return a};return r.d(o,"a",o),o},r.o=function(a,o){return Object.prototype.hasOwnProperty.call(a,o)},r.p="",r(r.s=1)}([function(n,r){n.exports=function(i){return i.webpackPolyfill||(i.deprecate=function(){},i.paths=[],i.children||(i.children=[]),Object.defineProperty(i,"loaded",{enumerable:!0,get:function(){return i.l}}),Object.defineProperty(i,"id",{enumerable:!0,get:function(){return i.i}}),i.webpackPolyfill=1),i}},function(n,r,i){"use strict";(function(a){var o,s,l,u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){u(r)==="object"&&u(a)==="object"?a.exports=d():(s=[],o=d,l=typeof o=="function"?o.apply(r,s):o,l!==void 0&&(a.exports=l))})(void 0,function(){return function(c){function d(p){if(f[p])return f[p].exports;var b=f[p]={i:p,l:!1,exports:{}};return c[p].call(b.exports,b,b.exports,d),b.l=!0,b.exports}var f={};return d.m=c,d.c=f,d.i=function(p){return p},d.d=function(p,b,g){d.o(p,b)||Object.defineProperty(p,b,{configurable:!1,enumerable:!0,get:g})},d.n=function(p){var b=p&&p.__esModule?function(){return p.default}:function(){return p};return d.d(b,"a",b),b},d.o=function(p,b){return Object.prototype.hasOwnProperty.call(p,b)},d.p="",d(d.s=0)}([function(c,d,f){function p(M,I){var $={};for(var q in M)I.indexOf(q)>=0||Object.prototype.hasOwnProperty.call(M,q)&&($[q]=M[q]);return $}Object.defineProperty(d,"__esModule",{value:!0});var b=typeof Symbol=="function"&&u(Symbol.iterator)==="symbol"?function(M){return typeof M>"u"?"undefined":u(M)}:function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M>"u"?"undefined":u(M)},g=Object.assign||function(M){for(var I=1;I'+q+"",oe.onclick=function(){return R(le,ie)},oe.listener=function(J){(A(J)||C(J))&&O()},E(oe,ie),ce&&ce<1&&(ce=1),!me&&ce&&S(ce).then(function(){return R(le,ie)})},z=d.force=function(M,I){var $=M.type,q=$===void 0?5:$,G=M.text,ce=M.buttonText,pe=ce===void 0?"OK":ce,me=M.callback,Z=M.position,ie=Z===void 0?h.positions.force||ie.top:Z;_(),O();var oe=document.createElement("div"),le=x();oe.id=le;var J=document.createElement("div");J.classList.add(h.classes.textbox),J.classList.add(h.classes.backgroundInfo),J.innerHTML='
'+G+"
";var ae=document.createElement("div");ae.classList.add(h.classes.button),ae.classList.add(k[q]),ae.innerHTML=pe,ae.onclick=function(){R(le,ie),P(),me?me():I&&I()},oe.appendChild(J),oe.appendChild(ae),oe.listener=function(de){A(de)&&ae.click()},E(oe,ie),L()},Y=d.confirm=function(M,I,$){var q=M.text,G=M.submitText,ce=G===void 0?"Yes":G,pe=M.cancelText,me=pe===void 0?"Cancel":pe,Z=M.submitCallback,ie=M.cancelCallback,oe=M.position,le=oe===void 0?h.positions.confirm||le.top:oe;_(),O();var J=document.createElement("div"),ae=x();J.id=ae;var de=document.createElement("div");de.classList.add(h.classes.textbox),de.classList.add(h.classes.backgroundInfo),de.innerHTML='
'+q+"
";var be=document.createElement("div");be.classList.add(h.classes.button),be.classList.add(h.classes.elementHalf),be.classList.add(h.classes.backgroundSuccess),be.innerHTML=ce,be.onclick=function(){R(ae,le),P(),Z?Z():I&&I()};var re=document.createElement("div");re.classList.add(h.classes.button),re.classList.add(h.classes.elementHalf),re.classList.add(h.classes.backgroundError),re.innerHTML=me,re.onclick=function(){R(ae,le),P(),ie?ie():$&&$()},J.appendChild(de),J.appendChild(be),J.appendChild(re),J.listener=function(Le){A(Le)?be.click():C(Le)&&re.click()},E(J,le),L(J,le)},ne=function(M,I,$){var q=M.text,G=M.submitText,ce=G===void 0?"Submit":G,pe=M.cancelText,me=pe===void 0?"Cancel":pe,Z=M.submitCallback,ie=M.cancelCallback,oe=M.position,le=oe===void 0?h.positions.input||le.top:oe,J=p(M,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);_(),O();var ae=document.createElement("div"),de=x();ae.id=de;var be=document.createElement("div");be.classList.add(h.classes.textbox),be.classList.add(h.classes.backgroundInfo),be.innerHTML='
'+q+"
";var re=document.createElement("input");re.classList.add(h.classes.inputField),re.setAttribute("autocapitalize",J.autocapitalize||"none"),re.setAttribute("autocomplete",J.autocomplete||"off"),re.setAttribute("autocorrect",J.autocorrect||"off"),re.setAttribute("autofocus",J.autofocus||"true"),re.setAttribute("inputmode",J.inputmode||"verbatim"),re.setAttribute("max",J.max||""),re.setAttribute("maxlength",J.maxlength||""),re.setAttribute("min",J.min||""),re.setAttribute("minlength",J.minlength||""),re.setAttribute("placeholder",J.placeholder||""),re.setAttribute("spellcheck",J.spellcheck||"default"),re.setAttribute("step",J.step||"any"),re.setAttribute("type",J.type||"text"),re.value=J.value||"",J.allowed&&(re.oninput=function(){var ve=void 0;if(Array.isArray(J.allowed)){for(var Re="",Ue=J.allowed,ct=0;ct'+$+"",ie.appendChild(le),pe.forEach(function(ae,de){var be=ae.type,re=be===void 0?1:be,Le=ae.text,Ie=ae.handler,ve=document.createElement("div");ve.classList.add(k[re]),ve.classList.add(h.classes.button),ve.classList.add(h.classes.selectChoice);var Re=pe[de+1];Re&&!Re.type&&(Re.type=1),Re&&Re.type===re&&ve.classList.add(h.classes.selectChoiceRepeated),ve.innerHTML=Le,ve.onclick=function(){R(oe,Z),P(),Ie()},ie.appendChild(ve)});var J=document.createElement("div");J.classList.add(h.classes.backgroundNeutral),J.classList.add(h.classes.button),J.innerHTML=G,J.onclick=function(){R(oe,Z),P(),ce?ce():I&&I()},ie.appendChild(J),ie.listener=function(ae){C(ae)&&J.click()},E(ie,Z),L(ie,Z)},ee=d.date=function(M,I,$){var q=M.value,G=q===void 0?new Date:q,ce=M.submitText,pe=ce===void 0?"OK":ce,me=M.cancelText,Z=me===void 0?"Cancel":me,ie=M.submitCallback,oe=M.cancelCallback,le=M.position,J=le===void 0?h.positions.date||J.top:le;_(),O();var ae="▾",de=document.createElement("div"),be=document.createElement("div"),re=document.createElement("div"),Le=function(j){de.innerHTML=h.dateMonths[j.getMonth()],be.innerHTML=j.getDate(),re.innerHTML=j.getFullYear()},Ie=function(j){var X=new Date(G.getFullYear(),G.getMonth()+1,0).getDate(),se=j.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(se)>X&&(se=X.toString()),j.target.textContent=se,Number(se)<1&&(se="1"),G.setDate(Number(se))},ve=function(j){var X=j.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);j.target.textContent=X,G.setFullYear(Number(X))},Re=function(j){Le(G)},Ue=function(j){var X=new Date(G.getFullYear(),G.getMonth()+j+1,0).getDate();G.getDate()>X&&G.setDate(X),G.setMonth(G.getMonth()+j),Le(G)},ct=function(j){G.setDate(G.getDate()+j),Le(G)},rn=function(j){var X=G.getFullYear()+j;X<0?G.setFullYear(0):G.setFullYear(G.getFullYear()+j),Le(G)},Tt=document.createElement("div"),Qe=x();Tt.id=Qe;var Bt=document.createElement("div");Bt.classList.add(h.classes.backgroundInfo);var $e=document.createElement("div");$e.classList.add(h.classes.dateSelectorInner);var ut=document.createElement("div");ut.classList.add(h.classes.button),ut.classList.add(h.classes.elementThird),ut.classList.add(h.classes.dateSelectorUp),ut.innerHTML=ae;var je=document.createElement("div");je.classList.add(h.classes.button),je.classList.add(h.classes.elementThird),je.classList.add(h.classes.dateSelectorUp),je.innerHTML=ae;var nt=document.createElement("div");nt.classList.add(h.classes.button),nt.classList.add(h.classes.elementThird),nt.classList.add(h.classes.dateSelectorUp),nt.innerHTML=ae,de.classList.add(h.classes.element),de.classList.add(h.classes.elementThird),de.innerHTML=h.dateMonths[G.getMonth()],be.classList.add(h.classes.element),be.classList.add(h.classes.elementThird),be.setAttribute("contentEditable",!0),be.addEventListener("input",Ie),be.addEventListener("blur",Re),be.innerHTML=G.getDate(),re.classList.add(h.classes.element),re.classList.add(h.classes.elementThird),re.setAttribute("contentEditable",!0),re.addEventListener("input",ve),re.addEventListener("blur",Re),re.innerHTML=G.getFullYear();var Rt=document.createElement("div");Rt.classList.add(h.classes.button),Rt.classList.add(h.classes.elementThird),Rt.innerHTML=ae;var D=document.createElement("div");D.classList.add(h.classes.button),D.classList.add(h.classes.elementThird),D.innerHTML=ae;var B=document.createElement("div");B.classList.add(h.classes.button),B.classList.add(h.classes.elementThird),B.innerHTML=ae,ut.onclick=function(){return Ue(1)},je.onclick=function(){return ct(1)},nt.onclick=function(){return rn(1)},Rt.onclick=function(){return Ue(-1)},D.onclick=function(){return ct(-1)},B.onclick=function(){return rn(-1)};var F=document.createElement("div");F.classList.add(h.classes.button),F.classList.add(h.classes.elementHalf),F.classList.add(h.classes.backgroundSuccess),F.innerHTML=pe,F.onclick=function(){R(Qe,J),P(),ie?ie(G):I&&I(G)};var U=document.createElement("div");U.classList.add(h.classes.button),U.classList.add(h.classes.elementHalf),U.classList.add(h.classes.backgroundError),U.innerHTML=Z,U.onclick=function(){R(Qe,J),P(),oe?oe(G):$&&$(G)},$e.appendChild(ut),$e.appendChild(je),$e.appendChild(nt),$e.appendChild(de),$e.appendChild(be),$e.appendChild(re),$e.appendChild(Rt),$e.appendChild(D),$e.appendChild(B),Bt.appendChild($e),Tt.appendChild(Bt),Tt.appendChild(F),Tt.appendChild(U),Tt.listener=function(j){A(j)?F.click():C(j)&&U.click()},E(Tt,J),L(Tt,J)};d.default={alert:N,force:z,confirm:Y,input:ne,select:K,date:ee,setOptions:y,hideAlerts:O}}])})}).call(r,i(0)(n))}])})}),Qu={};X1(Qu,{default:()=>qi});var Z1=Zu(Ju());Y1(Qu,Zu(Ju()));var{default:Yu,...J1}=Z1,qi=Yu!==void 0?Yu:J1;var ts=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function ns(t,e,n,r){t.addEventListener?t.addEventListener(e,n,r):t.attachEvent&&t.attachEvent("on".concat(e),function(){n(window.event)})}function id(t,e){for(var n=e.slice(0,e.length-1),r=0;r=0;)e[n-1]+=",",e.splice(n,1),n=e.lastIndexOf("");return e}function Q1(t,e){for(var n=t.length>=e.length?t:e,r=t.length>=e.length?e:t,i=!0,a=0;a=0&&Me.splice(n,1),t.key&&t.key.toLowerCase()==="meta"&&Me.splice(0,Me.length),(e===93||e===224)&&(e=91),e in Je){Je[e]=!1;for(var r in Xt)Xt[r]===e&&(Gt[r]=!1)}}function lm(t){if(typeof t>"u")Object.keys(Fe).forEach(function(o){return delete Fe[o]});else if(Array.isArray(t))t.forEach(function(o){o.key&&rs(o)});else if(typeof t=="object")t.key&&rs(t);else if(typeof t=="string"){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r1?id(Xt,l):[];Fe[d]=Fe[d].filter(function(p){var b=r?p.method===r:!0;return!(b&&p.scope===n&&Q1(p.mods,f))})}})};function td(t,e,n,r){if(e.element===r){var i;if(e.scope===n||e.scope==="all"){i=e.mods.length>0;for(var a in Je)Object.prototype.hasOwnProperty.call(Je,a)&&(!Je[a]&&e.mods.indexOf(+a)>-1||Je[a]&&e.mods.indexOf(+a)===-1)&&(i=!1);(e.mods.length===0&&!Je[16]&&!Je[18]&&!Je[17]&&!Je[91]||i||e.shortcut==="*")&&e.method(t,e)===!1&&(t.preventDefault?t.preventDefault():t.returnValue=!1,t.stopPropagation&&t.stopPropagation(),t.cancelBubble&&(t.cancelBubble=!0))}}}function nd(t,e){var n=Fe["*"],r=t.keyCode||t.which||t.charCode;if(Gt.filter.call(this,t)){if((r===93||r===224)&&(r=91),Me.indexOf(r)===-1&&r!==229&&Me.push(r),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(b){var g=as[b];t[b]&&Me.indexOf(g)===-1?Me.push(g):!t[b]&&Me.indexOf(g)>-1?Me.splice(Me.indexOf(g),1):b==="metaKey"&&t[b]&&Me.length===3&&(t.ctrlKey||t.shiftKey||t.altKey||(Me=Me.slice(Me.indexOf(g))))}),r in Je){Je[r]=!0;for(var i in Xt)Xt[i]===r&&(Gt[i]=!0);if(!n)return}for(var a in Je)Object.prototype.hasOwnProperty.call(Je,a)&&(Je[a]=t[as[a]]);t.getModifierState&&!(t.altKey&&!t.ctrlKey)&&t.getModifierState("AltGraph")&&(Me.indexOf(17)===-1&&Me.push(17),Me.indexOf(18)===-1&&Me.push(18),Je[17]=!0,Je[18]=!0);var o=Er();if(n)for(var s=0;s-1}function Gt(t,e,n){Me=[];var r=ad(t),i=[],a="all",o=document,s=0,l=!1,u=!0,c="+",d=!1;for(n===void 0&&typeof e=="function"&&(n=e),Object.prototype.toString.call(e)==="[object Object]"&&(e.scope&&(a=e.scope),e.element&&(o=e.element),e.keyup&&(l=e.keyup),e.keydown!==void 0&&(u=e.keydown),e.capture!==void 0&&(d=e.capture),typeof e.splitKey=="string"&&(c=e.splitKey)),typeof e=="string"&&(a=e);s1&&(i=id(Xt,t)),t=t[t.length-1],t=t==="*"?"*":Ki(t),t in Fe||(Fe[t]=[]),Fe[t].push({keyup:l,keydown:u,scope:a,mods:i,shortcut:r[s],method:n,key:r[s],splitKey:c,element:o});typeof o<"u"&&!cm(o)&&window&&(sd.push(o),ns(o,"keydown",function(f){nd(f,o)},d),ed||(ed=!0,ns(window,"focus",function(){Me=[]},d)),ns(o,"keyup",function(f){nd(f,o),sm(f)},d))}function um(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Fe).forEach(function(n){var r=Fe[n].filter(function(i){return i.scope===e&&i.shortcut===t});r.forEach(function(i){i&&i.method&&i.method()})})}var is={getPressedKeyString:rm,setScope:ld,getScope:Er,deleteScope:om,getPressedKeyCodes:nm,isPressed:am,filter:im,trigger:um,unbind:lm,keyMap:Sr,modifier:Xt,modifierMap:as};for(Vi in is)Object.prototype.hasOwnProperty.call(is,Vi)&&(Gt[Vi]=is[Vi]);var Vi;typeof document<"u"&&(rd=window.hotkeys,Gt.noConflict=function(t){return t&&window.hotkeys===Gt&&(window.hotkeys=rd),Gt},window.hotkeys=Gt);var rd;var dm=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let e=performance.now(),n=Math.round(e-this.#e);this.#e=e}},fm=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0}v(...t){this.#e<=0}info(...t){this.#e<=1}l(...t){this.#e<=1}warn(...t){this.#e<=2}error(...t){this.#e<=3}fatal(...t){this.#e<=4}timing(){return this.level===0?new dm:{reset:()=>{},stop:()=>{}}}},xy=new fm,hm="poegempjloogba",pm="ension://";var mm="rome-ext";var Ty="ch"+mm+pm+"cofdb"+hm+"gkncekinflcnj";var{entries:gd,setPrototypeOf:cd,isFrozen:bm,getPrototypeOf:ym,getOwnPropertyDescriptor:wm}=Object,{freeze:st,seal:zt,create:vm}=Object,{apply:ds,construct:fs}=typeof Reflect<"u"&&Reflect;ds||(ds=function(t,e,n){return t.apply(e,n)});st||(st=function(t){return t});zt||(zt=function(t){return t});fs||(fs=function(t,e){return new t(...e)});var xm=Lt(Array.prototype.forEach),ud=Lt(Array.prototype.pop),Ar=Lt(Array.prototype.push),Yi=Lt(String.prototype.toLowerCase),os=Lt(String.prototype.toString),Tm=Lt(String.prototype.match),Nt=Lt(String.prototype.replace),_m=Lt(String.prototype.indexOf),Cm=Lt(String.prototype.trim),xt=Lt(RegExp.prototype.test),Mr=km(TypeError);function Lt(t){return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i/gm),Lm=zt(/\${[\w\W]*}/gm),Rm=zt(/^data-[\-\w.\u00B7-\uFFFF]/),Om=zt(/^aria-[\-\w]+$/),bd=zt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Dm=zt(/^(?:\w+script|data):/i),Fm=zt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),yd=zt(/^html$/i),md=Object.freeze({__proto__:null,MUSTACHE_EXPR:Am,ERB_EXPR:Mm,TMPLIT_EXPR:Lm,DATA_ATTR:Rm,ARIA_ATTR:Om,IS_ALLOWED_URI:bd,IS_SCRIPT_OR_DATA:Dm,ATTR_WHITESPACE:Fm,DOCTYPE_NAME:yd}),Im=()=>typeof window>"u"?null:window,Pm=function(t,e){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null,r="data-tt-policy-suffix";e&&e.hasAttribute(r)&&(n=e.getAttribute(r));let i="dompurify"+(n?"#"+n:"");try{return t.createPolicy(i,{createHTML(a){return a},createScriptURL(a){return a}})}catch{return null}};function wd(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Im(),e=T=>wd(T);if(e.version="3.0.3",e.removed=[],!t||!t.document||t.document.nodeType!==9)return e.isSupported=!1,e;let n=t.document,r=n.currentScript,{document:i}=t,{DocumentFragment:a,HTMLTemplateElement:o,Node:s,Element:l,NodeFilter:u,NamedNodeMap:c=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:d,DOMParser:f,trustedTypes:p}=t,b=l.prototype,g=Gi(b,"cloneNode"),m=Gi(b,"nextSibling"),h=Gi(b,"childNodes"),y=Gi(b,"parentNode");if(typeof o=="function"){let T=i.createElement("template");T.content&&T.content.ownerDocument&&(i=T.content.ownerDocument)}let w,S="",{implementation:_,createNodeIterator:x,createDocumentFragment:k,getElementsByTagName:v}=i,{importNode:A}=n,C={};e.isSupported=typeof gd=="function"&&typeof y=="function"&&_&&_.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:E,ERB_EXPR:R,TMPLIT_EXPR:L,DATA_ATTR:P,ARIA_ATTR:O,IS_SCRIPT_OR_DATA:N,ATTR_WHITESPACE:z}=md,{IS_ALLOWED_URI:Y}=md,ne=null,K=he({},[...dd,...ss,...ls,...cs,...fd]),ee=null,M=he({},[...hd,...us,...pd,...Xi]),I=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),$=null,q=null,G=!0,ce=!0,pe=!1,me=!0,Z=!1,ie=!1,oe=!1,le=!1,J=!1,ae=!1,de=!1,be=!0,re=!1,Le="user-content-",Ie=!0,ve=!1,Re={},Ue=null,ct=he({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),rn=null,Tt=he({},["audio","video","img","source","image","track"]),Qe=null,Bt=he({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),$e="http://www.w3.org/1998/Math/MathML",ut="http://www.w3.org/2000/svg",je="http://www.w3.org/1999/xhtml",nt=je,Rt=!1,D=null,B=he({},[$e,ut,je],os),F,U=["application/xhtml+xml","text/html"],j="text/html",X,se=null,Ke=i.createElement("form"),dt=function(T){return T instanceof RegExp||T instanceof Function},wn=function(T){if(!(se&&se===T)){if((!T||typeof T!="object")&&(T={}),T=Gn(T),F=U.indexOf(T.PARSER_MEDIA_TYPE)===-1?F=j:F=T.PARSER_MEDIA_TYPE,X=F==="application/xhtml+xml"?os:Yi,ne="ALLOWED_TAGS"in T?he({},T.ALLOWED_TAGS,X):K,ee="ALLOWED_ATTR"in T?he({},T.ALLOWED_ATTR,X):M,D="ALLOWED_NAMESPACES"in T?he({},T.ALLOWED_NAMESPACES,os):B,Qe="ADD_URI_SAFE_ATTR"in T?he(Gn(Bt),T.ADD_URI_SAFE_ATTR,X):Bt,rn="ADD_DATA_URI_TAGS"in T?he(Gn(Tt),T.ADD_DATA_URI_TAGS,X):Tt,Ue="FORBID_CONTENTS"in T?he({},T.FORBID_CONTENTS,X):ct,$="FORBID_TAGS"in T?he({},T.FORBID_TAGS,X):{},q="FORBID_ATTR"in T?he({},T.FORBID_ATTR,X):{},Re="USE_PROFILES"in T?T.USE_PROFILES:!1,G=T.ALLOW_ARIA_ATTR!==!1,ce=T.ALLOW_DATA_ATTR!==!1,pe=T.ALLOW_UNKNOWN_PROTOCOLS||!1,me=T.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Z=T.SAFE_FOR_TEMPLATES||!1,ie=T.WHOLE_DOCUMENT||!1,J=T.RETURN_DOM||!1,ae=T.RETURN_DOM_FRAGMENT||!1,de=T.RETURN_TRUSTED_TYPE||!1,le=T.FORCE_BODY||!1,be=T.SANITIZE_DOM!==!1,re=T.SANITIZE_NAMED_PROPS||!1,Ie=T.KEEP_CONTENT!==!1,ve=T.IN_PLACE||!1,Y=T.ALLOWED_URI_REGEXP||bd,nt=T.NAMESPACE||je,I=T.CUSTOM_ELEMENT_HANDLING||{},T.CUSTOM_ELEMENT_HANDLING&&dt(T.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(I.tagNameCheck=T.CUSTOM_ELEMENT_HANDLING.tagNameCheck),T.CUSTOM_ELEMENT_HANDLING&&dt(T.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(I.attributeNameCheck=T.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),T.CUSTOM_ELEMENT_HANDLING&&typeof T.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(I.allowCustomizedBuiltInElements=T.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Z&&(ce=!1),ae&&(J=!0),Re&&(ne=he({},[...fd]),ee=[],Re.html===!0&&(he(ne,dd),he(ee,hd)),Re.svg===!0&&(he(ne,ss),he(ee,us),he(ee,Xi)),Re.svgFilters===!0&&(he(ne,ls),he(ee,us),he(ee,Xi)),Re.mathMl===!0&&(he(ne,cs),he(ee,pd),he(ee,Xi))),T.ADD_TAGS&&(ne===K&&(ne=Gn(ne)),he(ne,T.ADD_TAGS,X)),T.ADD_ATTR&&(ee===M&&(ee=Gn(ee)),he(ee,T.ADD_ATTR,X)),T.ADD_URI_SAFE_ATTR&&he(Qe,T.ADD_URI_SAFE_ATTR,X),T.FORBID_CONTENTS&&(Ue===ct&&(Ue=Gn(Ue)),he(Ue,T.FORBID_CONTENTS,X)),Ie&&(ne["#text"]=!0),ie&&he(ne,["html","head","body"]),ne.table&&(he(ne,["tbody"]),delete $.tbody),T.TRUSTED_TYPES_POLICY){if(typeof T.TRUSTED_TYPES_POLICY.createHTML!="function")throw Mr('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof T.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Mr('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');w=T.TRUSTED_TYPES_POLICY,S=w.createHTML("")}else w===void 0&&(w=Pm(p,r)),w!==null&&typeof S=="string"&&(S=w.createHTML(""));st&&st(T),se=T}},Yn=he({},["mi","mo","mn","ms","mtext"]),Zn=he({},["foreignobject","desc","title","annotation-xml"]),Dd=he({},["title","style","font","a","script"]),Rr=he({},ss);he(Rr,ls),he(Rr,Sm);let Qi=he({},cs);he(Qi,Em);let Fd=function(T){let Q=y(T);(!Q||!Q.tagName)&&(Q={namespaceURI:nt,tagName:"template"});let H=Yi(T.tagName),xe=Yi(Q.tagName);return D[T.namespaceURI]?T.namespaceURI===ut?Q.namespaceURI===je?H==="svg":Q.namespaceURI===$e?H==="svg"&&(xe==="annotation-xml"||Yn[xe]):!!Rr[H]:T.namespaceURI===$e?Q.namespaceURI===je?H==="math":Q.namespaceURI===ut?H==="math"&&Zn[xe]:!!Qi[H]:T.namespaceURI===je?Q.namespaceURI===ut&&!Zn[xe]||Q.namespaceURI===$e&&!Yn[xe]?!1:!Qi[H]&&(Dd[H]||!Rr[H]):!!(F==="application/xhtml+xml"&&D[T.namespaceURI]):!1},En=function(T){Ar(e.removed,{element:T});try{T.parentNode.removeChild(T)}catch{T.remove()}},ea=function(T,Q){try{Ar(e.removed,{attribute:Q.getAttributeNode(T),from:Q})}catch{Ar(e.removed,{attribute:null,from:Q})}if(Q.removeAttribute(T),T==="is"&&!ee[T])if(J||ae)try{En(Q)}catch{}else try{Q.setAttribute(T,"")}catch{}},bs=function(T){let Q,H;if(le)T=""+T;else{let rt=Tm(T,/^[\r\n\t ]+/);H=rt&&rt[0]}F==="application/xhtml+xml"&&nt===je&&(T=''+T+"");let xe=w?w.createHTML(T):T;if(nt===je)try{Q=new f().parseFromString(xe,F)}catch{}if(!Q||!Q.documentElement){Q=_.createDocument(nt,"template",null);try{Q.documentElement.innerHTML=Rt?S:xe}catch{}}let Pe=Q.body||Q.documentElement;return T&&H&&Pe.insertBefore(i.createTextNode(H),Pe.childNodes[0]||null),nt===je?v.call(Q,ie?"html":"body")[0]:ie?Q.documentElement:Pe},ys=function(T){return x.call(T.ownerDocument||T,T,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT,null,!1)},Id=function(T){return T instanceof d&&(typeof T.nodeName!="string"||typeof T.textContent!="string"||typeof T.removeChild!="function"||!(T.attributes instanceof c)||typeof T.removeAttribute!="function"||typeof T.setAttribute!="function"||typeof T.namespaceURI!="string"||typeof T.insertBefore!="function"||typeof T.hasChildNodes!="function")},Or=function(T){return typeof s=="object"?T instanceof s:T&&typeof T=="object"&&typeof T.nodeType=="number"&&typeof T.nodeName=="string"},Yt=function(T,Q,H){C[T]&&xm(C[T],xe=>{xe.call(e,Q,H,se)})},ws=function(T){let Q;if(Yt("beforeSanitizeElements",T,null),Id(T))return En(T),!0;let H=X(T.nodeName);if(Yt("uponSanitizeElement",T,{tagName:H,allowedTags:ne}),T.hasChildNodes()&&!Or(T.firstElementChild)&&(!Or(T.content)||!Or(T.content.firstElementChild))&&xt(/<[/\w]/g,T.innerHTML)&&xt(/<[/\w]/g,T.textContent))return En(T),!0;if(!ne[H]||$[H]){if(!$[H]&&xs(H)&&(I.tagNameCheck instanceof RegExp&&xt(I.tagNameCheck,H)||I.tagNameCheck instanceof Function&&I.tagNameCheck(H)))return!1;if(Ie&&!Ue[H]){let xe=y(T)||T.parentNode,Pe=h(T)||T.childNodes;if(Pe&&xe){let rt=Pe.length;for(let ft=rt-1;ft>=0;--ft)xe.insertBefore(g(Pe[ft],!0),m(T))}}return En(T),!0}return T instanceof l&&!Fd(T)||(H==="noscript"||H==="noembed")&&xt(/<\/no(script|embed)/i,T.innerHTML)?(En(T),!0):(Z&&T.nodeType===3&&(Q=T.textContent,Q=Nt(Q,E," "),Q=Nt(Q,R," "),Q=Nt(Q,L," "),T.textContent!==Q&&(Ar(e.removed,{element:T.cloneNode()}),T.textContent=Q)),Yt("afterSanitizeElements",T,null),!1)},vs=function(T,Q,H){if(be&&(Q==="id"||Q==="name")&&(H in i||H in Ke))return!1;if(!(ce&&!q[Q]&&xt(P,Q))&&!(G&&xt(O,Q))){if(!ee[Q]||q[Q]){if(!(xs(T)&&(I.tagNameCheck instanceof RegExp&&xt(I.tagNameCheck,T)||I.tagNameCheck instanceof Function&&I.tagNameCheck(T))&&(I.attributeNameCheck instanceof RegExp&&xt(I.attributeNameCheck,Q)||I.attributeNameCheck instanceof Function&&I.attributeNameCheck(Q))||Q==="is"&&I.allowCustomizedBuiltInElements&&(I.tagNameCheck instanceof RegExp&&xt(I.tagNameCheck,H)||I.tagNameCheck instanceof Function&&I.tagNameCheck(H))))return!1}else if(!Qe[Q]&&!xt(Y,Nt(H,z,""))&&!((Q==="src"||Q==="xlink:href"||Q==="href")&&T!=="script"&&_m(H,"data:")===0&&rn[T])&&!(pe&&!xt(N,Nt(H,z,"")))&&H)return!1}return!0},xs=function(T){return T.indexOf("-")>0},Ts=function(T){let Q,H,xe,Pe;Yt("beforeSanitizeAttributes",T,null);let{attributes:rt}=T;if(!rt)return;let ft={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ee};for(Pe=rt.length;Pe--;){Q=rt[Pe];let{name:He,namespaceURI:An}=Q;if(H=He==="value"?Q.value:Cm(Q.value),xe=X(He),ft.attrName=xe,ft.attrValue=H,ft.keepAttr=!0,ft.forceKeepAttr=void 0,Yt("uponSanitizeAttribute",T,ft),H=ft.attrValue,ft.forceKeepAttr||(ea(He,T),!ft.keepAttr))continue;if(!me&&xt(/\/>/i,H)){ea(He,T);continue}Z&&(H=Nt(H,E," "),H=Nt(H,R," "),H=Nt(H,L," "));let _s=X(T.nodeName);if(vs(_s,xe,H)){if(re&&(xe==="id"||xe==="name")&&(ea(He,T),H=Le+H),w&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!An)switch(p.getAttributeType(_s,xe)){case"TrustedHTML":{H=w.createHTML(H);break}case"TrustedScriptURL":{H=w.createScriptURL(H);break}}try{An?T.setAttributeNS(An,He,H):T.setAttribute(He,H),ud(e.removed)}catch{}}}Yt("afterSanitizeAttributes",T,null)},Pd=function T(Q){let H,xe=ys(Q);for(Yt("beforeSanitizeShadowDOM",Q,null);H=xe.nextNode();)Yt("uponSanitizeShadowNode",H,null),!ws(H)&&(H.content instanceof a&&T(H.content),Ts(H));Yt("afterSanitizeShadowDOM",Q,null)};return e.sanitize=function(T){let Q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},H,xe,Pe,rt;if(Rt=!T,Rt&&(T=""),typeof T!="string"&&!Or(T))if(typeof T.toString=="function"){if(T=T.toString(),typeof T!="string")throw Mr("dirty is not a string, aborting")}else throw Mr("toString is not a function");if(!e.isSupported)return T;if(oe||wn(Q),e.removed=[],typeof T=="string"&&(ve=!1),ve){if(T.nodeName){let An=X(T.nodeName);if(!ne[An]||$[An])throw Mr("root node is forbidden and cannot be sanitized in-place")}}else if(T instanceof s)H=bs(""),xe=H.ownerDocument.importNode(T,!0),xe.nodeType===1&&xe.nodeName==="BODY"||xe.nodeName==="HTML"?H=xe:H.appendChild(xe);else{if(!J&&!Z&&!ie&&T.indexOf("<")===-1)return w&&de?w.createHTML(T):T;if(H=bs(T),!H)return J?null:de?S:""}H&&le&&En(H.firstChild);let ft=ys(ve?T:H);for(;Pe=ft.nextNode();)ws(Pe)||(Pe.content instanceof a&&Pd(Pe.content),Ts(Pe));if(ve)return T;if(J){if(ae)for(rt=k.call(H.ownerDocument);H.firstChild;)rt.appendChild(H.firstChild);else rt=H;return(ee.shadowroot||ee.shadowrootmod)&&(rt=A.call(n,rt,!0)),rt}let He=ie?H.outerHTML:H.innerHTML;return ie&&ne["!doctype"]&&H.ownerDocument&&H.ownerDocument.doctype&&H.ownerDocument.doctype.name&&xt(yd,H.ownerDocument.doctype.name)&&(He=" -`+He),Z&&(He=Nt(He,E," "),He=Nt(He,R," "),He=Nt(He,L," ")),w&&de?w.createHTML(He):He},e.setConfig=function(T){wn(T),oe=!0},e.clearConfig=function(){se=null,oe=!1},e.isValidAttribute=function(T,Q,H){se||wn({});let xe=X(T),Pe=X(Q);return vs(xe,Pe,H)},e.addHook=function(T,Q){typeof Q=="function"&&(C[T]=C[T]||[],Ar(C[T],Q))},e.removeHook=function(T){if(C[T])return ud(C[T])},e.removeHooks=function(T){C[T]&&(C[T]=[])},e.removeAllHooks=function(){C={}},e}var Lr=wd();var Gy=qi.alert;var vd={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var xd={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var Td={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var Um=[{code:"zh-CN",messages:vd},{code:"zh-TW",messages:xd},{code:"en",messages:Td}];var $m={};for(let t of Um)$m[t.code]=t.messages;var lt="immersive-translate";var ue="immersiveTranslate";var f4=ue+"GoogleAccessToken",h4=ue+"AuthFlow";var p4=ue+"AuthState",m4=ue+"IframeMessage",g4=ue+"WaitForRateLimit",b4=ue+"DocumentMessageAsk",Cd=ue+"DocumentMessageTellThirdParty",kd=ue+"DocumentMessageThirdPartyTell",y4=ue+"DocumentMessageHandler",w4=`${ue}Container`,v4=`${ue}SpecifiedContainer`;var x4=`${ue}PageTranslatedStatus`,T4=`${ue}PageUrlChanged`,_4=`${ue}ReceiveCommand`,C4=ue+"LastUseMouseHoverTime",k4=ue+"LastUseInputTime",S4=ue+"LastUseManualTranslatePageTime",E4=`${ue}PopupReceiveMessage`,jm="immersivetranslate.com",Hm="config.immersivetranslate.com",A4=`https://${jm}/`,M4=`https://${Hm}/default_config.json`,L4=`${ue}Mark`;var Sd=`${ue}Root`,hs=`data-${lt}-effect`,R4=`data-${lt}-translation-element-mark`,O4=`${ue}TranslationElementMark`,D4=`${ue}TranslatedMark`,F4=`${ue}ParagraphId`,I4=`${ue}LoadingId`,P4=`data-${lt}-loading-id`,N4=`${ue}ErrorId`,z4=`data-${lt}-error-id`,B4=`${ue}AtomicBlockMark`,U4=`${ue}ExcludeMark`,$4=`data-${lt}-exclude-mark`,j4=`${ue}StayOriginalMark`,H4=`${ue}PreWhitespaceMark`,W4=`${ue}InlineMark`,q4=`${ue}BlockMark`,V4=`${ue}Left`,K4=`${ue}Right`,G4=`${ue}Width`,X4=`${ue}Height`,Y4=`${ue}Top`,Z4=`${ue}FontSize`;var J4=`${ue}GlobalStyleMark`;var Q4=`${lt}-target-wrapper`,e5=`${lt}-pdf-target-container`,t5=`${lt}-target-inner`,n5=`${lt}-source-wrapper`,r5=`${lt}-target-translation-block-wrapper`,i5=`${lt}-root-translation-theme`,a5=`${ue}RootTranslationTheme`,o5=`${lt}-target-translation-vertical-block-wrapper`,s5=`${lt}-target-translation-pdf-block-wrapper`,l5=`${lt}-target-translation-pre-whitespace`,c5=`${lt}-target-translation-inline-wrapper`;var _d=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],u5={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`+He),Z&&(He=Nt(He,E," "),He=Nt(He,R," "),He=Nt(He,L," ")),w&&de?w.createHTML(He):He},e.setConfig=function(T){wn(T),oe=!0},e.clearConfig=function(){se=null,oe=!1},e.isValidAttribute=function(T,Q,H){se||wn({});let xe=X(T),Pe=X(Q);return vs(xe,Pe,H)},e.addHook=function(T,Q){typeof Q=="function"&&(C[T]=C[T]||[],Ar(C[T],Q))},e.removeHook=function(T){if(C[T])return ud(C[T])},e.removeHooks=function(T){C[T]&&(C[T]=[])},e.removeAllHooks=function(){C={}},e}var Lr=wd();var Gy=qi.alert;var vd={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var xd={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var Td={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var Um=[{code:"zh-CN",messages:vd},{code:"zh-TW",messages:xd},{code:"en",messages:Td}];var $m={};for(let t of Um)$m[t.code]=t.messages;var lt="immersive-translate";var ue="immersiveTranslate";var f4=ue+"GoogleAccessToken",h4=ue+"AuthFlow";var p4=ue+"AuthState",m4=ue+"IframeMessage",g4=ue+"WaitForRateLimit",b4=ue+"DocumentMessageAsk",Cd=ue+"DocumentMessageTellThirdParty",kd=ue+"DocumentMessageThirdPartyTell",y4=ue+"DocumentMessageHandler",w4=`${ue}Container`,v4=`${ue}SpecifiedContainer`;var x4=`${ue}PageTranslatedStatus`,T4=`${ue}PageUrlChanged`,_4=`${ue}ReceiveCommand`,C4=ue+"LastUseMouseHoverTime",k4=ue+"LastUseInputTime",S4=ue+"LastUseManualTranslatePageTime",E4=`${ue}PopupReceiveMessage`,jm="immersivetranslate.com",Hm="config.immersivetranslate.com",A4=`https://${jm}/`,M4=`https://${Hm}/default_config.json`,L4=`${ue}Mark`;var Sd=`${ue}Root`,hs=`data-${lt}-effect`,R4=`data-${lt}-translation-element-mark`,O4=`${ue}TranslationElementMark`,D4=`${ue}TranslatedMark`,F4=`${ue}ParagraphId`,I4=`${ue}LoadingId`,P4=`data-${lt}-loading-id`,N4=`${ue}ErrorId`,z4=`data-${lt}-error-id`,B4=`${ue}AtomicBlockMark`,U4=`${ue}ExcludeMark`,$4=`data-${lt}-exclude-mark`,j4=`${ue}StayOriginalMark`,H4=`${ue}PreWhitespaceMark`,W4=`${ue}InlineMark`,q4=`${ue}BlockMark`,V4=`${ue}Left`,K4=`${ue}Right`,G4=`${ue}Width`,X4=`${ue}Height`,Y4=`${ue}Top`,Z4=`${ue}FontSize`;var J4=`${ue}GlobalStyleMark`;var Q4=`${lt}-target-wrapper`,e5=`${lt}-pdf-target-container`,t5=`${lt}-target-inner`,n5=`${lt}-source-wrapper`,r5=`${lt}-target-translation-block-wrapper`,i5=`${lt}-root-translation-theme`,a5=`${ue}RootTranslationTheme`,o5=`${lt}-target-translation-vertical-block-wrapper`,s5=`${lt}-target-translation-pdf-block-wrapper`,l5=`${lt}-target-translation-pre-whitespace`,c5=`${lt}-target-translation-inline-wrapper`;var _d=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],u5={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[..._d,{type:"password",name:"apikey",required:!0}],props:_d},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},d5={type:ue+"ChildFrameToRootFrameIdentifier"};var{ZipReader:Wm,BlobReader:ms,TextReader:ps,TextWriter:qm,BlobWriter:Ad,ZipWriter:Vm}=so;xi({useWebWorkers:!1});var Km=async t=>{let e=new Uint8Array(await t.slice(0,4).arrayBuffer());return e[0]===80&&e[1]===75&&e[2]===3&&e[3]===4},yn=null,Zi=0,Ji=0,Xn=0,Ed=!1,Gm=tr(),Xm=Gm.PROD==="1",Ym=async t=>{let n=await new Wm(new ms(t)).getEntries();t.name&&t.name.endsWith(".zip")&&n.every(u=>u.filename.startsWith(t.name.slice(0,-4)+"/"))&&(n=n.map(u=>(u.filename=u.filename.slice(t.name.length-3),u)));let r=new Map(n.map(l=>[l.filename,l])),i=l=>(u,...c)=>r.has(u)?l(r.get(u),...c):null,a=i(l=>l.getData(new qm)),o=i((l,u)=>l.getData(new Ad(u)));return{entries:n,loadText:a,loadBlob:o,getSize:l=>r.get(l)?.uncompressedSize??0}},Md=async t=>t.isFile?t:(await Promise.all(Array.from(await new Promise((e,n)=>t.createReader().readEntries(r=>e(r),r=>n(r))),Md))).flat(),Zm=async t=>{let e=await Md(t);e=e.map(d=>d);let n=[],r=await Promise.all(e.map(d=>new Promise((f,p)=>d.file(b=>f([b,d.fullPath]),b=>p(b))))),i=new Map(r.map(([d,f])=>{let p=f.replace(t.fullPath+"/","");return n.push({filename:p,...d}),[p,d]})),a=new TextDecoder,o=d=>d?a.decode(d):null,s=d=>i.get(d)?.arrayBuffer()??null;return{entries:n,loadText:async d=>o(await s(d)),loadBlob:async d=>i.get(d),getSize:d=>i.get(d)?.size??0}},Jm=({name:t,type:e})=>e==="application/vnd.comicbook+zip"||t.endsWith(".cbz"),Qm=({name:t,type:e})=>e==="application/x-fictionbook+xml"||t.endsWith(".fb2"),eg=({name:t,type:e})=>e==="application/x-zip-compressed-fb2"||t.endsWith(".fb2.zip")||t.endsWith(".fbz"),tg=async(t,e)=>{let n;if(t.isDirectory){let a=await Zm(t);yn=a,n=await new ir(a).init()}else if(t.size)if(await Km(t)){let a=await Ym(t);if(yn=a,Jm(t))n=js(a,t);else if(eg(t)){let{entries:o}=a,s=o.find(u=>u.filename.endsWith(".fb2")),l=await a.loadBlob((s??o[0]).filename);n=await da(l)}else n=await new ir(a).init()}else await el(t)?n=await new Zr({unzlib:F0}).open(t):Qm(t)&&(n=await da(t));else throw new Error("File not found");if(!n)throw new Error("File type not supported");let r=new Wr(n,e),i=await r.display();return document.body.append(i),r},Ve=document.querySelector.bind(document),Sn=!1;function Ld(){let t=document.querySelectorAll("iframe");for(let r=0;r{Ve("#dimming-overlay").classList.add("show"),Ve("#side-bar").classList.add("show")}),Ve("#dimming-overlay").addEventListener("click",()=>this.closeSideBar());let e=$s([{name:"layout",label:"Layout",type:"radio",items:[["Paginated","paginated"],["Scrolled","scrolled"]],onclick:n=>{this.layout.flow=n}}]);e.element.classList.add("menu"),Ve("#menu-button").append(e.element),Ve("#menu-button > button").addEventListener("click",()=>e.element.classList.toggle("show")),e.groups.layout.select("paginated")}async open(e){try{document.addEventListener(Cd,b=>{let{detail:g}=b;if(g)try{let m=JSON.parse(g);if(m&&m.type&&m.payload){if(m.type==="paragraphTranslated"){let{ok:h}=m.payload;if(h?Ji++:Xn++,s&&Zi){let y=Ji,w=Ji+Xn,S=y/Zi*100,_=Math.floor(S),x=Math.floor(w/Zi*100);if(_>100&&(_=100),x>100&&(x=100),s.innerText=`${_}%`,x===100&&Xn>0){let k=document.querySelector("#error");k.innerHTML=Lr.sanitize(`${Xn} failed(\u5931\u8D25). Retry all (\u70B9\u6B64\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D)`)}_===100&&(Ed||(Ed=!0,Xo({particleCount:100,spread:160})))}}else if(m.type==="totalParagraphsCount")m.payload.totalParagraphsCount&&(Zi=m.payload.totalParagraphsCount);else if(m.type==="translateStart")Ji=0,Xn=0;else if(m.type==="restorePage"){let h=document.querySelector("#error"),y=document.querySelector("#progress-number");h&&(h.innerHTML=""),y&&(y.innerText="")}}}catch{}}),this.view=await tg(e,this.#e.bind(this));let{book:n}=this.view,r=n.sections,i=document.querySelector("#chapters"),a=n.resources,o=[];if(a&&a.guide&&a.guide.length)for(let b of a.guide)o.push(b.href);let s=document.querySelector("#progress-number"),l=document.querySelector("#error");l.addEventListener("click",b=>{for(b.preventDefault();l.firstChild;)l.removeChild(l.firstChild);Xn=0,document.dispatchEvent(new CustomEvent(kd,{detail:JSON.stringify({type:"retryFailedParagraphs"})}))}),Ve("#open").addEventListener("click",()=>{window.location.reload()}),Ve("#export").addEventListener("click",async b=>{b.preventDefault(),yn||alert("Load failed");let g=document.querySelector("#export");g.classList.add("disabled");let m=document.querySelector("#exportAction");m&&m.classList.add("none");let h=document.querySelector("#exportStatus");h&&(h.innerText="Exporting..."),Ld();let y=yn.entries,w=new Ad,S=new Vm(w),_=new ps("application/epub+zip");await S.add("mimetype",_,{level:0,extendedTimestamp:!1});for(let C=0;C{if(Xm){delete M[Sd];let $=Object.keys(M.dataset).filter(q=>q.startsWith(ue));for(let q of $)delete M.dataset[q]}else{let $=Object.keys(M.dataset).filter(q=>q.startsWith(ue));for(let q of $)delete M.dataset[q]}M.removeAttribute(hs)}),O.querySelectorAll("[data-id]").forEach(M=>{M.removeAttribute("data-id")}),O.querySelectorAll("[contenteditable]").forEach(M=>{M.removeAttribute("contenteditable")}),O.querySelectorAll("style").forEach(M=>{M.getAttribute("type")||M.setAttribute("type","text/css")});let K=new XMLSerializer().serializeToString(O),ee=new ps(K);await S.add(E.filename,ee)}else{let O=n.metadata;if(E.filename===n.opfPath&&O&&O.identifier)try{let N=await yn.loadText(E.filename),z=new DOMParser().parseFromString(N,"text/xml"),Y=z.getElementById(z.documentElement.getAttribute("unique-identifier"))??z.getElementsByTagNameNS(NS.DC,"identifier")[0],ne=Math.random().toString(10).slice(2,15);Y.textContent=ne;let K=new XMLSerializer().serializeToString(z),ee=new ps(K);await S.add(E.filename,ee)}catch{let z=await yn.loadBlob(E.filename);await S.add(E.filename,new ms(z))}else try{let N=await yn.loadBlob(E.filename);await S.add(E.filename,new ms(N))}catch{}}}await S.close();let x=await w.getData(),k=e.name;e.name.endsWith(".epub.zip")&&(k=k.replace(".epub.zip",".epub"));let v=k.lastIndexOf("."),A=Math.max(160,v);k=k.substring(0,A)+" (Translated)"+k.substring(v),await _r.saveAs(x,k),g&&g.classList.remove("disabled"),m&&m.classList.remove("none"),h&&(h.textContent="")}),Ve("#edit").addEventListener("click",b=>{b.preventDefault(),yn||alert("Load failed"),rg()});let c=(n.metadata||{}).title||"Unknown",d=document.querySelector("#bookTitle");d.textContent=c;let f=!1,p=0;for(let b=0;b{if(p++,p===r.length){f=!0,setTimeout(()=>{let E=document.createElement("blockquote");E.classList.add("notranslate");let R=`

1. Click on the Immersive Translate extension popup translation button to start translating.
\u9700\u8981\u624B\u52A8\u70B9\u51FB\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u6269\u5C55/\u811A\u672C\u6D6E\u7A97\u7684\u7FFB\u8BD1\u6309\u94AE\u5F00\u59CB\u7FFB\u8BD1\u3002

2. If the Epub contains images, it's fine for the edit box below not to show the images, the exported Epub will contain the images.
\u5982\u679C Epub \u91CC\u5305\u542B\u56FE\u7247\uFF0C\u4E0B\u9762\u7684\u7F16\u8F91\u6846\u4E0D\u663E\u793A\u56FE\u7247\u662F\u6B63\u5E38\u7684\uFF0C\u5BFC\u51FA\u540E\u7684 Epub \u91CC\u4F1A\u5305\u542B\u56FE\u7247\u3002

3. When the translation is finished, you can click the Edit button above to modify the translation.
\u7FFB\u8BD1\u5B8C\u6210\u540E\uFF0C\u4F60\u53EF\u4EE5\u70B9\u51FB\u4E0A\u65B9\u7684\u7F16\u8F91\u6309\u94AE\u6765\u4FEE\u6539\u8BD1\u6587\u3002

4. When there is a translation error, you can click Retry All above, or click Show Original and translate again. Or the whole page can be refreshed and started again, because the translated part is always cached and no further requests will be sent.
\u5F53\u51FA\u73B0\u7FFB\u8BD1\u9519\u8BEF\u65F6\uFF0C\u53EF\u4EE5\u70B9\u51FB\u4E0A\u65B9\u7684\u91CD\u8BD5\u5168\u90E8\uFF0C\u6216\u8005\u70B9\u51FB\u6D4F\u89C8\u5668\u6269\u5C55\u56FE\u6807\u5148\u663E\u793A\u539F\u6587\uFF0C\u518D\u7FFB\u8BD1\u3002\u6216\u8005\u6574\u4E2A\u5237\u65B0\u9875\u9762\u91CD\u65B0\u6765\u8FC7\u4E5F\u884C\uFF0C\u56E0\u4E3A\u5DF2\u7FFB\u8BD1\u7684\u90E8\u5206\u603B\u662F\u6709\u7F13\u5B58\u7684\uFF0C\u4E0D\u4F1A\u518D\u53D1\u51FA\u8BF7\u6C42\u3002

`,L=document.querySelector("meta[name='immersive-translate-ebook-tips']");if(L){let O=L.getAttribute("content");O&&(R+=O)}E.innerHTML=Lr.sanitize(R),document.querySelector("#tips").append(E)},1e3),document.dispatchEvent(new CustomEvent("immersiveTranslateEbookLoaded"));let k=document.querySelectorAll("iframe"),v=0;k.forEach(E=>{let P=E.contentDocument.body.innerText.length;v+=P});let A=document.createElement("p");A.classList.add("notranslate"),A.innerText=`The book is about ${v} characters in total (\u672C\u4E66\u5927\u7EA6 ${v} \u4E2A\u5B57\u7B26)`,Ve("#stats").append(A)}}}}catch(n){alert(n.message),window.location.reload()}}#e(e){}},Rd=async t=>{document.body.removeChild(Ve("#drop-target"));let e=new gs;globalThis.reader=e,await e.open(t),Ve("#editor").classList.remove("none")},ig=t=>t.preventDefault(),ag=t=>{t.preventDefault();let e=Array.from(t.dataTransfer.items).find(n=>n.kind==="file");if(e){let n=e.webkitGetAsEntry();Rd(n.isFile?e.getAsFile():n).catch(r=>{})}},Od=Ve("#drop-target");Od.addEventListener("drop",ag);Od.addEventListener("dragover",ig);Ve("#file-input").addEventListener("change",t=>Rd(t.target.files[0]).catch(e=>{}));Ve("#file-button").addEventListener("click",()=>Ve("#file-input").click());})(); /*! Bundled license information: diff --git a/dist/chrome/libs/subtitle/subtitle.js b/dist/chrome/libs/subtitle/subtitle.js index 03e43d208..6dc46969f 100644 --- a/dist/chrome/libs/subtitle/subtitle.js +++ b/dist/chrome/libs/subtitle/subtitle.js @@ -11,7 +11,7 @@ `;for(let o=0;o ${Et.toTimeString(a.end)}${r}`,n+=a.text+r,n+=r;continue}t.verbose}return n},hi=e=>/\d+\r?\n\d{1,2}:\d{1,2}:\d{1,2}(?:[.,]\d{1,3})?\s*-->\s*\d{1,2}:\d{1,2}:\d{1,2}(?:[.,]\d{1,3})?/.test(e),Ur=Ce({name:fi,build:mi,detect:hi,helper:Et,parse:gi});var bi="sub",kn=25,yi=(e,t)=>{t.fps||=kn;let n=t.fps>0?t.fps:kn,r=[],o=t.eol||`\r `,a=e.split(/\r?\n/g);for(let i=0;i{let n=(t.fps||0)>0?t.fps:kn,r="",o=t.eol||`\r `;for(let a=0;a=0?i.frame.start:i.start*n,d=typeof i.frame=="object"&&i.frame.end>=0?i.frame.end:i.end*n,l=i.text.replace(/\r?\n/,"|");r+=`{${u}}{${d}}${l}${o}`;continue}t.verbose}return r},Ti=e=>/^\{\d+\}\{\d+\}.*/.test(e),jr=Ce({name:bi,build:xi,detect:Ti,parse:yi});var vi="vtt",At={toMilliseconds:e=>{let t=/^\s*(\d{1,2}:)?(\d{1,2}):(\d{1,2})(?:[.,](\d{1,3}))?\s*$/.exec(e);if(!t)throw new Error(`Invalid time format: ${e}`);let n=t[1]?parseInt(t[1].replace(":","")):0,r=parseInt(t[2]),o=parseInt(t[3]),a=t[4]?parseInt(t[4]):0;return n*3600*1e3+r*60*1e3+o*1e3+a},toTimeString:e=>{let t=Math.floor(e/1e3/3600),n=Math.floor(e/1e3/60%60),r=Math.floor(e/1e3%60),o=Math.floor(e%1e3);return`${(t<10?"0":"")+t}:${n<10?"0":""}${n}:${r<10?"0":""}${r}.${o<100?"0":""}${o<10?"0":""}${o}`}},wi=(e,t)=>{let n=1,r=[],o=e.split(/\r?\n\s*\n/);for(let a=0;a\s*((?:\d{1,2}:)?\d{1,2}:\d{1,2}(?:[.,]\d{1,3})?)\s?.*\r?\n([\s\S]*)$/.exec(o[a]);if(u){let l={};l.type="caption",l.index=n++,u[1]&&(l.cue=u[1].replace(/[\r\n]*/g,"")),l.start=At.toMilliseconds(u[2]),l.end=At.toMilliseconds(u[3]),l.duration=l.end-l.start;let s=u[4].split(/\r?\n/);l.content=s.join(" "),l.text=l.content.replace(/<[^>]+>/g,"").replace(/\{[^}]+\}/g,""),r.push(l);continue}let d=/^([A-Z]+)(\r?\n([\s\S]*))?$/.exec(o[a])||/^([A-Z]+)\s+([^\r\n]*)$/.exec(o[a]);if(d){let l={};l.type="meta",l.name=d[1],d[3]&&(l.data=d[3]),r.push(l);continue}t.verbose}return r},Ci=(e,t)=>{let n=t.eol||`\r -`,r=`WEBVTT${n}${n}`;for(let o=0;o ${At.toTimeString(a.end)}${n}`,r+=a.text+n,r+=n;continue}t.verbose}return r},Si=e=>/^\s*WEBVTT\r?\n/.test(e),zr=Ce({name:vi,build:Ci,detect:Si,helper:At,parse:wi});var ki={vtt:zr,lrc:Nr,smi:Br,ssa:Fr,ass:Rr,sub:jr,srt:Ur,sbv:$r,json:Dr},Wr=ki;var _i=e=>JSON.parse(JSON.stringify(e)),_n=class{constructor(){this.format=Wr;this.list=()=>Object.keys(this.format);this.detect=t=>{let n=this.list();for(let r=0;r"u"||typeof a.detect!="function")continue;let i=a.detect(t);if(i===!0||i===o)return o}return""};this.parse=(t,n={})=>{let r=n.format||this.detect(t);if(!r||r.trim().length===0)throw new Error("Cannot determine subtitle format!");let o=this.format[r];if(typeof o>"u")throw new Error(`Unsupported subtitle format: ${r}`);let a=o.parse;if(typeof a!="function")throw new Error(`Subtitle format does not support 'parse' op: ${r}`);return a(t,n)};this.build=(t,n={})=>{let r=n.format||"srt";if(!r||r.trim().length===0)throw new Error("Cannot determine subtitle format!");let o=this.format[r];if(typeof o>"u")throw new Error(`Unsupported subtitle format: ${r}`);let a=o.build;if(typeof a!="function")throw new Error(`Subtitle format does not support 'build' op: ${r}`);return a(t,n)};this.convert=(t,n={})=>{let r={};typeof n=="string"?r.to=n:r=n;let o={format:r.from||void 0,verbose:r.verbose,eol:r.eol},a=this.parse(t,o);r.resync&&(a=this.resync(a,r.resync));let i={format:r.to||r.format,verbose:r.verbose,eol:r.eol};return this.build(a,i)};this.resync=(t,n={})=>{let r,o,a=!1,i;if(typeof n=="function")r=n;else if(typeof n=="number")i=n,r=d=>[d[0]+i,d[1]+i];else if(typeof n=="object")i=(n.offset||0)*(n.frame?n.fps||25:1),o=n.ratio||1,a=n.frame||!1,r=d=>[Math.round(d[0]*o+i),Math.round(d[1]*o+i)];else throw new Error("Argument 'options' not defined!");let u=[];for(let d=0;d2&&(i.children=arguments.length>3?Yt.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(a in e.defaultProps)i[a]===void 0&&(i[a]=e.defaultProps[a]);return Ht(e,i,r,o,null)}function Ht(e,t,n,r,o){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:o??++Yr};return o==null&&I.vnode!=null&&I.vnode(a),a}function at(e){return e.children}function qt(e,t){this.props=e,this.context=t}function xt(e,t){if(t==null)return e.__?xt(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Ht(f.type,f.props,f.key,f.ref?f.ref:null,f.__v):f)!=null){if(f.__=n,f.__b=n.__b+1,(g=p[s])===null||g&&f.key==g.key&&f.type===g.type)p[s]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Xt}),n.__[e]}function ze(e){return Pn=1,Oi(ho,e)}function Oi(e,t,n){var r=mo(Fn++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):ho(void 0,t),function(a){var i=r.__N?r.__N[0]:r.__[0],u=r.t(i,a);i!==u&&(r.__N=[u,r.__[1]],r.__c.setState({}))}],r.__c=Te,!Te.u)){Te.u=!0;var o=Te.shouldComponentUpdate;Te.shouldComponentUpdate=function(a,i,u){if(!r.__c.__H)return!0;var d=r.__c.__H.__.filter(function(s){return s.__c});if(d.every(function(s){return!s.__N}))return!o||o.call(this,a,i,u);var l=!1;return d.forEach(function(s){if(s.__N){var m=s.__[0];s.__=s.__N,s.__N=void 0,m!==s.__[0]&&(l=!0)}}),!!l&&(!o||o.call(this,a,i,u))}}return r.__N||r.__}function Tt(e,t){var n=mo(Fn++,3);!I.__s&&Di(n.__H,t)&&(n.__=e,n.i=t,Te.__H.__h.push(n))}function Fi(){for(var e;e=go.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Zt),e.__H.__h.forEach(On),e.__H.__h=[]}catch(t){e.__H.__h=[],I.__e(t,e.__v)}}I.__b=function(e){typeof e.type!="function"||e.o||e.type===at?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Te=null,so&&so(e)},I.__r=function(e){lo&&lo(e),Fn=0;var t=(Te=e.__c).__H;t&&(Ln===Te?(t.__h=[],Te.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Xt,n.__N=n.i=void 0})):(t.__h.forEach(Zt),t.__h.forEach(On),t.__h=[])),Ln=Te},I.diffed=function(e){co&&co(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(go.push(t)!==1&&io===I.requestAnimationFrame||((io=I.requestAnimationFrame)||Ri)(Fi)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Xt&&(n.__=n.__V),n.i=void 0,n.__V=Xt})),Ln=Te=null},I.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Zt),n.__h=n.__h.filter(function(r){return!r.__||On(r)})}catch(r){t.some(function(o){o.__h&&(o.__h=[])}),t=[],I.__e(r,n.__v)}}),uo&&uo(e,t)},I.unmount=function(e){po&&po(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(r){try{Zt(r)}catch(o){t=o}}),n.__H=void 0,t&&I.__e(t,n.__v))};var fo=typeof requestAnimationFrame=="function";function Ri(e){var t,n=function(){clearTimeout(r),fo&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,100);fo&&(t=requestAnimationFrame(n))}function Zt(e){var t=Te,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Te=t}function On(e){var t=Te;e.__c=e.__(),Te=t}function Di(e,t){return!e||e.length!==t.length||t.some(function(n,r){return n!==e[r]})}function ho(e,t){return typeof t=="function"?t(e):t}function bo(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function yo(e,t){let n=e;return t&&Object.keys(t).forEach(r=>{let o=t[r],a=Bi(r);if(typeof o=="object"||a){let i=o;a&&typeof i=="string"&&(i={tag:"a",href:i,target:"_blank"});let u=`<${r}>`,d=n.indexOf(u);if(d!==-1){let l=i.tag||"a",s=n.indexOf(``);if(s!==-1){let m=n.substring(d+u.length,s),g=Object.keys(i).filter(f=>f!=="tag").map(f=>`${f}="${i[f]}"`).join(" ");n=n.replace(`${u}${m}`,`<${l} ${g}>${m}`)}}}else{let i=new RegExp("{"+r+"}","gm");n=n.replace(i,o.toString())}}),n}function Rn(e,t,n){let r=e[t];if(!r)return n;let o=n.split("."),a="";do{a+=o.shift();let i=r[a];i!==void 0&&(typeof i=="object"||!o.length)?(r=i,a=""):o.length?a+=".":r=n}while(o.length);return r}function Bi(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}var vt={},Ui={root:"",lang:"en",fallbackLang:"en"};function Dn(e,t){let n=Object.assign({},Ui,e);vt=t||vt;let[r,o]=ze(n.lang),[a,i]=ze(vt),[u,d]=ze(!1),l=m=>{if(a.hasOwnProperty(m))return;d(!1);let g=bo(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(f=>f.json()).then(f=>{vt[m]=f,i({...vt}),d(!0)}).catch(f=>{i({...vt}),d(!0)}))};return Tt(()=>{l(n.fallbackLang||"en"),l(r)},[r]),{lang:r,setLang:o,t:(m,g)=>{if(!a.hasOwnProperty(r))return m;let f=Rn(a,r,m);return f===m&&r!==n.fallbackLang&&(f=Rn(a,n.fallbackLang,m)),yo(f,g)},isReady:u}}var ji=0;function q(e,t,n,r,o){var a,i,u={};for(i in t)i=="ref"?a=t[i]:u[i]=t[i];var d={type:e,props:u,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--ji,__source:o,__self:r};if(typeof e=="function"&&(a=e.defaultProps))for(i in a)u[i]===void 0&&(u[i]=a[i]);return I.vnode&&I.vnode(d),d}var zi=Qt(null),Nn={root:"assets",lang:"en",fallbackLang:"en"},xo=e=>{let{t,setLang:n,lang:r,isReady:o}=Dn({root:e.root||Nn.root,lang:e.lang||Nn.lang,fallbackLang:e.fallbackLang||Nn.fallbackLang,getUrl:e.getUrl},e.translations);return q(zi.Provider,{value:{t,setLang:n,lang:r,isReady:o},children:e.children})};var $n;function Vn(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function Eo(e,t=","){return e.map(Vn).join(t)}var Ao=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function tn(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function nn(e,t="@media "){return t+$e(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(r=>`(${r}-width:${n[r]})`).join(" and "))).join(",")}function $e(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function Wi(){}var Se={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function Lo(e){return e.match(/[-=:;]/g)?.length||0}function Wn(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(Lo(e),15)<<18}var Hi=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function Gn({n:e,i:t,v:n=[]},r,o,a){e&&(e=Vn({n:e,i:t,v:n})),a=[...$e(a)];for(let u of n){let d=r.theme("screens",u);for(let l of $e(d&&nn(d)||r.v(u))){var i;a.push(l),o|=d?67108864|Wn(l):u=="dark"?1073741824:l[0]=="@"?Wn(l):(i=l,1<<~(/:([a-z-]+)/.test(i)&&~Hi.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:o,r:a,i:t}}var Yn=new Map;function To(e){if(e.d){let t=[],n=In(e.r.reduce((r,o)=>o[0]=="@"?(t.push(o),r):o?In(r,a=>In(o,i=>{let u=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(i);if(u){let d=a.indexOf(u[1]);return~d?a.slice(0,d)+u[0]+a.slice(d+u[1].length):Bn(a,i)}return Bn(i,a)})):r,"&"),r=>Bn(r,e.n?"."+Ao(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((r,o)=>o+"{"+r+"}",e.d)}}function In(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,r,o)=>t(r)+o)}function Bn(e,t){return e.replace(/&/g,t)}var vo=new Intl.Collator("en",{numeric:!0});function qi(e,t){for(var n=0,r=e.length;n>1;0>=Po(e[o],t)?n=o+1:r=o}return r}function Po(e,t){let n=e.p&Se.o;return n==(t.p&Se.o)&&(n==Se.b||n==Se.o)?0:e.p-t.p||e.o-t.o||vo.compare(wo(e.n),wo(t.n))||vo.compare(Co(e.n),Co(t.n))}function wo(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function Co(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function Un(e,t){return Math.round(parseInt(e,16)*t)}function st(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:r}=t,o=r?`var(${r})`:n;if(e.includes(""))return e.replace("",o);if(e[0]=="#"&&(e.length==4||e.length==7)){let a=(e.length-1)/3,i=[17,1,.062272][a-1];return`rgba(${[Un(e.substr(1,a),i),Un(e.substr(1+a,a),i),Un(e.substr(1+2*a,a),i),o]})`}return o=="1"?e:o=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${o})`)}function Oo(e,t,n,r,o=[]){return function a(i,{n:u,p:d,r:l=[],i:s},m){let g=[],f="",h=0,k=0;for(let v in i||{}){var _,p;let M=i[v];if(v[0]=="@"){if(!M)continue;if(v[1]=="a"){g.push(...Ro(u,d,Qn(""+M),m,d,l,s,!0));continue}if(v[1]=="l"){for(let K of $e(M))g.push(...a(K,{n:u,p:(_=Se[v[7]],d&~Se.o|_),r:v[7]=="d"?[]:l,i:s},m));continue}if(v[1]=="i"){g.push(...$e(M).map(K=>({p:-1,o:0,r:[],d:v+" "+K})));continue}if(v[1]=="k"){g.push({p:Se.d,o:0,r:[v],d:a(M,{p:Se.d},m).map(To).join("")});continue}if(v[1]=="f"){g.push(...$e(M).map(K=>({p:Se.d,o:0,r:[v],d:a(K,{p:Se.d},m).map(To).join("")})));continue}}if(typeof M!="object"||Array.isArray(M))v=="label"&&M?u=M+tn(JSON.stringify([d,s,i])):(M||M===0)&&(v=v.replace(/[A-Z]/g,K=>"-"+K.toLowerCase()),k+=1,h=Math.max(h,(p=v)[0]=="-"?0:Lo(p)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(p)?+!!RegExp.$1||-!!RegExp.$2:0)+1),f+=(f?";":"")+$e(M).map(K=>m.s(v,Fo(""+K,m.theme)+(s?" !important":""))).join(";"));else if(v[0]=="@"||v.includes("&")){let K=d;v[0]=="@"&&(v=v.replace(/\bscreen\(([^)]+)\)/g,($,U)=>{let O=m.theme("screens",U);return O?(K|=67108864,nn(O,"")):$}),K|=Wn(v)),g.push(...a(M,{n:u,p:K,r:[...l,v],i:s},m))}else g.push(...a(M,{p:d,r:[...l,v]},m))}return g.unshift({n:u,p:d,o:Math.max(0,15-k)+1.5*Math.min(h||15,15),r:l,d:f}),g.sort(Po)}(e,Gn(t,n,r,o),n)}function Fo(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,r,o,a,i="")=>{let u=t(o,i);return typeof u=="function"&&/color|fill|stroke/i.test(o)?st(u):""+$e(u).filter(d=>Object(d)!==d)})}function Jn(e,t){let n,r=[];for(let o of e)o.d&&o.n?n?.p==o.p&&""+n.r==""+o.r?(n.c=[n.c,o.c].filter(Boolean).join(" "),n.d=n.d+";"+o.d):r.push(n={...o,n:o.n&&t}):r.push({...o,n:o.n&&t});return r}function Hn(e,t,n=Se.u,r,o){let a=[];for(let i of e)for(let u of function(d,l,s,m,g){d={...d,i:d.i||g};let f=function(h,k){let _=Yn.get(h.n);return _?_(h,k):k.r(h.n,h.v[0]=="dark")}(d,l);return f?typeof f=="string"?({r:m,p:s}=Gn(d,l,s,m),Jn(Hn(Qn(f),l,s,m,d.i),d.n)):Array.isArray(f)?f.map(h=>{var k,_;return{o:0,...h,r:[...$e(m),...$e(h.r)],p:(k=s,_=h.p??s,k&~Se.o|_)}}):Oo(f,d,l,s,m):[{c:Vn(d),p:0,o:0,r:[]}]}(i,t,n,r,o))a.splice(qi(a,u),0,u);return a}function Ro(e,t,n,r,o,a,i,u){return Jn((u?n.flatMap(d=>Hn([d],r,o,a,i)):Hn(n,r,o,a,i)).map(d=>d.p&Se.o&&(d.n||t==Se.b)?{...d,p:d.p&~Se.o|t,o:0}:d),e)}function Ki(e,t,n,r){var o;return o=(a,i)=>{let{n:u,p:d,r:l,i:s}=Gn(a,i,t);return n&&Ro(u,t,n,i,d,l,s,r)},Yn.set(e,o),e}function jn(e,t,n){if(e[e.length-1]!="("){let r=[],o=!1,a=!1,i="";for(let u of e)if(!(u=="("||/[~@]$/.test(u))){if(u[0]=="!"&&(u=u.slice(1),o=!o),u.endsWith(":")){r[u=="dark:"?"unshift":"push"](u.slice(0,-1));continue}u[0]=="-"&&(u=u.slice(1),a=!a),u.endsWith("-")&&(u=u.slice(0,-1)),u&&u!="&"&&(i+=(i&&"-")+u)}i&&(a&&(i="-"+i),t[0].push({n:i,v:r.filter(Vi),i:o}))}}function Vi(e,t,n){return n.indexOf(e)==t}var So=new Map;function Qn(e){let t=So.get(e);if(!t){let n=[],r=[[]],o=0,a=0,i=null,u=0,d=(l,s=0)=>{o!=u&&(n.push(e.slice(o,u+s)),l&&jn(n,r)),o=u+1};for(;u1?m.slice(0,-1)+tn(JSON.stringify([m,g])):m+"("+Eo(g)+")",Se.a,g,/@$/.test(m))],r)}s=n.lastIndexOf("(",s-1)}n.length=s+1}else/[~@]/.test(l)&&e[u+1]=="("&&r.unshift([])}d(!0),So.set(e,t=r[0])}return t}function Do(e,t,n){return t.reduce((r,o,a)=>r+n(o)+e[a+1],e[0])}function No(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?Do(e,t,n=>zn(n).trim()):t.filter(Boolean).reduce((n,r)=>n+zn(r),e?zn(e):"")}function zn(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=No(e[0],e.slice(1)))&&(n+=" "+t);else for(let r in e)e[r]&&(n+=" "+r);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var J0=$o("@"),Q0=$o("~");function $o(e){return new Proxy(function(n,...r){return t("",n,r)},{get(n,r){return r in n?n[r]:function(o,...a){return t(r,o,a)}}});function t(n,r,o){return Eo(Qn(n+e+"("+No(r,o)+")"))}}function qn(e,t){return Array.isArray(e)?ko(Do(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?ko(e):[e]}var Gi=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function ko(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],r=[n[0]],o=[];for(;t=Gi.exec(e);)t[4]&&(n.shift(),o.shift()),t[3]?(o.unshift(t[3]),n.unshift({}),r.push(o.reduce((a,i)=>({[i]:a}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),r.push(o.reduce((a,i)=>({[i]:a}),n[0]))),n[0][t[1]]=t[2]);return r}function Io(e,...t){var n;let r=qn(e,t),o=(r.find(a=>a.label)?.label||"css")+tn(JSON.stringify(r));return n=(a,i)=>Jn(r.flatMap(u=>Oo(u,a,i,Se.o)),o),Yn.set(o,n),o}var X0=new Proxy(function(e,t){return _o("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,r){return _o(t,n,r)}}});function _o(e,t,n){return{toString(){return Io({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function x(e,t,n){return[e,Yi(t,n)]}function Yi(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,r)=>({[e]:t?t(n,r):Kn(n,1)}):n=>e||{[n[1]]:Kn(n,2)}}function Kn(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function T(e,t,n,r){return[e,Ji(t,n,r)]}function Ji(e,t,n){let r=typeof t=="string"?(o,a)=>({[t]:n?n(o,a):o._}):t||(({1:o,_:a},i,u)=>({[o||u]:a}));return(o,a)=>{let i=Bo(e||o[1]),u=a.theme(i,o.$$)??wt(o.$$,i,a);if(u!=null)return o._=Kn(o,0,u),r(o,a,i)}}function ve(e,t={},n){return[e,Qi(t,n)]}function Qi(e={},t){return(n,r)=>{let{section:o=Bo(n[0]).replace("-","")+"Color"}=e,[a,i]=Xi(n.$$);if(!a)return;let u=r.theme(o,a)||wt(a,o,r);if(!u||typeof u=="object")return;let{opacityVariable:d=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=o.replace("Color","Opacity"),property:s=o,selector:m}=e,g=r.theme(l,i||"DEFAULT")||i&&wt(i,l,r),f=t||(({_:k})=>{let _=Pt(s,k);return m?{[m]:_}:_});n._={value:st(u,{opacityVariable:d||void 0,opacityValue:g||void 0}),color:k=>st(u,k),opacityVariable:d||void 0,opacityValue:g||void 0};let h=f(n,r);if(!n.dark){let k=r.d(o,a,u);k&&k!==u&&(n._={value:st(k,{opacityVariable:d||void 0,opacityValue:g||"1"}),color:_=>st(k,_),opacityVariable:d||void 0,opacityValue:g||void 0},h={"&":h,[r.v("dark")]:f(n,r)})}return h}}function Xi(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function Pt(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function wt(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=en(Fo(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function Bo(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function en(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",r,o="")=>en(n)+r+en(o)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var Z0=Symbol();var Uo=new Proxy(Wi,{apply(e,t,n){return $n(n[0])},get(e,t){let n=$n[t];return typeof n=="function"?function(){return n.apply($n,arguments)}:n}});var eu=function e(t){return new Proxy(function(n,...r){return Mo(t,"",n,r)},{get(n,r){return r==="bind"?e:r in n?n[r]:function(o,...a){return Mo(t,r,o,a)}}})}();function Mo(e,t,n,r){return{toString(){let o=qn(n,r),a=Ao(t+tn(JSON.stringify([t,o])));return(typeof e=="function"?e:Uo)(Io({[`@keyframes ${a}`]:qn(n,r)})),a}}}var jo={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Ie(4,"rem",4,.5,.5),...Ie(12,"rem",4,5),14:"3.5rem",...Ie(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:X("blur"),backdropBrightness:X("brightness"),backdropContrast:X("contrast"),backdropGrayscale:X("grayscale"),backdropHueRotate:X("hueRotate"),backdropInvert:X("invert"),backdropOpacity:X("opacity"),backdropSaturate:X("saturate"),backdropSepia:X("sepia"),backgroundColor:X("colors"),backgroundImage:{none:"none"},backgroundOpacity:X("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Ie(200,"",100,0,50),...Ie(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:X("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:X("spacing"),borderWidth:{DEFAULT:"1px",...We(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:X("colors"),caretColor:X("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Ie(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:X("borderColor"),divideOpacity:X("borderOpacity"),divideWidth:X("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...Ot(2,6),...Ot(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:X("spacing"),gradientColorStops:X("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...Ot(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...Ot(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Ie(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Ie(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:X("spacing"),placeholderColor:X("colors"),placeholderOpacity:X("opacity"),outlineColor:X("colors"),outlineOffset:We(8,"px"),outlineWidth:We(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:X("colors"),ringOffsetWidth:We(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...We(8,"px")},rotate:{...We(2,"deg"),...We(12,"deg",3),...We(180,"deg",45)},saturate:Ie(200,"",100,0,50),scale:{...Ie(150,"",100,0,50),...Ie(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:X("spacing"),scrollPadding:X("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...We(2,"deg"),...We(12,"deg",3)},space:X("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Ie(2),textColor:X("colors"),textDecorationColor:X("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...We(8,"px")},textUnderlineOffset:{auto:"auto",...We(8,"px")},textIndent:X("spacing"),textOpacity:X("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:X("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...Ot(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Ie(50,"",1,0,10),auto:"auto"}};function Ot(e,t){let n={};do for(var r=1;rt(e)}var yu={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${jo.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${jo.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},Tu=[x("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:wt(`[${t}]`,"",n)}}})),x("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),T("aspect-","aspectRatio"),x("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:r,padding:o}=t("container"),a={width:"100%",marginRight:r&&"auto",marginLeft:r&&"auto",...i("xs")};for(let u in n){let d=n[u];typeof d=="string"&&(a[nn(d)]={"&":{maxWidth:d,...i(u)}})}return a;function i(u){let d=o&&(typeof o=="string"?o:o[u]||o.DEFAULT);if(d)return{paddingRight:d,paddingLeft:d}}}),T("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),x("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),x("box-(border|content)","boxSizing",({1:e})=>e+"-box"),x("hidden",{display:"none"}),x("table-(auto|fixed)","tableLayout"),x(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",x("isolate","isolation"),x("object-(contain|cover|fill|none|scale-down)","objectFit"),T("object-","objectPosition"),x("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",rn),x("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),x("(static|fixed|absolute|relative|sticky)","position"),T("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),T("-?(top|bottom|left|right)(?:$|-)","inset"),x("(visible|collapse)","visibility"),x("invisible",{visibility:"hidden"}),T("-?z-","zIndex"),x("flex-((row|col)(-reverse)?)","flexDirection",zo),x("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),T("(flex-(?:grow|shrink))(?:$|-)"),T("(flex)-"),T("grow(?:$|-)","flexGrow"),T("shrink(?:$|-)","flexShrink"),T("basis-","flexBasis"),T("-?(order)-"),"-?(order)-(\\d+)",T("grid-cols-","gridTemplateColumns"),x("grid-cols-(\\d+)","gridTemplateColumns",Ko),T("col-","gridColumn"),x("col-(span)-(\\d+)","gridColumn",qo),T("col-start-","gridColumnStart"),x("col-start-(auto|\\d+)","gridColumnStart"),T("col-end-","gridColumnEnd"),x("col-end-(auto|\\d+)","gridColumnEnd"),T("grid-rows-","gridTemplateRows"),x("grid-rows-(\\d+)","gridTemplateRows",Ko),T("row-","gridRow"),x("row-(span)-(\\d+)","gridRow",qo),T("row-start-","gridRowStart"),x("row-start-(auto|\\d+)","gridRowStart"),T("row-end-","gridRowEnd"),x("row-end-(auto|\\d+)","gridRowEnd"),x("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>rn(zo(e))),x("grid-flow-(dense)","gridAutoFlow"),T("auto-cols-","gridAutoColumns"),T("auto-rows-","gridAutoRows"),T("gap-x(?:$|-)","gap","columnGap"),T("gap-y(?:$|-)","gap","rowGap"),T("gap(?:$|-)","gap"),"(justify-(?:items|self))-",x("justify-","justifyContent",Wo),x("(content|items|self)-",e=>({["align-"+e[1]]:Wo(e)})),x("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),T("p([xytrbl])?(?:$|-)","padding",Ct("padding")),T("-?m([xytrbl])?(?:$|-)","margin",Ct("margin")),T("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),x("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),T("w-","width"),T("min-w-","minWidth"),T("max-w-","maxWidth"),T("h-","height"),T("min-h-","minHeight"),T("max-h-","maxHeight"),T("font-","fontWeight"),T("font-","fontFamily",({_:e})=>typeof(e=$e(e))[1]=="string"?{fontFamily:Ge(e)}:{fontFamily:Ge(e[0]),...e[1]}),x("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),x("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),x("italic","fontStyle"),x("not-italic",{fontStyle:"normal"}),x("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...lt({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),T("tracking-","letterSpacing"),T("leading-","lineHeight"),x("list-(inside|outside)","listStylePosition"),T("list-","listStyleType"),x("list-","listStyleType"),T("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),ve("placeholder-",{property:"color",selector:"&::placeholder"}),x("text-(left|center|right|justify|start|end)","textAlign"),x("text-(ellipsis|clip)","textOverflow"),T("text-opacity-","textOpacity","--tw-text-opacity"),ve("text-",{property:"color"}),T("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),T("indent-","textIndent"),x("(overline|underline|line-through)","textDecorationLine"),x("no-underline",{textDecorationLine:"none"}),T("underline-offset-","textUnderlineOffset"),ve("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),T("decoration-","textDecorationThickness"),x("decoration-","textDecorationStyle"),x("(uppercase|lowercase|capitalize)","textTransform"),x("normal-case",{textTransform:"none"}),x("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),x("align-","verticalAlign"),x("whitespace-","whiteSpace"),x("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),x("break-words",{overflowWrap:"break-word"}),x("break-all",{wordBreak:"break-all"}),x("break-keep",{wordBreak:"keep-all"}),ve("caret-",{opacityVariable:!1,opacitySection:"opacity"}),ve("accent-",{opacityVariable:!1,opacitySection:"opacity"}),x("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${gt(e," ")},var(--tw-gradient-stops))`),ve("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),ve("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),ve("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),x("bg-(fixed|local|scroll)","backgroundAttachment"),x("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),x(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),x("bg-blend-","backgroundBlendMode"),x("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),T("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),ve("bg-",{section:"backgroundColor"}),T("bg-","backgroundImage"),T("bg-","backgroundPosition"),x("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",rn),T("bg-","backgroundSize"),T("rounded(?:$|-)","borderRadius"),T("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${gt(n[0])}-radius`]:t,[`border-${gt(n[1])}-radius`]:t}}),x("border-(collapse|separate)","borderCollapse"),T("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),x("border-(solid|dashed|dotted|double|none)","borderStyle"),T("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...lt({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),ve("border-([xytrbl])-",{section:"borderColor"},Ct("border","Color")),ve("border-"),T("border-([xytrbl])(?:$|-)","borderWidth",Ct("border","Width")),T("border(?:$|-)","borderWidth"),T("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),x("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),x("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),T("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${gt(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${gt(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),ve("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),T("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),ve("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),T("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),x("ring-inset",{"--tw-ring-inset":"inset"}),ve("ring-",{property:"--tw-ring-color"}),T("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...lt({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":st(t("ringOffsetColor","","#fff")),"--tw-ring-color":st(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),ve("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),T("shadow(?:$|-)","boxShadow",({_:e})=>({...lt({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":Ge(e),"--tw-shadow-colored":Ge(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),T("(opacity)-"),x("mix-blend-","mixBlendMode"),...Ho(),...Ho("backdrop-"),T("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:Ge(e),transitionTimingFunction:e._=="none"?void 0:Ge(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:Ge(t("transitionDuration",""))})),T("duration(?:$|-)","transitionDuration","transitionDuration",Ge),T("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",Ge),T("delay(?:$|-)","transitionDelay","transitionDelay",Ge),T("animate(?:$|-)","animation",(e,{theme:t,h:n,e:r})=>{let o=Ge(e),a=o.split(" "),i=t("keyframes",a[0]);return i?{["@keyframes "+(a[0]=r(n(a[0])))]:i,animation:a.join(" ")}:{animation:o}}),"(transform)-(none)",x("transform",Zn),x("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":Vo(e=="gpu")})),T("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...Zn()})),T("-?(rotate)-","rotate",Xn),T("-?(translate-[xy])-","translate",Xn),T("-?(skew-[xy])-","skew",Xn),x("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",rn),"(appearance)-",T("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",T("(cursor)-"),"(cursor)-",x("snap-(none)","scroll-snap-type"),x("snap-(x|y|both)",({1:e})=>({...lt({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),x("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),x("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),x("snap-(normal|always)","scroll-snap-stop"),x("scroll-(auto|smooth)","scroll-behavior"),T("scroll-p([xytrbl])?(?:$|-)","padding",Ct("scroll-padding")),T("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",Ct("scroll-margin")),x("touch-(auto|none|manipulation)","touch-action"),x("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...lt({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),x("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),x("outline",{outlineStyle:"solid"}),x("outline-(dashed|dotted|double)","outlineStyle"),T("-?(outline-offset)-"),ve("outline-",{opacityVariable:!1,opacitySection:"opacity"}),T("outline-","outlineWidth"),"(pointer-events)-",T("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],x("select-(none|text|all|auto)","userSelect"),ve("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),ve("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),T("stroke-","strokeWidth"),x("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),x("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function rn(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function zo(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function gt(e,t="-"){let n=[];for(let r of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[r]);return n.join(t)}function Ge(e){return e&&""+(e._||e)}function Wo({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function Ct(e,t=""){return({1:n,_:r})=>{let o={x:"lr",y:"tb"}[n]||n+n;return o?{...Pt(e+"-"+gt(o[0])+t,r),...Pt(e+"-"+gt(o[1])+t,r)}:Pt(e+t,r)}}function Ho(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let r of t)n[`--tw-${e}${r}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...lt(n),[`${e}filter`]:t.map(r=>`var(--tw-${e}${r})`).join(" ")},[`(${e}filter)-(none)`,x(`${e}filter`,n),...t.map(r=>T(`${r[0]=="h"?"-?":""}(${e}${r})(?:$|-)`,r,({1:o,_:a})=>({[`--tw-${o}`]:$e(a).map(i=>`${r}(${i})`).join(" "),...n})))]}function Xn({1:e,_:t}){return{["--tw-"+e]:t,...Zn()}}function Zn(){return{...lt({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":Vo()}),transform:"var(--tw-transform)"}}function Vo(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function qo({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function Ko({1:e}){return`repeat(${e},minmax(0,1fr))`}function lt(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var on=globalThis||(typeof window<"u"?window:self),ts=Object.create,tr=Object.defineProperty,ns=Object.getOwnPropertyDescriptor,rs=Object.getOwnPropertyNames,os=Object.getPrototypeOf,as=Object.prototype.hasOwnProperty,is=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ss=(e,t)=>{for(var n in t)tr(e,n,{get:t[n],enumerable:!0})},er=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of rs(t))!as.call(e,o)&&o!==n&&tr(e,o,{get:()=>t[o],enumerable:!(r=ns(t,o))||r.enumerable});return e},ls=(e,t,n)=>(er(e,t,"default"),n&&er(n,t,"default")),Yo=(e,t,n)=>(n=e!=null?ts(os(e)):{},er(t||!e||!e.__esModule?tr(n,"default",{value:e,enumerable:!0}):n,e)),Jo=is((e,t)=>{(function(n,r){typeof define=="function"&&define.amd?define([],r):typeof e<"u"?r():(r(),n.FileSaver={})})(e,function(){"use strict";function n(l,s){return typeof s>"u"?s={autoBom:!1}:typeof s!="object"&&(s={autoBom:!s}),s.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function r(l,s,m){var g=new XMLHttpRequest;g.open("GET",l),g.responseType="blob",g.onload=function(){d(g.response,s,m)},g.onerror=function(){},g.send()}function o(l){var s=new XMLHttpRequest;s.open("HEAD",l,!1);try{s.send()}catch{}return 200<=s.status&&299>=s.status}function a(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var s=document.createEvent("MouseEvents");s.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(s)}}var i=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof on=="object"&&on.global===on?on:void 0,u=i.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),d=i.saveAs||(typeof window!="object"||window!==i?function(){}:"download"in HTMLAnchorElement.prototype&&!u?function(l,s,m){var g=i.URL||i.webkitURL,f=document.createElement("a");s=s||l.name||"download",f.download=s,f.rel="noopener",typeof l=="string"?(f.href=l,f.origin===location.origin?a(f):o(f.href)?r(l,s,m):a(f,f.target="_blank")):(f.href=g.createObjectURL(l),setTimeout(function(){g.revokeObjectURL(f.href)},4e4),setTimeout(function(){a(f)},0))}:"msSaveOrOpenBlob"in navigator?function(l,s,m){if(s=s||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,m),s);else if(o(l))r(l,s,m);else{var g=document.createElement("a");g.href=l,g.target="_blank",setTimeout(function(){a(g)})}}:function(l,s,m,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),typeof l=="string")return r(l,s,m);var f=l.type==="application/octet-stream",h=/constructor/i.test(i.HTMLElement)||i.safari,k=/CriOS\/[\d]+/.test(navigator.userAgent);if((k||f&&h||u)&&typeof FileReader<"u"){var _=new FileReader;_.onloadend=function(){var M=_.result;M=k?M:M.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=M:location=M,g=null},_.readAsDataURL(l)}else{var p=i.URL||i.webkitURL,v=p.createObjectURL(l);g?g.location=v:location.href=v,g=null,setTimeout(function(){p.revokeObjectURL(v)},4e4)}});i.saveAs=d.saveAs=d,typeof t<"u"&&(t.exports=d)})}),Qo={};ss(Qo,{default:()=>Ft});var cs=Yo(Jo());ls(Qo,Yo(Jo()));var{default:Go,...us}=cs,Ft=Go!==void 0?Go:us;var Xo={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var Zo={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var ea={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var gs=[{code:"zh-CN",messages:Xo},{code:"zh-TW",messages:Zo},{code:"en",messages:ea}];var Rt={};for(let e of gs)Rt[e.code]=e.messages;var mt="Immersive Translate",Oe="immersive-translate";var j="immersiveTranslate";var Xu=j+"GoogleAccessToken",Zu=j+"AuthFlow";var ed=j+"AuthState",td=j+"IframeMessage",nd=j+"WaitForRateLimit",rd=j+"DocumentMessageAsk",na=j+"DocumentMessageTellThirdParty",ra=j+"DocumentMessageThirdPartyTell",od=j+"DocumentMessageHandler",ad=`${j}Container`,id=`${j}SpecifiedContainer`;var sd=`${j}PageTranslatedStatus`,ld=`${j}PageUrlChanged`,cd=`${j}ReceiveCommand`,ud=j+"LastUseMouseHoverTime",dd=j+"LastUseInputTime",pd=j+"LastUseManualTranslatePageTime",fd=`${j}PopupReceiveMessage`,ms="immersivetranslate.com",hs="config.immersivetranslate.com",gd=`https://${ms}/`,md=`https://${hs}/default_config.json`,hd=`${j}Mark`;var bd=`${j}Root`,yd=`data-${Oe}-effect`,xd=`data-${Oe}-translation-element-mark`,Td=`${j}TranslationElementMark`,vd=`${j}TranslatedMark`,wd=`${j}ParagraphId`,Cd=`${j}LoadingId`,Sd=`data-${Oe}-loading-id`,kd=`${j}ErrorId`,_d=`data-${Oe}-error-id`,Md=`${j}AtomicBlockMark`,Ed=`${j}ExcludeMark`,Ad=`data-${Oe}-exclude-mark`,Ld=`${j}StayOriginalMark`,Pd=`${j}PreWhitespaceMark`,Od=`${j}InlineMark`,Fd=`${j}BlockMark`,Rd=`${j}Left`,Dd=`${j}Right`,Nd=`${j}Width`,$d=`${j}Height`,Id=`${j}Top`,Bd=`${j}FontSize`;var Ud=`${j}GlobalStyleMark`;var jd=`${Oe}-target-wrapper`,zd=`${Oe}-pdf-target-container`,Wd=`${Oe}-target-inner`,Hd=`${Oe}-source-wrapper`,qd=`${Oe}-target-translation-block-wrapper`,Kd=`${Oe}-root-translation-theme`,Vd=`${j}RootTranslationTheme`,Gd=`${Oe}-target-translation-vertical-block-wrapper`,Yd=`${Oe}-target-translation-pdf-block-wrapper`,Jd=`${Oe}-target-translation-pre-whitespace`,Qd=`${Oe}-target-translation-inline-wrapper`;var ta=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],Xd={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,r=`WEBVTT${n}${n}`;for(let o=0;o ${At.toTimeString(a.end)}${n}`,r+=a.text+n,r+=n;continue}t.verbose}return r},Si=e=>/^\s*WEBVTT\r?\n/.test(e),zr=Ce({name:vi,build:Ci,detect:Si,helper:At,parse:wi});var ki={vtt:zr,lrc:Nr,smi:Br,ssa:Fr,ass:Rr,sub:jr,srt:Ur,sbv:$r,json:Dr},Wr=ki;var _i=e=>JSON.parse(JSON.stringify(e)),_n=class{constructor(){this.format=Wr;this.list=()=>Object.keys(this.format);this.detect=t=>{let n=this.list();for(let r=0;r"u"||typeof a.detect!="function")continue;let i=a.detect(t);if(i===!0||i===o)return o}return""};this.parse=(t,n={})=>{let r=n.format||this.detect(t);if(!r||r.trim().length===0)throw new Error("Cannot determine subtitle format!");let o=this.format[r];if(typeof o>"u")throw new Error(`Unsupported subtitle format: ${r}`);let a=o.parse;if(typeof a!="function")throw new Error(`Subtitle format does not support 'parse' op: ${r}`);return a(t,n)};this.build=(t,n={})=>{let r=n.format||"srt";if(!r||r.trim().length===0)throw new Error("Cannot determine subtitle format!");let o=this.format[r];if(typeof o>"u")throw new Error(`Unsupported subtitle format: ${r}`);let a=o.build;if(typeof a!="function")throw new Error(`Subtitle format does not support 'build' op: ${r}`);return a(t,n)};this.convert=(t,n={})=>{let r={};typeof n=="string"?r.to=n:r=n;let o={format:r.from||void 0,verbose:r.verbose,eol:r.eol},a=this.parse(t,o);r.resync&&(a=this.resync(a,r.resync));let i={format:r.to||r.format,verbose:r.verbose,eol:r.eol};return this.build(a,i)};this.resync=(t,n={})=>{let r,o,a=!1,i;if(typeof n=="function")r=n;else if(typeof n=="number")i=n,r=d=>[d[0]+i,d[1]+i];else if(typeof n=="object")i=(n.offset||0)*(n.frame?n.fps||25:1),o=n.ratio||1,a=n.frame||!1,r=d=>[Math.round(d[0]*o+i),Math.round(d[1]*o+i)];else throw new Error("Argument 'options' not defined!");let u=[];for(let d=0;d2&&(i.children=arguments.length>3?Yt.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(a in e.defaultProps)i[a]===void 0&&(i[a]=e.defaultProps[a]);return Ht(e,i,r,o,null)}function Ht(e,t,n,r,o){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:o??++Yr};return o==null&&I.vnode!=null&&I.vnode(a),a}function at(e){return e.children}function qt(e,t){this.props=e,this.context=t}function xt(e,t){if(t==null)return e.__?xt(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Ht(f.type,f.props,f.key,f.ref?f.ref:null,f.__v):f)!=null){if(f.__=n,f.__b=n.__b+1,(g=p[s])===null||g&&f.key==g.key&&f.type===g.type)p[s]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Xt}),n.__[e]}function ze(e){return Pn=1,Oi(ho,e)}function Oi(e,t,n){var r=mo(Fn++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):ho(void 0,t),function(a){var i=r.__N?r.__N[0]:r.__[0],u=r.t(i,a);i!==u&&(r.__N=[u,r.__[1]],r.__c.setState({}))}],r.__c=Te,!Te.u)){Te.u=!0;var o=Te.shouldComponentUpdate;Te.shouldComponentUpdate=function(a,i,u){if(!r.__c.__H)return!0;var d=r.__c.__H.__.filter(function(s){return s.__c});if(d.every(function(s){return!s.__N}))return!o||o.call(this,a,i,u);var l=!1;return d.forEach(function(s){if(s.__N){var m=s.__[0];s.__=s.__N,s.__N=void 0,m!==s.__[0]&&(l=!0)}}),!!l&&(!o||o.call(this,a,i,u))}}return r.__N||r.__}function Tt(e,t){var n=mo(Fn++,3);!I.__s&&Di(n.__H,t)&&(n.__=e,n.i=t,Te.__H.__h.push(n))}function Fi(){for(var e;e=go.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Zt),e.__H.__h.forEach(On),e.__H.__h=[]}catch(t){e.__H.__h=[],I.__e(t,e.__v)}}I.__b=function(e){typeof e.type!="function"||e.o||e.type===at?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Te=null,so&&so(e)},I.__r=function(e){lo&&lo(e),Fn=0;var t=(Te=e.__c).__H;t&&(Ln===Te?(t.__h=[],Te.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Xt,n.__N=n.i=void 0})):(t.__h.forEach(Zt),t.__h.forEach(On),t.__h=[])),Ln=Te},I.diffed=function(e){co&&co(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(go.push(t)!==1&&io===I.requestAnimationFrame||((io=I.requestAnimationFrame)||Ri)(Fi)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Xt&&(n.__=n.__V),n.i=void 0,n.__V=Xt})),Ln=Te=null},I.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Zt),n.__h=n.__h.filter(function(r){return!r.__||On(r)})}catch(r){t.some(function(o){o.__h&&(o.__h=[])}),t=[],I.__e(r,n.__v)}}),uo&&uo(e,t)},I.unmount=function(e){po&&po(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(r){try{Zt(r)}catch(o){t=o}}),n.__H=void 0,t&&I.__e(t,n.__v))};var fo=typeof requestAnimationFrame=="function";function Ri(e){var t,n=function(){clearTimeout(r),fo&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,100);fo&&(t=requestAnimationFrame(n))}function Zt(e){var t=Te,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Te=t}function On(e){var t=Te;e.__c=e.__(),Te=t}function Di(e,t){return!e||e.length!==t.length||t.some(function(n,r){return n!==e[r]})}function ho(e,t){return typeof t=="function"?t(e):t}function bo(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function yo(e,t){let n=e;return t&&Object.keys(t).forEach(r=>{let o=t[r],a=Bi(r);if(typeof o=="object"||a){let i=o;a&&typeof i=="string"&&(i={tag:"a",href:i,target:"_blank"});let u=`<${r}>`,d=n.indexOf(u);if(d!==-1){let l=i.tag||"a",s=n.indexOf(``);if(s!==-1){let m=n.substring(d+u.length,s),g=Object.keys(i).filter(f=>f!=="tag").map(f=>`${f}="${i[f]}"`).join(" ");n=n.replace(`${u}${m}`,`<${l} ${g}>${m}`)}}}else{let i=new RegExp("{"+r+"}","gm");n=n.replace(i,o.toString())}}),n}function Rn(e,t,n){let r=e[t];if(!r)return n;let o=n.split("."),a="";do{a+=o.shift();let i=r[a];i!==void 0&&(typeof i=="object"||!o.length)?(r=i,a=""):o.length?a+=".":r=n}while(o.length);return r}function Bi(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}var vt={},Ui={root:"",lang:"en",fallbackLang:"en"};function Dn(e,t){let n=Object.assign({},Ui,e);vt=t||vt;let[r,o]=ze(n.lang),[a,i]=ze(vt),[u,d]=ze(!1),l=m=>{if(a.hasOwnProperty(m))return;d(!1);let g=bo(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(f=>f.json()).then(f=>{vt[m]=f,i({...vt}),d(!0)}).catch(f=>{i({...vt}),d(!0)}))};return Tt(()=>{l(n.fallbackLang||"en"),l(r)},[r]),{lang:r,setLang:o,t:(m,g)=>{if(!a.hasOwnProperty(r))return m;let f=Rn(a,r,m);return f===m&&r!==n.fallbackLang&&(f=Rn(a,n.fallbackLang,m)),yo(f,g)},isReady:u}}var ji=0;function q(e,t,n,r,o){var a,i,u={};for(i in t)i=="ref"?a=t[i]:u[i]=t[i];var d={type:e,props:u,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--ji,__source:o,__self:r};if(typeof e=="function"&&(a=e.defaultProps))for(i in a)u[i]===void 0&&(u[i]=a[i]);return I.vnode&&I.vnode(d),d}var zi=Qt(null),Nn={root:"assets",lang:"en",fallbackLang:"en"},xo=e=>{let{t,setLang:n,lang:r,isReady:o}=Dn({root:e.root||Nn.root,lang:e.lang||Nn.lang,fallbackLang:e.fallbackLang||Nn.fallbackLang,getUrl:e.getUrl},e.translations);return q(zi.Provider,{value:{t,setLang:n,lang:r,isReady:o},children:e.children})};var $n;function Vn(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function Eo(e,t=","){return e.map(Vn).join(t)}var Ao=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function tn(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function nn(e,t="@media "){return t+$e(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(r=>`(${r}-width:${n[r]})`).join(" and "))).join(",")}function $e(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function Wi(){}var Se={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function Lo(e){return e.match(/[-=:;]/g)?.length||0}function Wn(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(Lo(e),15)<<18}var Hi=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function Gn({n:e,i:t,v:n=[]},r,o,a){e&&(e=Vn({n:e,i:t,v:n})),a=[...$e(a)];for(let u of n){let d=r.theme("screens",u);for(let l of $e(d&&nn(d)||r.v(u))){var i;a.push(l),o|=d?67108864|Wn(l):u=="dark"?1073741824:l[0]=="@"?Wn(l):(i=l,1<<~(/:([a-z-]+)/.test(i)&&~Hi.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:o,r:a,i:t}}var Yn=new Map;function To(e){if(e.d){let t=[],n=In(e.r.reduce((r,o)=>o[0]=="@"?(t.push(o),r):o?In(r,a=>In(o,i=>{let u=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(i);if(u){let d=a.indexOf(u[1]);return~d?a.slice(0,d)+u[0]+a.slice(d+u[1].length):Bn(a,i)}return Bn(i,a)})):r,"&"),r=>Bn(r,e.n?"."+Ao(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((r,o)=>o+"{"+r+"}",e.d)}}function In(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,r,o)=>t(r)+o)}function Bn(e,t){return e.replace(/&/g,t)}var vo=new Intl.Collator("en",{numeric:!0});function qi(e,t){for(var n=0,r=e.length;n>1;0>=Po(e[o],t)?n=o+1:r=o}return r}function Po(e,t){let n=e.p&Se.o;return n==(t.p&Se.o)&&(n==Se.b||n==Se.o)?0:e.p-t.p||e.o-t.o||vo.compare(wo(e.n),wo(t.n))||vo.compare(Co(e.n),Co(t.n))}function wo(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function Co(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function Un(e,t){return Math.round(parseInt(e,16)*t)}function st(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:r}=t,o=r?`var(${r})`:n;if(e.includes(""))return e.replace("",o);if(e[0]=="#"&&(e.length==4||e.length==7)){let a=(e.length-1)/3,i=[17,1,.062272][a-1];return`rgba(${[Un(e.substr(1,a),i),Un(e.substr(1+a,a),i),Un(e.substr(1+2*a,a),i),o]})`}return o=="1"?e:o=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${o})`)}function Oo(e,t,n,r,o=[]){return function a(i,{n:u,p:d,r:l=[],i:s},m){let g=[],f="",h=0,k=0;for(let v in i||{}){var _,p;let M=i[v];if(v[0]=="@"){if(!M)continue;if(v[1]=="a"){g.push(...Ro(u,d,Qn(""+M),m,d,l,s,!0));continue}if(v[1]=="l"){for(let K of $e(M))g.push(...a(K,{n:u,p:(_=Se[v[7]],d&~Se.o|_),r:v[7]=="d"?[]:l,i:s},m));continue}if(v[1]=="i"){g.push(...$e(M).map(K=>({p:-1,o:0,r:[],d:v+" "+K})));continue}if(v[1]=="k"){g.push({p:Se.d,o:0,r:[v],d:a(M,{p:Se.d},m).map(To).join("")});continue}if(v[1]=="f"){g.push(...$e(M).map(K=>({p:Se.d,o:0,r:[v],d:a(K,{p:Se.d},m).map(To).join("")})));continue}}if(typeof M!="object"||Array.isArray(M))v=="label"&&M?u=M+tn(JSON.stringify([d,s,i])):(M||M===0)&&(v=v.replace(/[A-Z]/g,K=>"-"+K.toLowerCase()),k+=1,h=Math.max(h,(p=v)[0]=="-"?0:Lo(p)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(p)?+!!RegExp.$1||-!!RegExp.$2:0)+1),f+=(f?";":"")+$e(M).map(K=>m.s(v,Fo(""+K,m.theme)+(s?" !important":""))).join(";"));else if(v[0]=="@"||v.includes("&")){let K=d;v[0]=="@"&&(v=v.replace(/\bscreen\(([^)]+)\)/g,($,U)=>{let O=m.theme("screens",U);return O?(K|=67108864,nn(O,"")):$}),K|=Wn(v)),g.push(...a(M,{n:u,p:K,r:[...l,v],i:s},m))}else g.push(...a(M,{p:d,r:[...l,v]},m))}return g.unshift({n:u,p:d,o:Math.max(0,15-k)+1.5*Math.min(h||15,15),r:l,d:f}),g.sort(Po)}(e,Gn(t,n,r,o),n)}function Fo(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,r,o,a,i="")=>{let u=t(o,i);return typeof u=="function"&&/color|fill|stroke/i.test(o)?st(u):""+$e(u).filter(d=>Object(d)!==d)})}function Jn(e,t){let n,r=[];for(let o of e)o.d&&o.n?n?.p==o.p&&""+n.r==""+o.r?(n.c=[n.c,o.c].filter(Boolean).join(" "),n.d=n.d+";"+o.d):r.push(n={...o,n:o.n&&t}):r.push({...o,n:o.n&&t});return r}function Hn(e,t,n=Se.u,r,o){let a=[];for(let i of e)for(let u of function(d,l,s,m,g){d={...d,i:d.i||g};let f=function(h,k){let _=Yn.get(h.n);return _?_(h,k):k.r(h.n,h.v[0]=="dark")}(d,l);return f?typeof f=="string"?({r:m,p:s}=Gn(d,l,s,m),Jn(Hn(Qn(f),l,s,m,d.i),d.n)):Array.isArray(f)?f.map(h=>{var k,_;return{o:0,...h,r:[...$e(m),...$e(h.r)],p:(k=s,_=h.p??s,k&~Se.o|_)}}):Oo(f,d,l,s,m):[{c:Vn(d),p:0,o:0,r:[]}]}(i,t,n,r,o))a.splice(qi(a,u),0,u);return a}function Ro(e,t,n,r,o,a,i,u){return Jn((u?n.flatMap(d=>Hn([d],r,o,a,i)):Hn(n,r,o,a,i)).map(d=>d.p&Se.o&&(d.n||t==Se.b)?{...d,p:d.p&~Se.o|t,o:0}:d),e)}function Ki(e,t,n,r){var o;return o=(a,i)=>{let{n:u,p:d,r:l,i:s}=Gn(a,i,t);return n&&Ro(u,t,n,i,d,l,s,r)},Yn.set(e,o),e}function jn(e,t,n){if(e[e.length-1]!="("){let r=[],o=!1,a=!1,i="";for(let u of e)if(!(u=="("||/[~@]$/.test(u))){if(u[0]=="!"&&(u=u.slice(1),o=!o),u.endsWith(":")){r[u=="dark:"?"unshift":"push"](u.slice(0,-1));continue}u[0]=="-"&&(u=u.slice(1),a=!a),u.endsWith("-")&&(u=u.slice(0,-1)),u&&u!="&"&&(i+=(i&&"-")+u)}i&&(a&&(i="-"+i),t[0].push({n:i,v:r.filter(Vi),i:o}))}}function Vi(e,t,n){return n.indexOf(e)==t}var So=new Map;function Qn(e){let t=So.get(e);if(!t){let n=[],r=[[]],o=0,a=0,i=null,u=0,d=(l,s=0)=>{o!=u&&(n.push(e.slice(o,u+s)),l&&jn(n,r)),o=u+1};for(;u1?m.slice(0,-1)+tn(JSON.stringify([m,g])):m+"("+Eo(g)+")",Se.a,g,/@$/.test(m))],r)}s=n.lastIndexOf("(",s-1)}n.length=s+1}else/[~@]/.test(l)&&e[u+1]=="("&&r.unshift([])}d(!0),So.set(e,t=r[0])}return t}function Do(e,t,n){return t.reduce((r,o,a)=>r+n(o)+e[a+1],e[0])}function No(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?Do(e,t,n=>zn(n).trim()):t.filter(Boolean).reduce((n,r)=>n+zn(r),e?zn(e):"")}function zn(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=No(e[0],e.slice(1)))&&(n+=" "+t);else for(let r in e)e[r]&&(n+=" "+r);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var J0=$o("@"),Q0=$o("~");function $o(e){return new Proxy(function(n,...r){return t("",n,r)},{get(n,r){return r in n?n[r]:function(o,...a){return t(r,o,a)}}});function t(n,r,o){return Eo(Qn(n+e+"("+No(r,o)+")"))}}function qn(e,t){return Array.isArray(e)?ko(Do(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?ko(e):[e]}var Gi=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function ko(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],r=[n[0]],o=[];for(;t=Gi.exec(e);)t[4]&&(n.shift(),o.shift()),t[3]?(o.unshift(t[3]),n.unshift({}),r.push(o.reduce((a,i)=>({[i]:a}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),r.push(o.reduce((a,i)=>({[i]:a}),n[0]))),n[0][t[1]]=t[2]);return r}function Io(e,...t){var n;let r=qn(e,t),o=(r.find(a=>a.label)?.label||"css")+tn(JSON.stringify(r));return n=(a,i)=>Jn(r.flatMap(u=>Oo(u,a,i,Se.o)),o),Yn.set(o,n),o}var X0=new Proxy(function(e,t){return _o("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,r){return _o(t,n,r)}}});function _o(e,t,n){return{toString(){return Io({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function x(e,t,n){return[e,Yi(t,n)]}function Yi(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,r)=>({[e]:t?t(n,r):Kn(n,1)}):n=>e||{[n[1]]:Kn(n,2)}}function Kn(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function T(e,t,n,r){return[e,Ji(t,n,r)]}function Ji(e,t,n){let r=typeof t=="string"?(o,a)=>({[t]:n?n(o,a):o._}):t||(({1:o,_:a},i,u)=>({[o||u]:a}));return(o,a)=>{let i=Bo(e||o[1]),u=a.theme(i,o.$$)??wt(o.$$,i,a);if(u!=null)return o._=Kn(o,0,u),r(o,a,i)}}function ve(e,t={},n){return[e,Qi(t,n)]}function Qi(e={},t){return(n,r)=>{let{section:o=Bo(n[0]).replace("-","")+"Color"}=e,[a,i]=Xi(n.$$);if(!a)return;let u=r.theme(o,a)||wt(a,o,r);if(!u||typeof u=="object")return;let{opacityVariable:d=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=o.replace("Color","Opacity"),property:s=o,selector:m}=e,g=r.theme(l,i||"DEFAULT")||i&&wt(i,l,r),f=t||(({_:k})=>{let _=Pt(s,k);return m?{[m]:_}:_});n._={value:st(u,{opacityVariable:d||void 0,opacityValue:g||void 0}),color:k=>st(u,k),opacityVariable:d||void 0,opacityValue:g||void 0};let h=f(n,r);if(!n.dark){let k=r.d(o,a,u);k&&k!==u&&(n._={value:st(k,{opacityVariable:d||void 0,opacityValue:g||"1"}),color:_=>st(k,_),opacityVariable:d||void 0,opacityValue:g||void 0},h={"&":h,[r.v("dark")]:f(n,r)})}return h}}function Xi(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function Pt(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function wt(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=en(Fo(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function Bo(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function en(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",r,o="")=>en(n)+r+en(o)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var Z0=Symbol();var Uo=new Proxy(Wi,{apply(e,t,n){return $n(n[0])},get(e,t){let n=$n[t];return typeof n=="function"?function(){return n.apply($n,arguments)}:n}});var eu=function e(t){return new Proxy(function(n,...r){return Mo(t,"",n,r)},{get(n,r){return r==="bind"?e:r in n?n[r]:function(o,...a){return Mo(t,r,o,a)}}})}();function Mo(e,t,n,r){return{toString(){let o=qn(n,r),a=Ao(t+tn(JSON.stringify([t,o])));return(typeof e=="function"?e:Uo)(Io({[`@keyframes ${a}`]:qn(n,r)})),a}}}var jo={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Ie(4,"rem",4,.5,.5),...Ie(12,"rem",4,5),14:"3.5rem",...Ie(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:X("blur"),backdropBrightness:X("brightness"),backdropContrast:X("contrast"),backdropGrayscale:X("grayscale"),backdropHueRotate:X("hueRotate"),backdropInvert:X("invert"),backdropOpacity:X("opacity"),backdropSaturate:X("saturate"),backdropSepia:X("sepia"),backgroundColor:X("colors"),backgroundImage:{none:"none"},backgroundOpacity:X("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Ie(200,"",100,0,50),...Ie(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:X("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:X("spacing"),borderWidth:{DEFAULT:"1px",...We(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:X("colors"),caretColor:X("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Ie(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:X("borderColor"),divideOpacity:X("borderOpacity"),divideWidth:X("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...Ot(2,6),...Ot(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:X("spacing"),gradientColorStops:X("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...Ot(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...Ot(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Ie(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Ie(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:X("spacing"),placeholderColor:X("colors"),placeholderOpacity:X("opacity"),outlineColor:X("colors"),outlineOffset:We(8,"px"),outlineWidth:We(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:X("colors"),ringOffsetWidth:We(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...We(8,"px")},rotate:{...We(2,"deg"),...We(12,"deg",3),...We(180,"deg",45)},saturate:Ie(200,"",100,0,50),scale:{...Ie(150,"",100,0,50),...Ie(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:X("spacing"),scrollPadding:X("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...We(2,"deg"),...We(12,"deg",3)},space:X("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Ie(2),textColor:X("colors"),textDecorationColor:X("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...We(8,"px")},textUnderlineOffset:{auto:"auto",...We(8,"px")},textIndent:X("spacing"),textOpacity:X("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:X("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...Ot(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Ie(50,"",1,0,10),auto:"auto"}};function Ot(e,t){let n={};do for(var r=1;rt(e)}var yu={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${jo.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${jo.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},Tu=[x("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:wt(`[${t}]`,"",n)}}})),x("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),T("aspect-","aspectRatio"),x("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:r,padding:o}=t("container"),a={width:"100%",marginRight:r&&"auto",marginLeft:r&&"auto",...i("xs")};for(let u in n){let d=n[u];typeof d=="string"&&(a[nn(d)]={"&":{maxWidth:d,...i(u)}})}return a;function i(u){let d=o&&(typeof o=="string"?o:o[u]||o.DEFAULT);if(d)return{paddingRight:d,paddingLeft:d}}}),T("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),x("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),x("box-(border|content)","boxSizing",({1:e})=>e+"-box"),x("hidden",{display:"none"}),x("table-(auto|fixed)","tableLayout"),x(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",x("isolate","isolation"),x("object-(contain|cover|fill|none|scale-down)","objectFit"),T("object-","objectPosition"),x("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",rn),x("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),x("(static|fixed|absolute|relative|sticky)","position"),T("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),T("-?(top|bottom|left|right)(?:$|-)","inset"),x("(visible|collapse)","visibility"),x("invisible",{visibility:"hidden"}),T("-?z-","zIndex"),x("flex-((row|col)(-reverse)?)","flexDirection",zo),x("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),T("(flex-(?:grow|shrink))(?:$|-)"),T("(flex)-"),T("grow(?:$|-)","flexGrow"),T("shrink(?:$|-)","flexShrink"),T("basis-","flexBasis"),T("-?(order)-"),"-?(order)-(\\d+)",T("grid-cols-","gridTemplateColumns"),x("grid-cols-(\\d+)","gridTemplateColumns",Ko),T("col-","gridColumn"),x("col-(span)-(\\d+)","gridColumn",qo),T("col-start-","gridColumnStart"),x("col-start-(auto|\\d+)","gridColumnStart"),T("col-end-","gridColumnEnd"),x("col-end-(auto|\\d+)","gridColumnEnd"),T("grid-rows-","gridTemplateRows"),x("grid-rows-(\\d+)","gridTemplateRows",Ko),T("row-","gridRow"),x("row-(span)-(\\d+)","gridRow",qo),T("row-start-","gridRowStart"),x("row-start-(auto|\\d+)","gridRowStart"),T("row-end-","gridRowEnd"),x("row-end-(auto|\\d+)","gridRowEnd"),x("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>rn(zo(e))),x("grid-flow-(dense)","gridAutoFlow"),T("auto-cols-","gridAutoColumns"),T("auto-rows-","gridAutoRows"),T("gap-x(?:$|-)","gap","columnGap"),T("gap-y(?:$|-)","gap","rowGap"),T("gap(?:$|-)","gap"),"(justify-(?:items|self))-",x("justify-","justifyContent",Wo),x("(content|items|self)-",e=>({["align-"+e[1]]:Wo(e)})),x("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),T("p([xytrbl])?(?:$|-)","padding",Ct("padding")),T("-?m([xytrbl])?(?:$|-)","margin",Ct("margin")),T("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),x("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),T("w-","width"),T("min-w-","minWidth"),T("max-w-","maxWidth"),T("h-","height"),T("min-h-","minHeight"),T("max-h-","maxHeight"),T("font-","fontWeight"),T("font-","fontFamily",({_:e})=>typeof(e=$e(e))[1]=="string"?{fontFamily:Ge(e)}:{fontFamily:Ge(e[0]),...e[1]}),x("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),x("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),x("italic","fontStyle"),x("not-italic",{fontStyle:"normal"}),x("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...lt({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),T("tracking-","letterSpacing"),T("leading-","lineHeight"),x("list-(inside|outside)","listStylePosition"),T("list-","listStyleType"),x("list-","listStyleType"),T("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),ve("placeholder-",{property:"color",selector:"&::placeholder"}),x("text-(left|center|right|justify|start|end)","textAlign"),x("text-(ellipsis|clip)","textOverflow"),T("text-opacity-","textOpacity","--tw-text-opacity"),ve("text-",{property:"color"}),T("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),T("indent-","textIndent"),x("(overline|underline|line-through)","textDecorationLine"),x("no-underline",{textDecorationLine:"none"}),T("underline-offset-","textUnderlineOffset"),ve("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),T("decoration-","textDecorationThickness"),x("decoration-","textDecorationStyle"),x("(uppercase|lowercase|capitalize)","textTransform"),x("normal-case",{textTransform:"none"}),x("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),x("align-","verticalAlign"),x("whitespace-","whiteSpace"),x("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),x("break-words",{overflowWrap:"break-word"}),x("break-all",{wordBreak:"break-all"}),x("break-keep",{wordBreak:"keep-all"}),ve("caret-",{opacityVariable:!1,opacitySection:"opacity"}),ve("accent-",{opacityVariable:!1,opacitySection:"opacity"}),x("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${gt(e," ")},var(--tw-gradient-stops))`),ve("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),ve("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),ve("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),x("bg-(fixed|local|scroll)","backgroundAttachment"),x("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),x(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),x("bg-blend-","backgroundBlendMode"),x("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),T("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),ve("bg-",{section:"backgroundColor"}),T("bg-","backgroundImage"),T("bg-","backgroundPosition"),x("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",rn),T("bg-","backgroundSize"),T("rounded(?:$|-)","borderRadius"),T("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${gt(n[0])}-radius`]:t,[`border-${gt(n[1])}-radius`]:t}}),x("border-(collapse|separate)","borderCollapse"),T("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),x("border-(solid|dashed|dotted|double|none)","borderStyle"),T("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...lt({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),ve("border-([xytrbl])-",{section:"borderColor"},Ct("border","Color")),ve("border-"),T("border-([xytrbl])(?:$|-)","borderWidth",Ct("border","Width")),T("border(?:$|-)","borderWidth"),T("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),x("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),x("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),T("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${gt(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${gt(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),ve("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),T("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),ve("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),T("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),x("ring-inset",{"--tw-ring-inset":"inset"}),ve("ring-",{property:"--tw-ring-color"}),T("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...lt({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":st(t("ringOffsetColor","","#fff")),"--tw-ring-color":st(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),ve("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),T("shadow(?:$|-)","boxShadow",({_:e})=>({...lt({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":Ge(e),"--tw-shadow-colored":Ge(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),T("(opacity)-"),x("mix-blend-","mixBlendMode"),...Ho(),...Ho("backdrop-"),T("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:Ge(e),transitionTimingFunction:e._=="none"?void 0:Ge(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:Ge(t("transitionDuration",""))})),T("duration(?:$|-)","transitionDuration","transitionDuration",Ge),T("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",Ge),T("delay(?:$|-)","transitionDelay","transitionDelay",Ge),T("animate(?:$|-)","animation",(e,{theme:t,h:n,e:r})=>{let o=Ge(e),a=o.split(" "),i=t("keyframes",a[0]);return i?{["@keyframes "+(a[0]=r(n(a[0])))]:i,animation:a.join(" ")}:{animation:o}}),"(transform)-(none)",x("transform",Zn),x("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":Vo(e=="gpu")})),T("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...Zn()})),T("-?(rotate)-","rotate",Xn),T("-?(translate-[xy])-","translate",Xn),T("-?(skew-[xy])-","skew",Xn),x("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",rn),"(appearance)-",T("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",T("(cursor)-"),"(cursor)-",x("snap-(none)","scroll-snap-type"),x("snap-(x|y|both)",({1:e})=>({...lt({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),x("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),x("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),x("snap-(normal|always)","scroll-snap-stop"),x("scroll-(auto|smooth)","scroll-behavior"),T("scroll-p([xytrbl])?(?:$|-)","padding",Ct("scroll-padding")),T("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",Ct("scroll-margin")),x("touch-(auto|none|manipulation)","touch-action"),x("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...lt({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),x("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),x("outline",{outlineStyle:"solid"}),x("outline-(dashed|dotted|double)","outlineStyle"),T("-?(outline-offset)-"),ve("outline-",{opacityVariable:!1,opacitySection:"opacity"}),T("outline-","outlineWidth"),"(pointer-events)-",T("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],x("select-(none|text|all|auto)","userSelect"),ve("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),ve("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),T("stroke-","strokeWidth"),x("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),x("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function rn(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function zo(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function gt(e,t="-"){let n=[];for(let r of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[r]);return n.join(t)}function Ge(e){return e&&""+(e._||e)}function Wo({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function Ct(e,t=""){return({1:n,_:r})=>{let o={x:"lr",y:"tb"}[n]||n+n;return o?{...Pt(e+"-"+gt(o[0])+t,r),...Pt(e+"-"+gt(o[1])+t,r)}:Pt(e+t,r)}}function Ho(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let r of t)n[`--tw-${e}${r}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...lt(n),[`${e}filter`]:t.map(r=>`var(--tw-${e}${r})`).join(" ")},[`(${e}filter)-(none)`,x(`${e}filter`,n),...t.map(r=>T(`${r[0]=="h"?"-?":""}(${e}${r})(?:$|-)`,r,({1:o,_:a})=>({[`--tw-${o}`]:$e(a).map(i=>`${r}(${i})`).join(" "),...n})))]}function Xn({1:e,_:t}){return{["--tw-"+e]:t,...Zn()}}function Zn(){return{...lt({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":Vo()}),transform:"var(--tw-transform)"}}function Vo(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function qo({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function Ko({1:e}){return`repeat(${e},minmax(0,1fr))`}function lt(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var on=globalThis||(typeof window<"u"?window:self),ts=Object.create,tr=Object.defineProperty,ns=Object.getOwnPropertyDescriptor,rs=Object.getOwnPropertyNames,os=Object.getPrototypeOf,as=Object.prototype.hasOwnProperty,is=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ss=(e,t)=>{for(var n in t)tr(e,n,{get:t[n],enumerable:!0})},er=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of rs(t))!as.call(e,o)&&o!==n&&tr(e,o,{get:()=>t[o],enumerable:!(r=ns(t,o))||r.enumerable});return e},ls=(e,t,n)=>(er(e,t,"default"),n&&er(n,t,"default")),Yo=(e,t,n)=>(n=e!=null?ts(os(e)):{},er(t||!e||!e.__esModule?tr(n,"default",{value:e,enumerable:!0}):n,e)),Jo=is((e,t)=>{(function(n,r){typeof define=="function"&&define.amd?define([],r):typeof e<"u"?r():(r(),n.FileSaver={})})(e,function(){"use strict";function n(l,s){return typeof s>"u"?s={autoBom:!1}:typeof s!="object"&&(s={autoBom:!s}),s.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function r(l,s,m){var g=new XMLHttpRequest;g.open("GET",l),g.responseType="blob",g.onload=function(){d(g.response,s,m)},g.onerror=function(){},g.send()}function o(l){var s=new XMLHttpRequest;s.open("HEAD",l,!1);try{s.send()}catch{}return 200<=s.status&&299>=s.status}function a(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var s=document.createEvent("MouseEvents");s.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(s)}}var i=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof on=="object"&&on.global===on?on:void 0,u=i.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),d=i.saveAs||(typeof window!="object"||window!==i?function(){}:"download"in HTMLAnchorElement.prototype&&!u?function(l,s,m){var g=i.URL||i.webkitURL,f=document.createElement("a");s=s||l.name||"download",f.download=s,f.rel="noopener",typeof l=="string"?(f.href=l,f.origin===location.origin?a(f):o(f.href)?r(l,s,m):a(f,f.target="_blank")):(f.href=g.createObjectURL(l),setTimeout(function(){g.revokeObjectURL(f.href)},4e4),setTimeout(function(){a(f)},0))}:"msSaveOrOpenBlob"in navigator?function(l,s,m){if(s=s||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,m),s);else if(o(l))r(l,s,m);else{var g=document.createElement("a");g.href=l,g.target="_blank",setTimeout(function(){a(g)})}}:function(l,s,m,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),typeof l=="string")return r(l,s,m);var f=l.type==="application/octet-stream",h=/constructor/i.test(i.HTMLElement)||i.safari,k=/CriOS\/[\d]+/.test(navigator.userAgent);if((k||f&&h||u)&&typeof FileReader<"u"){var _=new FileReader;_.onloadend=function(){var M=_.result;M=k?M:M.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=M:location=M,g=null},_.readAsDataURL(l)}else{var p=i.URL||i.webkitURL,v=p.createObjectURL(l);g?g.location=v:location.href=v,g=null,setTimeout(function(){p.revokeObjectURL(v)},4e4)}});i.saveAs=d.saveAs=d,typeof t<"u"&&(t.exports=d)})}),Qo={};ss(Qo,{default:()=>Ft});var cs=Yo(Jo());ls(Qo,Yo(Jo()));var{default:Go,...us}=cs,Ft=Go!==void 0?Go:us;var Xo={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var Zo={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var ea={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var gs=[{code:"zh-CN",messages:Xo},{code:"zh-TW",messages:Zo},{code:"en",messages:ea}];var Rt={};for(let e of gs)Rt[e.code]=e.messages;var mt="Immersive Translate",Oe="immersive-translate";var j="immersiveTranslate";var Xu=j+"GoogleAccessToken",Zu=j+"AuthFlow";var ed=j+"AuthState",td=j+"IframeMessage",nd=j+"WaitForRateLimit",rd=j+"DocumentMessageAsk",na=j+"DocumentMessageTellThirdParty",ra=j+"DocumentMessageThirdPartyTell",od=j+"DocumentMessageHandler",ad=`${j}Container`,id=`${j}SpecifiedContainer`;var sd=`${j}PageTranslatedStatus`,ld=`${j}PageUrlChanged`,cd=`${j}ReceiveCommand`,ud=j+"LastUseMouseHoverTime",dd=j+"LastUseInputTime",pd=j+"LastUseManualTranslatePageTime",fd=`${j}PopupReceiveMessage`,ms="immersivetranslate.com",hs="config.immersivetranslate.com",gd=`https://${ms}/`,md=`https://${hs}/default_config.json`,hd=`${j}Mark`;var bd=`${j}Root`,yd=`data-${Oe}-effect`,xd=`data-${Oe}-translation-element-mark`,Td=`${j}TranslationElementMark`,vd=`${j}TranslatedMark`,wd=`${j}ParagraphId`,Cd=`${j}LoadingId`,Sd=`data-${Oe}-loading-id`,kd=`${j}ErrorId`,_d=`data-${Oe}-error-id`,Md=`${j}AtomicBlockMark`,Ed=`${j}ExcludeMark`,Ad=`data-${Oe}-exclude-mark`,Ld=`${j}StayOriginalMark`,Pd=`${j}PreWhitespaceMark`,Od=`${j}InlineMark`,Fd=`${j}BlockMark`,Rd=`${j}Left`,Dd=`${j}Right`,Nd=`${j}Width`,$d=`${j}Height`,Id=`${j}Top`,Bd=`${j}FontSize`;var Ud=`${j}GlobalStyleMark`;var jd=`${Oe}-target-wrapper`,zd=`${Oe}-pdf-target-container`,Wd=`${Oe}-target-inner`,Hd=`${Oe}-source-wrapper`,qd=`${Oe}-target-translation-block-wrapper`,Kd=`${Oe}-root-translation-theme`,Vd=`${j}RootTranslationTheme`,Gd=`${Oe}-target-translation-vertical-block-wrapper`,Yd=`${Oe}-target-translation-pdf-block-wrapper`,Jd=`${Oe}-target-translation-pre-whitespace`,Qd=`${Oe}-target-translation-inline-wrapper`;var ta=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],Xd={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...ta,{type:"password",name:"apikey",required:!0}],props:ta},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},Zd={type:j+"ChildFrameToRootFrameIdentifier"};var an=0,sn=0,ct=0;function aa(e){let{data:t}=e,{parsed:n,file:r}=t,a=r.name.split(".").pop(),i=[],u={},[d,l]=ze(!1),[s,m]=ze("dual"),[g,f]=ze("auto"),[h,k]=ze(0),[_,p]=ze(0);Tt(()=>{document.addEventListener(na,$=>{let{detail:U}=$;if(U)try{let O=JSON.parse(U);if(O&&O.type&&O.payload)if(O.type==="retryFailedParagraphsStart")ct=0,p(0);else if(O.type==="targetLanguage")f(O.payload.targetLanguage);else if(O.type==="paragraphTranslated"){let{ok:L}=O.payload;if(L?sn++:ct++,an){let Y=sn,W=sn+ct,ae=Y/an*100,J=Math.floor(ae),se=Math.floor(W/an*100);J>100&&(J=100),se>100&&(se=100),k(J),se===100&&ct>0&&p(ct)}}else O.type==="totalParagraphsCount"?O.payload.totalParagraphsCount&&(an=O.payload.totalParagraphsCount):O.type==="translateStart"?(sn=0,ct=0):O.type==="restorePage"&&(k(0),p(0))}catch{}}),document.dispatchEvent(new CustomEvent("immersiveTranslateEbookLoaded"))},[]);for(let $=0;${$.preventDefault(),document.dispatchEvent(new CustomEvent(ra,{detail:JSON.stringify({type:"retryFailedParagraphs"})}))},M=async($,U)=>{l(!0),U.preventDefault();let O=$==="dual";var L={format:a,verbose:!0};let Y=[],W={};for(let ne=0;neM.bind(null,$);return q("main",{children:[q("h3",{style:{marginBottom:0},children:["\u6B63\u5728\u7528"," ",q("a",{class:"notranslate contrast",href:"https://immersivetranslate.com/",target:"_blank",children:"\u6C89\u6D78\u5F0F\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55"}),"\xA0\u7FFB\u8BD1 ",r.name,q("span",{id:"progress-number",children:h?` ${h}%`:""})]}),q("div",{children:ct?q("span",{children:[ct," failed(\u5931\u8D25)."," ",q("a",{href:"#",class:"link",onClick:v,children:"Retry failed paragraphs"})]}):null}),q("nav",{children:q("ul",{children:[q("li",{children:q("a",{href:"#",onClick:$=>{$.preventDefault(),globalThis.location.reload()},children:"New"})}),q("li",{children:q("a",{href:"#","aria-busy":d,onClick:K("dual"),children:"Export Dual (\u5BFC\u51FA\u53CC\u8BED\u5B57\u5E55)"})}),q("li",{children:q("a",{href:"#","aria-busy":d,onClick:K("translation"),children:"Export Translation Only(\u5BFC\u51FA\u4EC5\u8BD1\u6587)"})})]})}),q("p",{style:{fontSize:14,color:"#666"},children:"Tips: \u624B\u52A8\u70B9\u51FB\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u6269\u5C55\u7684\u7FFB\u8BD1\u6309\u94AE\u5F00\u59CB\u7FFB\u8BD1"}),q("table",{children:[q("thead",{children:q("tr",{children:[q("th",{children:"Start"}),q("th",{children:"End"}),q("th",{children:"Source"}),q("th",{children:"Target(\u53EF\u7F16\u8F91)"})]})}),q("tbody",{children:i.map(($,U)=>{let{source:O,target:L}=$;return q("tr",{children:[q("td",{children:oa(O.start)}),q("td",{children:oa(O.end)}),q("td",{children:q("span",{"data-start":O.start,"data-end":O.end,class:"source-text notranslate",children:O.text})}),q("td",{children:q("span",{contentEditable:!0,"data-start":O.start,"data-end":O.end,spellcheck:!1,class:"target-text notranslate input-border",children:L?.text||""})})]},U)})})]})]})}function oa(e){let t=e/1e3,n=t/60,r=n/60,o=t%60,a=n%60,i=r%60;return`${nr(Math.floor(i))}:${nr(Math.floor(a))}:${nr(Math.floor(o))}`}function nr(e){return e<10?"0"+e:e}var ia={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},bs={...Rt,"zh-CN":{...ia["zh-CN"],...Rt["zh-CN"]},"zh-TW":{...ia["zh-TW"],...Rt["zh-TW"]}},sa=bs;function Dt(){let e,t="pending",n=new Promise((r,o)=>{e={async resolve(a){await a,t="fulfilled",r(a)},reject(a){t="rejected",o(a)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var la=class{#e=0;#t=[];#n=[];#r=Dt();add(t){++this.#e,this.#o(t[Symbol.asyncIterator]())}async#o(t){try{let{value:n,done:r}=await t.next();r?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#r.resolve()}async*iterate(){for(;this.#e>0;){await this.#r;for(let t=0;tHs,bgBlue:()=>Gs,bgBrightBlack:()=>Xs,bgBrightBlue:()=>nl,bgBrightCyan:()=>ol,bgBrightGreen:()=>el,bgBrightMagenta:()=>rl,bgBrightRed:()=>Zs,bgBrightWhite:()=>al,bgBrightYellow:()=>tl,bgCyan:()=>Js,bgGreen:()=>Ks,bgMagenta:()=>Ys,bgRed:()=>qs,bgRgb24:()=>cl,bgRgb8:()=>sl,bgWhite:()=>Qs,bgYellow:()=>Vs,black:()=>Es,blue:()=>Os,bold:()=>vs,brightBlack:()=>da,brightBlue:()=>Us,brightCyan:()=>zs,brightGreen:()=>Is,brightMagenta:()=>js,brightRed:()=>$s,brightWhite:()=>Ws,brightYellow:()=>Bs,cyan:()=>Rs,dim:()=>ws,getColorEnabled:()=>xs,gray:()=>Ns,green:()=>Ls,hidden:()=>_s,inverse:()=>ks,italic:()=>Cs,magenta:()=>Fs,red:()=>As,reset:()=>Ts,rgb24:()=>ll,rgb8:()=>il,setColorEnabled:()=>ys,strikethrough:()=>Ms,stripColor:()=>dl,underline:()=>Ss,white:()=>Ds,yellow:()=>Ps});var{Deno:ca}=globalThis,ua=typeof ca?.noColor=="boolean"?ca.noColor:!0,rr=!ua;function ys(e){ua||(rr=e)}function xs(){return rr}function D(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function N(e,t){return rr?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function Ts(e){return N(e,D([0],0))}function vs(e){return N(e,D([1],22))}function ws(e){return N(e,D([2],22))}function Cs(e){return N(e,D([3],23))}function Ss(e){return N(e,D([4],24))}function ks(e){return N(e,D([7],27))}function _s(e){return N(e,D([8],28))}function Ms(e){return N(e,D([9],29))}function Es(e){return N(e,D([30],39))}function As(e){return N(e,D([31],39))}function Ls(e){return N(e,D([32],39))}function Ps(e){return N(e,D([33],39))}function Os(e){return N(e,D([34],39))}function Fs(e){return N(e,D([35],39))}function Rs(e){return N(e,D([36],39))}function Ds(e){return N(e,D([37],39))}function Ns(e){return da(e)}function da(e){return N(e,D([90],39))}function $s(e){return N(e,D([91],39))}function Is(e){return N(e,D([92],39))}function Bs(e){return N(e,D([93],39))}function Us(e){return N(e,D([94],39))}function js(e){return N(e,D([95],39))}function zs(e){return N(e,D([96],39))}function Ws(e){return N(e,D([97],39))}function Hs(e){return N(e,D([40],49))}function qs(e){return N(e,D([41],49))}function Ks(e){return N(e,D([42],49))}function Vs(e){return N(e,D([43],49))}function Gs(e){return N(e,D([44],49))}function Ys(e){return N(e,D([45],49))}function Js(e){return N(e,D([46],49))}function Qs(e){return N(e,D([47],49))}function Xs(e){return N(e,D([100],49))}function Zs(e){return N(e,D([101],49))}function el(e){return N(e,D([102],49))}function tl(e){return N(e,D([103],49))}function nl(e){return N(e,D([104],49))}function rl(e){return N(e,D([105],49))}function ol(e){return N(e,D([106],49))}function al(e){return N(e,D([107],49))}function ut(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function il(e,t){return N(e,D([38,5,ut(t)],39))}function sl(e,t){return N(e,D([48,5,ut(t)],49))}function ll(e,t){return typeof t=="number"?N(e,D([38,2,t>>16&255,t>>8&255,t&255],39)):N(e,D([38,2,ut(t.r),ut(t.g),ut(t.b)],39))}function cl(e,t){return typeof t=="number"?N(e,D([48,2,t>>16&255,t>>8&255,t&255],49)):N(e,D([48,2,ut(t.r),ut(t.g),ut(t.b)],49))}var ul=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function dl(e){return e.replace(ul,"")}var rp=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var ln=globalThis||(typeof window<"u"?window:self),fl=Object.create,ar=Object.defineProperty,gl=Object.getOwnPropertyDescriptor,ml=Object.getOwnPropertyNames,hl=Object.getPrototypeOf,bl=Object.prototype.hasOwnProperty,yl=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xl=(e,t)=>{for(var n in t)ar(e,n,{get:t[n],enumerable:!0})},or=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ml(t))!bl.call(e,o)&&o!==n&&ar(e,o,{get:()=>t[o],enumerable:!(r=gl(t,o))||r.enumerable});return e},Tl=(e,t,n)=>(or(e,t,"default"),n&&or(n,t,"default")),fa=(e,t,n)=>(n=e!=null?fl(hl(e)):{},or(t||!e||!e.__esModule?ar(n,"default",{value:e,enumerable:!0}):n,e)),ga=yl((e,t)=>{var n="Expected a function",r=NaN,o="[object Symbol]",a=/^\s+|\s+$/g,i=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,d=/^0o[0-7]+$/i,l=parseInt,s=typeof ln=="object"&&ln&&ln.Object===Object&&ln,m=typeof self=="object"&&self&&self.Object===Object&&self,g=s||m||Function("return this")(),f=Object.prototype,h=f.toString,k=Math.max,_=Math.min,p=function(){return g.Date.now()};function v(L,Y,W){var ae,J,se,de,ne,fe,Ue=0,Qe=!1,ee=!1,Ke=!0;if(typeof L!="function")throw new TypeError(n);Y=O(Y)||0,K(W)&&(Qe=!!W.leading,ee="maxWait"in W,se=ee?k(O(W.maxWait)||0,Y):se,Ke="trailing"in W?!!W.trailing:Ke);function re(R){var B=ae,H=J;return ae=J=void 0,Ue=R,de=L.apply(H,B),de}function b(R){return Ue=R,ne=setTimeout(G,Y),Qe?re(R):de}function S(R){var B=R-fe,H=R-Ue,Q=Y-B;return ee?_(Q,se-H):Q}function E(R){var B=R-fe,H=R-Ue;return fe===void 0||B>=Y||B<0||ee&&H>=se}function G(){var R=p();if(E(R))return F(R);ne=setTimeout(G,S(R))}function F(R){return ne=void 0,Ke&&ae?re(R):(ae=J=void 0,de)}function le(){ne!==void 0&&clearTimeout(ne),Ue=0,ae=fe=J=ne=void 0}function he(){return ne===void 0?de:F(p())}function ge(){var R=p(),B=E(R);if(ae=arguments,J=this,fe=R,B){if(ne===void 0)return b(fe);if(ee)return ne=setTimeout(G,Y),re(fe)}return ne===void 0&&(ne=setTimeout(G,Y)),de}return ge.cancel=le,ge.flush=he,ge}function M(L,Y,W){var ae=!0,J=!0;if(typeof L!="function")throw new TypeError(n);return K(W)&&(ae="leading"in W?!!W.leading:ae,J="trailing"in W?!!W.trailing:J),v(L,Y,{leading:ae,maxWait:Y,trailing:J})}function K(L){var Y=typeof L;return!!L&&(Y=="object"||Y=="function")}function $(L){return!!L&&typeof L=="object"}function U(L){return typeof L=="symbol"||$(L)&&h.call(L)==o}function O(L){if(typeof L=="number")return L;if(U(L))return r;if(K(L)){var Y=typeof L.valueOf=="function"?L.valueOf():L;L=K(Y)?Y+"":Y}if(typeof L!="string")return L===0?L:+L;L=L.replace(a,"");var W=u.test(L);return W||d.test(L)?l(L.slice(2),W?2:8):i.test(L)?r:+L}t.exports=M}),ma={};xl(ma,{default:()=>ir});var vl=fa(ga());Tl(ma,fa(ga()));var{default:pa,...wl}=vl,ir=pa!==void 0?pa:wl;var Cl=Object.create,lr=Object.defineProperty,Sl=Object.getOwnPropertyDescriptor,kl=Object.getOwnPropertyNames,_l=Object.getPrototypeOf,Ml=Object.prototype.hasOwnProperty,El=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Al=(e,t)=>{for(var n in t)lr(e,n,{get:t[n],enumerable:!0})},sr=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of kl(t))!Ml.call(e,o)&&o!==n&&lr(e,o,{get:()=>t[o],enumerable:!(r=Sl(t,o))||r.enumerable});return e},Ll=(e,t,n)=>(sr(e,t,"default"),n&&sr(n,t,"default")),ba=(e,t,n)=>(n=e!=null?Cl(_l(e)):{},sr(t||!e||!e.__esModule?lr(n,"default",{value:e,enumerable:!0}):n,e)),ya=El((e,t)=>{(function(n,r){typeof e=="object"&&typeof t=="object"?t.exports=r():typeof define=="function"&&define.amd?define([],r):typeof e=="object"?e.notie=r():n.notie=r()})(e,function(){return function(n){function r(a){if(o[a])return o[a].exports;var i=o[a]={i:a,l:!1,exports:{}};return n[a].call(i.exports,i,i.exports,r),i.l=!0,i.exports}var o={};return r.m=n,r.c=o,r.i=function(a){return a},r.d=function(a,i,u){r.o(a,i)||Object.defineProperty(a,i,{configurable:!1,enumerable:!0,get:u})},r.n=function(a){var i=a&&a.__esModule?function(){return a.default}:function(){return a};return r.d(i,"a",i),i},r.o=function(a,i){return Object.prototype.hasOwnProperty.call(a,i)},r.p="",r(r.s=1)}([function(n,r){n.exports=function(o){return o.webpackPolyfill||(o.deprecate=function(){},o.paths=[],o.children||(o.children=[]),Object.defineProperty(o,"loaded",{enumerable:!0,get:function(){return o.l}}),Object.defineProperty(o,"id",{enumerable:!0,get:function(){return o.i}}),o.webpackPolyfill=1),o}},function(n,r,o){"use strict";(function(a){var i,u,d,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s};(function(s,m){l(r)==="object"&&l(a)==="object"?a.exports=m():(u=[],i=m,d=typeof i=="function"?i.apply(r,u):i,d!==void 0&&(a.exports=d))})(void 0,function(){return function(s){function m(f){if(g[f])return g[f].exports;var h=g[f]={i:f,l:!1,exports:{}};return s[f].call(h.exports,h,h.exports,m),h.l=!0,h.exports}var g={};return m.m=s,m.c=g,m.i=function(f){return f},m.d=function(f,h,k){m.o(f,h)||Object.defineProperty(f,h,{configurable:!1,enumerable:!0,get:k})},m.n=function(f){var h=f&&f.__esModule?function(){return f.default}:function(){return f};return m.d(h,"a",h),h},m.o=function(f,h){return Object.prototype.hasOwnProperty.call(f,h)},m.p="",m(m.s=0)}([function(s,m,g){function f(b,S){var E={};for(var G in b)S.indexOf(G)>=0||Object.prototype.hasOwnProperty.call(b,G)&&(E[G]=b[G]);return E}Object.defineProperty(m,"__esModule",{value:!0});var h=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},k=Object.assign||function(b){for(var S=1;S'+G+"",H.onclick=function(){return J(Q,B)},H.listener=function(A){(Y(A)||W(A))&&ne()},ae(H,B),le&&le<1&&(le=1),!ge&&le&&K(le).then(function(){return J(Q,B)})},Ue=m.force=function(b,S){var E=b.type,G=E===void 0?5:E,F=b.text,le=b.buttonText,he=le===void 0?"OK":le,ge=b.callback,R=b.position,B=R===void 0?p.positions.force||B.top:R;$(),ne();var H=document.createElement("div"),Q=U();H.id=Q;var A=document.createElement("div");A.classList.add(p.classes.textbox),A.classList.add(p.classes.backgroundInfo),A.innerHTML='
'+F+"
";var V=document.createElement("div");V.classList.add(p.classes.button),V.classList.add(O[G]),V.innerHTML=he,V.onclick=function(){J(Q,B),de(),ge?ge():S&&S()},H.appendChild(A),H.appendChild(V),H.listener=function(ce){Y(ce)&&V.click()},ae(H,B),se()},Qe=m.confirm=function(b,S,E){var G=b.text,F=b.submitText,le=F===void 0?"Yes":F,he=b.cancelText,ge=he===void 0?"Cancel":he,R=b.submitCallback,B=b.cancelCallback,H=b.position,Q=H===void 0?p.positions.confirm||Q.top:H;$(),ne();var A=document.createElement("div"),V=U();A.id=V;var ce=document.createElement("div");ce.classList.add(p.classes.textbox),ce.classList.add(p.classes.backgroundInfo),ce.innerHTML='
'+G+"
";var oe=document.createElement("div");oe.classList.add(p.classes.button),oe.classList.add(p.classes.elementHalf),oe.classList.add(p.classes.backgroundSuccess),oe.innerHTML=le,oe.onclick=function(){J(V,Q),de(),R?R():S&&S()};var P=document.createElement("div");P.classList.add(p.classes.button),P.classList.add(p.classes.elementHalf),P.classList.add(p.classes.backgroundError),P.innerHTML=ge,P.onclick=function(){J(V,Q),de(),B?B():E&&E()},A.appendChild(ce),A.appendChild(oe),A.appendChild(P),A.listener=function(ye){Y(ye)?oe.click():W(ye)&&P.click()},ae(A,Q),se(A,Q)},ee=function(b,S,E){var G=b.text,F=b.submitText,le=F===void 0?"Submit":F,he=b.cancelText,ge=he===void 0?"Cancel":he,R=b.submitCallback,B=b.cancelCallback,H=b.position,Q=H===void 0?p.positions.input||Q.top:H,A=f(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);$(),ne();var V=document.createElement("div"),ce=U();V.id=ce;var oe=document.createElement("div");oe.classList.add(p.classes.textbox),oe.classList.add(p.classes.backgroundInfo),oe.innerHTML='
'+G+"
";var P=document.createElement("input");P.classList.add(p.classes.inputField),P.setAttribute("autocapitalize",A.autocapitalize||"none"),P.setAttribute("autocomplete",A.autocomplete||"off"),P.setAttribute("autocorrect",A.autocorrect||"off"),P.setAttribute("autofocus",A.autofocus||"true"),P.setAttribute("inputmode",A.inputmode||"verbatim"),P.setAttribute("max",A.max||""),P.setAttribute("maxlength",A.maxlength||""),P.setAttribute("min",A.min||""),P.setAttribute("minlength",A.minlength||""),P.setAttribute("placeholder",A.placeholder||""),P.setAttribute("spellcheck",A.spellcheck||"default"),P.setAttribute("step",A.step||"any"),P.setAttribute("type",A.type||"text"),P.value=A.value||"",A.allowed&&(P.oninput=function(){var pe=void 0;if(Array.isArray(A.allowed)){for(var me="",Ae=A.allowed,je=0;je'+E+"",B.appendChild(Q),he.forEach(function(V,ce){var oe=V.type,P=oe===void 0?1:oe,ye=V.text,Ee=V.handler,pe=document.createElement("div");pe.classList.add(O[P]),pe.classList.add(p.classes.button),pe.classList.add(p.classes.selectChoice);var me=he[ce+1];me&&!me.type&&(me.type=1),me&&me.type===P&&pe.classList.add(p.classes.selectChoiceRepeated),pe.innerHTML=ye,pe.onclick=function(){J(H,R),de(),Ee()},B.appendChild(pe)});var A=document.createElement("div");A.classList.add(p.classes.backgroundNeutral),A.classList.add(p.classes.button),A.innerHTML=F,A.onclick=function(){J(H,R),de(),le?le():S&&S()},B.appendChild(A),B.listener=function(V){W(V)&&A.click()},ae(B,R),se(B,R)},re=m.date=function(b,S,E){var G=b.value,F=G===void 0?new Date:G,le=b.submitText,he=le===void 0?"OK":le,ge=b.cancelText,R=ge===void 0?"Cancel":ge,B=b.submitCallback,H=b.cancelCallback,Q=b.position,A=Q===void 0?p.positions.date||A.top:Q;$(),ne();var V="▾",ce=document.createElement("div"),oe=document.createElement("div"),P=document.createElement("div"),ye=function(ue){ce.innerHTML=p.dateMonths[ue.getMonth()],oe.innerHTML=ue.getDate(),P.innerHTML=ue.getFullYear()},Ee=function(ue){var te=new Date(F.getFullYear(),F.getMonth()+1,0).getDate(),Ne=ue.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Ne)>te&&(Ne=te.toString()),ue.target.textContent=Ne,Number(Ne)<1&&(Ne="1"),F.setDate(Number(Ne))},pe=function(ue){var te=ue.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);ue.target.textContent=te,F.setFullYear(Number(te))},me=function(ue){ye(F)},Ae=function(ue){var te=new Date(F.getFullYear(),F.getMonth()+ue+1,0).getDate();F.getDate()>te&&F.setDate(te),F.setMonth(F.getMonth()+ue),ye(F)},je=function(ue){F.setDate(F.getDate()+ue),ye(F)},_t=function(ue){var te=F.getFullYear()+ue;te<0?F.setFullYear(0):F.setFullYear(F.getFullYear()+ue),ye(F)},Xe=document.createElement("div"),dt=U();Xe.id=dt;var ht=document.createElement("div");ht.classList.add(p.classes.backgroundInfo);var _e=document.createElement("div");_e.classList.add(p.classes.dateSelectorInner);var Ve=document.createElement("div");Ve.classList.add(p.classes.button),Ve.classList.add(p.classes.elementThird),Ve.classList.add(p.classes.dateSelectorUp),Ve.innerHTML=V;var Me=document.createElement("div");Me.classList.add(p.classes.button),Me.classList.add(p.classes.elementThird),Me.classList.add(p.classes.dateSelectorUp),Me.innerHTML=V;var De=document.createElement("div");De.classList.add(p.classes.button),De.classList.add(p.classes.elementThird),De.classList.add(p.classes.dateSelectorUp),De.innerHTML=V,ce.classList.add(p.classes.element),ce.classList.add(p.classes.elementThird),ce.innerHTML=p.dateMonths[F.getMonth()],oe.classList.add(p.classes.element),oe.classList.add(p.classes.elementThird),oe.setAttribute("contentEditable",!0),oe.addEventListener("input",Ee),oe.addEventListener("blur",me),oe.innerHTML=F.getDate(),P.classList.add(p.classes.element),P.classList.add(p.classes.elementThird),P.setAttribute("contentEditable",!0),P.addEventListener("input",pe),P.addEventListener("blur",me),P.innerHTML=F.getFullYear();var tt=document.createElement("div");tt.classList.add(p.classes.button),tt.classList.add(p.classes.elementThird),tt.innerHTML=V;var nt=document.createElement("div");nt.classList.add(p.classes.button),nt.classList.add(p.classes.elementThird),nt.innerHTML=V;var pt=document.createElement("div");pt.classList.add(p.classes.button),pt.classList.add(p.classes.elementThird),pt.innerHTML=V,Ve.onclick=function(){return Ae(1)},Me.onclick=function(){return je(1)},De.onclick=function(){return _t(1)},tt.onclick=function(){return Ae(-1)},nt.onclick=function(){return je(-1)},pt.onclick=function(){return _t(-1)};var Le=document.createElement("div");Le.classList.add(p.classes.button),Le.classList.add(p.classes.elementHalf),Le.classList.add(p.classes.backgroundSuccess),Le.innerHTML=he,Le.onclick=function(){J(dt,A),de(),B?B(F):S&&S(F)};var rt=document.createElement("div");rt.classList.add(p.classes.button),rt.classList.add(p.classes.elementHalf),rt.classList.add(p.classes.backgroundError),rt.innerHTML=R,rt.onclick=function(){J(dt,A),de(),H?H(F):E&&E(F)},_e.appendChild(Ve),_e.appendChild(Me),_e.appendChild(De),_e.appendChild(ce),_e.appendChild(oe),_e.appendChild(P),_e.appendChild(tt),_e.appendChild(nt),_e.appendChild(pt),ht.appendChild(_e),Xe.appendChild(ht),Xe.appendChild(Le),Xe.appendChild(rt),Xe.listener=function(ue){Y(ue)?Le.click():W(ue)&&rt.click()},ae(Xe,A),se(Xe,A)};m.default={alert:fe,force:Ue,confirm:Qe,input:ee,select:Ke,date:re,setOptions:v,hideAlerts:ne}}])})}).call(r,o(0)(n))}])})}),xa={};Al(xa,{default:()=>cn});var Pl=ba(ya());Ll(xa,ba(ya()));var{default:ha,...Ol}=Pl,cn=ha!==void 0?ha:Ol;var cr=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function ur(e,t,n,r){e.addEventListener?e.addEventListener(t,n,r):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Sa(e,t){for(var n=t.slice(0,t.length-1),r=0;r=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function Fl(e,t){for(var n=e.length>=t.length?e:t,r=e.length>=t.length?t:e,o=!0,a=0;a=0&&ie.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&ie.splice(0,ie.length),(t===93||t===224)&&(t=91),t in ke){ke[t]=!1;for(var r in et)et[r]===t&&(Ze[r]=!1)}}function zl(e){if(typeof e>"u")Object.keys(be).forEach(function(i){return delete be[i]});else if(Array.isArray(e))e.forEach(function(i){i.key&&dr(i)});else if(typeof e=="object")e.key&&dr(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r1?Sa(et,d):[];be[m]=be[m].filter(function(f){var h=r?f.method===r:!0;return!(h&&f.scope===n&&Fl(f.mods,g))})}})};function va(e,t,n,r){if(t.element===r){var o;if(t.scope===n||t.scope==="all"){o=t.mods.length>0;for(var a in ke)Object.prototype.hasOwnProperty.call(ke,a)&&(!ke[a]&&t.mods.indexOf(+a)>-1||ke[a]&&t.mods.indexOf(+a)===-1)&&(o=!1);(t.mods.length===0&&!ke[16]&&!ke[18]&&!ke[17]&&!ke[91]||o||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function wa(e,t){var n=be["*"],r=e.keyCode||e.which||e.charCode;if(Ze.filter.call(this,e)){if((r===93||r===224)&&(r=91),ie.indexOf(r)===-1&&r!==229&&ie.push(r),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(h){var k=fr[h];e[h]&&ie.indexOf(k)===-1?ie.push(k):!e[h]&&ie.indexOf(k)>-1?ie.splice(ie.indexOf(k),1):h==="metaKey"&&e[h]&&ie.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(ie=ie.slice(ie.indexOf(k))))}),r in ke){ke[r]=!0;for(var o in et)et[o]===r&&(Ze[o]=!0);if(!n)return}for(var a in ke)Object.prototype.hasOwnProperty.call(ke,a)&&(ke[a]=e[fr[a]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(ie.indexOf(17)===-1&&ie.push(17),ie.indexOf(18)===-1&&ie.push(18),ke[17]=!0,ke[18]=!0);var i=It();if(n)for(var u=0;u-1}function Ze(e,t,n){ie=[];var r=ka(e),o=[],a="all",i=document,u=0,d=!1,l=!0,s="+",m=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(a=t.scope),t.element&&(i=t.element),t.keyup&&(d=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(m=t.capture),typeof t.splitKey=="string"&&(s=t.splitKey)),typeof t=="string"&&(a=t);u1&&(o=Sa(et,e)),e=e[e.length-1],e=e==="*"?"*":dn(e),e in be||(be[e]=[]),be[e].push({keyup:d,keydown:l,scope:a,mods:o,shortcut:r[u],method:n,key:r[u],splitKey:s,element:i});typeof i<"u"&&!Wl(i)&&window&&(Ma.push(i),ur(i,"keydown",function(g){wa(g,i)},m),Ta||(Ta=!0,ur(window,"focus",function(){ie=[]},m)),ur(i,"keyup",function(g){wa(g,i),jl(g)},m))}function Hl(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(be).forEach(function(n){var r=be[n].filter(function(o){return o.scope===t&&o.shortcut===e});r.forEach(function(o){o&&o.method&&o.method()})})}var pr={getPressedKeyString:$l,setScope:Ea,getScope:It,deleteScope:Ul,getPressedKeyCodes:Nl,isPressed:Bl,filter:Il,trigger:Hl,unbind:zl,keyMap:$t,modifier:et,modifierMap:fr};for(un in pr)Object.prototype.hasOwnProperty.call(pr,un)&&(Ze[un]=pr[un]);var un;typeof document<"u"&&(Ca=window.hotkeys,Ze.noConflict=function(e){return e&&window.hotkeys===Ze&&(window.hotkeys=Ca),Ze},window.hotkeys=Ze);var Ca;var ql=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Kl=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new ql:{reset:()=>{},stop:()=>{}}}},Ep=new Kl,Vl="poegempjloogba",Gl="ension://";var Yl="rome-ext";var Ap="ch"+Yl+Gl+"cofdb"+Vl+"gkncekinflcnj";var{entries:Na,setPrototypeOf:Aa,isFrozen:Ql,getPrototypeOf:Xl,getOwnPropertyDescriptor:Zl}=Object,{freeze:Fe,seal:Je,create:ec}=Object,{apply:xr,construct:Tr}=typeof Reflect<"u"&&Reflect;xr||(xr=function(e,t,n){return e.apply(t,n)});Fe||(Fe=function(e){return e});Je||(Je=function(e){return e});Tr||(Tr=function(e,t){return new e(...t)});var tc=qe(Array.prototype.forEach),La=qe(Array.prototype.pop),Bt=qe(Array.prototype.push),gn=qe(String.prototype.toLowerCase),gr=qe(String.prototype.toString),nc=qe(String.prototype.match),Ye=qe(String.prototype.replace),rc=qe(String.prototype.indexOf),oc=qe(String.prototype.trim),Be=qe(RegExp.prototype.test),Ut=ac(TypeError);function qe(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o/gm),uc=Je(/\${[\w\W]*}/gm),dc=Je(/^data-[\-\w.\u00B7-\uFFFF]/),pc=Je(/^aria-[\-\w]+$/),$a=Je(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),fc=Je(/^(?:\w+script|data):/i),gc=Je(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Ia=Je(/^html$/i),Da=Object.freeze({__proto__:null,MUSTACHE_EXPR:lc,ERB_EXPR:cc,TMPLIT_EXPR:uc,DATA_ATTR:dc,ARIA_ATTR:pc,IS_ALLOWED_URI:$a,IS_SCRIPT_OR_DATA:fc,ATTR_WHITESPACE:gc,DOCTYPE_NAME:Ia}),mc=()=>typeof window>"u"?null:window,hc=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(n=t.getAttribute(r));let o="dompurify"+(n?"#"+n:"");try{return e.createPolicy(o,{createHTML(a){return a},createScriptURL(a){return a}})}catch{return null}};function Ba(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:mc(),t=c=>Ba(c);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,r=n.currentScript,{document:o}=e,{DocumentFragment:a,HTMLTemplateElement:i,Node:u,Element:d,NodeFilter:l,NamedNodeMap:s=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:m,DOMParser:g,trustedTypes:f}=e,h=d.prototype,k=pn(h,"cloneNode"),_=pn(h,"nextSibling"),p=pn(h,"childNodes"),v=pn(h,"parentNode");if(typeof i=="function"){let c=o.createElement("template");c.content&&c.content.ownerDocument&&(o=c.content.ownerDocument)}let M,K="",{implementation:$,createNodeIterator:U,createDocumentFragment:O,getElementsByTagName:L}=o,{importNode:Y}=n,W={};t.isSupported=typeof Na=="function"&&typeof v=="function"&&$&&$.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:ae,ERB_EXPR:J,TMPLIT_EXPR:se,DATA_ATTR:de,ARIA_ATTR:ne,IS_SCRIPT_OR_DATA:fe,ATTR_WHITESPACE:Ue}=Da,{IS_ALLOWED_URI:Qe}=Da,ee=null,Ke=z({},[...Pa,...mr,...hr,...br,...Oa]),re=null,b=z({},[...Fa,...yr,...Ra,...fn]),S=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),E=null,G=null,F=!0,le=!0,he=!1,ge=!0,R=!1,B=!1,H=!1,Q=!1,A=!1,V=!1,ce=!1,oe=!0,P=!1,ye="user-content-",Ee=!0,pe=!1,me={},Ae=null,je=z({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),_t=null,Xe=z({},["audio","video","img","source","image","track"]),dt=null,ht=z({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),_e="http://www.w3.org/1998/Math/MathML",Ve="http://www.w3.org/2000/svg",Me="http://www.w3.org/1999/xhtml",De=Me,tt=!1,nt=null,pt=z({},[_e,Ve,Me],gr),Le,rt=["application/xhtml+xml","text/html"],ue="text/html",te,Ne=null,Wa=o.createElement("form"),Cr=function(c){return c instanceof RegExp||c instanceof Function},hn=function(c){if(!(Ne&&Ne===c)){if((!c||typeof c!="object")&&(c={}),c=St(c),Le=rt.indexOf(c.PARSER_MEDIA_TYPE)===-1?Le=ue:Le=c.PARSER_MEDIA_TYPE,te=Le==="application/xhtml+xml"?gr:gn,ee="ALLOWED_TAGS"in c?z({},c.ALLOWED_TAGS,te):Ke,re="ALLOWED_ATTR"in c?z({},c.ALLOWED_ATTR,te):b,nt="ALLOWED_NAMESPACES"in c?z({},c.ALLOWED_NAMESPACES,gr):pt,dt="ADD_URI_SAFE_ATTR"in c?z(St(ht),c.ADD_URI_SAFE_ATTR,te):ht,_t="ADD_DATA_URI_TAGS"in c?z(St(Xe),c.ADD_DATA_URI_TAGS,te):Xe,Ae="FORBID_CONTENTS"in c?z({},c.FORBID_CONTENTS,te):je,E="FORBID_TAGS"in c?z({},c.FORBID_TAGS,te):{},G="FORBID_ATTR"in c?z({},c.FORBID_ATTR,te):{},me="USE_PROFILES"in c?c.USE_PROFILES:!1,F=c.ALLOW_ARIA_ATTR!==!1,le=c.ALLOW_DATA_ATTR!==!1,he=c.ALLOW_UNKNOWN_PROTOCOLS||!1,ge=c.ALLOW_SELF_CLOSE_IN_ATTR!==!1,R=c.SAFE_FOR_TEMPLATES||!1,B=c.WHOLE_DOCUMENT||!1,A=c.RETURN_DOM||!1,V=c.RETURN_DOM_FRAGMENT||!1,ce=c.RETURN_TRUSTED_TYPE||!1,Q=c.FORCE_BODY||!1,oe=c.SANITIZE_DOM!==!1,P=c.SANITIZE_NAMED_PROPS||!1,Ee=c.KEEP_CONTENT!==!1,pe=c.IN_PLACE||!1,Qe=c.ALLOWED_URI_REGEXP||$a,De=c.NAMESPACE||Me,S=c.CUSTOM_ELEMENT_HANDLING||{},c.CUSTOM_ELEMENT_HANDLING&&Cr(c.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(S.tagNameCheck=c.CUSTOM_ELEMENT_HANDLING.tagNameCheck),c.CUSTOM_ELEMENT_HANDLING&&Cr(c.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(S.attributeNameCheck=c.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),c.CUSTOM_ELEMENT_HANDLING&&typeof c.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(S.allowCustomizedBuiltInElements=c.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),R&&(le=!1),V&&(A=!0),me&&(ee=z({},[...Oa]),re=[],me.html===!0&&(z(ee,Pa),z(re,Fa)),me.svg===!0&&(z(ee,mr),z(re,yr),z(re,fn)),me.svgFilters===!0&&(z(ee,hr),z(re,yr),z(re,fn)),me.mathMl===!0&&(z(ee,br),z(re,Ra),z(re,fn))),c.ADD_TAGS&&(ee===Ke&&(ee=St(ee)),z(ee,c.ADD_TAGS,te)),c.ADD_ATTR&&(re===b&&(re=St(re)),z(re,c.ADD_ATTR,te)),c.ADD_URI_SAFE_ATTR&&z(dt,c.ADD_URI_SAFE_ATTR,te),c.FORBID_CONTENTS&&(Ae===je&&(Ae=St(Ae)),z(Ae,c.FORBID_CONTENTS,te)),Ee&&(ee["#text"]=!0),B&&z(ee,["html","head","body"]),ee.table&&(z(ee,["tbody"]),delete E.tbody),c.TRUSTED_TYPES_POLICY){if(typeof c.TRUSTED_TYPES_POLICY.createHTML!="function")throw Ut('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof c.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Ut('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');M=c.TRUSTED_TYPES_POLICY,K=M.createHTML("")}else M===void 0&&(M=hc(f,r)),M!==null&&typeof K=="string"&&(K=M.createHTML(""));Fe&&Fe(c),Ne=c}},Sr=z({},["mi","mo","mn","ms","mtext"]),kr=z({},["foreignobject","desc","title","annotation-xml"]),Ha=z({},["title","style","font","a","script"]),jt=z({},mr);z(jt,hr),z(jt,ic);let bn=z({},br);z(bn,sc);let qa=function(c){let w=v(c);(!w||!w.tagName)&&(w={namespaceURI:De,tagName:"template"});let y=gn(c.tagName),Z=gn(w.tagName);return nt[c.namespaceURI]?c.namespaceURI===Ve?w.namespaceURI===Me?y==="svg":w.namespaceURI===_e?y==="svg"&&(Z==="annotation-xml"||Sr[Z]):!!jt[y]:c.namespaceURI===_e?w.namespaceURI===Me?y==="math":w.namespaceURI===Ve?y==="math"&&kr[Z]:!!bn[y]:c.namespaceURI===Me?w.namespaceURI===Ve&&!kr[Z]||w.namespaceURI===_e&&!Sr[Z]?!1:!bn[y]&&(Ha[y]||!jt[y]):!!(Le==="application/xhtml+xml"&&nt[c.namespaceURI]):!1},bt=function(c){Bt(t.removed,{element:c});try{c.parentNode.removeChild(c)}catch{c.remove()}},yn=function(c,w){try{Bt(t.removed,{attribute:w.getAttributeNode(c),from:w})}catch{Bt(t.removed,{attribute:null,from:w})}if(w.removeAttribute(c),c==="is"&&!re[c])if(A||V)try{bt(w)}catch{}else try{w.setAttribute(c,"")}catch{}},_r=function(c){let w,y;if(Q)c=""+c;else{let Pe=nc(c,/^[\r\n\t ]+/);y=Pe&&Pe[0]}Le==="application/xhtml+xml"&&De===Me&&(c=''+c+"");let Z=M?M.createHTML(c):c;if(De===Me)try{w=new g().parseFromString(Z,Le)}catch{}if(!w||!w.documentElement){w=$.createDocument(De,"template",null);try{w.documentElement.innerHTML=tt?K:Z}catch{}}let xe=w.body||w.documentElement;return c&&y&&xe.insertBefore(o.createTextNode(y),xe.childNodes[0]||null),De===Me?L.call(w,B?"html":"body")[0]:B?w.documentElement:xe},Mr=function(c){return U.call(c.ownerDocument||c,c,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Ka=function(c){return c instanceof m&&(typeof c.nodeName!="string"||typeof c.textContent!="string"||typeof c.removeChild!="function"||!(c.attributes instanceof s)||typeof c.removeAttribute!="function"||typeof c.setAttribute!="function"||typeof c.namespaceURI!="string"||typeof c.insertBefore!="function"||typeof c.hasChildNodes!="function")},zt=function(c){return typeof u=="object"?c instanceof u:c&&typeof c=="object"&&typeof c.nodeType=="number"&&typeof c.nodeName=="string"},ot=function(c,w,y){W[c]&&tc(W[c],Z=>{Z.call(t,w,y,Ne)})},Er=function(c){let w;if(ot("beforeSanitizeElements",c,null),Ka(c))return bt(c),!0;let y=te(c.nodeName);if(ot("uponSanitizeElement",c,{tagName:y,allowedTags:ee}),c.hasChildNodes()&&!zt(c.firstElementChild)&&(!zt(c.content)||!zt(c.content.firstElementChild))&&Be(/<[/\w]/g,c.innerHTML)&&Be(/<[/\w]/g,c.textContent))return bt(c),!0;if(!ee[y]||E[y]){if(!E[y]&&Lr(y)&&(S.tagNameCheck instanceof RegExp&&Be(S.tagNameCheck,y)||S.tagNameCheck instanceof Function&&S.tagNameCheck(y)))return!1;if(Ee&&!Ae[y]){let Z=v(c)||c.parentNode,xe=p(c)||c.childNodes;if(xe&&Z){let Pe=xe.length;for(let Re=Pe-1;Re>=0;--Re)Z.insertBefore(k(xe[Re],!0),_(c))}}return bt(c),!0}return c instanceof d&&!qa(c)||(y==="noscript"||y==="noembed")&&Be(/<\/no(script|embed)/i,c.innerHTML)?(bt(c),!0):(R&&c.nodeType===3&&(w=c.textContent,w=Ye(w,ae," "),w=Ye(w,J," "),w=Ye(w,se," "),c.textContent!==w&&(Bt(t.removed,{element:c.cloneNode()}),c.textContent=w)),ot("afterSanitizeElements",c,null),!1)},Ar=function(c,w,y){if(oe&&(w==="id"||w==="name")&&(y in o||y in Wa))return!1;if(!(le&&!G[w]&&Be(de,w))&&!(F&&Be(ne,w))){if(!re[w]||G[w]){if(!(Lr(c)&&(S.tagNameCheck instanceof RegExp&&Be(S.tagNameCheck,c)||S.tagNameCheck instanceof Function&&S.tagNameCheck(c))&&(S.attributeNameCheck instanceof RegExp&&Be(S.attributeNameCheck,w)||S.attributeNameCheck instanceof Function&&S.attributeNameCheck(w))||w==="is"&&S.allowCustomizedBuiltInElements&&(S.tagNameCheck instanceof RegExp&&Be(S.tagNameCheck,y)||S.tagNameCheck instanceof Function&&S.tagNameCheck(y))))return!1}else if(!dt[w]&&!Be(Qe,Ye(y,Ue,""))&&!((w==="src"||w==="xlink:href"||w==="href")&&c!=="script"&&rc(y,"data:")===0&&_t[c])&&!(he&&!Be(fe,Ye(y,Ue,"")))&&y)return!1}return!0},Lr=function(c){return c.indexOf("-")>0},Pr=function(c){let w,y,Z,xe;ot("beforeSanitizeAttributes",c,null);let{attributes:Pe}=c;if(!Pe)return;let Re={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:re};for(xe=Pe.length;xe--;){w=Pe[xe];let{name:we,namespaceURI:yt}=w;if(y=we==="value"?w.value:oc(w.value),Z=te(we),Re.attrName=Z,Re.attrValue=y,Re.keepAttr=!0,Re.forceKeepAttr=void 0,ot("uponSanitizeAttribute",c,Re),y=Re.attrValue,Re.forceKeepAttr||(yn(we,c),!Re.keepAttr))continue;if(!ge&&Be(/\/>/i,y)){yn(we,c);continue}R&&(y=Ye(y,ae," "),y=Ye(y,J," "),y=Ye(y,se," "));let Or=te(c.nodeName);if(Ar(Or,Z,y)){if(P&&(Z==="id"||Z==="name")&&(yn(we,c),y=ye+y),M&&typeof f=="object"&&typeof f.getAttributeType=="function"&&!yt)switch(f.getAttributeType(Or,Z)){case"TrustedHTML":{y=M.createHTML(y);break}case"TrustedScriptURL":{y=M.createScriptURL(y);break}}try{yt?c.setAttributeNS(yt,we,y):c.setAttribute(we,y),La(t.removed)}catch{}}}ot("afterSanitizeAttributes",c,null)},Va=function c(w){let y,Z=Mr(w);for(ot("beforeSanitizeShadowDOM",w,null);y=Z.nextNode();)ot("uponSanitizeShadowNode",y,null),!Er(y)&&(y.content instanceof a&&c(y.content),Pr(y));ot("afterSanitizeShadowDOM",w,null)};return t.sanitize=function(c){let w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},y,Z,xe,Pe;if(tt=!c,tt&&(c=""),typeof c!="string"&&!zt(c))if(typeof c.toString=="function"){if(c=c.toString(),typeof c!="string")throw Ut("dirty is not a string, aborting")}else throw Ut("toString is not a function");if(!t.isSupported)return c;if(H||hn(w),t.removed=[],typeof c=="string"&&(pe=!1),pe){if(c.nodeName){let yt=te(c.nodeName);if(!ee[yt]||E[yt])throw Ut("root node is forbidden and cannot be sanitized in-place")}}else if(c instanceof u)y=_r(""),Z=y.ownerDocument.importNode(c,!0),Z.nodeType===1&&Z.nodeName==="BODY"||Z.nodeName==="HTML"?y=Z:y.appendChild(Z);else{if(!A&&!R&&!B&&c.indexOf("<")===-1)return M&&ce?M.createHTML(c):c;if(y=_r(c),!y)return A?null:ce?K:""}y&&Q&&bt(y.firstChild);let Re=Mr(pe?c:y);for(;xe=Re.nextNode();)Er(xe)||(xe.content instanceof a&&Va(xe.content),Pr(xe));if(pe)return c;if(A){if(V)for(Pe=O.call(y.ownerDocument);y.firstChild;)Pe.appendChild(y.firstChild);else Pe=y;return(re.shadowroot||re.shadowrootmod)&&(Pe=Y.call(n,Pe,!0)),Pe}let we=B?y.outerHTML:y.innerHTML;return B&&ee["!doctype"]&&y.ownerDocument&&y.ownerDocument.doctype&&y.ownerDocument.doctype.name&&Be(Ia,y.ownerDocument.doctype.name)&&(we=" `+we),R&&(we=Ye(we,ae," "),we=Ye(we,J," "),we=Ye(we,se," ")),M&&ce?M.createHTML(we):we},t.setConfig=function(c){hn(c),H=!0},t.clearConfig=function(){Ne=null,H=!1},t.isValidAttribute=function(c,w,y){Ne||hn({});let Z=te(c),xe=te(w);return Ar(Z,xe,y)},t.addHook=function(c,w){typeof w=="function"&&(W[c]=W[c]||[],Bt(W[c],w))},t.removeHook=function(c){if(W[c])return La(W[c])},t.removeHooks=function(c){W[c]&&(W[c]=[])},t.removeAllHooks=function(){W={}},t}var Ua=Ba();var tf=cn.alert;var kt=console,vr=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),r=Math.round(n-this.#e),o=He.green;r>1e4?o=He.red:r>1e3&&(o=He.yellow),kt.debug(He.dim(mt+" TIMING:"),t,"in",o(r+"ms")),this.#e=n}},wr=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&kt.log(He.dim(mt+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&kt.log(He.green(mt+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&kt.warn(He.yellow(mt+" WARN:"),...t)}error(...t){this.#e<=3&&kt.error(He.red(mt+" ERROR:"),...t)}fatal(...t){this.#e<=4&&kt.error(He.red(mt+" FATAL:"),...t)}timing(){return this.level===0?new vr:{reset:()=>{},stop:()=>{}}}},vf=new wr;var mn=document.querySelector.bind(document),ja=e=>{if(document.body.removeChild(mn("#drop-target")),e){let t=new FileReader;t.readAsText(e,"UTF-8"),t.onload=function(n){let r=t.result,o=Wt.parse(r),a=document.getElementById("mount");a&&Jt(q(xo,{lang:"zh-CN",translations:sa,fallbackLang:"zh-CN",children:q(aa,{data:{parsed:o,file:e}})}),a)},t.onerror=function(n){alert("error reading file"),window.location.reload()}}},bc=e=>e.preventDefault(),yc=e=>{e.preventDefault();let t=Array.from(e.dataTransfer.items).find(n=>n.kind==="file");if(t){let n=t.webkitGetAsEntry();ja(n.isFile?t.getAsFile():n).catch(r=>{})}},za=mn("#drop-target");za.addEventListener("drop",yc);za.addEventListener("dragover",bc);mn("#file-input").addEventListener("change",e=>ja(e.target.files[0]));mn("#file-button").addEventListener("click",()=>{document.querySelector("#file-input").click()});})(); diff --git a/dist/chrome/manifest.json b/dist/chrome/manifest.json index fe7ac072f..7b8bf80d2 100644 --- a/dist/chrome/manifest.json +++ b/dist/chrome/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 3, "name": "__MSG_brandName__", "description": "__MSG_brandDescription__", - "version": "0.7.1", + "version": "0.7.2", "default_locale": "en", "background": { "service_worker": "background.js" @@ -101,5 +101,6 @@ "64": "icons/64.png", "128": "icons/128.png", "256": "icons/256.png" - } + }, + "key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB" } \ No newline at end of file diff --git a/dist/chrome/options.js b/dist/chrome/options.js index 46038a71d..92073bec8 100644 --- a/dist/chrome/options.js +++ b/dist/chrome/options.js @@ -1,4 +1,4 @@ -(()=>{var Eh=Object.defineProperty;var xh=(e,t)=>{for(var n in t)Eh(e,n,{get:t[n],enumerable:!0})};var r4=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var vs=(e,t,n)=>(r4(e,t,"read from private field"),n?n.call(e):t.get(e)),u4=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},o4=(e,t,n,a)=>(r4(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var x={BUILD_TIME:"2023-07-04T16:25:26.171Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Ah=Object.defineProperty;var Sh=(e,t)=>{for(var n in t)Ah(e,n,{get:t[n],enumerable:!0})};var s4=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var vs=(e,t,n)=>(s4(e,t,"read from private field"),n?n.call(e):t.get(e)),l4=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},c4=(e,t,n,a)=>(s4(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,12 +4067,12 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var vh=Object.create,ks=Object.defineProperty,wh=Object.getOwnPropertyDescriptor,s4=Object.getOwnPropertyNames,kh=Object.getPrototypeOf,Ah=Object.prototype.hasOwnProperty,Sh=(e,t)=>function(){return t||(0,e[s4(e)[0]])((t={exports:{}}).exports,t),t.exports},Dh=(e,t)=>{for(var n in t)ks(e,n,{get:t[n],enumerable:!0})},ws=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of s4(t))!Ah.call(e,r)&&r!==n&&ks(e,r,{get:()=>t[r],enumerable:!(a=wh(t,r))||a.enumerable});return e},Lh=(e,t,n)=>(ws(e,t,"default"),n&&ws(n,t,"default")),l4=(e,t,n)=>(n=e!=null?vh(kh(e)):{},ws(t||!e||!e.__esModule?ks(n,"default",{value:e,enumerable:!0}):n,e)),c4=Sh({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/.pnpm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var r={exports:{}};a(r),n.browser=r.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",r=u=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(y,T=void 0){super(T),this.createItem=y}get(y){return this.has(y)||this.set(y,this.createItem(y)),super.get(y)}}let s=w=>w&&typeof w=="object"&&typeof w.then=="function",l=(w,y)=>(...T)=>{u.runtime.lastError?w.reject(new Error(u.runtime.lastError.message)):y.singleCallbackArg||T.length<=1&&y.singleCallbackArg!==!1?w.resolve(T[0]):w.resolve(T)},c=w=>w==1?"argument":"arguments",m=(w,y)=>function(b,...E){if(E.lengthy.maxArgs)throw new Error(`Expected at most ${y.maxArgs} ${c(y.maxArgs)} for ${w}(), got ${E.length}`);return new Promise((R,D)=>{if(y.fallbackToNoCallback)try{b[w](...E,l({resolve:R,reject:D},y))}catch{b[w](...E),y.fallbackToNoCallback=!1,y.noCallback=!0,R()}else y.noCallback?(b[w](...E),R()):b[w](...E,l({resolve:R,reject:D},y))})},g=(w,y,T)=>new Proxy(y,{apply(b,E,R){return T.call(E,w,...R)}}),p=Function.call.bind(Object.prototype.hasOwnProperty),f=(w,y={},T={})=>{let b=Object.create(null),E={has(D,O){return O in w||O in b},get(D,O,M){if(O in b)return b[O];if(!(O in w))return;let F=w[O];if(typeof F=="function")if(typeof y[O]=="function")F=g(w,w[O],y[O]);else if(p(T,O)){let $=m(O,T[O]);F=g(w,w[O],$)}else F=F.bind(w);else if(typeof F=="object"&&F!==null&&(p(y,O)||p(T,O)))F=f(F,y[O],T[O]);else if(p(T,"*"))F=f(F,y[O],T["*"]);else return Object.defineProperty(b,O,{configurable:!0,enumerable:!0,get(){return w[O]},set($){w[O]=$}}),F;return b[O]=F,F},set(D,O,M,F){return O in b?b[O]=M:w[O]=M,!0},defineProperty(D,O,M){return Reflect.defineProperty(b,O,M)},deleteProperty(D,O){return Reflect.deleteProperty(b,O)}},R=Object.create(w);return new Proxy(R,E)},S=w=>({addListener(y,T,...b){y.addListener(w.get(T),...b)},hasListener(y,T){return y.hasListener(w.get(T))},removeListener(y,T){y.removeListener(w.get(T))}}),k=new i(w=>typeof w!="function"?w:function(T){let b=f(T,{},{getContent:{minArgs:0,maxArgs:0}});w(b)}),h=new i(w=>typeof w!="function"?w:function(T,b,E){let R=!1,D,O=new Promise(Z=>{D=function(de){R=!0,Z(de)}}),M;try{M=w(T,b,D)}catch(Z){M=Promise.reject(Z)}let F=M!==!0&&s(M);if(M!==!0&&!F&&!R)return!1;let $=Z=>{Z.then(de=>{E(de)},de=>{let G;de&&(de instanceof Error||typeof de.message=="string")?G=de.message:G="An unexpected error occurred",E({__mozWebExtensionPolyfillReject__:!0,message:G})}).catch(de=>{})};return $(F?M:O),!0}),A=({reject:w,resolve:y},T)=>{u.runtime.lastError?u.runtime.lastError.message===a?y():w(new Error(u.runtime.lastError.message)):T&&T.__mozWebExtensionPolyfillReject__?w(new Error(T.message)):y(T)},_=(w,y,T,...b)=>{if(b.lengthy.maxArgs)throw new Error(`Expected at most ${y.maxArgs} ${c(y.maxArgs)} for ${w}(), got ${b.length}`);return new Promise((E,R)=>{let D=A.bind(null,{resolve:E,reject:R});b.push(D),T.sendMessage(...b)})},B={devtools:{network:{onRequestFinished:S(k)}},runtime:{onMessage:S(h),onMessageExternal:S(h),sendMessage:_.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:_.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},L={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":L},services:{"*":L},websites:{"*":L}},f(u,B,o)};n.exports=r(chrome)}else n.exports=globalThis.browser})}}),d4={};Dh(d4,{default:()=>Hu});var Ph=l4(c4());Lh(d4,l4(c4()));var{default:i4,...Mh}=Ph,Hu=i4!==void 0?i4:Mh;globalThis.immersiveTranslateBrowserAPI=Hu;var Vu,we,h4,Fh,Vr,g4,b4,qu={},y4=[],_h=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Yn(e,t){for(var n in t)e[n]=t[n];return e}function T4(e){var t=e.parentNode;t&&t.removeChild(e)}function Ss(e,t,n){var a,r,u,o={};for(u in t)u=="key"?a=t[u]:u=="ref"?r=t[u]:o[u]=t[u];if(arguments.length>2&&(o.children=arguments.length>3?Vu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(u in e.defaultProps)o[u]===void 0&&(o[u]=e.defaultProps[u]);return Wu(e,o,a,r,null)}function Wu(e,t,n,a,r){var u={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:r??++h4};return r==null&&we.vnode!=null&&we.vnode(u),u}function ut(e){return e.children}function $u(e,t){this.props=e,this.context=t}function Xa(e,t){if(t==null)return e.__?Xa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Wu(p.type,p.props,p.key,p.ref?p.ref:null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(g=h[c])===null||g&&p.key==g.key&&p.type===g.type)h[c]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Yu}),n.__[e]}function W(e){return Jr=1,Ih(I4,e)}function Ih(e,t,n){var a=Zu(Yr++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):I4(void 0,t),function(u){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,u);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Qe,!Qe.u)){Qe.u=!0;var r=Qe.shouldComponentUpdate;Qe.shouldComponentUpdate=function(u,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!r||r.call(this,u,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var m=c.__[0];c.__=c.__N,c.__N=void 0,m!==c.__[0]&&(l=!0)}}),!!l&&(!r||r.call(this,u,o,i))}}return a.__N||a.__}function ke(e,t){var n=Zu(Yr++,3);!we.__s&&O4(n.__H,t)&&(n.__=e,n.i=t,Qe.__H.__h.push(n))}function wn(e){return Jr=5,R4(function(){return{current:e}},[])}function R4(e,t){var n=Zu(Yr++,7);return O4(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function Xn(e,t){return Jr=8,R4(function(){return e},t)}function Qu(e){var t=Qe.context[e.__c],n=Zu(Yr++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Qe)),t.props.value):e.__}function Nh(){for(var e;e=B4.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Xu),e.__H.__h.forEach(Ps),e.__H.__h=[]}catch(t){e.__H.__h=[],we.__e(t,e.__v)}}we.__b=function(e){typeof e.type!="function"||e.o||e.type===ut?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Qe=null,D4&&D4(e)},we.__r=function(e){L4&&L4(e),Yr=0;var t=(Qe=e.__c).__H;t&&(Ls===Qe?(t.__h=[],Qe.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Yu,n.__N=n.i=void 0})):(t.__h.forEach(Xu),t.__h.forEach(Ps),t.__h=[])),Ls=Qe},we.diffed=function(e){P4&&P4(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(B4.push(t)!==1&&S4===we.requestAnimationFrame||((S4=we.requestAnimationFrame)||Uh)(Nh)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Yu&&(n.__=n.__V),n.i=void 0,n.__V=Yu})),Ls=Qe=null},we.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Xu),n.__h=n.__h.filter(function(a){return!a.__||Ps(a)})}catch(a){t.some(function(r){r.__h&&(r.__h=[])}),t=[],we.__e(a,n.__v)}}),M4&&M4(e,t)},we.unmount=function(e){F4&&F4(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Xu(a)}catch(r){t=r}}),n.__H=void 0,t&&we.__e(t,n.__v))};var _4=typeof requestAnimationFrame=="function";function Uh(e){var t,n=function(){clearTimeout(a),_4&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);_4&&(t=requestAnimationFrame(n))}function Xu(e){var t=Qe,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Qe=t}function Ps(e){var t=Qe;e.__c=e.__(),Qe=t}function O4(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function I4(e,t){return typeof t=="function"?t(e):t}var Xr;function Hs(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function G4(e,t=","){return e.map(Hs).join(t)}var Ws=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function Za(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function to(e,t="@media "){return t+Ue(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(a=>`(${a}-width:${n[a]})`).join(" and "))).join(",")}function Ue(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function N4(e){return e}function Qr(){}var ot={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function V4(e){return e.match(/[-=:;]/g)?.length||0}function Os(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(V4(e),15)<<18}var jh=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function $s({n:e,i:t,v:n=[]},a,r,u){e&&(e=Hs({n:e,i:t,v:n})),u=[...Ue(u)];for(let i of n){let s=a.theme("screens",i);for(let l of Ue(s&&to(s)||a.v(i))){var o;u.push(l),r|=s?67108864|Os(l):i=="dark"?1073741824:l[0]=="@"?Os(l):(o=l,1<<~(/:([a-z-]+)/.test(o)&&~jh.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:r,r:u,i:t}}var qs=new Map;function Is(e){if(e.d){let t=[],n=Ms(e.r.reduce((a,r)=>r[0]=="@"?(t.push(r),a):r?Ms(a,u=>Ms(r,o=>{let i=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(i){let s=u.indexOf(i[1]);return~s?u.slice(0,s)+i[0]+u.slice(s+i[1].length):Fs(u,o)}return Fs(o,u)})):a,"&"),a=>Fs(a,e.n?"."+Ws(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((a,r)=>r+"{"+a+"}",e.d)}}function Ms(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,a,r)=>t(a)+r)}function Fs(e,t){return e.replace(/&/g,t)}var U4=new Intl.Collator("en",{numeric:!0});function J4(e,t){for(var n=0,a=e.length;n>1;0>=Y4(e[r],t)?n=r+1:a=r}return a}function Y4(e,t){let n=e.p&ot.o;return n==(t.p&ot.o)&&(n==ot.b||n==ot.o)?0:e.p-t.p||e.o-t.o||U4.compare(j4(e.n),j4(t.n))||U4.compare(z4(e.n),z4(t.n))}function j4(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function z4(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function _s(e,t){return Math.round(parseInt(e,16)*t)}function Nn(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:a}=t,r=a?`var(${a})`:n;if(e.includes(""))return e.replace("",r);if(e[0]=="#"&&(e.length==4||e.length==7)){let u=(e.length-1)/3,o=[17,1,.062272][u-1];return`rgba(${[_s(e.substr(1,u),o),_s(e.substr(1+u,u),o),_s(e.substr(1+2*u,u),o),r]})`}return r=="1"?e:r=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${r})`)}function Ks(e,t,n,a,r=[]){return function u(o,{n:i,p:s,r:l=[],i:c},m){let g=[],p="",f=0,S=0;for(let A in o||{}){var k,h;let _=o[A];if(A[0]=="@"){if(!_)continue;if(A[1]=="a"){g.push(...Js(i,s,Zr(""+_),m,s,l,c,!0));continue}if(A[1]=="l"){for(let B of Ue(_))g.push(...u(B,{n:i,p:(k=ot[A[7]],s&~ot.o|k),r:A[7]=="d"?[]:l,i:c},m));continue}if(A[1]=="i"){g.push(...Ue(_).map(B=>({p:-1,o:0,r:[],d:A+" "+B})));continue}if(A[1]=="k"){g.push({p:ot.d,o:0,r:[A],d:u(_,{p:ot.d},m).map(Is).join("")});continue}if(A[1]=="f"){g.push(...Ue(_).map(B=>({p:ot.d,o:0,r:[A],d:u(B,{p:ot.d},m).map(Is).join("")})));continue}}if(typeof _!="object"||Array.isArray(_))A=="label"&&_?i=_+Za(JSON.stringify([s,c,o])):(_||_===0)&&(A=A.replace(/[A-Z]/g,B=>"-"+B.toLowerCase()),S+=1,f=Math.max(f,(h=A)[0]=="-"?0:V4(h)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(h)?+!!RegExp.$1||-!!RegExp.$2:0)+1),p+=(p?";":"")+Ue(_).map(B=>m.s(A,Gs(""+B,m.theme)+(c?" !important":""))).join(";"));else if(A[0]=="@"||A.includes("&")){let B=s;A[0]=="@"&&(A=A.replace(/\bscreen\(([^)]+)\)/g,(L,w)=>{let y=m.theme("screens",w);return y?(B|=67108864,to(y,"")):L}),B|=Os(A)),g.push(...u(_,{n:i,p:B,r:[...l,A],i:c},m))}else g.push(...u(_,{p:s,r:[...l,A]},m))}return g.unshift({n:i,p:s,o:Math.max(0,15-S)+1.5*Math.min(f||15,15),r:l,d:p}),g.sort(Y4)}(e,$s(t,n,a,r),n)}function Gs(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,a,r,u,o="")=>{let i=t(r,o);return typeof i=="function"&&/color|fill|stroke/i.test(r)?Nn(i):""+Ue(i).filter(s=>Object(s)!==s)})}function Vs(e,t){let n,a=[];for(let r of e)r.d&&r.n?n?.p==r.p&&""+n.r==""+r.r?(n.c=[n.c,r.c].filter(Boolean).join(" "),n.d=n.d+";"+r.d):a.push(n={...r,n:r.n&&t}):a.push({...r,n:r.n&&t});return a}function eo(e,t,n=ot.u,a,r){let u=[];for(let o of e)for(let i of function(s,l,c,m,g){s={...s,i:s.i||g};let p=function(f,S){let k=qs.get(f.n);return k?k(f,S):S.r(f.n,f.v[0]=="dark")}(s,l);return p?typeof p=="string"?({r:m,p:c}=$s(s,l,c,m),Vs(eo(Zr(p),l,c,m,s.i),s.n)):Array.isArray(p)?p.map(f=>{var S,k;return{o:0,...f,r:[...Ue(m),...Ue(f.r)],p:(S=c,k=f.p??c,S&~ot.o|k)}}):Ks(p,s,l,c,m):[{c:Hs(s),p:0,o:0,r:[]}]}(o,t,n,a,r))u.splice(J4(u,i),0,i);return u}function Js(e,t,n,a,r,u,o,i){return Vs((i?n.flatMap(s=>eo([s],a,r,u,o)):eo(n,a,r,u,o)).map(s=>s.p&ot.o&&(s.n||t==ot.b)?{...s,p:s.p&~ot.o|t,o:0}:s),e)}function zh(e,t,n,a){var r;return r=(u,o)=>{let{n:i,p:s,r:l,i:c}=$s(u,o,t);return n&&Js(i,t,n,o,s,l,c,a)},qs.set(e,r),e}function Bs(e,t,n){if(e[e.length-1]!="("){let a=[],r=!1,u=!1,o="";for(let i of e)if(!(i=="("||/[~@]$/.test(i))){if(i[0]=="!"&&(i=i.slice(1),r=!r),i.endsWith(":")){a[i=="dark:"?"unshift":"push"](i.slice(0,-1));continue}i[0]=="-"&&(i=i.slice(1),u=!u),i.endsWith("-")&&(i=i.slice(0,-1)),i&&i!="&"&&(o+=(o&&"-")+i)}o&&(u&&(o="-"+o),t[0].push({n:o,v:a.filter(Hh),i:r}))}}function Hh(e,t,n){return n.indexOf(e)==t}var H4=new Map;function Zr(e){let t=H4.get(e);if(!t){let n=[],a=[[]],r=0,u=0,o=null,i=0,s=(l,c=0)=>{r!=i&&(n.push(e.slice(r,i+c)),l&&Bs(n,a)),r=i+1};for(;i1?m.slice(0,-1)+Za(JSON.stringify([m,g])):m+"("+G4(g)+")",ot.a,g,/@$/.test(m))],a)}c=n.lastIndexOf("(",c-1)}n.length=c+1}else/[~@]/.test(l)&&e[i+1]=="("&&a.unshift([])}s(!0),H4.set(e,t=a[0])}return t}function X4(e,t,n){return t.reduce((a,r,u)=>a+n(r)+e[u+1],e[0])}function Z4(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?X4(e,t,n=>Rs(n).trim()):t.filter(Boolean).reduce((n,a)=>n+Rs(a),e?Rs(e):"")}function Rs(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=Z4(e[0],e.slice(1)))&&(n+=" "+t);else for(let a in e)e[a]&&(n+=" "+a);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var gx=Q4("@"),mx=Q4("~");function Q4(e){return new Proxy(function(n,...a){return t("",n,a)},{get(n,a){return a in n?n[a]:function(r,...u){return t(a,r,u)}}});function t(n,a,r){return G4(Zr(n+e+"("+Z4(a,r)+")"))}}function Ns(e,t){return Array.isArray(e)?W4(X4(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?W4(e):[e]}var Wh=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function W4(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],a=[n[0]],r=[];for(;t=Wh.exec(e);)t[4]&&(n.shift(),r.shift()),t[3]?(r.unshift(t[3]),n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))),n[0][t[1]]=t[2]);return a}function ed(e,...t){var n;let a=Ns(e,t),r=(a.find(u=>u.label)?.label||"css")+Za(JSON.stringify(a));return n=(u,o)=>Vs(a.flatMap(i=>Ks(i,u,o,ot.o)),r),qs.set(r,n),r}var px=new Proxy(function(e,t){return $4("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,a){return $4(t,n,a)}}});function $4(e,t,n){return{toString(){return ed({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function K(e,t,n){return[e,Us(t,n)]}function Us(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,a)=>({[e]:t?t(n,a):js(n,1)}):n=>e||{[n[1]]:js(n,2)}}function js(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function V(e,t,n,a){return[e,$h(t,n,a)]}function $h(e,t,n){let a=typeof t=="string"?(r,u)=>({[t]:n?n(r,u):r._}):t||(({1:r,_:u},o,i)=>({[r||i]:u}));return(r,u)=>{let o=td(e||r[1]),i=u.theme(o,r.$$)??kn(r.$$,o,u);if(i!=null)return r._=js(r,0,i),a(r,u,o)}}function dt(e,t={},n){return[e,qh(t,n)]}function qh(e={},t){return(n,a)=>{let{section:r=td(n[0]).replace("-","")+"Color"}=e,[u,o]=Kh(n.$$);if(!u)return;let i=a.theme(r,u)||kn(u,r,a);if(!i||typeof i=="object")return;let{opacityVariable:s=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=r.replace("Color","Opacity"),property:c=r,selector:m}=e,g=a.theme(l,o||"DEFAULT")||o&&kn(o,l,a),p=t||(({_:S})=>{let k=eu(c,S);return m?{[m]:k}:k});n._={value:Nn(i,{opacityVariable:s||void 0,opacityValue:g||void 0}),color:S=>Nn(i,S),opacityVariable:s||void 0,opacityValue:g||void 0};let f=p(n,a);if(!n.dark){let S=a.d(r,u,i);S&&S!==i&&(n._={value:Nn(S,{opacityVariable:s||void 0,opacityValue:g||"1"}),color:k=>Nn(S,k),opacityVariable:s||void 0,opacityValue:g||void 0},f={"&":f,[a.v("dark")]:p(n,a)})}return f}}function Kh(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function eu(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function kn(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=Qa(Gs(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function td(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function Qa(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",a,r="")=>Qa(n)+a+Qa(r)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var fx=Symbol();function tu({presets:e=[],...t}){let n={darkMode:void 0,darkColor:void 0,preflight:t.preflight!==!1&&[],theme:{},variants:Ue(t.variants),rules:Ue(t.rules),ignorelist:Ue(t.ignorelist),hash:void 0,stringify:(a,r)=>a+":"+r,finalize:[]};for(let a of Ue([...e,{darkMode:t.darkMode,darkColor:t.darkColor,preflight:t.preflight!==!1&&Ue(t.preflight),theme:t.theme,hash:t.hash,stringify:t.stringify,finalize:t.finalize}])){let{preflight:r,darkMode:u=n.darkMode,darkColor:o=n.darkColor,theme:i,variants:s,rules:l,ignorelist:c,hash:m=n.hash,stringify:g=n.stringify,finalize:p}=typeof a=="function"?a(n):a;n={preflight:n.preflight!==!1&&r!==!1&&[...n.preflight,...Ue(r)],darkMode:u,darkColor:o,theme:{...n.theme,...i,extend:{...n.theme.extend,...i?.extend}},variants:[...n.variants,...Ue(s)],rules:[...n.rules,...Ue(l)],ignorelist:[...n.ignorelist,...Ue(c)],hash:m,stringify:g,finalize:[...n.finalize,...Ue(p)]}}return n}function q4(e,t,n,a,r,u){for(let o of t){let i=n.get(o);i||n.set(o,i=a(o));let s=i(e,r,u);if(s)return s}}function Gh(e){var t;return zs(e[0],typeof(t=e[1])=="function"?t:()=>t)}function Vh(e){var t,n;return Array.isArray(e)?zs(e[0],Us(e[1],e[2])):zs(e,Us(t,n))}function zs(e,t){return nd(e,(n,a,r,u)=>{let o=a.exec(n);if(o)return o.$$=n.slice(o[0].length),o.dark=u,t(o,r)})}function nd(e,t){let n=Ue(e).map(Jh);return(a,r,u)=>{for(let o of n){let i=t(a,o,r,u);if(i)return i}}}function Jh(e){return typeof e=="string"?RegExp("^"+e+(e.includes("$")||e.slice(-1)=="-"?"":"$")):e}function Yh(e,t){let n=tu(e),a=function({theme:s,darkMode:l,darkColor:c=Qr,variants:m,rules:g,hash:p,stringify:f,ignorelist:S,finalize:k}){let h=new Map,A=new Map,_=new Map,B=new Map,L=nd(S,(T,b)=>b.test(T));m.push(["dark",Array.isArray(l)||l=="class"?`${Ue(l)[1]||".dark"} &`:typeof l=="string"&&l!="media"?l:"@media (prefers-color-scheme:dark)"]);let w=typeof p=="function"?T=>p(T,Za):p?Za:N4;w!==N4&&k.push(T=>({...T,n:T.n&&w(T.n),d:T.d?.replace(/--(tw(?:-[\w-]+)?)\b/g,(b,E)=>"--"+w(E).replace("#",""))}));let y={theme:function({extend:T={},...b}){let E={},R={get colors(){return D("colors")},theme:D,negative(){return{}},breakpoints(M){let F={};for(let $ in M)typeof M[$]=="string"&&(F["screen-"+$]=M[$]);return F}};return D;function D(M,F,$,Z){if(M){if({1:M,2:Z}=/^(\S+?)(?:\s*\/\s*([^/]+))?$/.exec(M)||[,M],/[.[]/.test(M)){let ge=[];M.replace(/\[([^\]]+)\]|([^.[]+)/g,(v,H,Q=H)=>ge.push(Q)),M=ge.shift(),$=F,F=ge.join("-")}let G=E[M]||Object.assign(Object.assign(E[M]={},O(b,M)),O(T,M));if(F==null)return G;F||="DEFAULT";let me=G[F]??F.split("-").reduce((ge,v)=>ge?.[v],G)??$;return Z?Nn(me,{opacityValue:Gs(Z,D)}):me}let de={};for(let G of[...Object.keys(b),...Object.keys(T)])de[G]=D(G);return de}function O(M,F){let $=M[F];return typeof $=="function"&&($=$(R)),$&&/color|fill|stroke/i.test(F)?function Z(de,G=[]){let me={};for(let ge in de){let v=de[ge],H=[...G,ge];me[H.join("-")]=v,ge=="DEFAULT"&&(H=G,me[G.join("-")]=v),typeof v=="object"&&Object.assign(me,Z(v,H))}return me}($):$}}(s),e:Ws,h:w,s(T,b){return f(T,b,y)},d(T,b,E){return c(T,b,y,E)},v(T){return h.has(T)||h.set(T,q4(T,m,A,Gh,y)||"&:"+T),h.get(T)},r(T,b){let E=JSON.stringify([T,b]);return _.has(E)||_.set(E,!L(T,y)&&q4(T,g,B,Vh,y,b)),_.get(E)},f(T){return k.reduce((b,E)=>E(b,y),T)}};return y}(n),r=new Map,u=[],o=new Set;t.resume(s=>r.set(s,s),(s,l)=>{t.insert(s,u.length,l),u.push(l),o.add(s)});function i(s){let l=a.f(s),c=Is(l);if(c&&!o.has(c)){o.add(c);let m=J4(u,s);t.insert(c,m,s),u.splice(m,0,s)}return l.n}return Object.defineProperties(function(s){if(!r.size)for(let c of Ue(n.preflight))typeof c=="function"&&(c=c(a)),c&&(typeof c=="string"?Js("",ot.b,Zr(c),a,ot.b,[],!1,!0):Ks(c,{},a,ot.b)).forEach(i);s=""+s;let l=r.get(s);if(!l){let c=new Set;for(let m of eo(Zr(s),a))c.add(m.c).add(i(m));l=[...c].filter(Boolean).join(" "),r.set(s,l).set(l,l)}return l},Object.getOwnPropertyDescriptors({get target(){return t.target},theme:a.theme,config:n,snapshot(){let s=t.snapshot(),l=new Set(o),c=new Map(r),m=[...u];return()=>{s(),o=l,r=c,u=m}},clear(){t.clear(),o=new Set,r=new Map,u=[]},destroy(){this.clear(),t.destroy()}}))}function Xh(e,t){return e!=t&&""+e.split(" ").sort()!=""+t.split(" ").sort()}function Zh(e){let t=new MutationObserver(n);return{observe(r){t.observe(r,{attributeFilter:["class"],subtree:!0,childList:!0}),a(r),n([{target:r,type:""}])},disconnect(){t.disconnect()}};function n(r){for(let{type:u,target:o}of r)if(u[0]=="a")a(o);else for(let i of o.querySelectorAll("[class]"))a(i);t.takeRecords()}function a(r){let u,o=r.getAttribute?.("class");o&&Xh(o,u=e(o))&&r.setAttribute("class",u)}}function Qh(e=Ys,t=typeof document<"u"&&document.documentElement){if(t){let n=Zh(e);n.observe(t);let{destroy:a}=e;e.destroy=()=>{n.disconnect(),a.call(e)}}return e}function ad(e){let t=document.querySelector(e||'style[data-twind=""]');return(!t||t.tagName!="STYLE")&&(t=document.createElement("style"),document.head.prepend(t)),t.dataset.twind="claimed",t}function e2(e){let t=e?.cssRules?e:(e&&typeof e!="string"?e:ad(e)).sheet;return{target:t,snapshot(){let n=Array.from(t.cssRules,a=>a.cssText);return()=>{this.clear(),n.forEach(this.insert)}},clear(){for(let n=t.cssRules.length;n--;)t.deleteRule(n)},destroy(){t.ownerNode?.remove()},insert(n,a){try{t.insertRule(n,a)}catch{t.insertRule(":root{}",a)}},resume:Qr}}function t2(e){let t=e&&typeof e!="string"?e:ad(e);return{target:t,snapshot(){let n=Array.from(t.childNodes,a=>a.textContent);return()=>{this.clear(),n.forEach(this.insert)}},clear(){t.textContent=""},destroy(){t.remove()},insert(n,a){t.insertBefore(document.createTextNode(n),t.childNodes[a]||null)},resume:Qr}}function n2(e){let t=[];return{target:t,snapshot(){let n=[...t];return()=>{t.splice(0,t.length,...n)}},clear(){t.length=0},destroy(){this.clear()},insert(n,a,r){t.splice(a,0,e?`/*!${r.p.toString(36)},${(2*r.o).toString(36)}${r.n?","+r.n:""}*/${n}`:n)},resume:Qr}}function rd(e,t){let n=typeof document>"u"?n2(!t):e?t2():e2();return t||(n.resume=r2),n}function a2(e){return(e.ownerNode||e).textContent||(e.cssRules?Array.from(e.cssRules,t=>t.cssText):Ue(e)).join("")}function r2(e,t){let n=a2(this.target),a=/\/\*!([\da-z]+),([\da-z]+)(?:,(.+?))?\*\//g;if(a.test(n)){var r;let u;if(a.lastIndex=0,this.clear(),typeof document<"u")for(let o of document.querySelectorAll("[class]"))e(o.getAttribute("class"));for(;r=a.exec(n),u&&t(n.slice(u.index+u[0].length,r?.index),{p:parseInt(u[1],36),o:parseInt(u[2],36)/2,n:u[3]}),u=r;);}}var Ys=new Proxy(Qr,{apply(e,t,n){return Xr(n[0])},get(e,t){let n=Xr[t];return typeof n=="function"?function(){return n.apply(Xr,arguments)}:n}});function ud(e={},t=rd,n){return Xr?.destroy(),Xr=Qh(Yh(e,typeof t=="function"?t():t),n)}function Xs(e,t=!0){let n=tu(e);return ud({...n,hash:n.hash??t},()=>rd(!t))}var hx=function e(t){return new Proxy(function(n,...a){return K4(t,"",n,a)},{get(n,a){return a==="bind"?e:a in n?n[a]:function(r,...u){return K4(t,a,r,u)}}})}();function K4(e,t,n,a){return{toString(){let r=Ns(n,a),u=Ws(t+Za(JSON.stringify([t,r])));return(typeof e=="function"?e:Ys)(ed({[`@keyframes ${u}`]:Ns(n,a)})),u}}}var u2=new Map([["align-self","-ms-grid-row-align"],["color-adjust","-webkit-print-color-adjust"],["column-gap","grid-column-gap"],["forced-color-adjust","-ms-high-contrast-adjust"],["gap","grid-gap"],["grid-template-columns","-ms-grid-columns"],["grid-template-rows","-ms-grid-rows"],["justify-self","-ms-grid-column-align"],["margin-inline-end","-webkit-margin-end"],["margin-inline-start","-webkit-margin-start"],["mask-border","-webkit-mask-box-image"],["mask-border-outset","-webkit-mask-box-image-outset"],["mask-border-slice","-webkit-mask-box-image-slice"],["mask-border-source","-webkit-mask-box-image-source"],["mask-border-repeat","-webkit-mask-box-image-repeat"],["mask-border-width","-webkit-mask-box-image-width"],["overflow-wrap","word-wrap"],["padding-inline-end","-webkit-padding-end"],["padding-inline-start","-webkit-padding-start"],["print-color-adjust","color-adjust"],["row-gap","grid-row-gap"],["scroll-margin-bottom","scroll-snap-margin-bottom"],["scroll-margin-left","scroll-snap-margin-left"],["scroll-margin-right","scroll-snap-margin-right"],["scroll-margin-top","scroll-snap-margin-top"],["scroll-margin","scroll-snap-margin"],["text-combine-upright","-ms-text-combine-horizontal"]]);function od(e){return u2.get(e)}function id(e){var t=/^(?:(text-(?:decoration$|e|or|si)|back(?:ground-cl|d|f)|box-d|mask(?:$|-[ispro]|-cl)|pr|hyphena|flex-d)|(tab-|column(?!-s)|text-align-l)|(ap)|u|hy)/i.exec(e);return t?t[1]?1:t[2]?2:t[3]?3:5:0}function sd(e,t){var n=/^(?:(pos)|(cli)|(background-i)|(flex(?:$|-b)|(?:max-|min-)?(?:block-s|inl|he|widt))|dis)/i.exec(e);return n?n[1]?/^sti/i.test(t)?1:0:n[2]?/^pat/i.test(t)?1:0:n[3]?/^image-/i.test(t)?1:0:n[4]?t[3]==="-"?2:0:/^(?:inline-)?grid$/i.test(t)?4:0:0}var o2=[["-webkit-",1],["-moz-",2],["-ms-",4]];function no(){return({stringify:e})=>({stringify(t,n,a){let r="",u=od(t);u&&(r+=e(u,n,a)+";");let o=id(t),i=sd(t,n);for(let s of o2)o&s[1]&&(r+=e(s[0]+t,n,a)+";"),i&s[1]&&(r+=e(t,s[0]+n,a)+";");return r+e(t,n,a)}})}var Qs={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Jt(4,"rem",4,.5,.5),...Jt(12,"rem",4,5),14:"3.5rem",...Jt(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:Me("blur"),backdropBrightness:Me("brightness"),backdropContrast:Me("contrast"),backdropGrayscale:Me("grayscale"),backdropHueRotate:Me("hueRotate"),backdropInvert:Me("invert"),backdropOpacity:Me("opacity"),backdropSaturate:Me("saturate"),backdropSepia:Me("sepia"),backgroundColor:Me("colors"),backgroundImage:{none:"none"},backgroundOpacity:Me("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Jt(200,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:Me("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:Me("spacing"),borderWidth:{DEFAULT:"1px",...en(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:Me("colors"),caretColor:Me("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Jt(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:Me("borderColor"),divideOpacity:Me("borderOpacity"),divideWidth:Me("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...nu(2,6),...nu(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:Me("spacing"),gradientColorStops:Me("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...nu(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...nu(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Jt(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Jt(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:Me("spacing"),placeholderColor:Me("colors"),placeholderOpacity:Me("opacity"),outlineColor:Me("colors"),outlineOffset:en(8,"px"),outlineWidth:en(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:Me("colors"),ringOffsetWidth:en(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...en(8,"px")},rotate:{...en(2,"deg"),...en(12,"deg",3),...en(180,"deg",45)},saturate:Jt(200,"",100,0,50),scale:{...Jt(150,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:Me("spacing"),scrollPadding:Me("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...en(2,"deg"),...en(12,"deg",3)},space:Me("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Jt(2),textColor:Me("colors"),textDecorationColor:Me("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...en(8,"px")},textUnderlineOffset:{auto:"auto",...en(8,"px")},textIndent:Me("spacing"),textOpacity:Me("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:Me("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...nu(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Jt(50,"",1,0,10),auto:"auto"}};function nu(e,t){let n={};do for(var a=1;at(e)}var i2={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${Qs.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${Qs.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},s2=[K("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:kn(`[${t}]`,"",n)}}})),K("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),V("aspect-","aspectRatio"),K("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:a,padding:r}=t("container"),u={width:"100%",marginRight:a&&"auto",marginLeft:a&&"auto",...o("xs")};for(let i in n){let s=n[i];typeof s=="string"&&(u[to(s)]={"&":{maxWidth:s,...o(i)}})}return u;function o(i){let s=r&&(typeof r=="string"?r:r[i]||r.DEFAULT);if(s)return{paddingRight:s,paddingLeft:s}}}),V("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),K("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),K("box-(border|content)","boxSizing",({1:e})=>e+"-box"),K("hidden",{display:"none"}),K("table-(auto|fixed)","tableLayout"),K(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",K("isolate","isolation"),K("object-(contain|cover|fill|none|scale-down)","objectFit"),V("object-","objectPosition"),K("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",ao),K("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),K("(static|fixed|absolute|relative|sticky)","position"),V("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),V("-?(top|bottom|left|right)(?:$|-)","inset"),K("(visible|collapse)","visibility"),K("invisible",{visibility:"hidden"}),V("-?z-","zIndex"),K("flex-((row|col)(-reverse)?)","flexDirection",ld),K("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),V("(flex-(?:grow|shrink))(?:$|-)"),V("(flex)-"),V("grow(?:$|-)","flexGrow"),V("shrink(?:$|-)","flexShrink"),V("basis-","flexBasis"),V("-?(order)-"),"-?(order)-(\\d+)",V("grid-cols-","gridTemplateColumns"),K("grid-cols-(\\d+)","gridTemplateColumns",md),V("col-","gridColumn"),K("col-(span)-(\\d+)","gridColumn",gd),V("col-start-","gridColumnStart"),K("col-start-(auto|\\d+)","gridColumnStart"),V("col-end-","gridColumnEnd"),K("col-end-(auto|\\d+)","gridColumnEnd"),V("grid-rows-","gridTemplateRows"),K("grid-rows-(\\d+)","gridTemplateRows",md),V("row-","gridRow"),K("row-(span)-(\\d+)","gridRow",gd),V("row-start-","gridRowStart"),K("row-start-(auto|\\d+)","gridRowStart"),V("row-end-","gridRowEnd"),K("row-end-(auto|\\d+)","gridRowEnd"),K("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>ao(ld(e))),K("grid-flow-(dense)","gridAutoFlow"),V("auto-cols-","gridAutoColumns"),V("auto-rows-","gridAutoRows"),V("gap-x(?:$|-)","gap","columnGap"),V("gap-y(?:$|-)","gap","rowGap"),V("gap(?:$|-)","gap"),"(justify-(?:items|self))-",K("justify-","justifyContent",cd),K("(content|items|self)-",e=>({["align-"+e[1]]:cd(e)})),K("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),V("p([xytrbl])?(?:$|-)","padding",er("padding")),V("-?m([xytrbl])?(?:$|-)","margin",er("margin")),V("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),K("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),V("w-","width"),V("min-w-","minWidth"),V("max-w-","maxWidth"),V("h-","height"),V("min-h-","minHeight"),V("max-h-","maxHeight"),V("font-","fontWeight"),V("font-","fontFamily",({_:e})=>typeof(e=Ue(e))[1]=="string"?{fontFamily:gn(e)}:{fontFamily:gn(e[0]),...e[1]}),K("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),K("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),K("italic","fontStyle"),K("not-italic",{fontStyle:"normal"}),K("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...Zn({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),V("tracking-","letterSpacing"),V("leading-","lineHeight"),K("list-(inside|outside)","listStylePosition"),V("list-","listStyleType"),K("list-","listStyleType"),V("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),dt("placeholder-",{property:"color",selector:"&::placeholder"}),K("text-(left|center|right|justify|start|end)","textAlign"),K("text-(ellipsis|clip)","textOverflow"),V("text-opacity-","textOpacity","--tw-text-opacity"),dt("text-",{property:"color"}),V("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),V("indent-","textIndent"),K("(overline|underline|line-through)","textDecorationLine"),K("no-underline",{textDecorationLine:"none"}),V("underline-offset-","textUnderlineOffset"),dt("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),V("decoration-","textDecorationThickness"),K("decoration-","textDecorationStyle"),K("(uppercase|lowercase|capitalize)","textTransform"),K("normal-case",{textTransform:"none"}),K("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),K("align-","verticalAlign"),K("whitespace-","whiteSpace"),K("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),K("break-words",{overflowWrap:"break-word"}),K("break-all",{wordBreak:"break-all"}),K("break-keep",{wordBreak:"keep-all"}),dt("caret-",{opacityVariable:!1,opacitySection:"opacity"}),dt("accent-",{opacityVariable:!1,opacitySection:"opacity"}),K("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${Aa(e," ")},var(--tw-gradient-stops))`),dt("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),dt("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),dt("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),K("bg-(fixed|local|scroll)","backgroundAttachment"),K("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),K(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),K("bg-blend-","backgroundBlendMode"),K("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),V("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),dt("bg-",{section:"backgroundColor"}),V("bg-","backgroundImage"),V("bg-","backgroundPosition"),K("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",ao),V("bg-","backgroundSize"),V("rounded(?:$|-)","borderRadius"),V("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${Aa(n[0])}-radius`]:t,[`border-${Aa(n[1])}-radius`]:t}}),K("border-(collapse|separate)","borderCollapse"),V("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),K("border-(solid|dashed|dotted|double|none)","borderStyle"),V("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...Zn({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),dt("border-([xytrbl])-",{section:"borderColor"},er("border","Color")),dt("border-"),V("border-([xytrbl])(?:$|-)","borderWidth",er("border","Width")),V("border(?:$|-)","borderWidth"),V("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),K("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),K("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),V("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${Aa(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${Aa(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),dt("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),V("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),dt("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),V("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),K("ring-inset",{"--tw-ring-inset":"inset"}),dt("ring-",{property:"--tw-ring-color"}),V("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":Nn(t("ringOffsetColor","","#fff")),"--tw-ring-color":Nn(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),dt("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),V("shadow(?:$|-)","boxShadow",({_:e})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":gn(e),"--tw-shadow-colored":gn(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),V("(opacity)-"),K("mix-blend-","mixBlendMode"),...dd(),...dd("backdrop-"),V("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:gn(e),transitionTimingFunction:e._=="none"?void 0:gn(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:gn(t("transitionDuration",""))})),V("duration(?:$|-)","transitionDuration","transitionDuration",gn),V("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",gn),V("delay(?:$|-)","transitionDelay","transitionDelay",gn),V("animate(?:$|-)","animation",(e,{theme:t,h:n,e:a})=>{let r=gn(e),u=r.split(" "),o=t("keyframes",u[0]);return o?{["@keyframes "+(u[0]=a(n(u[0])))]:o,animation:u.join(" ")}:{animation:r}}),"(transform)-(none)",K("transform",e0),K("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":pd(e=="gpu")})),V("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...e0()})),V("-?(rotate)-","rotate",Zs),V("-?(translate-[xy])-","translate",Zs),V("-?(skew-[xy])-","skew",Zs),K("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",ao),"(appearance)-",V("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",V("(cursor)-"),"(cursor)-",K("snap-(none)","scroll-snap-type"),K("snap-(x|y|both)",({1:e})=>({...Zn({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),K("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),K("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),K("snap-(normal|always)","scroll-snap-stop"),K("scroll-(auto|smooth)","scroll-behavior"),V("scroll-p([xytrbl])?(?:$|-)","padding",er("scroll-padding")),V("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",er("scroll-margin")),K("touch-(auto|none|manipulation)","touch-action"),K("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...Zn({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),K("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),K("outline",{outlineStyle:"solid"}),K("outline-(dashed|dotted|double)","outlineStyle"),V("-?(outline-offset)-"),dt("outline-",{opacityVariable:!1,opacitySection:"opacity"}),V("outline-","outlineWidth"),"(pointer-events)-",V("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],K("select-(none|text|all|auto)","userSelect"),dt("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),dt("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),V("stroke-","strokeWidth"),K("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),K("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function ao(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function ld(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function Aa(e,t="-"){let n=[];for(let a of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[a]);return n.join(t)}function gn(e){return e&&""+(e._||e)}function cd({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function er(e,t=""){return({1:n,_:a})=>{let r={x:"lr",y:"tb"}[n]||n+n;return r?{...eu(e+"-"+Aa(r[0])+t,a),...eu(e+"-"+Aa(r[1])+t,a)}:eu(e+t,a)}}function dd(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let a of t)n[`--tw-${e}${a}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...Zn(n),[`${e}filter`]:t.map(a=>`var(--tw-${e}${a})`).join(" ")},[`(${e}filter)-(none)`,K(`${e}filter`,n),...t.map(a=>V(`${a[0]=="h"?"-?":""}(${e}${a})(?:$|-)`,a,({1:r,_:u})=>({[`--tw-${r}`]:Ue(u).map(o=>`${a}(${o})`).join(" "),...n})))]}function Zs({1:e,_:t}){return{["--tw-"+e]:t,...e0()}}function e0(){return{...Zn({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":pd()}),transform:"var(--tw-transform)"}}function pd(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function gd({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function md({1:e}){return`repeat(${e},minmax(0,1fr))`}function Zn(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var l2=[["sticky","@supports ((position: -webkit-sticky) or (position:sticky))"],["motion-reduce","@media (prefers-reduced-motion:reduce)"],["motion-safe","@media (prefers-reduced-motion:no-preference)"],["print","@media print"],["(portrait|landscape)",({1:e})=>`@media (orientation:${e})`],["contrast-(more|less)",({1:e})=>`@media (prefers-contrast:${e})`],["(first-(letter|line)|placeholder|backdrop|before|after)",({1:e})=>`&::${e}`],["(marker|selection)",({1:e})=>`& *::${e},&::${e}`],["file","&::file-selector-button"],["(first|last|only)",({1:e})=>`&:${e}-child`],["even","&:nth-child(2n)"],["odd","&:nth-child(odd)"],["open","&[open]"],["(aria|data)-",({1:e,$$:t},n)=>t&&`&[${e}-${n.theme(e,t)||kn(t,"",n)||`${t}="true"`}]`],["((group|peer)(~[^-[]+)?)(-\\[(.+)]|[-[].+?)(\\/.+)?",({2:e,3:t="",4:n,5:a="",6:r=t},{e:u,h:o,v:i})=>{let s=Qa(a)||(n[0]=="["?n:i(n.slice(1)));return`${(s.includes("&")?s:"&"+s).replace(/&/g,`:merge(.${u(o(e+r))})`)}${e[0]=="p"?"~":" "}&`}],["(ltr|rtl)",({1:e})=>`[dir="${e}"] &`],["supports-",({$$:e},t)=>{if(e&&=t.theme("supports",e)||kn(e,"",t),e)return e.includes(":")||(e+=":var(--tw)"),/^\w*\s*\(/.test(e)||(e=`(${e})`),`@supports ${e.replace(/\b(and|or|not)\b/g," $1 ").trim()}`}],["max-",({$$:e},t)=>{if(e&&=t.theme("screens",e)||kn(e,"",t),typeof e=="string")return`@media not all and (min-width:${e})`}],["min-",({$$:e},t)=>(e&&=kn(e,"",t))&&`@media (min-width:${e})`],[/^\[(.+)]$/,({1:e})=>/[&@]/.test(e)&&Qa(e).replace(/[}]+$/,"").split("{")]];function c2({colors:e,disablePreflight:t}={}){return{preflight:t?void 0:i2,theme:{...Qs,colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",...e}},variants:l2,rules:s2,finalize(n){return n.n&&n.d&&n.r.some(a=>/^&::(before|after)$/.test(a))&&!/(^|;)content:/.test(n.d)?{...n,d:"content:var(--tw-content);"+n.d}:n}}}var d2={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},g2={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},m2={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},p2={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},f2={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},h2={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},b2={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},y2={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},T2={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},E2={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},x2={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},C2={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},v2={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},w2={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},k2={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},A2={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},S2={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},D2={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},L2={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},P2={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},M2={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},F2={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},_2={__proto__:null,slate:d2,gray:g2,zinc:m2,neutral:p2,stone:f2,red:h2,orange:b2,amber:y2,yellow:T2,lime:E2,green:x2,emerald:C2,teal:v2,cyan:w2,sky:k2,blue:A2,indigo:S2,violet:D2,purple:L2,fuchsia:P2,pink:M2,rose:F2};function ro({disablePreflight:e}={}){return c2({colors:_2,disablePreflight:e})}var uo=globalThis||(typeof window<"u"?window:self),B2=Object.create,n0=Object.defineProperty,R2=Object.getOwnPropertyDescriptor,O2=Object.getOwnPropertyNames,I2=Object.getPrototypeOf,N2=Object.prototype.hasOwnProperty,U2=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),j2=(e,t)=>{for(var n in t)n0(e,n,{get:t[n],enumerable:!0})},t0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of O2(t))!N2.call(e,r)&&r!==n&&n0(e,r,{get:()=>t[r],enumerable:!(a=R2(t,r))||a.enumerable});return e},z2=(e,t,n)=>(t0(e,t,"default"),n&&t0(n,t,"default")),hd=(e,t,n)=>(n=e!=null?B2(I2(e)):{},t0(t||!e||!e.__esModule?n0(n,"default",{value:e,enumerable:!0}):n,e)),bd=U2((e,t)=>{(function(n,a){typeof define=="function"&&define.amd?define([],a):typeof e<"u"?a():(a(),n.FileSaver={})})(e,function(){"use strict";function n(l,c){return typeof c>"u"?c={autoBom:!1}:typeof c!="object"&&(c={autoBom:!c}),c.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function a(l,c,m){var g=new XMLHttpRequest;g.open("GET",l),g.responseType="blob",g.onload=function(){s(g.response,c,m)},g.onerror=function(){},g.send()}function r(l){var c=new XMLHttpRequest;c.open("HEAD",l,!1);try{c.send()}catch{}return 200<=c.status&&299>=c.status}function u(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(c)}}var o=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof uo=="object"&&uo.global===uo?uo:void 0,i=o.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=o.saveAs||(typeof window!="object"||window!==o?function(){}:"download"in HTMLAnchorElement.prototype&&!i?function(l,c,m){var g=o.URL||o.webkitURL,p=document.createElement("a");c=c||l.name||"download",p.download=c,p.rel="noopener",typeof l=="string"?(p.href=l,p.origin===location.origin?u(p):r(p.href)?a(l,c,m):u(p,p.target="_blank")):(p.href=g.createObjectURL(l),setTimeout(function(){g.revokeObjectURL(p.href)},4e4),setTimeout(function(){u(p)},0))}:"msSaveOrOpenBlob"in navigator?function(l,c,m){if(c=c||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,m),c);else if(r(l))a(l,c,m);else{var g=document.createElement("a");g.href=l,g.target="_blank",setTimeout(function(){u(g)})}}:function(l,c,m,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),typeof l=="string")return a(l,c,m);var p=l.type==="application/octet-stream",f=/constructor/i.test(o.HTMLElement)||o.safari,S=/CriOS\/[\d]+/.test(navigator.userAgent);if((S||p&&f||i)&&typeof FileReader<"u"){var k=new FileReader;k.onloadend=function(){var _=k.result;_=S?_:_.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=_:location=_,g=null},k.readAsDataURL(l)}else{var h=o.URL||o.webkitURL,A=h.createObjectURL(l);g?g.location=A:location.href=A,g=null,setTimeout(function(){h.revokeObjectURL(A)},4e4)}});o.saveAs=s.saveAs=s,typeof t<"u"&&(t.exports=s)})}),yd={};j2(yd,{default:()=>au});var H2=hd(bd());z2(yd,hd(bd()));var{default:fd,...W2}=H2,au=fd!==void 0?fd:W2;function tr(){let e,t="pending",n=new Promise((a,r)=>{e={async resolve(u){await u,t="fulfilled",a(u)},reject(u){t="rejected",r(u)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var a0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function oo(e,t){let n=tr(),a=setTimeout(()=>n.reject(new a0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Qn(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((r,u)=>{let o=()=>{clearTimeout(s),u(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),r()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var Td=class{#e=0;#t=[];#n=[];#a=tr();add(t){++this.#e,this.#r(t[Symbol.asyncIterator]())}async#r(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;th9,bgBlue:()=>E9,bgBrightBlack:()=>w9,bgBrightBlue:()=>D9,bgBrightCyan:()=>P9,bgBrightGreen:()=>A9,bgBrightMagenta:()=>L9,bgBrightRed:()=>k9,bgBrightWhite:()=>M9,bgBrightYellow:()=>S9,bgCyan:()=>C9,bgGreen:()=>y9,bgMagenta:()=>x9,bgRed:()=>b9,bgRgb24:()=>R9,bgRgb8:()=>_9,bgWhite:()=>v9,bgYellow:()=>T9,black:()=>e9,blue:()=>r9,bold:()=>G2,brightBlack:()=>Cd,brightBlue:()=>g9,brightCyan:()=>p9,brightGreen:()=>c9,brightMagenta:()=>m9,brightRed:()=>l9,brightWhite:()=>f9,brightYellow:()=>d9,cyan:()=>o9,dim:()=>V2,getColorEnabled:()=>q2,gray:()=>s9,green:()=>n9,hidden:()=>Z2,inverse:()=>X2,italic:()=>J2,magenta:()=>u9,red:()=>t9,reset:()=>K2,rgb24:()=>B9,rgb8:()=>F9,setColorEnabled:()=>$2,strikethrough:()=>Q2,stripColor:()=>I9,underline:()=>Y2,white:()=>i9,yellow:()=>a9});var{Deno:Ed}=globalThis,xd=typeof Ed?.noColor=="boolean"?Ed.noColor:!0,r0=!xd;function $2(e){xd||(r0=e)}function q2(){return r0}function Te(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function Ee(e,t){return r0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function K2(e){return Ee(e,Te([0],0))}function G2(e){return Ee(e,Te([1],22))}function V2(e){return Ee(e,Te([2],22))}function J2(e){return Ee(e,Te([3],23))}function Y2(e){return Ee(e,Te([4],24))}function X2(e){return Ee(e,Te([7],27))}function Z2(e){return Ee(e,Te([8],28))}function Q2(e){return Ee(e,Te([9],29))}function e9(e){return Ee(e,Te([30],39))}function t9(e){return Ee(e,Te([31],39))}function n9(e){return Ee(e,Te([32],39))}function a9(e){return Ee(e,Te([33],39))}function r9(e){return Ee(e,Te([34],39))}function u9(e){return Ee(e,Te([35],39))}function o9(e){return Ee(e,Te([36],39))}function i9(e){return Ee(e,Te([37],39))}function s9(e){return Cd(e)}function Cd(e){return Ee(e,Te([90],39))}function l9(e){return Ee(e,Te([91],39))}function c9(e){return Ee(e,Te([92],39))}function d9(e){return Ee(e,Te([93],39))}function g9(e){return Ee(e,Te([94],39))}function m9(e){return Ee(e,Te([95],39))}function p9(e){return Ee(e,Te([96],39))}function f9(e){return Ee(e,Te([97],39))}function h9(e){return Ee(e,Te([40],49))}function b9(e){return Ee(e,Te([41],49))}function y9(e){return Ee(e,Te([42],49))}function T9(e){return Ee(e,Te([43],49))}function E9(e){return Ee(e,Te([44],49))}function x9(e){return Ee(e,Te([45],49))}function C9(e){return Ee(e,Te([46],49))}function v9(e){return Ee(e,Te([47],49))}function w9(e){return Ee(e,Te([100],49))}function k9(e){return Ee(e,Te([101],49))}function A9(e){return Ee(e,Te([102],49))}function S9(e){return Ee(e,Te([103],49))}function D9(e){return Ee(e,Te([104],49))}function L9(e){return Ee(e,Te([105],49))}function P9(e){return Ee(e,Te([106],49))}function M9(e){return Ee(e,Te([107],49))}function ea(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function F9(e,t){return Ee(e,Te([38,5,ea(t)],39))}function _9(e,t){return Ee(e,Te([48,5,ea(t)],49))}function B9(e,t){return typeof t=="number"?Ee(e,Te([38,2,t>>16&255,t>>8&255,t&255],39)):Ee(e,Te([38,2,ea(t.r),ea(t.g),ea(t.b)],39))}function R9(e,t){return typeof t=="number"?Ee(e,Te([48,2,t>>16&255,t>>8&255,t&255],49)):Ee(e,Te([48,2,ea(t.r),ea(t.g),ea(t.b)],49))}var O9=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function I9(e){return e.replace(O9,"")}var u0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},N9={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function o0(e,t){let n={...N9,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,r;for(let u=0;usetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),r=o}throw new u0(r,n.maxAttempts)}var NC=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var io=globalThis||(typeof window<"u"?window:self),j9=Object.create,s0=Object.defineProperty,z9=Object.getOwnPropertyDescriptor,H9=Object.getOwnPropertyNames,W9=Object.getPrototypeOf,$9=Object.prototype.hasOwnProperty,q9=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),K9=(e,t)=>{for(var n in t)s0(e,n,{get:t[n],enumerable:!0})},i0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of H9(t))!$9.call(e,r)&&r!==n&&s0(e,r,{get:()=>t[r],enumerable:!(a=z9(t,r))||a.enumerable});return e},G9=(e,t,n)=>(i0(e,t,"default"),n&&i0(n,t,"default")),wd=(e,t,n)=>(n=e!=null?j9(W9(e)):{},i0(t||!e||!e.__esModule?s0(n,"default",{value:e,enumerable:!0}):n,e)),kd=q9((e,t)=>{var n="Expected a function",a=NaN,r="[object Symbol]",u=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof io=="object"&&io&&io.Object===Object&&io,m=typeof self=="object"&&self&&self.Object===Object&&self,g=c||m||Function("return this")(),p=Object.prototype,f=p.toString,S=Math.max,k=Math.min,h=function(){return g.Date.now()};function A(T,b,E){var R,D,O,M,F,$,Z=0,de=!1,G=!1,me=!0;if(typeof T!="function")throw new TypeError(n);b=y(b)||0,B(E)&&(de=!!E.leading,G="maxWait"in E,O=G?S(y(E.maxWait)||0,b):O,me="trailing"in E?!!E.trailing:me);function ge(te){var ae=R,ne=D;return R=D=void 0,Z=te,M=T.apply(ne,ae),M}function v(te){return Z=te,F=setTimeout(fe,b),de?ge(te):M}function H(te){var ae=te-$,ne=te-Z,oe=b-ae;return G?k(oe,O-ne):oe}function Q(te){var ae=te-$,ne=te-Z;return $===void 0||ae>=b||ae<0||G&&ne>=O}function fe(){var te=h();if(Q(te))return se(te);F=setTimeout(fe,H(te))}function se(te){return F=void 0,me&&R?ge(te):(R=D=void 0,M)}function I(){F!==void 0&&clearTimeout(F),Z=0,R=$=D=F=void 0}function N(){return F===void 0?M:se(h())}function re(){var te=h(),ae=Q(te);if(R=arguments,D=this,$=te,ae){if(F===void 0)return v($);if(G)return F=setTimeout(fe,b),ge($)}return F===void 0&&(F=setTimeout(fe,b)),M}return re.cancel=I,re.flush=N,re}function _(T,b,E){var R=!0,D=!0;if(typeof T!="function")throw new TypeError(n);return B(E)&&(R="leading"in E?!!E.leading:R,D="trailing"in E?!!E.trailing:D),A(T,b,{leading:R,maxWait:b,trailing:D})}function B(T){var b=typeof T;return!!T&&(b=="object"||b=="function")}function L(T){return!!T&&typeof T=="object"}function w(T){return typeof T=="symbol"||L(T)&&f.call(T)==r}function y(T){if(typeof T=="number")return T;if(w(T))return a;if(B(T)){var b=typeof T.valueOf=="function"?T.valueOf():T;T=B(b)?b+"":b}if(typeof T!="string")return T===0?T:+T;T=T.replace(u,"");var E=i.test(T);return E||s.test(T)?l(T.slice(2),E?2:8):o.test(T)?a:+T}t.exports=_}),Ad={};K9(Ad,{default:()=>St});var V9=wd(kd());G9(Ad,wd(kd()));var{default:vd,...J9}=V9,St=vd!==void 0?vd:J9;var Y9=Object.create,c0=Object.defineProperty,X9=Object.getOwnPropertyDescriptor,Z9=Object.getOwnPropertyNames,Q9=Object.getPrototypeOf,e6=Object.prototype.hasOwnProperty,t6=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),n6=(e,t)=>{for(var n in t)c0(e,n,{get:t[n],enumerable:!0})},l0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Z9(t))!e6.call(e,r)&&r!==n&&c0(e,r,{get:()=>t[r],enumerable:!(a=X9(t,r))||a.enumerable});return e},a6=(e,t,n)=>(l0(e,t,"default"),n&&l0(n,t,"default")),Dd=(e,t,n)=>(n=e!=null?Y9(Q9(e)):{},l0(t||!e||!e.__esModule?c0(n,"default",{value:e,enumerable:!0}):n,e)),Ld=t6((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(u){if(r[u])return r[u].exports;var o=r[u]={i:u,l:!1,exports:{}};return n[u].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var r={};return a.m=n,a.c=r,a.i=function(u){return u},a.d=function(u,o,i){a.o(u,o)||Object.defineProperty(u,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(u){var o=u&&u.__esModule?function(){return u.default}:function(){return u};return a.d(o,"a",o),o},a.o=function(u,o){return Object.prototype.hasOwnProperty.call(u,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(r){return r.webpackPolyfill||(r.deprecate=function(){},r.paths=[],r.children||(r.children=[]),Object.defineProperty(r,"loaded",{enumerable:!0,get:function(){return r.l}}),Object.defineProperty(r,"id",{enumerable:!0,get:function(){return r.i}}),r.webpackPolyfill=1),r}},function(n,a,r){"use strict";(function(u){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,m){l(a)==="object"&&l(u)==="object"?u.exports=m():(i=[],o=m,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(u.exports=s))})(void 0,function(){return function(c){function m(p){if(g[p])return g[p].exports;var f=g[p]={i:p,l:!1,exports:{}};return c[p].call(f.exports,f,f.exports,m),f.l=!0,f.exports}var g={};return m.m=c,m.c=g,m.i=function(p){return p},m.d=function(p,f,S){m.o(p,f)||Object.defineProperty(p,f,{configurable:!1,enumerable:!0,get:S})},m.n=function(p){var f=p&&p.__esModule?function(){return p.default}:function(){return p};return m.d(f,"a",f),f},m.o=function(p,f){return Object.prototype.hasOwnProperty.call(p,f)},m.p="",m(m.s=0)}([function(c,m,g){function p(v,H){var Q={};for(var fe in v)H.indexOf(fe)>=0||Object.prototype.hasOwnProperty.call(v,fe)&&(Q[fe]=v[fe]);return Q}Object.defineProperty(m,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(v){return typeof v>"u"?"undefined":l(v)}:function(v){return v&&typeof Symbol=="function"&&v.constructor===Symbol&&v!==Symbol.prototype?"symbol":typeof v>"u"?"undefined":l(v)},S=Object.assign||function(v){for(var H=1;H'+fe+"",ne.onclick=function(){return D(oe,ae)},ne.listener=function(Y){(b(Y)||E(Y))&&F()},R(ne,ae),I&&I<1&&(I=1),!re&&I&&B(I).then(function(){return D(oe,ae)})},Z=m.force=function(v,H){var Q=v.type,fe=Q===void 0?5:Q,se=v.text,I=v.buttonText,N=I===void 0?"OK":I,re=v.callback,te=v.position,ae=te===void 0?h.positions.force||ae.top:te;L(),F();var ne=document.createElement("div"),oe=w();ne.id=oe;var Y=document.createElement("div");Y.classList.add(h.classes.textbox),Y.classList.add(h.classes.backgroundInfo),Y.innerHTML='
'+se+"
";var ce=document.createElement("div");ce.classList.add(h.classes.button),ce.classList.add(y[fe]),ce.innerHTML=N,ce.onclick=function(){D(oe,ae),M(),re?re():H&&H()},ne.appendChild(Y),ne.appendChild(ce),ne.listener=function(Le){b(Le)&&ce.click()},R(ne,ae),O()},de=m.confirm=function(v,H,Q){var fe=v.text,se=v.submitText,I=se===void 0?"Yes":se,N=v.cancelText,re=N===void 0?"Cancel":N,te=v.submitCallback,ae=v.cancelCallback,ne=v.position,oe=ne===void 0?h.positions.confirm||oe.top:ne;L(),F();var Y=document.createElement("div"),ce=w();Y.id=ce;var Le=document.createElement("div");Le.classList.add(h.classes.textbox),Le.classList.add(h.classes.backgroundInfo),Le.innerHTML='
'+fe+"
";var Oe=document.createElement("div");Oe.classList.add(h.classes.button),Oe.classList.add(h.classes.elementHalf),Oe.classList.add(h.classes.backgroundSuccess),Oe.innerHTML=I,Oe.onclick=function(){D(ce,oe),M(),te?te():H&&H()};var he=document.createElement("div");he.classList.add(h.classes.button),he.classList.add(h.classes.elementHalf),he.classList.add(h.classes.backgroundError),he.innerHTML=re,he.onclick=function(){D(ce,oe),M(),ae?ae():Q&&Q()},Y.appendChild(Le),Y.appendChild(Oe),Y.appendChild(he),Y.listener=function(Xe){b(Xe)?Oe.click():E(Xe)&&he.click()},R(Y,oe),O(Y,oe)},G=function(v,H,Q){var fe=v.text,se=v.submitText,I=se===void 0?"Submit":se,N=v.cancelText,re=N===void 0?"Cancel":N,te=v.submitCallback,ae=v.cancelCallback,ne=v.position,oe=ne===void 0?h.positions.input||oe.top:ne,Y=p(v,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);L(),F();var ce=document.createElement("div"),Le=w();ce.id=Le;var Oe=document.createElement("div");Oe.classList.add(h.classes.textbox),Oe.classList.add(h.classes.backgroundInfo),Oe.innerHTML='
'+fe+"
";var he=document.createElement("input");he.classList.add(h.classes.inputField),he.setAttribute("autocapitalize",Y.autocapitalize||"none"),he.setAttribute("autocomplete",Y.autocomplete||"off"),he.setAttribute("autocorrect",Y.autocorrect||"off"),he.setAttribute("autofocus",Y.autofocus||"true"),he.setAttribute("inputmode",Y.inputmode||"verbatim"),he.setAttribute("max",Y.max||""),he.setAttribute("maxlength",Y.maxlength||""),he.setAttribute("min",Y.min||""),he.setAttribute("minlength",Y.minlength||""),he.setAttribute("placeholder",Y.placeholder||""),he.setAttribute("spellcheck",Y.spellcheck||"default"),he.setAttribute("step",Y.step||"any"),he.setAttribute("type",Y.type||"text"),he.value=Y.value||"",Y.allowed&&(he.oninput=function(){var We=void 0;if(Array.isArray(Y.allowed)){for(var $e="",qe=Y.allowed,Ht=0;Ht'+Q+"",ae.appendChild(oe),N.forEach(function(ce,Le){var Oe=ce.type,he=Oe===void 0?1:Oe,Xe=ce.text,pt=ce.handler,We=document.createElement("div");We.classList.add(y[he]),We.classList.add(h.classes.button),We.classList.add(h.classes.selectChoice);var $e=N[Le+1];$e&&!$e.type&&($e.type=1),$e&&$e.type===he&&We.classList.add(h.classes.selectChoiceRepeated),We.innerHTML=Xe,We.onclick=function(){D(ne,te),M(),pt()},ae.appendChild(We)});var Y=document.createElement("div");Y.classList.add(h.classes.backgroundNeutral),Y.classList.add(h.classes.button),Y.innerHTML=se,Y.onclick=function(){D(ne,te),M(),I?I():H&&H()},ae.appendChild(Y),ae.listener=function(ce){E(ce)&&Y.click()},R(ae,te),O(ae,te)},ge=m.date=function(v,H,Q){var fe=v.value,se=fe===void 0?new Date:fe,I=v.submitText,N=I===void 0?"OK":I,re=v.cancelText,te=re===void 0?"Cancel":re,ae=v.submitCallback,ne=v.cancelCallback,oe=v.position,Y=oe===void 0?h.positions.date||Y.top:oe;L(),F();var ce="▾",Le=document.createElement("div"),Oe=document.createElement("div"),he=document.createElement("div"),Xe=function(Pe){Le.innerHTML=h.dateMonths[Pe.getMonth()],Oe.innerHTML=Pe.getDate(),he.innerHTML=Pe.getFullYear()},pt=function(Pe){var Be=new Date(se.getFullYear(),se.getMonth()+1,0).getDate(),Vt=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Vt)>Be&&(Vt=Be.toString()),Pe.target.textContent=Vt,Number(Vt)<1&&(Vt="1"),se.setDate(Number(Vt))},We=function(Pe){var Be=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);Pe.target.textContent=Be,se.setFullYear(Number(Be))},$e=function(Pe){Xe(se)},qe=function(Pe){var Be=new Date(se.getFullYear(),se.getMonth()+Pe+1,0).getDate();se.getDate()>Be&&se.setDate(Be),se.setMonth(se.getMonth()+Pe),Xe(se)},Ht=function(Pe){se.setDate(se.getDate()+Pe),Xe(se)},Jn=function(Pe){var Be=se.getFullYear()+Pe;Be<0?se.setFullYear(0):se.setFullYear(se.getFullYear()+Pe),Xe(se)},Ze=document.createElement("div"),vn=w();Ze.id=vn;var dn=document.createElement("div");dn.classList.add(h.classes.backgroundInfo);var ft=document.createElement("div");ft.classList.add(h.classes.dateSelectorInner);var Gt=document.createElement("div");Gt.classList.add(h.classes.button),Gt.classList.add(h.classes.elementThird),Gt.classList.add(h.classes.dateSelectorUp),Gt.innerHTML=ce;var j=document.createElement("div");j.classList.add(h.classes.button),j.classList.add(h.classes.elementThird),j.classList.add(h.classes.dateSelectorUp),j.innerHTML=ce;var pe=document.createElement("div");pe.classList.add(h.classes.button),pe.classList.add(h.classes.elementThird),pe.classList.add(h.classes.dateSelectorUp),pe.innerHTML=ce,Le.classList.add(h.classes.element),Le.classList.add(h.classes.elementThird),Le.innerHTML=h.dateMonths[se.getMonth()],Oe.classList.add(h.classes.element),Oe.classList.add(h.classes.elementThird),Oe.setAttribute("contentEditable",!0),Oe.addEventListener("input",pt),Oe.addEventListener("blur",$e),Oe.innerHTML=se.getDate(),he.classList.add(h.classes.element),he.classList.add(h.classes.elementThird),he.setAttribute("contentEditable",!0),he.addEventListener("input",We),he.addEventListener("blur",$e),he.innerHTML=se.getFullYear();var _e=document.createElement("div");_e.classList.add(h.classes.button),_e.classList.add(h.classes.elementThird),_e.innerHTML=ce;var Ae=document.createElement("div");Ae.classList.add(h.classes.button),Ae.classList.add(h.classes.elementThird),Ae.innerHTML=ce;var De=document.createElement("div");De.classList.add(h.classes.button),De.classList.add(h.classes.elementThird),De.innerHTML=ce,Gt.onclick=function(){return qe(1)},j.onclick=function(){return Ht(1)},pe.onclick=function(){return Jn(1)},_e.onclick=function(){return qe(-1)},Ae.onclick=function(){return Ht(-1)},De.onclick=function(){return Jn(-1)};var Ve=document.createElement("div");Ve.classList.add(h.classes.button),Ve.classList.add(h.classes.elementHalf),Ve.classList.add(h.classes.backgroundSuccess),Ve.innerHTML=N,Ve.onclick=function(){D(vn,Y),M(),ae?ae(se):H&&H(se)};var Et=document.createElement("div");Et.classList.add(h.classes.button),Et.classList.add(h.classes.elementHalf),Et.classList.add(h.classes.backgroundError),Et.innerHTML=te,Et.onclick=function(){D(vn,Y),M(),ne?ne(se):Q&&Q(se)},ft.appendChild(Gt),ft.appendChild(j),ft.appendChild(pe),ft.appendChild(Le),ft.appendChild(Oe),ft.appendChild(he),ft.appendChild(_e),ft.appendChild(Ae),ft.appendChild(De),dn.appendChild(ft),Ze.appendChild(dn),Ze.appendChild(Ve),Ze.appendChild(Et),Ze.listener=function(Pe){b(Pe)?Ve.click():E(Pe)&&Et.click()},R(Ze,Y),O(Ze,Y)};m.default={alert:$,force:Z,confirm:de,input:G,select:me,date:ge,setOptions:A,hideAlerts:F}}])})}).call(a,r(0)(n))}])})}),Pd={};n6(Pd,{default:()=>so});var r6=Dd(Ld());a6(Pd,Dd(Ld()));var{default:Sd,...u6}=r6,so=Sd!==void 0?Sd:u6;var d0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function g0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Rd(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function o6(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,r=!0,u=0;u=0&&He.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&He.splice(0,He.length),(t===93||t===224)&&(t=91),t in xt){xt[t]=!1;for(var a in An)An[a]===t&&(Ne[a]=!1)}}function f6(e){if(typeof e>"u")Object.keys(it).forEach(function(o){return delete it[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&m0(o)});else if(typeof e=="object")e.key&&m0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Rd(An,s):[];it[m]=it[m].filter(function(p){var f=a?p.method===a:!0;return!(f&&p.scope===n&&o6(p.mods,g))})}})};function Fd(e,t,n,a){if(t.element===a){var r;if(t.scope===n||t.scope==="all"){r=t.mods.length>0;for(var u in xt)Object.prototype.hasOwnProperty.call(xt,u)&&(!xt[u]&&t.mods.indexOf(+u)>-1||xt[u]&&t.mods.indexOf(+u)===-1)&&(r=!1);(t.mods.length===0&&!xt[16]&&!xt[18]&&!xt[17]&&!xt[91]||r||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function _d(e,t){var n=it["*"],a=e.keyCode||e.which||e.charCode;if(Ne.filter.call(this,e)){if((a===93||a===224)&&(a=91),He.indexOf(a)===-1&&a!==229&&He.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var S=f0[f];e[f]&&He.indexOf(S)===-1?He.push(S):!e[f]&&He.indexOf(S)>-1?He.splice(He.indexOf(S),1):f==="metaKey"&&e[f]&&He.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(He=He.slice(He.indexOf(S))))}),a in xt){xt[a]=!0;for(var r in An)An[r]===a&&(Ne[r]=!0);if(!n)return}for(var u in xt)Object.prototype.hasOwnProperty.call(xt,u)&&(xt[u]=e[f0[u]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(He.indexOf(17)===-1&&He.push(17),He.indexOf(18)===-1&&He.push(18),xt[17]=!0,xt[18]=!0);var o=ou();if(n)for(var i=0;i-1}function Ne(e,t,n){He=[];var a=Od(e),r=[],u="all",o=document,i=0,s=!1,l=!0,c="+",m=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(u=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(m=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(u=t);i1&&(r=Rd(An,e)),e=e[e.length-1],e=e==="*"?"*":co(e),e in it||(it[e]=[]),it[e].push({keyup:s,keydown:l,scope:u,mods:r,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!h6(o)&&window&&(Nd.push(o),g0(o,"keydown",function(g){_d(g,o)},m),Md||(Md=!0,g0(window,"focus",function(){He=[]},m)),g0(o,"keyup",function(g){_d(g,o),p6(g)},m))}function b6(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(it).forEach(function(n){var a=it[n].filter(function(r){return r.scope===t&&r.shortcut===e});a.forEach(function(r){r&&r.method&&r.method()})})}var p0={getPressedKeyString:c6,setScope:Ud,getScope:ou,deleteScope:m6,getPressedKeyCodes:l6,isPressed:g6,filter:d6,trigger:b6,unbind:f6,keyMap:uu,modifier:An,modifierMap:f0};for(lo in p0)Object.prototype.hasOwnProperty.call(p0,lo)&&(Ne[lo]=p0[lo]);var lo;typeof document<"u"&&(Bd=window.hotkeys,Ne.noConflict=function(e){return e&&window.hotkeys===Ne&&(window.hotkeys=Bd),Ne},window.hotkeys=Ne);var Bd;var y6=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},T6=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new y6:{reset:()=>{},stop:()=>{}}}},h0=new T6,E6="poegempjloogba",x6="ension://",C6="me-";function iu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function qd(e){return e?e.PROD==="1":!0}function Kd(e){return e?e.MOCK==="1":!1}function Gd(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var v6="rome-ext";function w6(e,t){return t?e+(t-e%t):e}function k6(e,t){return e.split(t).length-1}function A6(e){let t=Date.now(),n=1;for(let a of e)n+=k6(a,"i");return w6(t,n)}function S6(e,t){return Math.floor(Math.random()*(t-e+1))+e}var D6="extension",L6="chro";function P6(){return S6(1e6,1e8)}var jd="BrowserExt";function M6(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var zd="DeepL",Hd="ension",F6="ch"+v6+x6+"cofdb"+E6+"gkncekinflcnj";function Vd(e){let{contentType:t,userAgent:n,url:a,authorization:r,clientVersion:u}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),r&&i.append("authorization",`Bearer ${r}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",F6),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${zd}${jd}${Hd}/${u||"1.1.1"} ${l}`)}else i.append("user-agent",`${zd}${jd}${Hd}/${u||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function _6(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:r}=e,u={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:r||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:A6(n)},id:P6()},o=Vd({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${L6+C6+D6},${t}`,headers:o,body:M6(u),method:"POST"}}function B6(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Sa={},Da={};async function Wd(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u}=n,[o,i]=iu(r);i||(i=iu(u)[1]);let s={refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u||new Date().toISOString()};o||(s=await go(e,t));let[l,c]=iu(s.refreshTokenExpiresAt);i=c,i||(i=iu(s.refreshTokenChecksAt)[1]);let m=s.refreshToken;if(Sa[m])return new Promise((g,p)=>{Sa[m].push((f,S)=>{f?p(f):g(S)})});Sa[m]=[];try{let g=await R6(m,t.onFetch),p={state:{...n,...s,...g},shouldUpdateRefreshToken:i};return Sa[m].forEach(f=>{f(null,p)}),delete Sa[m],p}catch(g){throw Sa[m].forEach(p=>{p(g)}),delete Sa[m],g}}async function go(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Da[e])return new Promise((r,u)=>{Da[e].push((o,i)=>{o?u(o):r(i)})});try{Da[e]=[];let r=new URLSearchParams({grant_type:"auth_key",auth_key:e}),u=new URL("/refresh_token?"+r.toString(),n),o=await a(u.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return Da[e].forEach(m=>{m(null,c)}),delete Da[e],c}catch(r){throw Da[e].forEach(u=>{u(r)}),delete Da[e],r}}async function R6(e,t){if(!e)throw new Error("refreshToken is required");let n=qd(),a=Kd();if(!n&&!a){await Gd(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let r="https://w.deepl.com/oidc/token",u=await t(r,{headers:Vd({url:r,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=B6(u.access_token);if(u.expires_in){let i=new Date,s=new Date(i.getTime()+u.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function $d(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),r=a.getAll("text");if(r.length<1)throw new Error("No text to translate");if(O6(r)>5e3)throw new Error("text too long, the max length is 5000 characters.");let u=a.get("target_lang");if(!u)throw new Error("No target language");let o=a.get("source_lang"),i={..._6({texts:r,authorization:e,target_lang:u,source_lang:o}),responseType:"raw"},s=qd(),l=Kd();if(!s&&!l)return await Gd(50),{translations:r.map(p=>({text:"mock: "+p,detected_source_language:"EN"}))};let c=await n(i.url,i),m=JSON.parse(c.body),g=[];if(m.result&&m.result.texts)g=m.result.texts.map(p=>({text:p.text,detected_source_language:m.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function O6(e){let t=0;for(let n of e)t+=n.length;return t}async function I6(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let r=await N6(t,a);if(r.ok&&r.status>=200&&r.status<400)if(n==="json"){let u=await r.json();return h0.debug("response",JSON.stringify(u,null,2)),u}else{if(n==="text")return await r.text();if(n==="raw"){let u=await r.text(),o=Object.fromEntries([...r.headers.entries()]),i=r.url;return{body:u,headers:o,status:r.status,statusText:r.statusText,url:i}}}else{let u;try{u=await r.text()}catch(o){h0.error("parse response failed",o)}throw new Error(r.status+": "+r.statusText||" "+u||"")}}async function N6(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,r=setTimeout(()=>a.abort(),n),u=await fetch(e,{...t,signal:a.signal});return clearTimeout(r),u}var mo=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>I6({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((u,o)=>{a.append("text",u)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let r=await $d(this.state.accessToken,a.toString(),this.onFetch);if(r&&r.translations&&r.translations.length>0)return Array.isArray(e)?r.translations.map(u=>({text:u.text,detectedSourceLanguage:u.detected_source_language})):{text:r.translations[0].text,detectedSourceLanguage:r.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await $d(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw h0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=iu(e);if(t)n&&Wd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:r})=>{this.setState({...this.state,...a}),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:r}=await Wd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})}).catch(u=>{})}catch(a){this.onFetchTokenError(a)}}};var U6={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},Yd={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},et={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},Rt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},ta={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},U=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=U.getVersionPrecision(e),r=U.getVersionPrecision(t),u=Math.max(a,r),o=0,i=U.map([e,t],s=>{let l=u-U.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return U.map(c.split("."),m=>new Array(20-m.length).join("0")+m).reverse()});for(n&&(o=u-Math.min(a,r)),u-=1;u>=o;){if(i[0][u]>i[1][u])return 1;if(i[0][u]===i[1][u]){if(u===o)return 0;u-=1}else if(i[0][u]{n[o]=u[o]})}return e}static getBrowserAlias(e){return U6[e]}static getBrowserTypeByAlias(e){return Yd[e]||""}},je=/version\/(\d+(\.?_?\d+)+)/i,j6=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=U.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=U.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=U.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=U.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=U.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=U.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=U.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=U.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=U.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=U.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=U.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=U.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=U.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=U.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=U.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=U.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=U.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=U.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=U.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=U.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=U.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=U.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=U.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=U.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=U.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=U.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=U.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:U.getFirstMatch(a,e),version:U.getSecondMatch(a,e)}}}],z6=j6,H6=[{test:[/Roku\/DVP/],describe(e){let t=U.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:Rt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=U.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:Rt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=U.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=U.getWindowsVersionName(t);return{name:Rt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:Rt.iOS},n=U.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=U.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=U.getMacOSVersionName(t),a={name:Rt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=U.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:Rt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=U.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=U.getAndroidVersionName(t),a={name:Rt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=U.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:Rt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=U.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||U.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||U.getFirstMatch(/\bbb(\d+)/i,e);return{name:Rt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=U.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:Rt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=U.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:Rt.Linux}}},{test:[/CrOS/],describe(){return{name:Rt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=U.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.PlayStation4,version:t}}}],W6=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=U.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:et.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:et.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:et.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:et.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:et.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=U.getFirstMatch(/(ipod|iphone)/i,e);return{type:et.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:et.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:et.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:et.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:et.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:et.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:et.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:et.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:et.tv}}}],$6=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:ta.Blink};let t=U.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:ta.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:ta.Trident},n=U.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:ta.Presto},n=U.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:ta.Gecko},n=U.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:ta.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:ta.WebKit},n=U.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],q6=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=U.find(z6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=U.find(H6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=U.find(W6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=U.find($6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return U.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},r=0;if(Object.keys(e).forEach(u=>{let o=e[u];typeof o=="string"?(a[u]=o,r+=1):typeof o=="object"&&(t[u]=o,n+=1)}),n>0){let u=Object.keys(t),o=U.find(u,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=U.find(u,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(r>0){let u=Object.keys(a),o=U.find(u,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),r=U.getBrowserTypeByAlias(a);return t&&r&&(a=r.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,r=this.getBrowserVersion();if(typeof r=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(U.compareVersions(r,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Jd=q6,K6=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Jd(e,t)}static parse(e){return new Jd(e).getResult()}static get BROWSER_MAP(){return Yd}static get ENGINE_MAP(){return ta}static get OS_MAP(){return Rt}static get PLATFORMS_MAP(){return et}},po=K6;var{entries:rg,setPrototypeOf:Xd,isFrozen:G6,getPrototypeOf:V6,getOwnPropertyDescriptor:J6}=Object,{freeze:Ot,seal:pn,create:Y6}=Object,{apply:C0,construct:v0}=typeof Reflect<"u"&&Reflect;C0||(C0=function(e,t,n){return e.apply(t,n)});Ot||(Ot=function(e){return e});pn||(pn=function(e){return e});v0||(v0=function(e,t){return new e(...t)});var X6=nn(Array.prototype.forEach),Zd=nn(Array.prototype.pop),su=nn(Array.prototype.push),bo=nn(String.prototype.toLowerCase),b0=nn(String.prototype.toString),Z6=nn(String.prototype.match),mn=nn(String.prototype.replace),Q6=nn(String.prototype.indexOf),e1=nn(String.prototype.trim),Yt=nn(RegExp.prototype.test),lu=t1(TypeError);function nn(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r/gm),o1=pn(/\${[\w\W]*}/gm),i1=pn(/^data-[\-\w.\u00B7-\uFFFF]/),s1=pn(/^aria-[\-\w]+$/),ug=pn(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),l1=pn(/^(?:\w+script|data):/i),c1=pn(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),og=pn(/^html$/i),ag=Object.freeze({__proto__:null,MUSTACHE_EXPR:r1,ERB_EXPR:u1,TMPLIT_EXPR:o1,DATA_ATTR:i1,ARIA_ATTR:s1,IS_ALLOWED_URI:ug,IS_SCRIPT_OR_DATA:l1,ATTR_WHITESPACE:c1,DOCTYPE_NAME:og}),d1=()=>typeof window>"u"?null:window,g1=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let r="dompurify"+(n?"#"+n:"");try{return e.createPolicy(r,{createHTML(u){return u},createScriptURL(u){return u}})}catch{return null}};function ig(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:d1(),t=C=>ig(C);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:r}=e,{DocumentFragment:u,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:m,DOMParser:g,trustedTypes:p}=e,f=s.prototype,S=fo(f,"cloneNode"),k=fo(f,"nextSibling"),h=fo(f,"childNodes"),A=fo(f,"parentNode");if(typeof o=="function"){let C=r.createElement("template");C.content&&C.content.ownerDocument&&(r=C.content.ownerDocument)}let _,B="",{implementation:L,createNodeIterator:w,createDocumentFragment:y,getElementsByTagName:T}=r,{importNode:b}=n,E={};t.isSupported=typeof rg=="function"&&typeof A=="function"&&L&&L.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:R,ERB_EXPR:D,TMPLIT_EXPR:O,DATA_ATTR:M,ARIA_ATTR:F,IS_SCRIPT_OR_DATA:$,ATTR_WHITESPACE:Z}=ag,{IS_ALLOWED_URI:de}=ag,G=null,me=Se({},[...Qd,...y0,...T0,...E0,...eg]),ge=null,v=Se({},[...tg,...x0,...ng,...ho]),H=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Q=null,fe=null,se=!0,I=!0,N=!1,re=!0,te=!1,ae=!1,ne=!1,oe=!1,Y=!1,ce=!1,Le=!1,Oe=!0,he=!1,Xe="user-content-",pt=!0,We=!1,$e={},qe=null,Ht=Se({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Jn=null,Ze=Se({},["audio","video","img","source","image","track"]),vn=null,dn=Se({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ft="http://www.w3.org/1998/Math/MathML",Gt="http://www.w3.org/2000/svg",j="http://www.w3.org/1999/xhtml",pe=j,_e=!1,Ae=null,De=Se({},[ft,Gt,j],b0),Ve,Et=["application/xhtml+xml","text/html"],Pe="text/html",Be,Vt=null,fh=r.createElement("form"),Vc=function(C){return C instanceof RegExp||C instanceof Function},Es=function(C){if(!(Vt&&Vt===C)){if((!C||typeof C!="object")&&(C={}),C=nr(C),Ve=Et.indexOf(C.PARSER_MEDIA_TYPE)===-1?Ve=Pe:Ve=C.PARSER_MEDIA_TYPE,Be=Ve==="application/xhtml+xml"?b0:bo,G="ALLOWED_TAGS"in C?Se({},C.ALLOWED_TAGS,Be):me,ge="ALLOWED_ATTR"in C?Se({},C.ALLOWED_ATTR,Be):v,Ae="ALLOWED_NAMESPACES"in C?Se({},C.ALLOWED_NAMESPACES,b0):De,vn="ADD_URI_SAFE_ATTR"in C?Se(nr(dn),C.ADD_URI_SAFE_ATTR,Be):dn,Jn="ADD_DATA_URI_TAGS"in C?Se(nr(Ze),C.ADD_DATA_URI_TAGS,Be):Ze,qe="FORBID_CONTENTS"in C?Se({},C.FORBID_CONTENTS,Be):Ht,Q="FORBID_TAGS"in C?Se({},C.FORBID_TAGS,Be):{},fe="FORBID_ATTR"in C?Se({},C.FORBID_ATTR,Be):{},$e="USE_PROFILES"in C?C.USE_PROFILES:!1,se=C.ALLOW_ARIA_ATTR!==!1,I=C.ALLOW_DATA_ATTR!==!1,N=C.ALLOW_UNKNOWN_PROTOCOLS||!1,re=C.ALLOW_SELF_CLOSE_IN_ATTR!==!1,te=C.SAFE_FOR_TEMPLATES||!1,ae=C.WHOLE_DOCUMENT||!1,Y=C.RETURN_DOM||!1,ce=C.RETURN_DOM_FRAGMENT||!1,Le=C.RETURN_TRUSTED_TYPE||!1,oe=C.FORCE_BODY||!1,Oe=C.SANITIZE_DOM!==!1,he=C.SANITIZE_NAMED_PROPS||!1,pt=C.KEEP_CONTENT!==!1,We=C.IN_PLACE||!1,de=C.ALLOWED_URI_REGEXP||ug,pe=C.NAMESPACE||j,H=C.CUSTOM_ELEMENT_HANDLING||{},C.CUSTOM_ELEMENT_HANDLING&&Vc(C.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(H.tagNameCheck=C.CUSTOM_ELEMENT_HANDLING.tagNameCheck),C.CUSTOM_ELEMENT_HANDLING&&Vc(C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(H.attributeNameCheck=C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),C.CUSTOM_ELEMENT_HANDLING&&typeof C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(H.allowCustomizedBuiltInElements=C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),te&&(I=!1),ce&&(Y=!0),$e&&(G=Se({},[...eg]),ge=[],$e.html===!0&&(Se(G,Qd),Se(ge,tg)),$e.svg===!0&&(Se(G,y0),Se(ge,x0),Se(ge,ho)),$e.svgFilters===!0&&(Se(G,T0),Se(ge,x0),Se(ge,ho)),$e.mathMl===!0&&(Se(G,E0),Se(ge,ng),Se(ge,ho))),C.ADD_TAGS&&(G===me&&(G=nr(G)),Se(G,C.ADD_TAGS,Be)),C.ADD_ATTR&&(ge===v&&(ge=nr(ge)),Se(ge,C.ADD_ATTR,Be)),C.ADD_URI_SAFE_ATTR&&Se(vn,C.ADD_URI_SAFE_ATTR,Be),C.FORBID_CONTENTS&&(qe===Ht&&(qe=nr(qe)),Se(qe,C.FORBID_CONTENTS,Be)),pt&&(G["#text"]=!0),ae&&Se(G,["html","head","body"]),G.table&&(Se(G,["tbody"]),delete Q.tbody),C.TRUSTED_TYPES_POLICY){if(typeof C.TRUSTED_TYPES_POLICY.createHTML!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof C.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');_=C.TRUSTED_TYPES_POLICY,B=_.createHTML("")}else _===void 0&&(_=g1(p,a)),_!==null&&typeof B=="string"&&(B=_.createHTML(""));Ot&&Ot(C),Vt=C}},Jc=Se({},["mi","mo","mn","ms","mtext"]),Yc=Se({},["foreignobject","desc","title","annotation-xml"]),hh=Se({},["title","style","font","a","script"]),ju=Se({},y0);Se(ju,T0),Se(ju,n1);let xs=Se({},E0);Se(xs,a1);let bh=function(C){let ee=A(C);(!ee||!ee.tagName)&&(ee={namespaceURI:pe,tagName:"template"});let q=bo(C.tagName),Re=bo(ee.tagName);return Ae[C.namespaceURI]?C.namespaceURI===Gt?ee.namespaceURI===j?q==="svg":ee.namespaceURI===ft?q==="svg"&&(Re==="annotation-xml"||Jc[Re]):!!ju[q]:C.namespaceURI===ft?ee.namespaceURI===j?q==="math":ee.namespaceURI===Gt?q==="math"&&Yc[Re]:!!xs[q]:C.namespaceURI===j?ee.namespaceURI===Gt&&!Yc[Re]||ee.namespaceURI===ft&&!Jc[Re]?!1:!xs[q]&&(hh[q]||!ju[q]):!!(Ve==="application/xhtml+xml"&&Ae[C.namespaceURI]):!1},Ja=function(C){su(t.removed,{element:C});try{C.parentNode.removeChild(C)}catch{C.remove()}},Cs=function(C,ee){try{su(t.removed,{attribute:ee.getAttributeNode(C),from:ee})}catch{su(t.removed,{attribute:null,from:ee})}if(ee.removeAttribute(C),C==="is"&&!ge[C])if(Y||ce)try{Ja(ee)}catch{}else try{ee.setAttribute(C,"")}catch{}},Xc=function(C){let ee,q;if(oe)C=""+C;else{let Bt=Z6(C,/^[\r\n\t ]+/);q=Bt&&Bt[0]}Ve==="application/xhtml+xml"&&pe===j&&(C=''+C+"");let Re=_?_.createHTML(C):C;if(pe===j)try{ee=new g().parseFromString(Re,Ve)}catch{}if(!ee||!ee.documentElement){ee=L.createDocument(pe,"template",null);try{ee.documentElement.innerHTML=_e?B:Re}catch{}}let ct=ee.body||ee.documentElement;return C&&q&&ct.insertBefore(r.createTextNode(q),ct.childNodes[0]||null),pe===j?T.call(ee,ae?"html":"body")[0]:ae?ee.documentElement:ct},Zc=function(C){return w.call(C.ownerDocument||C,C,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},yh=function(C){return C instanceof m&&(typeof C.nodeName!="string"||typeof C.textContent!="string"||typeof C.removeChild!="function"||!(C.attributes instanceof c)||typeof C.removeAttribute!="function"||typeof C.setAttribute!="function"||typeof C.namespaceURI!="string"||typeof C.insertBefore!="function"||typeof C.hasChildNodes!="function")},zu=function(C){return typeof i=="object"?C instanceof i:C&&typeof C=="object"&&typeof C.nodeType=="number"&&typeof C.nodeName=="string"},In=function(C,ee,q){E[C]&&X6(E[C],Re=>{Re.call(t,ee,q,Vt)})},Qc=function(C){let ee;if(In("beforeSanitizeElements",C,null),yh(C))return Ja(C),!0;let q=Be(C.nodeName);if(In("uponSanitizeElement",C,{tagName:q,allowedTags:G}),C.hasChildNodes()&&!zu(C.firstElementChild)&&(!zu(C.content)||!zu(C.content.firstElementChild))&&Yt(/<[/\w]/g,C.innerHTML)&&Yt(/<[/\w]/g,C.textContent))return Ja(C),!0;if(!G[q]||Q[q]){if(!Q[q]&&t4(q)&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,q)||H.tagNameCheck instanceof Function&&H.tagNameCheck(q)))return!1;if(pt&&!qe[q]){let Re=A(C)||C.parentNode,ct=h(C)||C.childNodes;if(ct&&Re){let Bt=ct.length;for(let Wt=Bt-1;Wt>=0;--Wt)Re.insertBefore(S(ct[Wt],!0),k(C))}}return Ja(C),!0}return C instanceof s&&!bh(C)||(q==="noscript"||q==="noembed")&&Yt(/<\/no(script|embed)/i,C.innerHTML)?(Ja(C),!0):(te&&C.nodeType===3&&(ee=C.textContent,ee=mn(ee,R," "),ee=mn(ee,D," "),ee=mn(ee,O," "),C.textContent!==ee&&(su(t.removed,{element:C.cloneNode()}),C.textContent=ee)),In("afterSanitizeElements",C,null),!1)},e4=function(C,ee,q){if(Oe&&(ee==="id"||ee==="name")&&(q in r||q in fh))return!1;if(!(I&&!fe[ee]&&Yt(M,ee))&&!(se&&Yt(F,ee))){if(!ge[ee]||fe[ee]){if(!(t4(C)&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,C)||H.tagNameCheck instanceof Function&&H.tagNameCheck(C))&&(H.attributeNameCheck instanceof RegExp&&Yt(H.attributeNameCheck,ee)||H.attributeNameCheck instanceof Function&&H.attributeNameCheck(ee))||ee==="is"&&H.allowCustomizedBuiltInElements&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,q)||H.tagNameCheck instanceof Function&&H.tagNameCheck(q))))return!1}else if(!vn[ee]&&!Yt(de,mn(q,Z,""))&&!((ee==="src"||ee==="xlink:href"||ee==="href")&&C!=="script"&&Q6(q,"data:")===0&&Jn[C])&&!(N&&!Yt($,mn(q,Z,"")))&&q)return!1}return!0},t4=function(C){return C.indexOf("-")>0},n4=function(C){let ee,q,Re,ct;In("beforeSanitizeAttributes",C,null);let{attributes:Bt}=C;if(!Bt)return;let Wt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ge};for(ct=Bt.length;ct--;){ee=Bt[ct];let{name:ht,namespaceURI:Ya}=ee;if(q=ht==="value"?ee.value:e1(ee.value),Re=Be(ht),Wt.attrName=Re,Wt.attrValue=q,Wt.keepAttr=!0,Wt.forceKeepAttr=void 0,In("uponSanitizeAttribute",C,Wt),q=Wt.attrValue,Wt.forceKeepAttr||(Cs(ht,C),!Wt.keepAttr))continue;if(!re&&Yt(/\/>/i,q)){Cs(ht,C);continue}te&&(q=mn(q,R," "),q=mn(q,D," "),q=mn(q,O," "));let a4=Be(C.nodeName);if(e4(a4,Re,q)){if(he&&(Re==="id"||Re==="name")&&(Cs(ht,C),q=Xe+q),_&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!Ya)switch(p.getAttributeType(a4,Re)){case"TrustedHTML":{q=_.createHTML(q);break}case"TrustedScriptURL":{q=_.createScriptURL(q);break}}try{Ya?C.setAttributeNS(Ya,ht,q):C.setAttribute(ht,q),Zd(t.removed)}catch{}}}In("afterSanitizeAttributes",C,null)},Th=function C(ee){let q,Re=Zc(ee);for(In("beforeSanitizeShadowDOM",ee,null);q=Re.nextNode();)In("uponSanitizeShadowNode",q,null),!Qc(q)&&(q.content instanceof u&&C(q.content),n4(q));In("afterSanitizeShadowDOM",ee,null)};return t.sanitize=function(C){let ee=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},q,Re,ct,Bt;if(_e=!C,_e&&(C=""),typeof C!="string"&&!zu(C))if(typeof C.toString=="function"){if(C=C.toString(),typeof C!="string")throw lu("dirty is not a string, aborting")}else throw lu("toString is not a function");if(!t.isSupported)return C;if(ne||Es(ee),t.removed=[],typeof C=="string"&&(We=!1),We){if(C.nodeName){let Ya=Be(C.nodeName);if(!G[Ya]||Q[Ya])throw lu("root node is forbidden and cannot be sanitized in-place")}}else if(C instanceof i)q=Xc(""),Re=q.ownerDocument.importNode(C,!0),Re.nodeType===1&&Re.nodeName==="BODY"||Re.nodeName==="HTML"?q=Re:q.appendChild(Re);else{if(!Y&&!te&&!ae&&C.indexOf("<")===-1)return _&&Le?_.createHTML(C):C;if(q=Xc(C),!q)return Y?null:Le?B:""}q&&oe&&Ja(q.firstChild);let Wt=Zc(We?C:q);for(;ct=Wt.nextNode();)Qc(ct)||(ct.content instanceof u&&Th(ct.content),n4(ct));if(We)return C;if(Y){if(ce)for(Bt=y.call(q.ownerDocument);q.firstChild;)Bt.appendChild(q.firstChild);else Bt=q;return(ge.shadowroot||ge.shadowrootmod)&&(Bt=b.call(n,Bt,!0)),Bt}let ht=ae?q.outerHTML:q.innerHTML;return ae&&G["!doctype"]&&q.ownerDocument&&q.ownerDocument.doctype&&q.ownerDocument.doctype.name&&Yt(og,q.ownerDocument.doctype.name)&&(ht=" -`+ht),te&&(ht=mn(ht,R," "),ht=mn(ht,D," "),ht=mn(ht,O," ")),_&&Le?_.createHTML(ht):ht},t.setConfig=function(C){Es(C),ne=!0},t.clearConfig=function(){Vt=null,ne=!1},t.isValidAttribute=function(C,ee,q){Vt||Es({});let Re=Be(C),ct=Be(ee);return e4(Re,ct,q)},t.addHook=function(C,ee){typeof ee=="function"&&(E[C]=E[C]||[],su(E[C],ee))},t.removeHook=function(C){if(E[C])return Zd(E[C])},t.removeHooks=function(C){E[C]&&(E[C]=[])},t.removeAllHooks=function(){E={}},t}var Ie=ig();var w0=so.alert;var sg={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var lg={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var cg={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var h1=[{code:"zh-CN",messages:sg},{code:"zh-TW",messages:lg},{code:"en",messages:cg}],fn="immersiveTranslateDeeplGlobalState",yo="immersiveTranslateBingGlobalState",an={};for(let e of h1)an[e.code]=e.messages;var La="Immersive Translate",X="immersive-translate";var xe="immersiveTranslate",To="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",Sn=xe+"GoogleAccessToken",cu=xe+"AuthFlow",Eo="immersive-translate-config-latest.json",k0=xe+"AuthState",xo=xe+"IframeMessage",Q5=xe+"WaitForRateLimit",gg=xe+"DocumentMessageAsk",It=xe+"DocumentMessageTellThirdParty",mg=xe+"DocumentMessageThirdPartyTell",b1=xe+"DocumentMessageHandler",y1=`${xe}Container`,pg=`${xe}SpecifiedContainer`,Un="buildinConfig",ar="localConfig",du="openOptionsPage",A0="openAboutPage",fg="translateLocalPdfFile";var gu="openEbookViewer",mu="openEbookBuilder";var Co=`${xe}PageTranslatedStatus`,ev=`${xe}PageUrlChanged`,na=`${xe}ReceiveCommand`,hg=xe+"LastUseMouseHoverTime",bg=xe+"LastUseInputTime",jn=xe+"LastUseManualTranslatePageTime",tv=`${xe}PopupReceiveMessage`,T1="immersivetranslate.com",E1="config.immersivetranslate.com",nv=`https://${T1}/`,aa=`https://${E1}/default_config.json`,av=`${xe}Mark`,pu="immersiveTranslateEffect",$t=`${xe}Root`,rv=`data-${X}-effect`,Dn=`data-${X}-translation-element-mark`,yg=`${xe}TranslationElementMark`,uv=`${xe}TranslatedMark`,ov=`${xe}ParagraphId`,Tg=`${xe}LoadingId`,S0=`data-${X}-loading-id`,Eg=`${xe}ErrorId`,vo=`data-${X}-error-id`,x1=`${xe}AtomicBlockMark`,xg=`${xe}ExcludeMark`,iv=`data-${X}-exclude-mark`,C1=`${xe}StayOriginalMark`,sv=`${xe}PreWhitespaceMark`,wo=`${xe}InlineMark`,Cg=`${xe}BlockMark`,lv=`${xe}Left`,cv=`${xe}Right`,dv=`${xe}Width`,gv=`${xe}Height`,mv=`${xe}Top`,pv=`${xe}FontSize`,vg="lastRunTime",fv=`${xe}GlobalStyleMark`,ko=["@","#"],Ao=" --- ",wg=` -`,rn=`${X}-target-wrapper`,hv=`${X}-pdf-target-container`,kg=`${X}-target-inner`,bv=`${X}-source-wrapper`,D0=`${X}-target-translation-block-wrapper`,yv=`${X}-root-translation-theme`,rr=`${xe}RootTranslationTheme`,Ag=`${X}-target-translation-vertical-block-wrapper`,Sg=`${X}-target-translation-pdf-block-wrapper`,Dg=`${X}-target-translation-pre-whitespace`,L0=`${X}-target-translation-inline-wrapper`,P0=["none","dashed","underline","dashedBorder","solidBorder","mask","opacity","dotted","dividingLine","highlight","marker","marker2","blockquote","weakening","grey","paper","italic","bold","thinDashed","wavy","nativeDotted","nativeDashed","nativeUnderline"],fu={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Xt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],Lg={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},Pg={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},Mg={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var Fg=["toggleTranslatePage","toggleTranslateTheWholePage","toggleOnlyTransation","toggleTranslateToThePageEndImmediately","toggleTranslateTheMainPage","toggleTranslationMask"],_g=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"],Bg="Night gathers, and now my watch begins. It shall not end until my death. I shall take no wife, hold no lands, father no children. I shall wear no crowns and win no glory. I shall live and die at my post.",M0="\u957F\u591C\u5C06\u81F3\uFF0C\u6211\u4ECE\u4ECA\u5F00\u59CB\u5B88\u671B\uFF0C\u81F3\u6B7B\u65B9\u4F11\u3002\u6211\u5C06\u4E0D\u5A36\u59BB\u3001\u4E0D\u5C01\u5730\u3001\u4E0D\u751F\u5B50\u3002\u6211\u5C06\u4E0D\u6234\u5B9D\u51A0\uFF0C\u4E0D\u4E89\u8363\u5BA0\u3002\u6211\u5C06\u5C3D\u5FE0\u804C\u5B88\uFF0C\u751F\u6B7B\u4E8E\u65AF\u3002",So="zh-CN",Do="https://immersivetranslate.com/docs/communities/",dg=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],hn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"chrome_zip"};var Lh=Object.create,As=Object.defineProperty,Ph=Object.getOwnPropertyDescriptor,g4=Object.getOwnPropertyNames,Mh=Object.getPrototypeOf,Fh=Object.prototype.hasOwnProperty,_h=(e,t)=>function(){return t||(0,e[g4(e)[0]])((t={exports:{}}).exports,t),t.exports},Bh=(e,t)=>{for(var n in t)As(e,n,{get:t[n],enumerable:!0})},ks=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of g4(t))!Fh.call(e,r)&&r!==n&&As(e,r,{get:()=>t[r],enumerable:!(a=Ph(t,r))||a.enumerable});return e},Rh=(e,t,n)=>(ks(e,t,"default"),n&&ks(n,t,"default")),m4=(e,t,n)=>(n=e!=null?Lh(Mh(e)):{},ks(t||!e||!e.__esModule?As(n,"default",{value:e,enumerable:!0}):n,e)),p4=_h({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var r={exports:{}};a(r),n.browser=r.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",r=u=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(y,T=void 0){super(T),this.createItem=y}get(y){return this.has(y)||this.set(y,this.createItem(y)),super.get(y)}}let s=v=>v&&typeof v=="object"&&typeof v.then=="function",l=(v,y)=>(...T)=>{u.runtime.lastError?v.reject(new Error(u.runtime.lastError.message)):y.singleCallbackArg||T.length<=1&&y.singleCallbackArg!==!1?v.resolve(T[0]):v.resolve(T)},c=v=>v==1?"argument":"arguments",m=(v,y)=>function(b,...x){if(x.lengthy.maxArgs)throw new Error(`Expected at most ${y.maxArgs} ${c(y.maxArgs)} for ${v}(), got ${x.length}`);return new Promise((R,D)=>{if(y.fallbackToNoCallback)try{b[v](...x,l({resolve:R,reject:D},y))}catch{b[v](...x),y.fallbackToNoCallback=!1,y.noCallback=!0,R()}else y.noCallback?(b[v](...x),R()):b[v](...x,l({resolve:R,reject:D},y))})},g=(v,y,T)=>new Proxy(y,{apply(b,x,R){return T.call(x,v,...R)}}),p=Function.call.bind(Object.prototype.hasOwnProperty),f=(v,y={},T={})=>{let b=Object.create(null),x={has(D,I){return I in v||I in b},get(D,I,M){if(I in b)return b[I];if(!(I in v))return;let F=v[I];if(typeof F=="function")if(typeof y[I]=="function")F=g(v,v[I],y[I]);else if(p(T,I)){let $=m(I,T[I]);F=g(v,v[I],$)}else F=F.bind(v);else if(typeof F=="object"&&F!==null&&(p(y,I)||p(T,I)))F=f(F,y[I],T[I]);else if(p(T,"*"))F=f(F,y[I],T["*"]);else return Object.defineProperty(b,I,{configurable:!0,enumerable:!0,get(){return v[I]},set($){v[I]=$}}),F;return b[I]=F,F},set(D,I,M,F){return I in b?b[I]=M:v[I]=M,!0},defineProperty(D,I,M){return Reflect.defineProperty(b,I,M)},deleteProperty(D,I){return Reflect.deleteProperty(b,I)}},R=Object.create(v);return new Proxy(R,x)},A=v=>({addListener(y,T,...b){y.addListener(v.get(T),...b)},hasListener(y,T){return y.hasListener(v.get(T))},removeListener(y,T){y.removeListener(v.get(T))}}),k=new i(v=>typeof v!="function"?v:function(T){let b=f(T,{},{getContent:{minArgs:0,maxArgs:0}});v(b)}),h=new i(v=>typeof v!="function"?v:function(T,b,x){let R=!1,D,I=new Promise(Z=>{D=function(de){R=!0,Z(de)}}),M;try{M=v(T,b,D)}catch(Z){M=Promise.reject(Z)}let F=M!==!0&&s(M);if(M!==!0&&!F&&!R)return!1;let $=Z=>{Z.then(de=>{x(de)},de=>{let V;de&&(de instanceof Error||typeof de.message=="string")?V=de.message:V="An unexpected error occurred",x({__mozWebExtensionPolyfillReject__:!0,message:V})}).catch(de=>{})};return $(F?M:I),!0}),S=({reject:v,resolve:y},T)=>{u.runtime.lastError?u.runtime.lastError.message===a?y():v(new Error(u.runtime.lastError.message)):T&&T.__mozWebExtensionPolyfillReject__?v(new Error(T.message)):y(T)},_=(v,y,T,...b)=>{if(b.lengthy.maxArgs)throw new Error(`Expected at most ${y.maxArgs} ${c(y.maxArgs)} for ${v}(), got ${b.length}`);return new Promise((x,R)=>{let D=S.bind(null,{resolve:x,reject:R});b.push(D),T.sendMessage(...b)})},B={devtools:{network:{onRequestFinished:A(k)}},runtime:{onMessage:A(h),onMessageExternal:A(h),sendMessage:_.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:_.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},L={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":L},services:{"*":L},websites:{"*":L}},f(u,B,o)};n.exports=r(chrome)}else n.exports=globalThis.browser})}}),f4={};Bh(f4,{default:()=>Hu});var Ih=m4(p4());Rh(f4,m4(p4()));var{default:d4,...Oh}=Ih,Hu=d4!==void 0?d4:Oh;globalThis.immersiveTranslateBrowserAPI=Hu;var Gu,ve,x4,Nh,Gr,h4,E4,qu={},C4=[],Uh=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Yn(e,t){for(var n in t)e[n]=t[n];return e}function w4(e){var t=e.parentNode;t&&t.removeChild(e)}function Ds(e,t,n){var a,r,u,o={};for(u in t)u=="key"?a=t[u]:u=="ref"?r=t[u]:o[u]=t[u];if(arguments.length>2&&(o.children=arguments.length>3?Gu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(u in e.defaultProps)o[u]===void 0&&(o[u]=e.defaultProps[u]);return Wu(e,o,a,r,null)}function Wu(e,t,n,a,r){var u={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:r??++x4};return r==null&&ve.vnode!=null&&ve.vnode(u),u}function rt(e){return e.children}function $u(e,t){this.props=e,this.context=t}function Xa(e,t){if(t==null)return e.__?Xa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Wu(p.type,p.props,p.key,p.ref?p.ref:null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(g=h[c])===null||g&&p.key==g.key&&p.type===g.type)h[c]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Yu}),n.__[e]}function W(e){return Jr=1,Wh(z4,e)}function Wh(e,t,n){var a=Zu(Yr++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):z4(void 0,t),function(u){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,u);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Qe,!Qe.u)){Qe.u=!0;var r=Qe.shouldComponentUpdate;Qe.shouldComponentUpdate=function(u,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!r||r.call(this,u,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var m=c.__[0];c.__=c.__N,c.__N=void 0,m!==c.__[0]&&(l=!0)}}),!!l&&(!r||r.call(this,u,o,i))}}return a.__N||a.__}function ke(e,t){var n=Zu(Yr++,3);!ve.__s&&j4(n.__H,t)&&(n.__=e,n.i=t,Qe.__H.__h.push(n))}function kn(e){return Jr=5,U4(function(){return{current:e}},[])}function U4(e,t){var n=Zu(Yr++,7);return j4(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function Xn(e,t){return Jr=8,U4(function(){return e},t)}function Qu(e){var t=Qe.context[e.__c],n=Zu(Yr++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Qe)),t.props.value):e.__}function $h(){for(var e;e=N4.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Xu),e.__H.__h.forEach(Ms),e.__H.__h=[]}catch(t){e.__H.__h=[],ve.__e(t,e.__v)}}ve.__b=function(e){typeof e.type!="function"||e.o||e.type===rt?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Qe=null,F4&&F4(e)},ve.__r=function(e){_4&&_4(e),Yr=0;var t=(Qe=e.__c).__H;t&&(Ps===Qe?(t.__h=[],Qe.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Yu,n.__N=n.i=void 0})):(t.__h.forEach(Xu),t.__h.forEach(Ms),t.__h=[])),Ps=Qe},ve.diffed=function(e){B4&&B4(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(N4.push(t)!==1&&M4===ve.requestAnimationFrame||((M4=ve.requestAnimationFrame)||qh)($h)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Yu&&(n.__=n.__V),n.i=void 0,n.__V=Yu})),Ps=Qe=null},ve.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Xu),n.__h=n.__h.filter(function(a){return!a.__||Ms(a)})}catch(a){t.some(function(r){r.__h&&(r.__h=[])}),t=[],ve.__e(a,n.__v)}}),R4&&R4(e,t)},ve.unmount=function(e){I4&&I4(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Xu(a)}catch(r){t=r}}),n.__H=void 0,t&&ve.__e(t,n.__v))};var O4=typeof requestAnimationFrame=="function";function qh(e){var t,n=function(){clearTimeout(a),O4&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);O4&&(t=requestAnimationFrame(n))}function Xu(e){var t=Qe,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Qe=t}function Ms(e){var t=Qe;e.__c=e.__(),Qe=t}function j4(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function z4(e,t){return typeof t=="function"?t(e):t}var Xr;function Ws(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function X4(e,t=","){return e.map(Ws).join(t)}var $s=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function Za(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function to(e,t="@media "){return t+Ue(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(a=>`(${a}-width:${n[a]})`).join(" and "))).join(",")}function Ue(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function H4(e){return e}function Qr(){}var ut={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function Z4(e){return e.match(/[-=:;]/g)?.length||0}function Os(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(Z4(e),15)<<18}var Kh=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function qs({n:e,i:t,v:n=[]},a,r,u){e&&(e=Ws({n:e,i:t,v:n})),u=[...Ue(u)];for(let i of n){let s=a.theme("screens",i);for(let l of Ue(s&&to(s)||a.v(i))){var o;u.push(l),r|=s?67108864|Os(l):i=="dark"?1073741824:l[0]=="@"?Os(l):(o=l,1<<~(/:([a-z-]+)/.test(o)&&~Kh.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:r,r:u,i:t}}var Ks=new Map;function Ns(e){if(e.d){let t=[],n=Fs(e.r.reduce((a,r)=>r[0]=="@"?(t.push(r),a):r?Fs(a,u=>Fs(r,o=>{let i=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(i){let s=u.indexOf(i[1]);return~s?u.slice(0,s)+i[0]+u.slice(s+i[1].length):_s(u,o)}return _s(o,u)})):a,"&"),a=>_s(a,e.n?"."+$s(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((a,r)=>r+"{"+a+"}",e.d)}}function Fs(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,a,r)=>t(a)+r)}function _s(e,t){return e.replace(/&/g,t)}var W4=new Intl.Collator("en",{numeric:!0});function Q4(e,t){for(var n=0,a=e.length;n>1;0>=ed(e[r],t)?n=r+1:a=r}return a}function ed(e,t){let n=e.p&ut.o;return n==(t.p&ut.o)&&(n==ut.b||n==ut.o)?0:e.p-t.p||e.o-t.o||W4.compare($4(e.n),$4(t.n))||W4.compare(q4(e.n),q4(t.n))}function $4(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function q4(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function Bs(e,t){return Math.round(parseInt(e,16)*t)}function Nn(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:a}=t,r=a?`var(${a})`:n;if(e.includes(""))return e.replace("",r);if(e[0]=="#"&&(e.length==4||e.length==7)){let u=(e.length-1)/3,o=[17,1,.062272][u-1];return`rgba(${[Bs(e.substr(1,u),o),Bs(e.substr(1+u,u),o),Bs(e.substr(1+2*u,u),o),r]})`}return r=="1"?e:r=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${r})`)}function Vs(e,t,n,a,r=[]){return function u(o,{n:i,p:s,r:l=[],i:c},m){let g=[],p="",f=0,A=0;for(let S in o||{}){var k,h;let _=o[S];if(S[0]=="@"){if(!_)continue;if(S[1]=="a"){g.push(...Ys(i,s,Zr(""+_),m,s,l,c,!0));continue}if(S[1]=="l"){for(let B of Ue(_))g.push(...u(B,{n:i,p:(k=ut[S[7]],s&~ut.o|k),r:S[7]=="d"?[]:l,i:c},m));continue}if(S[1]=="i"){g.push(...Ue(_).map(B=>({p:-1,o:0,r:[],d:S+" "+B})));continue}if(S[1]=="k"){g.push({p:ut.d,o:0,r:[S],d:u(_,{p:ut.d},m).map(Ns).join("")});continue}if(S[1]=="f"){g.push(...Ue(_).map(B=>({p:ut.d,o:0,r:[S],d:u(B,{p:ut.d},m).map(Ns).join("")})));continue}}if(typeof _!="object"||Array.isArray(_))S=="label"&&_?i=_+Za(JSON.stringify([s,c,o])):(_||_===0)&&(S=S.replace(/[A-Z]/g,B=>"-"+B.toLowerCase()),A+=1,f=Math.max(f,(h=S)[0]=="-"?0:Z4(h)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(h)?+!!RegExp.$1||-!!RegExp.$2:0)+1),p+=(p?";":"")+Ue(_).map(B=>m.s(S,Gs(""+B,m.theme)+(c?" !important":""))).join(";"));else if(S[0]=="@"||S.includes("&")){let B=s;S[0]=="@"&&(S=S.replace(/\bscreen\(([^)]+)\)/g,(L,v)=>{let y=m.theme("screens",v);return y?(B|=67108864,to(y,"")):L}),B|=Os(S)),g.push(...u(_,{n:i,p:B,r:[...l,S],i:c},m))}else g.push(...u(_,{p:s,r:[...l,S]},m))}return g.unshift({n:i,p:s,o:Math.max(0,15-A)+1.5*Math.min(f||15,15),r:l,d:p}),g.sort(ed)}(e,qs(t,n,a,r),n)}function Gs(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,a,r,u,o="")=>{let i=t(r,o);return typeof i=="function"&&/color|fill|stroke/i.test(r)?Nn(i):""+Ue(i).filter(s=>Object(s)!==s)})}function Js(e,t){let n,a=[];for(let r of e)r.d&&r.n?n?.p==r.p&&""+n.r==""+r.r?(n.c=[n.c,r.c].filter(Boolean).join(" "),n.d=n.d+";"+r.d):a.push(n={...r,n:r.n&&t}):a.push({...r,n:r.n&&t});return a}function eo(e,t,n=ut.u,a,r){let u=[];for(let o of e)for(let i of function(s,l,c,m,g){s={...s,i:s.i||g};let p=function(f,A){let k=Ks.get(f.n);return k?k(f,A):A.r(f.n,f.v[0]=="dark")}(s,l);return p?typeof p=="string"?({r:m,p:c}=qs(s,l,c,m),Js(eo(Zr(p),l,c,m,s.i),s.n)):Array.isArray(p)?p.map(f=>{var A,k;return{o:0,...f,r:[...Ue(m),...Ue(f.r)],p:(A=c,k=f.p??c,A&~ut.o|k)}}):Vs(p,s,l,c,m):[{c:Ws(s),p:0,o:0,r:[]}]}(o,t,n,a,r))u.splice(Q4(u,i),0,i);return u}function Ys(e,t,n,a,r,u,o,i){return Js((i?n.flatMap(s=>eo([s],a,r,u,o)):eo(n,a,r,u,o)).map(s=>s.p&ut.o&&(s.n||t==ut.b)?{...s,p:s.p&~ut.o|t,o:0}:s),e)}function Vh(e,t,n,a){var r;return r=(u,o)=>{let{n:i,p:s,r:l,i:c}=qs(u,o,t);return n&&Ys(i,t,n,o,s,l,c,a)},Ks.set(e,r),e}function Rs(e,t,n){if(e[e.length-1]!="("){let a=[],r=!1,u=!1,o="";for(let i of e)if(!(i=="("||/[~@]$/.test(i))){if(i[0]=="!"&&(i=i.slice(1),r=!r),i.endsWith(":")){a[i=="dark:"?"unshift":"push"](i.slice(0,-1));continue}i[0]=="-"&&(i=i.slice(1),u=!u),i.endsWith("-")&&(i=i.slice(0,-1)),i&&i!="&"&&(o+=(o&&"-")+i)}o&&(u&&(o="-"+o),t[0].push({n:o,v:a.filter(Gh),i:r}))}}function Gh(e,t,n){return n.indexOf(e)==t}var K4=new Map;function Zr(e){let t=K4.get(e);if(!t){let n=[],a=[[]],r=0,u=0,o=null,i=0,s=(l,c=0)=>{r!=i&&(n.push(e.slice(r,i+c)),l&&Rs(n,a)),r=i+1};for(;i1?m.slice(0,-1)+Za(JSON.stringify([m,g])):m+"("+X4(g)+")",ut.a,g,/@$/.test(m))],a)}c=n.lastIndexOf("(",c-1)}n.length=c+1}else/[~@]/.test(l)&&e[i+1]=="("&&a.unshift([])}s(!0),K4.set(e,t=a[0])}return t}function td(e,t,n){return t.reduce((a,r,u)=>a+n(r)+e[u+1],e[0])}function nd(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?td(e,t,n=>Is(n).trim()):t.filter(Boolean).reduce((n,a)=>n+Is(a),e?Is(e):"")}function Is(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=nd(e[0],e.slice(1)))&&(n+=" "+t);else for(let a in e)e[a]&&(n+=" "+a);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var hE=ad("@"),bE=ad("~");function ad(e){return new Proxy(function(n,...a){return t("",n,a)},{get(n,a){return a in n?n[a]:function(r,...u){return t(a,r,u)}}});function t(n,a,r){return X4(Zr(n+e+"("+nd(a,r)+")"))}}function Us(e,t){return Array.isArray(e)?V4(td(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?V4(e):[e]}var Jh=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function V4(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],a=[n[0]],r=[];for(;t=Jh.exec(e);)t[4]&&(n.shift(),r.shift()),t[3]?(r.unshift(t[3]),n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))),n[0][t[1]]=t[2]);return a}function rd(e,...t){var n;let a=Us(e,t),r=(a.find(u=>u.label)?.label||"css")+Za(JSON.stringify(a));return n=(u,o)=>Js(a.flatMap(i=>Vs(i,u,o,ut.o)),r),Ks.set(r,n),r}var yE=new Proxy(function(e,t){return G4("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,a){return G4(t,n,a)}}});function G4(e,t,n){return{toString(){return rd({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function K(e,t,n){return[e,js(t,n)]}function js(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,a)=>({[e]:t?t(n,a):zs(n,1)}):n=>e||{[n[1]]:zs(n,2)}}function zs(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function G(e,t,n,a){return[e,Yh(t,n,a)]}function Yh(e,t,n){let a=typeof t=="string"?(r,u)=>({[t]:n?n(r,u):r._}):t||(({1:r,_:u},o,i)=>({[r||i]:u}));return(r,u)=>{let o=ud(e||r[1]),i=u.theme(o,r.$$)??An(r.$$,o,u);if(i!=null)return r._=zs(r,0,i),a(r,u,o)}}function dt(e,t={},n){return[e,Xh(t,n)]}function Xh(e={},t){return(n,a)=>{let{section:r=ud(n[0]).replace("-","")+"Color"}=e,[u,o]=Zh(n.$$);if(!u)return;let i=a.theme(r,u)||An(u,r,a);if(!i||typeof i=="object")return;let{opacityVariable:s=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=r.replace("Color","Opacity"),property:c=r,selector:m}=e,g=a.theme(l,o||"DEFAULT")||o&&An(o,l,a),p=t||(({_:A})=>{let k=eu(c,A);return m?{[m]:k}:k});n._={value:Nn(i,{opacityVariable:s||void 0,opacityValue:g||void 0}),color:A=>Nn(i,A),opacityVariable:s||void 0,opacityValue:g||void 0};let f=p(n,a);if(!n.dark){let A=a.d(r,u,i);A&&A!==i&&(n._={value:Nn(A,{opacityVariable:s||void 0,opacityValue:g||"1"}),color:k=>Nn(A,k),opacityVariable:s||void 0,opacityValue:g||void 0},f={"&":f,[a.v("dark")]:p(n,a)})}return f}}function Zh(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function eu(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function An(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=Qa(Gs(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function ud(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function Qa(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",a,r="")=>Qa(n)+a+Qa(r)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var TE=Symbol();function tu({presets:e=[],...t}){let n={darkMode:void 0,darkColor:void 0,preflight:t.preflight!==!1&&[],theme:{},variants:Ue(t.variants),rules:Ue(t.rules),ignorelist:Ue(t.ignorelist),hash:void 0,stringify:(a,r)=>a+":"+r,finalize:[]};for(let a of Ue([...e,{darkMode:t.darkMode,darkColor:t.darkColor,preflight:t.preflight!==!1&&Ue(t.preflight),theme:t.theme,hash:t.hash,stringify:t.stringify,finalize:t.finalize}])){let{preflight:r,darkMode:u=n.darkMode,darkColor:o=n.darkColor,theme:i,variants:s,rules:l,ignorelist:c,hash:m=n.hash,stringify:g=n.stringify,finalize:p}=typeof a=="function"?a(n):a;n={preflight:n.preflight!==!1&&r!==!1&&[...n.preflight,...Ue(r)],darkMode:u,darkColor:o,theme:{...n.theme,...i,extend:{...n.theme.extend,...i?.extend}},variants:[...n.variants,...Ue(s)],rules:[...n.rules,...Ue(l)],ignorelist:[...n.ignorelist,...Ue(c)],hash:m,stringify:g,finalize:[...n.finalize,...Ue(p)]}}return n}function J4(e,t,n,a,r,u){for(let o of t){let i=n.get(o);i||n.set(o,i=a(o));let s=i(e,r,u);if(s)return s}}function Qh(e){var t;return Hs(e[0],typeof(t=e[1])=="function"?t:()=>t)}function e2(e){var t,n;return Array.isArray(e)?Hs(e[0],js(e[1],e[2])):Hs(e,js(t,n))}function Hs(e,t){return od(e,(n,a,r,u)=>{let o=a.exec(n);if(o)return o.$$=n.slice(o[0].length),o.dark=u,t(o,r)})}function od(e,t){let n=Ue(e).map(t2);return(a,r,u)=>{for(let o of n){let i=t(a,o,r,u);if(i)return i}}}function t2(e){return typeof e=="string"?RegExp("^"+e+(e.includes("$")||e.slice(-1)=="-"?"":"$")):e}function n2(e,t){let n=tu(e),a=function({theme:s,darkMode:l,darkColor:c=Qr,variants:m,rules:g,hash:p,stringify:f,ignorelist:A,finalize:k}){let h=new Map,S=new Map,_=new Map,B=new Map,L=od(A,(T,b)=>b.test(T));m.push(["dark",Array.isArray(l)||l=="class"?`${Ue(l)[1]||".dark"} &`:typeof l=="string"&&l!="media"?l:"@media (prefers-color-scheme:dark)"]);let v=typeof p=="function"?T=>p(T,Za):p?Za:H4;v!==H4&&k.push(T=>({...T,n:T.n&&v(T.n),d:T.d?.replace(/--(tw(?:-[\w-]+)?)\b/g,(b,x)=>"--"+v(x).replace("#",""))}));let y={theme:function({extend:T={},...b}){let x={},R={get colors(){return D("colors")},theme:D,negative(){return{}},breakpoints(M){let F={};for(let $ in M)typeof M[$]=="string"&&(F["screen-"+$]=M[$]);return F}};return D;function D(M,F,$,Z){if(M){if({1:M,2:Z}=/^(\S+?)(?:\s*\/\s*([^/]+))?$/.exec(M)||[,M],/[.[]/.test(M)){let ge=[];M.replace(/\[([^\]]+)\]|([^.[]+)/g,(w,H,Q=H)=>ge.push(Q)),M=ge.shift(),$=F,F=ge.join("-")}let V=x[M]||Object.assign(Object.assign(x[M]={},I(b,M)),I(T,M));if(F==null)return V;F||="DEFAULT";let me=V[F]??F.split("-").reduce((ge,w)=>ge?.[w],V)??$;return Z?Nn(me,{opacityValue:Gs(Z,D)}):me}let de={};for(let V of[...Object.keys(b),...Object.keys(T)])de[V]=D(V);return de}function I(M,F){let $=M[F];return typeof $=="function"&&($=$(R)),$&&/color|fill|stroke/i.test(F)?function Z(de,V=[]){let me={};for(let ge in de){let w=de[ge],H=[...V,ge];me[H.join("-")]=w,ge=="DEFAULT"&&(H=V,me[V.join("-")]=w),typeof w=="object"&&Object.assign(me,Z(w,H))}return me}($):$}}(s),e:$s,h:v,s(T,b){return f(T,b,y)},d(T,b,x){return c(T,b,y,x)},v(T){return h.has(T)||h.set(T,J4(T,m,S,Qh,y)||"&:"+T),h.get(T)},r(T,b){let x=JSON.stringify([T,b]);return _.has(x)||_.set(x,!L(T,y)&&J4(T,g,B,e2,y,b)),_.get(x)},f(T){return k.reduce((b,x)=>x(b,y),T)}};return y}(n),r=new Map,u=[],o=new Set;t.resume(s=>r.set(s,s),(s,l)=>{t.insert(s,u.length,l),u.push(l),o.add(s)});function i(s){let l=a.f(s),c=Ns(l);if(c&&!o.has(c)){o.add(c);let m=Q4(u,s);t.insert(c,m,s),u.splice(m,0,s)}return l.n}return Object.defineProperties(function(s){if(!r.size)for(let c of Ue(n.preflight))typeof c=="function"&&(c=c(a)),c&&(typeof c=="string"?Ys("",ut.b,Zr(c),a,ut.b,[],!1,!0):Vs(c,{},a,ut.b)).forEach(i);s=""+s;let l=r.get(s);if(!l){let c=new Set;for(let m of eo(Zr(s),a))c.add(m.c).add(i(m));l=[...c].filter(Boolean).join(" "),r.set(s,l).set(l,l)}return l},Object.getOwnPropertyDescriptors({get target(){return t.target},theme:a.theme,config:n,snapshot(){let s=t.snapshot(),l=new Set(o),c=new Map(r),m=[...u];return()=>{s(),o=l,r=c,u=m}},clear(){t.clear(),o=new Set,r=new Map,u=[]},destroy(){this.clear(),t.destroy()}}))}function a2(e,t){return e!=t&&""+e.split(" ").sort()!=""+t.split(" ").sort()}function r2(e){let t=new MutationObserver(n);return{observe(r){t.observe(r,{attributeFilter:["class"],subtree:!0,childList:!0}),a(r),n([{target:r,type:""}])},disconnect(){t.disconnect()}};function n(r){for(let{type:u,target:o}of r)if(u[0]=="a")a(o);else for(let i of o.querySelectorAll("[class]"))a(i);t.takeRecords()}function a(r){let u,o=r.getAttribute?.("class");o&&a2(o,u=e(o))&&r.setAttribute("class",u)}}function u2(e=Xs,t=typeof document<"u"&&document.documentElement){if(t){let n=r2(e);n.observe(t);let{destroy:a}=e;e.destroy=()=>{n.disconnect(),a.call(e)}}return e}function id(e){let t=document.querySelector(e||'style[data-twind=""]');return(!t||t.tagName!="STYLE")&&(t=document.createElement("style"),document.head.prepend(t)),t.dataset.twind="claimed",t}function o2(e){let t=e?.cssRules?e:(e&&typeof e!="string"?e:id(e)).sheet;return{target:t,snapshot(){let n=Array.from(t.cssRules,a=>a.cssText);return()=>{this.clear(),n.forEach(this.insert)}},clear(){for(let n=t.cssRules.length;n--;)t.deleteRule(n)},destroy(){t.ownerNode?.remove()},insert(n,a){try{t.insertRule(n,a)}catch{t.insertRule(":root{}",a)}},resume:Qr}}function i2(e){let t=e&&typeof e!="string"?e:id(e);return{target:t,snapshot(){let n=Array.from(t.childNodes,a=>a.textContent);return()=>{this.clear(),n.forEach(this.insert)}},clear(){t.textContent=""},destroy(){t.remove()},insert(n,a){t.insertBefore(document.createTextNode(n),t.childNodes[a]||null)},resume:Qr}}function s2(e){let t=[];return{target:t,snapshot(){let n=[...t];return()=>{t.splice(0,t.length,...n)}},clear(){t.length=0},destroy(){this.clear()},insert(n,a,r){t.splice(a,0,e?`/*!${r.p.toString(36)},${(2*r.o).toString(36)}${r.n?","+r.n:""}*/${n}`:n)},resume:Qr}}function sd(e,t){let n=typeof document>"u"?s2(!t):e?i2():o2();return t||(n.resume=c2),n}function l2(e){return(e.ownerNode||e).textContent||(e.cssRules?Array.from(e.cssRules,t=>t.cssText):Ue(e)).join("")}function c2(e,t){let n=l2(this.target),a=/\/\*!([\da-z]+),([\da-z]+)(?:,(.+?))?\*\//g;if(a.test(n)){var r;let u;if(a.lastIndex=0,this.clear(),typeof document<"u")for(let o of document.querySelectorAll("[class]"))e(o.getAttribute("class"));for(;r=a.exec(n),u&&t(n.slice(u.index+u[0].length,r?.index),{p:parseInt(u[1],36),o:parseInt(u[2],36)/2,n:u[3]}),u=r;);}}var Xs=new Proxy(Qr,{apply(e,t,n){return Xr(n[0])},get(e,t){let n=Xr[t];return typeof n=="function"?function(){return n.apply(Xr,arguments)}:n}});function ld(e={},t=sd,n){return Xr?.destroy(),Xr=u2(n2(e,typeof t=="function"?t():t),n)}function Zs(e,t=!0){let n=tu(e);return ld({...n,hash:n.hash??t},()=>sd(!t))}var xE=function e(t){return new Proxy(function(n,...a){return Y4(t,"",n,a)},{get(n,a){return a==="bind"?e:a in n?n[a]:function(r,...u){return Y4(t,a,r,u)}}})}();function Y4(e,t,n,a){return{toString(){let r=Us(n,a),u=$s(t+Za(JSON.stringify([t,r])));return(typeof e=="function"?e:Xs)(rd({[`@keyframes ${u}`]:Us(n,a)})),u}}}var d2=new Map([["align-self","-ms-grid-row-align"],["color-adjust","-webkit-print-color-adjust"],["column-gap","grid-column-gap"],["forced-color-adjust","-ms-high-contrast-adjust"],["gap","grid-gap"],["grid-template-columns","-ms-grid-columns"],["grid-template-rows","-ms-grid-rows"],["justify-self","-ms-grid-column-align"],["margin-inline-end","-webkit-margin-end"],["margin-inline-start","-webkit-margin-start"],["mask-border","-webkit-mask-box-image"],["mask-border-outset","-webkit-mask-box-image-outset"],["mask-border-slice","-webkit-mask-box-image-slice"],["mask-border-source","-webkit-mask-box-image-source"],["mask-border-repeat","-webkit-mask-box-image-repeat"],["mask-border-width","-webkit-mask-box-image-width"],["overflow-wrap","word-wrap"],["padding-inline-end","-webkit-padding-end"],["padding-inline-start","-webkit-padding-start"],["print-color-adjust","color-adjust"],["row-gap","grid-row-gap"],["scroll-margin-bottom","scroll-snap-margin-bottom"],["scroll-margin-left","scroll-snap-margin-left"],["scroll-margin-right","scroll-snap-margin-right"],["scroll-margin-top","scroll-snap-margin-top"],["scroll-margin","scroll-snap-margin"],["text-combine-upright","-ms-text-combine-horizontal"]]);function cd(e){return d2.get(e)}function dd(e){var t=/^(?:(text-(?:decoration$|e|or|si)|back(?:ground-cl|d|f)|box-d|mask(?:$|-[ispro]|-cl)|pr|hyphena|flex-d)|(tab-|column(?!-s)|text-align-l)|(ap)|u|hy)/i.exec(e);return t?t[1]?1:t[2]?2:t[3]?3:5:0}function gd(e,t){var n=/^(?:(pos)|(cli)|(background-i)|(flex(?:$|-b)|(?:max-|min-)?(?:block-s|inl|he|widt))|dis)/i.exec(e);return n?n[1]?/^sti/i.test(t)?1:0:n[2]?/^pat/i.test(t)?1:0:n[3]?/^image-/i.test(t)?1:0:n[4]?t[3]==="-"?2:0:/^(?:inline-)?grid$/i.test(t)?4:0:0}var g2=[["-webkit-",1],["-moz-",2],["-ms-",4]];function no(){return({stringify:e})=>({stringify(t,n,a){let r="",u=cd(t);u&&(r+=e(u,n,a)+";");let o=dd(t),i=gd(t,n);for(let s of g2)o&s[1]&&(r+=e(s[0]+t,n,a)+";"),i&s[1]&&(r+=e(t,s[0]+n,a)+";");return r+e(t,n,a)}})}var e0={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Jt(4,"rem",4,.5,.5),...Jt(12,"rem",4,5),14:"3.5rem",...Jt(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:Me("blur"),backdropBrightness:Me("brightness"),backdropContrast:Me("contrast"),backdropGrayscale:Me("grayscale"),backdropHueRotate:Me("hueRotate"),backdropInvert:Me("invert"),backdropOpacity:Me("opacity"),backdropSaturate:Me("saturate"),backdropSepia:Me("sepia"),backgroundColor:Me("colors"),backgroundImage:{none:"none"},backgroundOpacity:Me("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Jt(200,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:Me("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:Me("spacing"),borderWidth:{DEFAULT:"1px",...en(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:Me("colors"),caretColor:Me("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Jt(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:Me("borderColor"),divideOpacity:Me("borderOpacity"),divideWidth:Me("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...nu(2,6),...nu(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:Me("spacing"),gradientColorStops:Me("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...nu(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...nu(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Jt(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Jt(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:Me("spacing"),placeholderColor:Me("colors"),placeholderOpacity:Me("opacity"),outlineColor:Me("colors"),outlineOffset:en(8,"px"),outlineWidth:en(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:Me("colors"),ringOffsetWidth:en(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...en(8,"px")},rotate:{...en(2,"deg"),...en(12,"deg",3),...en(180,"deg",45)},saturate:Jt(200,"",100,0,50),scale:{...Jt(150,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:Me("spacing"),scrollPadding:Me("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...en(2,"deg"),...en(12,"deg",3)},space:Me("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Jt(2),textColor:Me("colors"),textDecorationColor:Me("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...en(8,"px")},textUnderlineOffset:{auto:"auto",...en(8,"px")},textIndent:Me("spacing"),textOpacity:Me("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:Me("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...nu(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Jt(50,"",1,0,10),auto:"auto"}};function nu(e,t){let n={};do for(var a=1;at(e)}var m2={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${e0.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${e0.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},p2=[K("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:An(`[${t}]`,"",n)}}})),K("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),G("aspect-","aspectRatio"),K("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:a,padding:r}=t("container"),u={width:"100%",marginRight:a&&"auto",marginLeft:a&&"auto",...o("xs")};for(let i in n){let s=n[i];typeof s=="string"&&(u[to(s)]={"&":{maxWidth:s,...o(i)}})}return u;function o(i){let s=r&&(typeof r=="string"?r:r[i]||r.DEFAULT);if(s)return{paddingRight:s,paddingLeft:s}}}),G("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),K("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),K("box-(border|content)","boxSizing",({1:e})=>e+"-box"),K("hidden",{display:"none"}),K("table-(auto|fixed)","tableLayout"),K(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",K("isolate","isolation"),K("object-(contain|cover|fill|none|scale-down)","objectFit"),G("object-","objectPosition"),K("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",ao),K("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),K("(static|fixed|absolute|relative|sticky)","position"),G("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),G("-?(top|bottom|left|right)(?:$|-)","inset"),K("(visible|collapse)","visibility"),K("invisible",{visibility:"hidden"}),G("-?z-","zIndex"),K("flex-((row|col)(-reverse)?)","flexDirection",md),K("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),G("(flex-(?:grow|shrink))(?:$|-)"),G("(flex)-"),G("grow(?:$|-)","flexGrow"),G("shrink(?:$|-)","flexShrink"),G("basis-","flexBasis"),G("-?(order)-"),"-?(order)-(\\d+)",G("grid-cols-","gridTemplateColumns"),K("grid-cols-(\\d+)","gridTemplateColumns",bd),G("col-","gridColumn"),K("col-(span)-(\\d+)","gridColumn",hd),G("col-start-","gridColumnStart"),K("col-start-(auto|\\d+)","gridColumnStart"),G("col-end-","gridColumnEnd"),K("col-end-(auto|\\d+)","gridColumnEnd"),G("grid-rows-","gridTemplateRows"),K("grid-rows-(\\d+)","gridTemplateRows",bd),G("row-","gridRow"),K("row-(span)-(\\d+)","gridRow",hd),G("row-start-","gridRowStart"),K("row-start-(auto|\\d+)","gridRowStart"),G("row-end-","gridRowEnd"),K("row-end-(auto|\\d+)","gridRowEnd"),K("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>ao(md(e))),K("grid-flow-(dense)","gridAutoFlow"),G("auto-cols-","gridAutoColumns"),G("auto-rows-","gridAutoRows"),G("gap-x(?:$|-)","gap","columnGap"),G("gap-y(?:$|-)","gap","rowGap"),G("gap(?:$|-)","gap"),"(justify-(?:items|self))-",K("justify-","justifyContent",pd),K("(content|items|self)-",e=>({["align-"+e[1]]:pd(e)})),K("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),G("p([xytrbl])?(?:$|-)","padding",er("padding")),G("-?m([xytrbl])?(?:$|-)","margin",er("margin")),G("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),K("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),G("w-","width"),G("min-w-","minWidth"),G("max-w-","maxWidth"),G("h-","height"),G("min-h-","minHeight"),G("max-h-","maxHeight"),G("font-","fontWeight"),G("font-","fontFamily",({_:e})=>typeof(e=Ue(e))[1]=="string"?{fontFamily:gn(e)}:{fontFamily:gn(e[0]),...e[1]}),K("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),K("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),K("italic","fontStyle"),K("not-italic",{fontStyle:"normal"}),K("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...Zn({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),G("tracking-","letterSpacing"),G("leading-","lineHeight"),K("list-(inside|outside)","listStylePosition"),G("list-","listStyleType"),K("list-","listStyleType"),G("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),dt("placeholder-",{property:"color",selector:"&::placeholder"}),K("text-(left|center|right|justify|start|end)","textAlign"),K("text-(ellipsis|clip)","textOverflow"),G("text-opacity-","textOpacity","--tw-text-opacity"),dt("text-",{property:"color"}),G("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),G("indent-","textIndent"),K("(overline|underline|line-through)","textDecorationLine"),K("no-underline",{textDecorationLine:"none"}),G("underline-offset-","textUnderlineOffset"),dt("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),G("decoration-","textDecorationThickness"),K("decoration-","textDecorationStyle"),K("(uppercase|lowercase|capitalize)","textTransform"),K("normal-case",{textTransform:"none"}),K("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),K("align-","verticalAlign"),K("whitespace-","whiteSpace"),K("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),K("break-words",{overflowWrap:"break-word"}),K("break-all",{wordBreak:"break-all"}),K("break-keep",{wordBreak:"keep-all"}),dt("caret-",{opacityVariable:!1,opacitySection:"opacity"}),dt("accent-",{opacityVariable:!1,opacitySection:"opacity"}),K("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${Aa(e," ")},var(--tw-gradient-stops))`),dt("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),dt("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),dt("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),K("bg-(fixed|local|scroll)","backgroundAttachment"),K("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),K(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),K("bg-blend-","backgroundBlendMode"),K("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),G("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),dt("bg-",{section:"backgroundColor"}),G("bg-","backgroundImage"),G("bg-","backgroundPosition"),K("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",ao),G("bg-","backgroundSize"),G("rounded(?:$|-)","borderRadius"),G("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${Aa(n[0])}-radius`]:t,[`border-${Aa(n[1])}-radius`]:t}}),K("border-(collapse|separate)","borderCollapse"),G("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),K("border-(solid|dashed|dotted|double|none)","borderStyle"),G("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...Zn({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),dt("border-([xytrbl])-",{section:"borderColor"},er("border","Color")),dt("border-"),G("border-([xytrbl])(?:$|-)","borderWidth",er("border","Width")),G("border(?:$|-)","borderWidth"),G("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),K("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),K("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),G("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${Aa(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${Aa(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),dt("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),G("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),dt("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),G("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),K("ring-inset",{"--tw-ring-inset":"inset"}),dt("ring-",{property:"--tw-ring-color"}),G("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":Nn(t("ringOffsetColor","","#fff")),"--tw-ring-color":Nn(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),dt("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),G("shadow(?:$|-)","boxShadow",({_:e})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":gn(e),"--tw-shadow-colored":gn(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),G("(opacity)-"),K("mix-blend-","mixBlendMode"),...fd(),...fd("backdrop-"),G("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:gn(e),transitionTimingFunction:e._=="none"?void 0:gn(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:gn(t("transitionDuration",""))})),G("duration(?:$|-)","transitionDuration","transitionDuration",gn),G("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",gn),G("delay(?:$|-)","transitionDelay","transitionDelay",gn),G("animate(?:$|-)","animation",(e,{theme:t,h:n,e:a})=>{let r=gn(e),u=r.split(" "),o=t("keyframes",u[0]);return o?{["@keyframes "+(u[0]=a(n(u[0])))]:o,animation:u.join(" ")}:{animation:r}}),"(transform)-(none)",K("transform",t0),K("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":yd(e=="gpu")})),G("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...t0()})),G("-?(rotate)-","rotate",Qs),G("-?(translate-[xy])-","translate",Qs),G("-?(skew-[xy])-","skew",Qs),K("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",ao),"(appearance)-",G("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",G("(cursor)-"),"(cursor)-",K("snap-(none)","scroll-snap-type"),K("snap-(x|y|both)",({1:e})=>({...Zn({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),K("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),K("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),K("snap-(normal|always)","scroll-snap-stop"),K("scroll-(auto|smooth)","scroll-behavior"),G("scroll-p([xytrbl])?(?:$|-)","padding",er("scroll-padding")),G("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",er("scroll-margin")),K("touch-(auto|none|manipulation)","touch-action"),K("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...Zn({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),K("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),K("outline",{outlineStyle:"solid"}),K("outline-(dashed|dotted|double)","outlineStyle"),G("-?(outline-offset)-"),dt("outline-",{opacityVariable:!1,opacitySection:"opacity"}),G("outline-","outlineWidth"),"(pointer-events)-",G("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],K("select-(none|text|all|auto)","userSelect"),dt("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),dt("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),G("stroke-","strokeWidth"),K("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),K("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function ao(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function md(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function Aa(e,t="-"){let n=[];for(let a of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[a]);return n.join(t)}function gn(e){return e&&""+(e._||e)}function pd({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function er(e,t=""){return({1:n,_:a})=>{let r={x:"lr",y:"tb"}[n]||n+n;return r?{...eu(e+"-"+Aa(r[0])+t,a),...eu(e+"-"+Aa(r[1])+t,a)}:eu(e+t,a)}}function fd(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let a of t)n[`--tw-${e}${a}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...Zn(n),[`${e}filter`]:t.map(a=>`var(--tw-${e}${a})`).join(" ")},[`(${e}filter)-(none)`,K(`${e}filter`,n),...t.map(a=>G(`${a[0]=="h"?"-?":""}(${e}${a})(?:$|-)`,a,({1:r,_:u})=>({[`--tw-${r}`]:Ue(u).map(o=>`${a}(${o})`).join(" "),...n})))]}function Qs({1:e,_:t}){return{["--tw-"+e]:t,...t0()}}function t0(){return{...Zn({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":yd()}),transform:"var(--tw-transform)"}}function yd(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function hd({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function bd({1:e}){return`repeat(${e},minmax(0,1fr))`}function Zn(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var f2=[["sticky","@supports ((position: -webkit-sticky) or (position:sticky))"],["motion-reduce","@media (prefers-reduced-motion:reduce)"],["motion-safe","@media (prefers-reduced-motion:no-preference)"],["print","@media print"],["(portrait|landscape)",({1:e})=>`@media (orientation:${e})`],["contrast-(more|less)",({1:e})=>`@media (prefers-contrast:${e})`],["(first-(letter|line)|placeholder|backdrop|before|after)",({1:e})=>`&::${e}`],["(marker|selection)",({1:e})=>`& *::${e},&::${e}`],["file","&::file-selector-button"],["(first|last|only)",({1:e})=>`&:${e}-child`],["even","&:nth-child(2n)"],["odd","&:nth-child(odd)"],["open","&[open]"],["(aria|data)-",({1:e,$$:t},n)=>t&&`&[${e}-${n.theme(e,t)||An(t,"",n)||`${t}="true"`}]`],["((group|peer)(~[^-[]+)?)(-\\[(.+)]|[-[].+?)(\\/.+)?",({2:e,3:t="",4:n,5:a="",6:r=t},{e:u,h:o,v:i})=>{let s=Qa(a)||(n[0]=="["?n:i(n.slice(1)));return`${(s.includes("&")?s:"&"+s).replace(/&/g,`:merge(.${u(o(e+r))})`)}${e[0]=="p"?"~":" "}&`}],["(ltr|rtl)",({1:e})=>`[dir="${e}"] &`],["supports-",({$$:e},t)=>{if(e&&=t.theme("supports",e)||An(e,"",t),e)return e.includes(":")||(e+=":var(--tw)"),/^\w*\s*\(/.test(e)||(e=`(${e})`),`@supports ${e.replace(/\b(and|or|not)\b/g," $1 ").trim()}`}],["max-",({$$:e},t)=>{if(e&&=t.theme("screens",e)||An(e,"",t),typeof e=="string")return`@media not all and (min-width:${e})`}],["min-",({$$:e},t)=>(e&&=An(e,"",t))&&`@media (min-width:${e})`],[/^\[(.+)]$/,({1:e})=>/[&@]/.test(e)&&Qa(e).replace(/[}]+$/,"").split("{")]];function h2({colors:e,disablePreflight:t}={}){return{preflight:t?void 0:m2,theme:{...e0,colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",...e}},variants:f2,rules:p2,finalize(n){return n.n&&n.d&&n.r.some(a=>/^&::(before|after)$/.test(a))&&!/(^|;)content:/.test(n.d)?{...n,d:"content:var(--tw-content);"+n.d}:n}}}var b2={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},y2={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},T2={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},x2={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},E2={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},C2={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},w2={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},v2={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},k2={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},A2={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},S2={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},D2={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},L2={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},P2={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},M2={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},F2={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},_2={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},B2={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},R2={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},I2={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},O2={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},N2={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},U2={__proto__:null,slate:b2,gray:y2,zinc:T2,neutral:x2,stone:E2,red:C2,orange:w2,amber:v2,yellow:k2,lime:A2,green:S2,emerald:D2,teal:L2,cyan:P2,sky:M2,blue:F2,indigo:_2,violet:B2,purple:R2,fuchsia:I2,pink:O2,rose:N2};function ro({disablePreflight:e}={}){return h2({colors:U2,disablePreflight:e})}var uo=globalThis||(typeof window<"u"?window:self),j2=Object.create,a0=Object.defineProperty,z2=Object.getOwnPropertyDescriptor,H2=Object.getOwnPropertyNames,W2=Object.getPrototypeOf,$2=Object.prototype.hasOwnProperty,q2=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),K2=(e,t)=>{for(var n in t)a0(e,n,{get:t[n],enumerable:!0})},n0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of H2(t))!$2.call(e,r)&&r!==n&&a0(e,r,{get:()=>t[r],enumerable:!(a=z2(t,r))||a.enumerable});return e},V2=(e,t,n)=>(n0(e,t,"default"),n&&n0(n,t,"default")),xd=(e,t,n)=>(n=e!=null?j2(W2(e)):{},n0(t||!e||!e.__esModule?a0(n,"default",{value:e,enumerable:!0}):n,e)),Ed=q2((e,t)=>{(function(n,a){typeof define=="function"&&define.amd?define([],a):typeof e<"u"?a():(a(),n.FileSaver={})})(e,function(){"use strict";function n(l,c){return typeof c>"u"?c={autoBom:!1}:typeof c!="object"&&(c={autoBom:!c}),c.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function a(l,c,m){var g=new XMLHttpRequest;g.open("GET",l),g.responseType="blob",g.onload=function(){s(g.response,c,m)},g.onerror=function(){},g.send()}function r(l){var c=new XMLHttpRequest;c.open("HEAD",l,!1);try{c.send()}catch{}return 200<=c.status&&299>=c.status}function u(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(c)}}var o=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof uo=="object"&&uo.global===uo?uo:void 0,i=o.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=o.saveAs||(typeof window!="object"||window!==o?function(){}:"download"in HTMLAnchorElement.prototype&&!i?function(l,c,m){var g=o.URL||o.webkitURL,p=document.createElement("a");c=c||l.name||"download",p.download=c,p.rel="noopener",typeof l=="string"?(p.href=l,p.origin===location.origin?u(p):r(p.href)?a(l,c,m):u(p,p.target="_blank")):(p.href=g.createObjectURL(l),setTimeout(function(){g.revokeObjectURL(p.href)},4e4),setTimeout(function(){u(p)},0))}:"msSaveOrOpenBlob"in navigator?function(l,c,m){if(c=c||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,m),c);else if(r(l))a(l,c,m);else{var g=document.createElement("a");g.href=l,g.target="_blank",setTimeout(function(){u(g)})}}:function(l,c,m,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),typeof l=="string")return a(l,c,m);var p=l.type==="application/octet-stream",f=/constructor/i.test(o.HTMLElement)||o.safari,A=/CriOS\/[\d]+/.test(navigator.userAgent);if((A||p&&f||i)&&typeof FileReader<"u"){var k=new FileReader;k.onloadend=function(){var _=k.result;_=A?_:_.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=_:location=_,g=null},k.readAsDataURL(l)}else{var h=o.URL||o.webkitURL,S=h.createObjectURL(l);g?g.location=S:location.href=S,g=null,setTimeout(function(){h.revokeObjectURL(S)},4e4)}});o.saveAs=s.saveAs=s,typeof t<"u"&&(t.exports=s)})}),Cd={};K2(Cd,{default:()=>au});var G2=xd(Ed());V2(Cd,xd(Ed()));var{default:Td,...J2}=G2,au=Td!==void 0?Td:J2;function tr(){let e,t="pending",n=new Promise((a,r)=>{e={async resolve(u){await u,t="fulfilled",a(u)},reject(u){t="rejected",r(u)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var r0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function oo(e,t){let n=tr(),a=setTimeout(()=>n.reject(new r0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Qn(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((r,u)=>{let o=()=>{clearTimeout(s),u(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),r()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var wd=class{#e=0;#t=[];#n=[];#a=tr();add(t){++this.#e,this.#r(t[Symbol.asyncIterator]())}async#r(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tC9,bgBlue:()=>A9,bgBrightBlack:()=>P9,bgBrightBlue:()=>B9,bgBrightCyan:()=>I9,bgBrightGreen:()=>F9,bgBrightMagenta:()=>R9,bgBrightRed:()=>M9,bgBrightWhite:()=>O9,bgBrightYellow:()=>_9,bgCyan:()=>D9,bgGreen:()=>v9,bgMagenta:()=>S9,bgRed:()=>w9,bgRgb24:()=>z9,bgRgb8:()=>U9,bgWhite:()=>L9,bgYellow:()=>k9,black:()=>o9,blue:()=>c9,bold:()=>Q2,brightBlack:()=>Ad,brightBlue:()=>y9,brightCyan:()=>x9,brightGreen:()=>h9,brightMagenta:()=>T9,brightRed:()=>f9,brightWhite:()=>E9,brightYellow:()=>b9,cyan:()=>g9,dim:()=>e9,getColorEnabled:()=>X2,gray:()=>p9,green:()=>s9,hidden:()=>r9,inverse:()=>a9,italic:()=>t9,magenta:()=>d9,red:()=>i9,reset:()=>Z2,rgb24:()=>j9,rgb8:()=>N9,setColorEnabled:()=>Y2,strikethrough:()=>u9,stripColor:()=>W9,underline:()=>n9,white:()=>m9,yellow:()=>l9});var{Deno:vd}=globalThis,kd=typeof vd?.noColor=="boolean"?vd.noColor:!0,u0=!kd;function Y2(e){kd||(u0=e)}function X2(){return u0}function Te(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function xe(e,t){return u0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function Z2(e){return xe(e,Te([0],0))}function Q2(e){return xe(e,Te([1],22))}function e9(e){return xe(e,Te([2],22))}function t9(e){return xe(e,Te([3],23))}function n9(e){return xe(e,Te([4],24))}function a9(e){return xe(e,Te([7],27))}function r9(e){return xe(e,Te([8],28))}function u9(e){return xe(e,Te([9],29))}function o9(e){return xe(e,Te([30],39))}function i9(e){return xe(e,Te([31],39))}function s9(e){return xe(e,Te([32],39))}function l9(e){return xe(e,Te([33],39))}function c9(e){return xe(e,Te([34],39))}function d9(e){return xe(e,Te([35],39))}function g9(e){return xe(e,Te([36],39))}function m9(e){return xe(e,Te([37],39))}function p9(e){return Ad(e)}function Ad(e){return xe(e,Te([90],39))}function f9(e){return xe(e,Te([91],39))}function h9(e){return xe(e,Te([92],39))}function b9(e){return xe(e,Te([93],39))}function y9(e){return xe(e,Te([94],39))}function T9(e){return xe(e,Te([95],39))}function x9(e){return xe(e,Te([96],39))}function E9(e){return xe(e,Te([97],39))}function C9(e){return xe(e,Te([40],49))}function w9(e){return xe(e,Te([41],49))}function v9(e){return xe(e,Te([42],49))}function k9(e){return xe(e,Te([43],49))}function A9(e){return xe(e,Te([44],49))}function S9(e){return xe(e,Te([45],49))}function D9(e){return xe(e,Te([46],49))}function L9(e){return xe(e,Te([47],49))}function P9(e){return xe(e,Te([100],49))}function M9(e){return xe(e,Te([101],49))}function F9(e){return xe(e,Te([102],49))}function _9(e){return xe(e,Te([103],49))}function B9(e){return xe(e,Te([104],49))}function R9(e){return xe(e,Te([105],49))}function I9(e){return xe(e,Te([106],49))}function O9(e){return xe(e,Te([107],49))}function ea(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function N9(e,t){return xe(e,Te([38,5,ea(t)],39))}function U9(e,t){return xe(e,Te([48,5,ea(t)],49))}function j9(e,t){return typeof t=="number"?xe(e,Te([38,2,t>>16&255,t>>8&255,t&255],39)):xe(e,Te([38,2,ea(t.r),ea(t.g),ea(t.b)],39))}function z9(e,t){return typeof t=="number"?xe(e,Te([48,2,t>>16&255,t>>8&255,t&255],49)):xe(e,Te([48,2,ea(t.r),ea(t.g),ea(t.b)],49))}var H9=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function W9(e){return e.replace(H9,"")}var o0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},$9={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function i0(e,t){let n={...$9,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,r;for(let u=0;usetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),r=o}throw new o0(r,n.maxAttempts)}var HC=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var io=globalThis||(typeof window<"u"?window:self),K9=Object.create,l0=Object.defineProperty,V9=Object.getOwnPropertyDescriptor,G9=Object.getOwnPropertyNames,J9=Object.getPrototypeOf,Y9=Object.prototype.hasOwnProperty,X9=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Z9=(e,t)=>{for(var n in t)l0(e,n,{get:t[n],enumerable:!0})},s0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of G9(t))!Y9.call(e,r)&&r!==n&&l0(e,r,{get:()=>t[r],enumerable:!(a=V9(t,r))||a.enumerable});return e},Q9=(e,t,n)=>(s0(e,t,"default"),n&&s0(n,t,"default")),Dd=(e,t,n)=>(n=e!=null?K9(J9(e)):{},s0(t||!e||!e.__esModule?l0(n,"default",{value:e,enumerable:!0}):n,e)),Ld=X9((e,t)=>{var n="Expected a function",a=NaN,r="[object Symbol]",u=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof io=="object"&&io&&io.Object===Object&&io,m=typeof self=="object"&&self&&self.Object===Object&&self,g=c||m||Function("return this")(),p=Object.prototype,f=p.toString,A=Math.max,k=Math.min,h=function(){return g.Date.now()};function S(T,b,x){var R,D,I,M,F,$,Z=0,de=!1,V=!1,me=!0;if(typeof T!="function")throw new TypeError(n);b=y(b)||0,B(x)&&(de=!!x.leading,V="maxWait"in x,I=V?A(y(x.maxWait)||0,b):I,me="trailing"in x?!!x.trailing:me);function ge(te){var ae=R,ne=D;return R=D=void 0,Z=te,M=T.apply(ne,ae),M}function w(te){return Z=te,F=setTimeout(fe,b),de?ge(te):M}function H(te){var ae=te-$,ne=te-Z,oe=b-ae;return V?k(oe,I-ne):oe}function Q(te){var ae=te-$,ne=te-Z;return $===void 0||ae>=b||ae<0||V&&ne>=I}function fe(){var te=h();if(Q(te))return se(te);F=setTimeout(fe,H(te))}function se(te){return F=void 0,me&&R?ge(te):(R=D=void 0,M)}function O(){F!==void 0&&clearTimeout(F),Z=0,R=$=D=F=void 0}function N(){return F===void 0?M:se(h())}function re(){var te=h(),ae=Q(te);if(R=arguments,D=this,$=te,ae){if(F===void 0)return w($);if(V)return F=setTimeout(fe,b),ge($)}return F===void 0&&(F=setTimeout(fe,b)),M}return re.cancel=O,re.flush=N,re}function _(T,b,x){var R=!0,D=!0;if(typeof T!="function")throw new TypeError(n);return B(x)&&(R="leading"in x?!!x.leading:R,D="trailing"in x?!!x.trailing:D),S(T,b,{leading:R,maxWait:b,trailing:D})}function B(T){var b=typeof T;return!!T&&(b=="object"||b=="function")}function L(T){return!!T&&typeof T=="object"}function v(T){return typeof T=="symbol"||L(T)&&f.call(T)==r}function y(T){if(typeof T=="number")return T;if(v(T))return a;if(B(T)){var b=typeof T.valueOf=="function"?T.valueOf():T;T=B(b)?b+"":b}if(typeof T!="string")return T===0?T:+T;T=T.replace(u,"");var x=i.test(T);return x||s.test(T)?l(T.slice(2),x?2:8):o.test(T)?a:+T}t.exports=_}),Pd={};Z9(Pd,{default:()=>St});var e1=Dd(Ld());Q9(Pd,Dd(Ld()));var{default:Sd,...t1}=e1,St=Sd!==void 0?Sd:t1;var n1=Object.create,d0=Object.defineProperty,a1=Object.getOwnPropertyDescriptor,r1=Object.getOwnPropertyNames,u1=Object.getPrototypeOf,o1=Object.prototype.hasOwnProperty,i1=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s1=(e,t)=>{for(var n in t)d0(e,n,{get:t[n],enumerable:!0})},c0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of r1(t))!o1.call(e,r)&&r!==n&&d0(e,r,{get:()=>t[r],enumerable:!(a=a1(t,r))||a.enumerable});return e},l1=(e,t,n)=>(c0(e,t,"default"),n&&c0(n,t,"default")),Fd=(e,t,n)=>(n=e!=null?n1(u1(e)):{},c0(t||!e||!e.__esModule?d0(n,"default",{value:e,enumerable:!0}):n,e)),_d=i1((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(u){if(r[u])return r[u].exports;var o=r[u]={i:u,l:!1,exports:{}};return n[u].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var r={};return a.m=n,a.c=r,a.i=function(u){return u},a.d=function(u,o,i){a.o(u,o)||Object.defineProperty(u,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(u){var o=u&&u.__esModule?function(){return u.default}:function(){return u};return a.d(o,"a",o),o},a.o=function(u,o){return Object.prototype.hasOwnProperty.call(u,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(r){return r.webpackPolyfill||(r.deprecate=function(){},r.paths=[],r.children||(r.children=[]),Object.defineProperty(r,"loaded",{enumerable:!0,get:function(){return r.l}}),Object.defineProperty(r,"id",{enumerable:!0,get:function(){return r.i}}),r.webpackPolyfill=1),r}},function(n,a,r){"use strict";(function(u){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,m){l(a)==="object"&&l(u)==="object"?u.exports=m():(i=[],o=m,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(u.exports=s))})(void 0,function(){return function(c){function m(p){if(g[p])return g[p].exports;var f=g[p]={i:p,l:!1,exports:{}};return c[p].call(f.exports,f,f.exports,m),f.l=!0,f.exports}var g={};return m.m=c,m.c=g,m.i=function(p){return p},m.d=function(p,f,A){m.o(p,f)||Object.defineProperty(p,f,{configurable:!1,enumerable:!0,get:A})},m.n=function(p){var f=p&&p.__esModule?function(){return p.default}:function(){return p};return m.d(f,"a",f),f},m.o=function(p,f){return Object.prototype.hasOwnProperty.call(p,f)},m.p="",m(m.s=0)}([function(c,m,g){function p(w,H){var Q={};for(var fe in w)H.indexOf(fe)>=0||Object.prototype.hasOwnProperty.call(w,fe)&&(Q[fe]=w[fe]);return Q}Object.defineProperty(m,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(w){return typeof w>"u"?"undefined":l(w)}:function(w){return w&&typeof Symbol=="function"&&w.constructor===Symbol&&w!==Symbol.prototype?"symbol":typeof w>"u"?"undefined":l(w)},A=Object.assign||function(w){for(var H=1;H'+fe+"",ne.onclick=function(){return D(oe,ae)},ne.listener=function(Y){(b(Y)||x(Y))&&F()},R(ne,ae),O&&O<1&&(O=1),!re&&O&&B(O).then(function(){return D(oe,ae)})},Z=m.force=function(w,H){var Q=w.type,fe=Q===void 0?5:Q,se=w.text,O=w.buttonText,N=O===void 0?"OK":O,re=w.callback,te=w.position,ae=te===void 0?h.positions.force||ae.top:te;L(),F();var ne=document.createElement("div"),oe=v();ne.id=oe;var Y=document.createElement("div");Y.classList.add(h.classes.textbox),Y.classList.add(h.classes.backgroundInfo),Y.innerHTML='
'+se+"
";var ce=document.createElement("div");ce.classList.add(h.classes.button),ce.classList.add(y[fe]),ce.innerHTML=N,ce.onclick=function(){D(oe,ae),M(),re?re():H&&H()},ne.appendChild(Y),ne.appendChild(ce),ne.listener=function(Le){b(Le)&&ce.click()},R(ne,ae),I()},de=m.confirm=function(w,H,Q){var fe=w.text,se=w.submitText,O=se===void 0?"Yes":se,N=w.cancelText,re=N===void 0?"Cancel":N,te=w.submitCallback,ae=w.cancelCallback,ne=w.position,oe=ne===void 0?h.positions.confirm||oe.top:ne;L(),F();var Y=document.createElement("div"),ce=v();Y.id=ce;var Le=document.createElement("div");Le.classList.add(h.classes.textbox),Le.classList.add(h.classes.backgroundInfo),Le.innerHTML='
'+fe+"
";var Oe=document.createElement("div");Oe.classList.add(h.classes.button),Oe.classList.add(h.classes.elementHalf),Oe.classList.add(h.classes.backgroundSuccess),Oe.innerHTML=O,Oe.onclick=function(){D(ce,oe),M(),te?te():H&&H()};var he=document.createElement("div");he.classList.add(h.classes.button),he.classList.add(h.classes.elementHalf),he.classList.add(h.classes.backgroundError),he.innerHTML=re,he.onclick=function(){D(ce,oe),M(),ae?ae():Q&&Q()},Y.appendChild(Le),Y.appendChild(Oe),Y.appendChild(he),Y.listener=function(Xe){b(Xe)?Oe.click():x(Xe)&&he.click()},R(Y,oe),I(Y,oe)},V=function(w,H,Q){var fe=w.text,se=w.submitText,O=se===void 0?"Submit":se,N=w.cancelText,re=N===void 0?"Cancel":N,te=w.submitCallback,ae=w.cancelCallback,ne=w.position,oe=ne===void 0?h.positions.input||oe.top:ne,Y=p(w,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);L(),F();var ce=document.createElement("div"),Le=v();ce.id=Le;var Oe=document.createElement("div");Oe.classList.add(h.classes.textbox),Oe.classList.add(h.classes.backgroundInfo),Oe.innerHTML='
'+fe+"
";var he=document.createElement("input");he.classList.add(h.classes.inputField),he.setAttribute("autocapitalize",Y.autocapitalize||"none"),he.setAttribute("autocomplete",Y.autocomplete||"off"),he.setAttribute("autocorrect",Y.autocorrect||"off"),he.setAttribute("autofocus",Y.autofocus||"true"),he.setAttribute("inputmode",Y.inputmode||"verbatim"),he.setAttribute("max",Y.max||""),he.setAttribute("maxlength",Y.maxlength||""),he.setAttribute("min",Y.min||""),he.setAttribute("minlength",Y.minlength||""),he.setAttribute("placeholder",Y.placeholder||""),he.setAttribute("spellcheck",Y.spellcheck||"default"),he.setAttribute("step",Y.step||"any"),he.setAttribute("type",Y.type||"text"),he.value=Y.value||"",Y.allowed&&(he.oninput=function(){var We=void 0;if(Array.isArray(Y.allowed)){for(var $e="",qe=Y.allowed,Ht=0;Ht'+Q+"",ae.appendChild(oe),N.forEach(function(ce,Le){var Oe=ce.type,he=Oe===void 0?1:Oe,Xe=ce.text,pt=ce.handler,We=document.createElement("div");We.classList.add(y[he]),We.classList.add(h.classes.button),We.classList.add(h.classes.selectChoice);var $e=N[Le+1];$e&&!$e.type&&($e.type=1),$e&&$e.type===he&&We.classList.add(h.classes.selectChoiceRepeated),We.innerHTML=Xe,We.onclick=function(){D(ne,te),M(),pt()},ae.appendChild(We)});var Y=document.createElement("div");Y.classList.add(h.classes.backgroundNeutral),Y.classList.add(h.classes.button),Y.innerHTML=se,Y.onclick=function(){D(ne,te),M(),O?O():H&&H()},ae.appendChild(Y),ae.listener=function(ce){x(ce)&&Y.click()},R(ae,te),I(ae,te)},ge=m.date=function(w,H,Q){var fe=w.value,se=fe===void 0?new Date:fe,O=w.submitText,N=O===void 0?"OK":O,re=w.cancelText,te=re===void 0?"Cancel":re,ae=w.submitCallback,ne=w.cancelCallback,oe=w.position,Y=oe===void 0?h.positions.date||Y.top:oe;L(),F();var ce="▾",Le=document.createElement("div"),Oe=document.createElement("div"),he=document.createElement("div"),Xe=function(Pe){Le.innerHTML=h.dateMonths[Pe.getMonth()],Oe.innerHTML=Pe.getDate(),he.innerHTML=Pe.getFullYear()},pt=function(Pe){var Re=new Date(se.getFullYear(),se.getMonth()+1,0).getDate(),Gt=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Gt)>Re&&(Gt=Re.toString()),Pe.target.textContent=Gt,Number(Gt)<1&&(Gt="1"),se.setDate(Number(Gt))},We=function(Pe){var Re=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);Pe.target.textContent=Re,se.setFullYear(Number(Re))},$e=function(Pe){Xe(se)},qe=function(Pe){var Re=new Date(se.getFullYear(),se.getMonth()+Pe+1,0).getDate();se.getDate()>Re&&se.setDate(Re),se.setMonth(se.getMonth()+Pe),Xe(se)},Ht=function(Pe){se.setDate(se.getDate()+Pe),Xe(se)},Jn=function(Pe){var Re=se.getFullYear()+Pe;Re<0?se.setFullYear(0):se.setFullYear(se.getFullYear()+Pe),Xe(se)},Ze=document.createElement("div"),vn=v();Ze.id=vn;var dn=document.createElement("div");dn.classList.add(h.classes.backgroundInfo);var ft=document.createElement("div");ft.classList.add(h.classes.dateSelectorInner);var Vt=document.createElement("div");Vt.classList.add(h.classes.button),Vt.classList.add(h.classes.elementThird),Vt.classList.add(h.classes.dateSelectorUp),Vt.innerHTML=ce;var j=document.createElement("div");j.classList.add(h.classes.button),j.classList.add(h.classes.elementThird),j.classList.add(h.classes.dateSelectorUp),j.innerHTML=ce;var pe=document.createElement("div");pe.classList.add(h.classes.button),pe.classList.add(h.classes.elementThird),pe.classList.add(h.classes.dateSelectorUp),pe.innerHTML=ce,Le.classList.add(h.classes.element),Le.classList.add(h.classes.elementThird),Le.innerHTML=h.dateMonths[se.getMonth()],Oe.classList.add(h.classes.element),Oe.classList.add(h.classes.elementThird),Oe.setAttribute("contentEditable",!0),Oe.addEventListener("input",pt),Oe.addEventListener("blur",$e),Oe.innerHTML=se.getDate(),he.classList.add(h.classes.element),he.classList.add(h.classes.elementThird),he.setAttribute("contentEditable",!0),he.addEventListener("input",We),he.addEventListener("blur",$e),he.innerHTML=se.getFullYear();var Be=document.createElement("div");Be.classList.add(h.classes.button),Be.classList.add(h.classes.elementThird),Be.innerHTML=ce;var Ae=document.createElement("div");Ae.classList.add(h.classes.button),Ae.classList.add(h.classes.elementThird),Ae.innerHTML=ce;var De=document.createElement("div");De.classList.add(h.classes.button),De.classList.add(h.classes.elementThird),De.innerHTML=ce,Vt.onclick=function(){return qe(1)},j.onclick=function(){return Ht(1)},pe.onclick=function(){return Jn(1)},Be.onclick=function(){return qe(-1)},Ae.onclick=function(){return Ht(-1)},De.onclick=function(){return Jn(-1)};var Ge=document.createElement("div");Ge.classList.add(h.classes.button),Ge.classList.add(h.classes.elementHalf),Ge.classList.add(h.classes.backgroundSuccess),Ge.innerHTML=N,Ge.onclick=function(){D(vn,Y),M(),ae?ae(se):H&&H(se)};var xt=document.createElement("div");xt.classList.add(h.classes.button),xt.classList.add(h.classes.elementHalf),xt.classList.add(h.classes.backgroundError),xt.innerHTML=te,xt.onclick=function(){D(vn,Y),M(),ne?ne(se):Q&&Q(se)},ft.appendChild(Vt),ft.appendChild(j),ft.appendChild(pe),ft.appendChild(Le),ft.appendChild(Oe),ft.appendChild(he),ft.appendChild(Be),ft.appendChild(Ae),ft.appendChild(De),dn.appendChild(ft),Ze.appendChild(dn),Ze.appendChild(Ge),Ze.appendChild(xt),Ze.listener=function(Pe){b(Pe)?Ge.click():x(Pe)&&xt.click()},R(Ze,Y),I(Ze,Y)};m.default={alert:$,force:Z,confirm:de,input:V,select:me,date:ge,setOptions:S,hideAlerts:F}}])})}).call(a,r(0)(n))}])})}),Bd={};s1(Bd,{default:()=>so});var c1=Fd(_d());l1(Bd,Fd(_d()));var{default:Md,...d1}=c1,so=Md!==void 0?Md:d1;var g0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function m0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Ud(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function g1(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,r=!0,u=0;u=0&&He.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&He.splice(0,He.length),(t===93||t===224)&&(t=91),t in Et){Et[t]=!1;for(var a in Sn)Sn[a]===t&&(Ne[a]=!1)}}function E1(e){if(typeof e>"u")Object.keys(ot).forEach(function(o){return delete ot[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&p0(o)});else if(typeof e=="object")e.key&&p0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Ud(Sn,s):[];ot[m]=ot[m].filter(function(p){var f=a?p.method===a:!0;return!(f&&p.scope===n&&g1(p.mods,g))})}})};function Id(e,t,n,a){if(t.element===a){var r;if(t.scope===n||t.scope==="all"){r=t.mods.length>0;for(var u in Et)Object.prototype.hasOwnProperty.call(Et,u)&&(!Et[u]&&t.mods.indexOf(+u)>-1||Et[u]&&t.mods.indexOf(+u)===-1)&&(r=!1);(t.mods.length===0&&!Et[16]&&!Et[18]&&!Et[17]&&!Et[91]||r||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Od(e,t){var n=ot["*"],a=e.keyCode||e.which||e.charCode;if(Ne.filter.call(this,e)){if((a===93||a===224)&&(a=91),He.indexOf(a)===-1&&a!==229&&He.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var A=h0[f];e[f]&&He.indexOf(A)===-1?He.push(A):!e[f]&&He.indexOf(A)>-1?He.splice(He.indexOf(A),1):f==="metaKey"&&e[f]&&He.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(He=He.slice(He.indexOf(A))))}),a in Et){Et[a]=!0;for(var r in Sn)Sn[r]===a&&(Ne[r]=!0);if(!n)return}for(var u in Et)Object.prototype.hasOwnProperty.call(Et,u)&&(Et[u]=e[h0[u]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(He.indexOf(17)===-1&&He.push(17),He.indexOf(18)===-1&&He.push(18),Et[17]=!0,Et[18]=!0);var o=ou();if(n)for(var i=0;i-1}function Ne(e,t,n){He=[];var a=jd(e),r=[],u="all",o=document,i=0,s=!1,l=!0,c="+",m=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(u=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(m=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(u=t);i1&&(r=Ud(Sn,e)),e=e[e.length-1],e=e==="*"?"*":co(e),e in ot||(ot[e]=[]),ot[e].push({keyup:s,keydown:l,scope:u,mods:r,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!C1(o)&&window&&(Hd.push(o),m0(o,"keydown",function(g){Od(g,o)},m),Rd||(Rd=!0,m0(window,"focus",function(){He=[]},m)),m0(o,"keyup",function(g){Od(g,o),x1(g)},m))}function w1(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(ot).forEach(function(n){var a=ot[n].filter(function(r){return r.scope===t&&r.shortcut===e});a.forEach(function(r){r&&r.method&&r.method()})})}var f0={getPressedKeyString:h1,setScope:Wd,getScope:ou,deleteScope:T1,getPressedKeyCodes:f1,isPressed:y1,filter:b1,trigger:w1,unbind:E1,keyMap:uu,modifier:Sn,modifierMap:h0};for(lo in f0)Object.prototype.hasOwnProperty.call(f0,lo)&&(Ne[lo]=f0[lo]);var lo;typeof document<"u"&&(Nd=window.hotkeys,Ne.noConflict=function(e){return e&&window.hotkeys===Ne&&(window.hotkeys=Nd),Ne},window.hotkeys=Ne);var Nd;var v1=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},k1=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new v1:{reset:()=>{},stop:()=>{}}}},b0=new k1,A1="poegempjloogba",S1="ension://",D1="me-";function iu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function Jd(e){return e?e.PROD==="1":!0}function Yd(e){return e?e.MOCK==="1":!1}function Xd(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var L1="rome-ext";function P1(e,t){return t?e+(t-e%t):e}function M1(e,t){return e.split(t).length-1}function F1(e){let t=Date.now(),n=1;for(let a of e)n+=M1(a,"i");return P1(t,n)}function _1(e,t){return Math.floor(Math.random()*(t-e+1))+e}var B1="extension",R1="chro";function I1(){return _1(1e6,1e8)}var $d="BrowserExt";function O1(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var qd="DeepL",Kd="ension",N1="ch"+L1+S1+"cofdb"+A1+"gkncekinflcnj";function Zd(e){let{contentType:t,userAgent:n,url:a,authorization:r,clientVersion:u}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),r&&i.append("authorization",`Bearer ${r}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",N1),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${qd}${$d}${Kd}/${u||"1.1.1"} ${l}`)}else i.append("user-agent",`${qd}${$d}${Kd}/${u||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function U1(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:r}=e,u={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:r||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:F1(n)},id:I1()},o=Zd({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${R1+D1+B1},${t}`,headers:o,body:O1(u),method:"POST"}}function j1(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Sa={},Da={};async function Vd(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u}=n,[o,i]=iu(r);i||(i=iu(u)[1]);let s={refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u||new Date().toISOString()};o||(s=await go(e,t));let[l,c]=iu(s.refreshTokenExpiresAt);i=c,i||(i=iu(s.refreshTokenChecksAt)[1]);let m=s.refreshToken;if(Sa[m])return new Promise((g,p)=>{Sa[m].push((f,A)=>{f?p(f):g(A)})});Sa[m]=[];try{let g=await z1(m,t.onFetch),p={state:{...n,...s,...g},shouldUpdateRefreshToken:i};return Sa[m].forEach(f=>{f(null,p)}),delete Sa[m],p}catch(g){throw Sa[m].forEach(p=>{p(g)}),delete Sa[m],g}}async function go(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Da[e])return new Promise((r,u)=>{Da[e].push((o,i)=>{o?u(o):r(i)})});try{Da[e]=[];let r=new URLSearchParams({grant_type:"auth_key",auth_key:e}),u=new URL("/refresh_token?"+r.toString(),n),o=await a(u.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return Da[e].forEach(m=>{m(null,c)}),delete Da[e],c}catch(r){throw Da[e].forEach(u=>{u(r)}),delete Da[e],r}}async function z1(e,t){if(!e)throw new Error("refreshToken is required");let n=Jd(),a=Yd();if(!n&&!a){await Xd(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let r="https://w.deepl.com/oidc/token",u=await t(r,{headers:Zd({url:r,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=j1(u.access_token);if(u.expires_in){let i=new Date,s=new Date(i.getTime()+u.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function Gd(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),r=a.getAll("text");if(r.length<1)throw new Error("No text to translate");if(H1(r)>5e3)throw new Error("text too long, the max length is 5000 characters.");let u=a.get("target_lang");if(!u)throw new Error("No target language");let o=a.get("source_lang"),i={...U1({texts:r,authorization:e,target_lang:u,source_lang:o}),responseType:"raw"},s=Jd(),l=Yd();if(!s&&!l)return await Xd(50),{translations:r.map(p=>({text:"mock: "+p,detected_source_language:"EN"}))};let c=await n(i.url,i),m=JSON.parse(c.body),g=[];if(m.result&&m.result.texts)g=m.result.texts.map(p=>({text:p.text,detected_source_language:m.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function H1(e){let t=0;for(let n of e)t+=n.length;return t}async function W1(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let r=await $1(t,a);if(r.ok&&r.status>=200&&r.status<400)if(n==="json"){let u=await r.json();return b0.debug("response",JSON.stringify(u,null,2)),u}else{if(n==="text")return await r.text();if(n==="raw"){let u=await r.text(),o=Object.fromEntries([...r.headers.entries()]),i=r.url;return{body:u,headers:o,status:r.status,statusText:r.statusText,url:i}}}else{let u;try{u=await r.text()}catch(o){b0.error("parse response failed",o)}throw new Error(r.status+": "+r.statusText||" "+u||"")}}async function $1(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,r=setTimeout(()=>a.abort(),n),u=await fetch(e,{...t,signal:a.signal});return clearTimeout(r),u}var mo=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>W1({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((u,o)=>{a.append("text",u)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let r=await Gd(this.state.accessToken,a.toString(),this.onFetch);if(r&&r.translations&&r.translations.length>0)return Array.isArray(e)?r.translations.map(u=>({text:u.text,detectedSourceLanguage:u.detected_source_language})):{text:r.translations[0].text,detectedSourceLanguage:r.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await Gd(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw b0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=iu(e);if(t)n&&Vd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:r})=>{this.setState({...this.state,...a}),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:r}=await Vd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})}).catch(u=>{})}catch(a){this.onFetchTokenError(a)}}};var q1={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},eg={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},et={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},Rt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},ta={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},U=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=U.getVersionPrecision(e),r=U.getVersionPrecision(t),u=Math.max(a,r),o=0,i=U.map([e,t],s=>{let l=u-U.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return U.map(c.split("."),m=>new Array(20-m.length).join("0")+m).reverse()});for(n&&(o=u-Math.min(a,r)),u-=1;u>=o;){if(i[0][u]>i[1][u])return 1;if(i[0][u]===i[1][u]){if(u===o)return 0;u-=1}else if(i[0][u]{n[o]=u[o]})}return e}static getBrowserAlias(e){return q1[e]}static getBrowserTypeByAlias(e){return eg[e]||""}},je=/version\/(\d+(\.?_?\d+)+)/i,K1=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=U.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=U.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=U.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=U.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=U.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=U.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=U.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=U.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=U.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=U.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=U.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=U.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=U.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=U.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=U.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=U.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=U.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=U.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=U.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=U.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=U.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=U.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=U.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=U.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=U.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=U.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=U.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:U.getFirstMatch(a,e),version:U.getSecondMatch(a,e)}}}],V1=K1,G1=[{test:[/Roku\/DVP/],describe(e){let t=U.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:Rt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=U.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:Rt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=U.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=U.getWindowsVersionName(t);return{name:Rt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:Rt.iOS},n=U.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=U.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=U.getMacOSVersionName(t),a={name:Rt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=U.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:Rt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=U.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=U.getAndroidVersionName(t),a={name:Rt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=U.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:Rt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=U.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||U.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||U.getFirstMatch(/\bbb(\d+)/i,e);return{name:Rt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=U.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:Rt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=U.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:Rt.Linux}}},{test:[/CrOS/],describe(){return{name:Rt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=U.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.PlayStation4,version:t}}}],J1=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=U.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:et.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:et.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:et.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:et.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:et.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=U.getFirstMatch(/(ipod|iphone)/i,e);return{type:et.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:et.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:et.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:et.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:et.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:et.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:et.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:et.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:et.tv}}}],Y1=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:ta.Blink};let t=U.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:ta.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:ta.Trident},n=U.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:ta.Presto},n=U.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:ta.Gecko},n=U.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:ta.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:ta.WebKit},n=U.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],X1=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=U.find(V1,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=U.find(G1,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=U.find(J1,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=U.find(Y1,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return U.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},r=0;if(Object.keys(e).forEach(u=>{let o=e[u];typeof o=="string"?(a[u]=o,r+=1):typeof o=="object"&&(t[u]=o,n+=1)}),n>0){let u=Object.keys(t),o=U.find(u,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=U.find(u,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(r>0){let u=Object.keys(a),o=U.find(u,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),r=U.getBrowserTypeByAlias(a);return t&&r&&(a=r.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,r=this.getBrowserVersion();if(typeof r=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(U.compareVersions(r,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Qd=X1,Z1=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Qd(e,t)}static parse(e){return new Qd(e).getResult()}static get BROWSER_MAP(){return eg}static get ENGINE_MAP(){return ta}static get OS_MAP(){return Rt}static get PLATFORMS_MAP(){return et}},po=Z1;var{entries:sg,setPrototypeOf:tg,isFrozen:Q1,getPrototypeOf:e6,getOwnPropertyDescriptor:t6}=Object,{freeze:It,seal:pn,create:n6}=Object,{apply:w0,construct:v0}=typeof Reflect<"u"&&Reflect;w0||(w0=function(e,t,n){return e.apply(t,n)});It||(It=function(e){return e});pn||(pn=function(e){return e});v0||(v0=function(e,t){return new e(...t)});var a6=nn(Array.prototype.forEach),ng=nn(Array.prototype.pop),su=nn(Array.prototype.push),bo=nn(String.prototype.toLowerCase),y0=nn(String.prototype.toString),r6=nn(String.prototype.match),mn=nn(String.prototype.replace),u6=nn(String.prototype.indexOf),o6=nn(String.prototype.trim),Yt=nn(RegExp.prototype.test),lu=i6(TypeError);function nn(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r/gm),g6=pn(/\${[\w\W]*}/gm),m6=pn(/^data-[\-\w.\u00B7-\uFFFF]/),p6=pn(/^aria-[\-\w]+$/),lg=pn(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),f6=pn(/^(?:\w+script|data):/i),h6=pn(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),cg=pn(/^html$/i),ig=Object.freeze({__proto__:null,MUSTACHE_EXPR:c6,ERB_EXPR:d6,TMPLIT_EXPR:g6,DATA_ATTR:m6,ARIA_ATTR:p6,IS_ALLOWED_URI:lg,IS_SCRIPT_OR_DATA:f6,ATTR_WHITESPACE:h6,DOCTYPE_NAME:cg}),b6=()=>typeof window>"u"?null:window,y6=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let r="dompurify"+(n?"#"+n:"");try{return e.createPolicy(r,{createHTML(u){return u},createScriptURL(u){return u}})}catch{return null}};function dg(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b6(),t=C=>dg(C);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:r}=e,{DocumentFragment:u,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:m,DOMParser:g,trustedTypes:p}=e,f=s.prototype,A=fo(f,"cloneNode"),k=fo(f,"nextSibling"),h=fo(f,"childNodes"),S=fo(f,"parentNode");if(typeof o=="function"){let C=r.createElement("template");C.content&&C.content.ownerDocument&&(r=C.content.ownerDocument)}let _,B="",{implementation:L,createNodeIterator:v,createDocumentFragment:y,getElementsByTagName:T}=r,{importNode:b}=n,x={};t.isSupported=typeof sg=="function"&&typeof S=="function"&&L&&L.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:R,ERB_EXPR:D,TMPLIT_EXPR:I,DATA_ATTR:M,ARIA_ATTR:F,IS_SCRIPT_OR_DATA:$,ATTR_WHITESPACE:Z}=ig,{IS_ALLOWED_URI:de}=ig,V=null,me=Se({},[...ag,...T0,...x0,...E0,...rg]),ge=null,w=Se({},[...ug,...C0,...og,...ho]),H=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Q=null,fe=null,se=!0,O=!0,N=!1,re=!0,te=!1,ae=!1,ne=!1,oe=!1,Y=!1,ce=!1,Le=!1,Oe=!0,he=!1,Xe="user-content-",pt=!0,We=!1,$e={},qe=null,Ht=Se({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Jn=null,Ze=Se({},["audio","video","img","source","image","track"]),vn=null,dn=Se({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ft="http://www.w3.org/1998/Math/MathML",Vt="http://www.w3.org/2000/svg",j="http://www.w3.org/1999/xhtml",pe=j,Be=!1,Ae=null,De=Se({},[ft,Vt,j],y0),Ge,xt=["application/xhtml+xml","text/html"],Pe="text/html",Re,Gt=null,Eh=r.createElement("form"),Zc=function(C){return C instanceof RegExp||C instanceof Function},Es=function(C){if(!(Gt&&Gt===C)){if((!C||typeof C!="object")&&(C={}),C=nr(C),Ge=xt.indexOf(C.PARSER_MEDIA_TYPE)===-1?Ge=Pe:Ge=C.PARSER_MEDIA_TYPE,Re=Ge==="application/xhtml+xml"?y0:bo,V="ALLOWED_TAGS"in C?Se({},C.ALLOWED_TAGS,Re):me,ge="ALLOWED_ATTR"in C?Se({},C.ALLOWED_ATTR,Re):w,Ae="ALLOWED_NAMESPACES"in C?Se({},C.ALLOWED_NAMESPACES,y0):De,vn="ADD_URI_SAFE_ATTR"in C?Se(nr(dn),C.ADD_URI_SAFE_ATTR,Re):dn,Jn="ADD_DATA_URI_TAGS"in C?Se(nr(Ze),C.ADD_DATA_URI_TAGS,Re):Ze,qe="FORBID_CONTENTS"in C?Se({},C.FORBID_CONTENTS,Re):Ht,Q="FORBID_TAGS"in C?Se({},C.FORBID_TAGS,Re):{},fe="FORBID_ATTR"in C?Se({},C.FORBID_ATTR,Re):{},$e="USE_PROFILES"in C?C.USE_PROFILES:!1,se=C.ALLOW_ARIA_ATTR!==!1,O=C.ALLOW_DATA_ATTR!==!1,N=C.ALLOW_UNKNOWN_PROTOCOLS||!1,re=C.ALLOW_SELF_CLOSE_IN_ATTR!==!1,te=C.SAFE_FOR_TEMPLATES||!1,ae=C.WHOLE_DOCUMENT||!1,Y=C.RETURN_DOM||!1,ce=C.RETURN_DOM_FRAGMENT||!1,Le=C.RETURN_TRUSTED_TYPE||!1,oe=C.FORCE_BODY||!1,Oe=C.SANITIZE_DOM!==!1,he=C.SANITIZE_NAMED_PROPS||!1,pt=C.KEEP_CONTENT!==!1,We=C.IN_PLACE||!1,de=C.ALLOWED_URI_REGEXP||lg,pe=C.NAMESPACE||j,H=C.CUSTOM_ELEMENT_HANDLING||{},C.CUSTOM_ELEMENT_HANDLING&&Zc(C.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(H.tagNameCheck=C.CUSTOM_ELEMENT_HANDLING.tagNameCheck),C.CUSTOM_ELEMENT_HANDLING&&Zc(C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(H.attributeNameCheck=C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),C.CUSTOM_ELEMENT_HANDLING&&typeof C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(H.allowCustomizedBuiltInElements=C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),te&&(O=!1),ce&&(Y=!0),$e&&(V=Se({},[...rg]),ge=[],$e.html===!0&&(Se(V,ag),Se(ge,ug)),$e.svg===!0&&(Se(V,T0),Se(ge,C0),Se(ge,ho)),$e.svgFilters===!0&&(Se(V,x0),Se(ge,C0),Se(ge,ho)),$e.mathMl===!0&&(Se(V,E0),Se(ge,og),Se(ge,ho))),C.ADD_TAGS&&(V===me&&(V=nr(V)),Se(V,C.ADD_TAGS,Re)),C.ADD_ATTR&&(ge===w&&(ge=nr(ge)),Se(ge,C.ADD_ATTR,Re)),C.ADD_URI_SAFE_ATTR&&Se(vn,C.ADD_URI_SAFE_ATTR,Re),C.FORBID_CONTENTS&&(qe===Ht&&(qe=nr(qe)),Se(qe,C.FORBID_CONTENTS,Re)),pt&&(V["#text"]=!0),ae&&Se(V,["html","head","body"]),V.table&&(Se(V,["tbody"]),delete Q.tbody),C.TRUSTED_TYPES_POLICY){if(typeof C.TRUSTED_TYPES_POLICY.createHTML!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof C.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');_=C.TRUSTED_TYPES_POLICY,B=_.createHTML("")}else _===void 0&&(_=y6(p,a)),_!==null&&typeof B=="string"&&(B=_.createHTML(""));It&&It(C),Gt=C}},Qc=Se({},["mi","mo","mn","ms","mtext"]),e4=Se({},["foreignobject","desc","title","annotation-xml"]),Ch=Se({},["title","style","font","a","script"]),ju=Se({},T0);Se(ju,x0),Se(ju,s6);let Cs=Se({},E0);Se(Cs,l6);let wh=function(C){let ee=S(C);(!ee||!ee.tagName)&&(ee={namespaceURI:pe,tagName:"template"});let q=bo(C.tagName),Ie=bo(ee.tagName);return Ae[C.namespaceURI]?C.namespaceURI===Vt?ee.namespaceURI===j?q==="svg":ee.namespaceURI===ft?q==="svg"&&(Ie==="annotation-xml"||Qc[Ie]):!!ju[q]:C.namespaceURI===ft?ee.namespaceURI===j?q==="math":ee.namespaceURI===Vt?q==="math"&&e4[Ie]:!!Cs[q]:C.namespaceURI===j?ee.namespaceURI===Vt&&!e4[Ie]||ee.namespaceURI===ft&&!Qc[Ie]?!1:!Cs[q]&&(Ch[q]||!ju[q]):!!(Ge==="application/xhtml+xml"&&Ae[C.namespaceURI]):!1},Ja=function(C){su(t.removed,{element:C});try{C.parentNode.removeChild(C)}catch{C.remove()}},ws=function(C,ee){try{su(t.removed,{attribute:ee.getAttributeNode(C),from:ee})}catch{su(t.removed,{attribute:null,from:ee})}if(ee.removeAttribute(C),C==="is"&&!ge[C])if(Y||ce)try{Ja(ee)}catch{}else try{ee.setAttribute(C,"")}catch{}},t4=function(C){let ee,q;if(oe)C=""+C;else{let Bt=r6(C,/^[\r\n\t ]+/);q=Bt&&Bt[0]}Ge==="application/xhtml+xml"&&pe===j&&(C=''+C+"");let Ie=_?_.createHTML(C):C;if(pe===j)try{ee=new g().parseFromString(Ie,Ge)}catch{}if(!ee||!ee.documentElement){ee=L.createDocument(pe,"template",null);try{ee.documentElement.innerHTML=Be?B:Ie}catch{}}let ct=ee.body||ee.documentElement;return C&&q&&ct.insertBefore(r.createTextNode(q),ct.childNodes[0]||null),pe===j?T.call(ee,ae?"html":"body")[0]:ae?ee.documentElement:ct},n4=function(C){return v.call(C.ownerDocument||C,C,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},vh=function(C){return C instanceof m&&(typeof C.nodeName!="string"||typeof C.textContent!="string"||typeof C.removeChild!="function"||!(C.attributes instanceof c)||typeof C.removeAttribute!="function"||typeof C.setAttribute!="function"||typeof C.namespaceURI!="string"||typeof C.insertBefore!="function"||typeof C.hasChildNodes!="function")},zu=function(C){return typeof i=="object"?C instanceof i:C&&typeof C=="object"&&typeof C.nodeType=="number"&&typeof C.nodeName=="string"},On=function(C,ee,q){x[C]&&a6(x[C],Ie=>{Ie.call(t,ee,q,Gt)})},a4=function(C){let ee;if(On("beforeSanitizeElements",C,null),vh(C))return Ja(C),!0;let q=Re(C.nodeName);if(On("uponSanitizeElement",C,{tagName:q,allowedTags:V}),C.hasChildNodes()&&!zu(C.firstElementChild)&&(!zu(C.content)||!zu(C.content.firstElementChild))&&Yt(/<[/\w]/g,C.innerHTML)&&Yt(/<[/\w]/g,C.textContent))return Ja(C),!0;if(!V[q]||Q[q]){if(!Q[q]&&u4(q)&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,q)||H.tagNameCheck instanceof Function&&H.tagNameCheck(q)))return!1;if(pt&&!qe[q]){let Ie=S(C)||C.parentNode,ct=h(C)||C.childNodes;if(ct&&Ie){let Bt=ct.length;for(let Wt=Bt-1;Wt>=0;--Wt)Ie.insertBefore(A(ct[Wt],!0),k(C))}}return Ja(C),!0}return C instanceof s&&!wh(C)||(q==="noscript"||q==="noembed")&&Yt(/<\/no(script|embed)/i,C.innerHTML)?(Ja(C),!0):(te&&C.nodeType===3&&(ee=C.textContent,ee=mn(ee,R," "),ee=mn(ee,D," "),ee=mn(ee,I," "),C.textContent!==ee&&(su(t.removed,{element:C.cloneNode()}),C.textContent=ee)),On("afterSanitizeElements",C,null),!1)},r4=function(C,ee,q){if(Oe&&(ee==="id"||ee==="name")&&(q in r||q in Eh))return!1;if(!(O&&!fe[ee]&&Yt(M,ee))&&!(se&&Yt(F,ee))){if(!ge[ee]||fe[ee]){if(!(u4(C)&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,C)||H.tagNameCheck instanceof Function&&H.tagNameCheck(C))&&(H.attributeNameCheck instanceof RegExp&&Yt(H.attributeNameCheck,ee)||H.attributeNameCheck instanceof Function&&H.attributeNameCheck(ee))||ee==="is"&&H.allowCustomizedBuiltInElements&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,q)||H.tagNameCheck instanceof Function&&H.tagNameCheck(q))))return!1}else if(!vn[ee]&&!Yt(de,mn(q,Z,""))&&!((ee==="src"||ee==="xlink:href"||ee==="href")&&C!=="script"&&u6(q,"data:")===0&&Jn[C])&&!(N&&!Yt($,mn(q,Z,"")))&&q)return!1}return!0},u4=function(C){return C.indexOf("-")>0},o4=function(C){let ee,q,Ie,ct;On("beforeSanitizeAttributes",C,null);let{attributes:Bt}=C;if(!Bt)return;let Wt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ge};for(ct=Bt.length;ct--;){ee=Bt[ct];let{name:ht,namespaceURI:Ya}=ee;if(q=ht==="value"?ee.value:o6(ee.value),Ie=Re(ht),Wt.attrName=Ie,Wt.attrValue=q,Wt.keepAttr=!0,Wt.forceKeepAttr=void 0,On("uponSanitizeAttribute",C,Wt),q=Wt.attrValue,Wt.forceKeepAttr||(ws(ht,C),!Wt.keepAttr))continue;if(!re&&Yt(/\/>/i,q)){ws(ht,C);continue}te&&(q=mn(q,R," "),q=mn(q,D," "),q=mn(q,I," "));let i4=Re(C.nodeName);if(r4(i4,Ie,q)){if(he&&(Ie==="id"||Ie==="name")&&(ws(ht,C),q=Xe+q),_&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!Ya)switch(p.getAttributeType(i4,Ie)){case"TrustedHTML":{q=_.createHTML(q);break}case"TrustedScriptURL":{q=_.createScriptURL(q);break}}try{Ya?C.setAttributeNS(Ya,ht,q):C.setAttribute(ht,q),ng(t.removed)}catch{}}}On("afterSanitizeAttributes",C,null)},kh=function C(ee){let q,Ie=n4(ee);for(On("beforeSanitizeShadowDOM",ee,null);q=Ie.nextNode();)On("uponSanitizeShadowNode",q,null),!a4(q)&&(q.content instanceof u&&C(q.content),o4(q));On("afterSanitizeShadowDOM",ee,null)};return t.sanitize=function(C){let ee=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},q,Ie,ct,Bt;if(Be=!C,Be&&(C=""),typeof C!="string"&&!zu(C))if(typeof C.toString=="function"){if(C=C.toString(),typeof C!="string")throw lu("dirty is not a string, aborting")}else throw lu("toString is not a function");if(!t.isSupported)return C;if(ne||Es(ee),t.removed=[],typeof C=="string"&&(We=!1),We){if(C.nodeName){let Ya=Re(C.nodeName);if(!V[Ya]||Q[Ya])throw lu("root node is forbidden and cannot be sanitized in-place")}}else if(C instanceof i)q=t4(""),Ie=q.ownerDocument.importNode(C,!0),Ie.nodeType===1&&Ie.nodeName==="BODY"||Ie.nodeName==="HTML"?q=Ie:q.appendChild(Ie);else{if(!Y&&!te&&!ae&&C.indexOf("<")===-1)return _&&Le?_.createHTML(C):C;if(q=t4(C),!q)return Y?null:Le?B:""}q&&oe&&Ja(q.firstChild);let Wt=n4(We?C:q);for(;ct=Wt.nextNode();)a4(ct)||(ct.content instanceof u&&kh(ct.content),o4(ct));if(We)return C;if(Y){if(ce)for(Bt=y.call(q.ownerDocument);q.firstChild;)Bt.appendChild(q.firstChild);else Bt=q;return(ge.shadowroot||ge.shadowrootmod)&&(Bt=b.call(n,Bt,!0)),Bt}let ht=ae?q.outerHTML:q.innerHTML;return ae&&V["!doctype"]&&q.ownerDocument&&q.ownerDocument.doctype&&q.ownerDocument.doctype.name&&Yt(cg,q.ownerDocument.doctype.name)&&(ht=" +`+ht),te&&(ht=mn(ht,R," "),ht=mn(ht,D," "),ht=mn(ht,I," ")),_&&Le?_.createHTML(ht):ht},t.setConfig=function(C){Es(C),ne=!0},t.clearConfig=function(){Gt=null,ne=!1},t.isValidAttribute=function(C,ee,q){Gt||Es({});let Ie=Re(C),ct=Re(ee);return r4(Ie,ct,q)},t.addHook=function(C,ee){typeof ee=="function"&&(x[C]=x[C]||[],su(x[C],ee))},t.removeHook=function(C){if(x[C])return ng(x[C])},t.removeHooks=function(C){x[C]&&(x[C]=[])},t.removeAllHooks=function(){x={}},t}var _e=dg();var k0=so.alert;var gg={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var mg={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var pg={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var C6=[{code:"zh-CN",messages:gg},{code:"zh-TW",messages:mg},{code:"en",messages:pg}],fn="immersiveTranslateDeeplGlobalState",yo="immersiveTranslateBingGlobalState",an={};for(let e of C6)an[e.code]=e.messages;var La="Immersive Translate",X="immersive-translate";var Ee="immersiveTranslate",To="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",Dn=Ee+"GoogleAccessToken",cu=Ee+"AuthFlow",xo="immersive-translate-config-latest.json",A0=Ee+"AuthState",Eo=Ee+"IframeMessage",aw=Ee+"WaitForRateLimit",hg=Ee+"DocumentMessageAsk",Ot=Ee+"DocumentMessageTellThirdParty",bg=Ee+"DocumentMessageThirdPartyTell",w6=Ee+"DocumentMessageHandler",v6=`${Ee}Container`,yg=`${Ee}SpecifiedContainer`,Un="buildinConfig",ar="localConfig",du="openOptionsPage",S0="openAboutPage",Tg="translateLocalPdfFile";var gu="openEbookViewer",mu="openEbookBuilder";var Co=`${Ee}PageTranslatedStatus`,rw=`${Ee}PageUrlChanged`,na=`${Ee}ReceiveCommand`,xg=Ee+"LastUseMouseHoverTime",Eg=Ee+"LastUseInputTime",jn=Ee+"LastUseManualTranslatePageTime",uw=`${Ee}PopupReceiveMessage`,k6="immersivetranslate.com",A6="config.immersivetranslate.com",ow=`https://${k6}/`,aa=`https://${A6}/default_config.json`,iw=`${Ee}Mark`,pu="immersiveTranslateEffect",$t=`${Ee}Root`,sw=`data-${X}-effect`,Ln=`data-${X}-translation-element-mark`,Cg=`${Ee}TranslationElementMark`,lw=`${Ee}TranslatedMark`,cw=`${Ee}ParagraphId`,wg=`${Ee}LoadingId`,D0=`data-${X}-loading-id`,vg=`${Ee}ErrorId`,wo=`data-${X}-error-id`,S6=`${Ee}AtomicBlockMark`,kg=`${Ee}ExcludeMark`,dw=`data-${X}-exclude-mark`,D6=`${Ee}StayOriginalMark`,gw=`${Ee}PreWhitespaceMark`,vo=`${Ee}InlineMark`,Ag=`${Ee}BlockMark`,mw=`${Ee}Left`,pw=`${Ee}Right`,fw=`${Ee}Width`,hw=`${Ee}Height`,bw=`${Ee}Top`,yw=`${Ee}FontSize`,Sg="lastRunTime",Tw=`${Ee}GlobalStyleMark`,ko=["@","#"],Ao=" --- ",Dg=` +`,rn=`${X}-target-wrapper`,xw=`${X}-pdf-target-container`,Lg=`${X}-target-inner`,Ew=`${X}-source-wrapper`,L0=`${X}-target-translation-block-wrapper`,Cw=`${X}-root-translation-theme`,rr=`${Ee}RootTranslationTheme`,Pg=`${X}-target-translation-vertical-block-wrapper`,Mg=`${X}-target-translation-pdf-block-wrapper`,Fg=`${X}-target-translation-pre-whitespace`,P0=`${X}-target-translation-inline-wrapper`,M0=["none","dashed","underline","dashedBorder","solidBorder","mask","opacity","dotted","dividingLine","highlight","marker","marker2","blockquote","weakening","grey","paper","italic","bold","thinDashed","wavy","nativeDotted","nativeDashed","nativeUnderline"],fu={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Xt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],_g={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},Bg={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},Rg={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var Ig=["toggleTranslatePage","toggleTranslateTheWholePage","toggleOnlyTransation","toggleTranslateToThePageEndImmediately","toggleTranslateTheMainPage","toggleTranslationMask"],Og=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"],Ng="Night gathers, and now my watch begins. It shall not end until my death. I shall take no wife, hold no lands, father no children. I shall wear no crowns and win no glory. I shall live and die at my post.",F0="\u957F\u591C\u5C06\u81F3\uFF0C\u6211\u4ECE\u4ECA\u5F00\u59CB\u5B88\u671B\uFF0C\u81F3\u6B7B\u65B9\u4F11\u3002\u6211\u5C06\u4E0D\u5A36\u59BB\u3001\u4E0D\u5C01\u5730\u3001\u4E0D\u751F\u5B50\u3002\u6211\u5C06\u4E0D\u6234\u5B9D\u51A0\uFF0C\u4E0D\u4E89\u8363\u5BA0\u3002\u6211\u5C06\u5C3D\u5FE0\u804C\u5B88\uFF0C\u751F\u6B7B\u4E8E\u65AF\u3002",So="zh-CN",Do="https://immersivetranslate.com/docs/communities/",fg=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],hn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...dg,{type:"password",name:"apikey",required:!0}],props:dg},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},F0={type:xe+"ChildFrameToRootFrameIdentifier"},Lo=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"],Po=[{key:"/"},{key:"="},{key:";"},{key:","},{key:"."},{key:":"},{key:"space",labelKey:"spaceKey",skipForStarting:!0},{key:"none",labelKey:"noneKey",skipForTrailing:!0}],Rg='';var ur=console,_0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),r=tn.green;a>1e4?r=tn.red:a>1e3&&(r=tn.yellow),ur.debug(tn.dim(La+" TIMING:"),t,"in",r(a+"ms")),this.#e=n}},hu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&ur.log(tn.dim(La+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&ur.log(tn.green(La+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&ur.warn(tn.yellow(La+" WARN:"),...t)}error(...t){this.#e<=3&&ur.error(tn.red(La+" ERROR:"),...t)}fatal(...t){this.#e<=4&&ur.error(tn.red(La+" FATAL:"),...t)}timing(){return this.level===0?new _0:{reset:()=>{},stop:()=>{}}}},P=new hu;function tt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():x}var ve=tt();function le(){return ve.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function Og(){return ve.HAS_CSP_ERROR=="1"}function Dt(){if(ve.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function Ig(){return typeof Deno<"u"}var Dv=tt().PROD==="1",or=tt().PROD!=="1";function Ng(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function bu(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}function Ct(){try{return globalThis.self!==globalThis.top}catch{return!0}}var Mo=!1,v1=le();function Ug(e,t){let n=[];for(let a of t){let r=e.querySelectorAll(a);for(let u of r)n.push(u)}return n}function w1(e,t){let n=function(u){return u.nodeType===Node.ELEMENT_NODE||u.nodeType===Node.TEXT_NODE?u.nodeType===Node.ELEMENT_NODE&&jg(u,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),r=!0;for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.ELEMENT_NODE){if(ra(u,wo)){if(r===!0)return!0;continue}if(yu(u.nodeName,t.inlineTags))return!0;if(!B0(u,t))return!1}}return!0}function R0(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(yu(e.nodeName,n)||B0(e,t)){if(ra(e,Cg)||yu(e.nodeName,["BR"]))return!1;if(ra(e,wo))return!0;if(B0(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return w1(e,t)}else return ra(e,wo);return!1}function jg(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&ra(e,xg,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&ra(e,pg))return!1;let{stayOriginalTags:a,excludeTags:r}=t,u=[];return n&&r&&r.length>0?u=r||[]:u=r.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||yu(e.nodeName,u))}function Fo(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!Hg(a)&&a.length>=n}function zg(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(Hg(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function Hg(e){for(let t=0;t127)return!1;return!0}function Wg(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function $g(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function qg(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function Kg(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function ra(e,t,n=!1){return O0(e,t,"1",n)}function O0(e,t,n,a=!1){return Mo&&!a?e[$t]?!!(e[$t]&&e[$t][t]===n):!1:e.dataset[t]===n}function ir(e){return(e.innerText||e.textContent||"").trim()}function I0(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function _o(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function st(e,t,n,a=!1){e.isContentEditable||(Mo&&!a?(e.dataset[pu]||(e.dataset[pu]="1"),e[$t]||(e[$t]={}),e[$t][t]||(e[$t][t]=n)):(e.dataset[pu]||(e.dataset[pu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Bo(e,t,n=!1){if(Mo&&!n){if(!e[$t]||!e[$t][t])return;delete e[$t][t]}else delete e.dataset[t]}function sr(e,t,n=!1){return Mo&&!n?!e[$t]||!e[$t][t]?void 0:e[$t][t]:e.dataset[t]}function B0(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!yu(e.nodeName,n)}function lr(e){let{config:t}=e,n=ko;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function vt(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Ct())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Pa(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){P.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let r=e.querySelector(`style[data-id="${n}"]`);r&&r.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else P.warn("injectCSS failed, rootDocument does not have head node",e)}function cr(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(v1){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function yu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Gg(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),r=parseInt(t.substring(4,6),16);return{r:n,g:a,b:r}}function Vg(e,t,n,a){if(a.document.caretPositionFromPoint){let r=a.document.caretPositionFromPoint(e,t);if(r){let u=a.document.createRange(),o=r.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||jg(o,n,!0))return null;try{u.setStart(o,r.offset),u.setEnd(o,r.offset)}catch(i){return P.warn("getRangeFromPoint error",i),null}return u}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function Jg(e,t,n){let a=0,r=(u,o,i,s)=>{if(++a>100||s===u)return u;let l=u.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return u;let c=l.elementFromPoint(o,i);return c?r(c,o,i,u):u};return r(e,t,n)}function dr(e,t,n,a){let r=t,u=fu[r]||[],o="";e&&u&&u.length>0&&u.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let m=n[c];if(["borderRadius"].includes(c)&&(m+="px"),o+=`--immersive-translate-theme-${r}-${c}: ${m}; -`,t==="marker"&&c==="backgroundColor"&&typeof m=="string"){let{r:g,g:p,b:f}=Gg(m);o+=`--immersive-translate-theme-${r}-${c}-rgb: ${g}, ${p}, ${f}; +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...fg,{type:"password",name:"apikey",required:!0}],props:fg},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},_0={type:Ee+"ChildFrameToRootFrameIdentifier"},Lo=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"],Po=[{key:"/"},{key:"="},{key:";"},{key:","},{key:"."},{key:":"},{key:"space",labelKey:"spaceKey",skipForStarting:!0},{key:"none",labelKey:"noneKey",skipForTrailing:!0}],Ug='';var ur=console,B0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),r=tn.green;a>1e4?r=tn.red:a>1e3&&(r=tn.yellow),ur.debug(tn.dim(La+" TIMING:"),t,"in",r(a+"ms")),this.#e=n}},hu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&ur.log(tn.dim(La+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&ur.log(tn.green(La+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&ur.warn(tn.yellow(La+" WARN:"),...t)}error(...t){this.#e<=3&&ur.error(tn.red(La+" ERROR:"),...t)}fatal(...t){this.#e<=4&&ur.error(tn.red(La+" FATAL:"),...t)}timing(){return this.level===0?new B0:{reset:()=>{},stop:()=>{}}}},P=new hu;function tt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var we=tt();function le(){return we.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function jg(){return we.HAS_CSP_ERROR=="1"}function Dt(){if(we.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function zg(){return typeof Deno<"u"}var Fw=tt().PROD==="1",or=tt().PROD!=="1";function Hg(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function bu(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}function Ct(){try{return globalThis.self!==globalThis.top}catch{return!0}}var Mo=!1,L6=le();function Wg(e,t){let n=[];for(let a of t){let r=e.querySelectorAll(a);for(let u of r)n.push(u)}return n}function P6(e,t){let n=function(u){return u.nodeType===Node.ELEMENT_NODE||u.nodeType===Node.TEXT_NODE?u.nodeType===Node.ELEMENT_NODE&&$g(u,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),r=!0;for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.ELEMENT_NODE){if(ra(u,vo)){if(r===!0)return!0;continue}if(yu(u.nodeName,t.inlineTags))return!0;if(!R0(u,t))return!1}}return!0}function I0(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(yu(e.nodeName,n)||R0(e,t)){if(ra(e,Ag)||yu(e.nodeName,["BR"]))return!1;if(ra(e,vo))return!0;if(R0(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return P6(e,t)}else return ra(e,vo);return!1}function $g(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&ra(e,kg,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&ra(e,yg))return!1;let{stayOriginalTags:a,excludeTags:r}=t,u=[];return n&&r&&r.length>0?u=r||[]:u=r.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||yu(e.nodeName,u))}function Fo(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!Kg(a)&&a.length>=n}function qg(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(Kg(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function Kg(e){for(let t=0;t127)return!1;return!0}function Vg(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function Gg(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function Jg(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function Yg(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function ra(e,t,n=!1){return O0(e,t,"1",n)}function O0(e,t,n,a=!1){return Mo&&!a?e[$t]?!!(e[$t]&&e[$t][t]===n):!1:e.dataset[t]===n}function ir(e){return(e.innerText||e.textContent||"").trim()}function N0(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function _o(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function it(e,t,n,a=!1){e.isContentEditable||(Mo&&!a?(e.dataset[pu]||(e.dataset[pu]="1"),e[$t]||(e[$t]={}),e[$t][t]||(e[$t][t]=n)):(e.dataset[pu]||(e.dataset[pu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Bo(e,t,n=!1){if(Mo&&!n){if(!e[$t]||!e[$t][t])return;delete e[$t][t]}else delete e.dataset[t]}function sr(e,t,n=!1){return Mo&&!n?!e[$t]||!e[$t][t]?void 0:e[$t][t]:e.dataset[t]}function R0(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!yu(e.nodeName,n)}function lr(e){let{config:t}=e,n=ko;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function wt(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Ct())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Pa(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){P.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let r=e.querySelector(`style[data-id="${n}"]`);r&&r.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else P.warn("injectCSS failed, rootDocument does not have head node",e)}function cr(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(L6){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function yu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Xg(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),r=parseInt(t.substring(4,6),16);return{r:n,g:a,b:r}}function Zg(e,t,n,a){if(a.document.caretPositionFromPoint){let r=a.document.caretPositionFromPoint(e,t);if(r){let u=a.document.createRange(),o=r.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||$g(o,n,!0))return null;try{u.setStart(o,r.offset),u.setEnd(o,r.offset)}catch(i){return P.warn("getRangeFromPoint error",i),null}return u}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function Qg(e,t,n){let a=0,r=(u,o,i,s)=>{if(++a>100||s===u)return u;let l=u.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return u;let c=l.elementFromPoint(o,i);return c?r(c,o,i,u):u};return r(e,t,n)}function dr(e,t,n,a){let r=t,u=fu[r]||[],o="";e&&u&&u.length>0&&u.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let m=n[c];if(["borderRadius"].includes(c)&&(m+="px"),o+=`--immersive-translate-theme-${r}-${c}: ${m}; +`,t==="marker"&&c==="backgroundColor"&&typeof m=="string"){let{r:g,g:p,b:f}=Xg(m);o+=`--immersive-translate-theme-${r}-${c}-rgb: ${g}, ${p}, ${f}; `}}});let i="";if(n&&n.textColor){let l=n.textColor;i+=` .immersive-translate-target-translation-theme-${r}-inner{color: ${l};} `}if(n&&n.zoom){let l=n.zoom;i+=` @@ -4074,7 +4082,7 @@ ${o}} `),i&&(s+=i),s?Pa(e,s,"immersive-translate-user-custom-style"):a&&Pa(e,"","immersive-translate-user-custom-style")}function ua(e,t){let a=tt().IMMERSIVE_TRANSLATE_INJECTED_CSS;Pa(e,a,"immersive-translate-default-injected-css");let r=t.config.translationThemePatterns||{},u=t.state.translationTheme,o=r[u]||{};dr(e,u,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` `)),t.rule.additionalInjectedCss&&t.rule.additionalInjectedCss.length>0&&(i+=` `+t.rule.additionalInjectedCss.join(` -`))),i&&Pa(e,i,"immersive-translate-dynamic-injected-css")}var k1=0;function d(e,t,n,a,r){var u,o,i={};for(o in t)o=="ref"?u=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:u,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--k1,__source:r,__self:a};if(typeof e=="function"&&(u=e.defaultProps))for(o in u)i[o]===void 0&&(i[o]=u[o]);return we.vnode&&we.vnode(s),s}function N0({value:e,defaultCase:t=null,cases:n}){return e==null?null:d(ut,{children:n[e]!=null?n[e]:t})}function U0(){let[e,t]=W(location.hash);return ke(()=>{let n=()=>t(location.hash);return globalThis.addEventListener("hashchange",n,!1),()=>{globalThis.removeEventListener("hashchange",n)}},[]),e}function Je(e){w0({type:"success",text:e})}function Lt(e){w0({type:"error",text:e})}var j0=/iPhone/i,Yg=/iPod/i,Xg=/iPad/i,Zg=/\biOS-universal(?:.+)Mac\b/i,z0=/\bAndroid(?:.+)Mobile\b/i,Qg=/Android/i,gr=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ro=/Silk/i,zn=/Windows Phone/i,em=/\bWindows(?:.+)ARM\b/i,tm=/BlackBerry/i,nm=/BB10/i,am=/Opera Mini/i,rm=/\b(CriOS|Chrome)(?:.+)Mobile/i,um=/Mobile(?:.+)Firefox\b/i,om=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function A1(e){return t=>t.test(e)}function Ma(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let r=A1(n),u={apple:{phone:r(j0)&&!r(zn),ipod:r(Yg),tablet:!r(j0)&&(r(Xg)||om(t))&&!r(zn),universal:r(Zg),device:(r(j0)||r(Yg)||r(Xg)||r(Zg)||om(t))&&!r(zn)},amazon:{phone:r(gr),tablet:!r(gr)&&r(Ro),device:r(gr)||r(Ro)},android:{phone:!r(zn)&&r(gr)||!r(zn)&&r(z0),tablet:!r(zn)&&!r(gr)&&!r(z0)&&(r(Ro)||r(Qg)),device:!r(zn)&&(r(gr)||r(Ro)||r(z0)||r(Qg))||r(/\bokhttp\b/i)},windows:{phone:r(zn),tablet:r(em),device:r(zn)||r(em)},other:{blackberry:r(tm),blackberry10:r(nm),opera:r(am),firefox:r(um),chrome:r(rm),device:r(tm)||r(nm)||r(am)||r(um)||r(rm)},any:!1,phone:!1,tablet:!1};return u.any=u.apple.device||u.android.device||u.windows.device||u.other.device,u.phone=u.apple.phone||u.android.phone||u.windows.phone,u.tablet=u.apple.tablet||u.android.tablet||u.windows.tablet,u}var H0="DENO",Oo="CHROME",Io="FIREFOX";function im(e){let t=Oo;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Io:/deno/i.test(n)&&(t=H0)}catch{}return e===Oo&&t===Oo||e===Io&&t===Io||e===H0&&t===H0}function No(){return im(Oo)}function sm(){return typeof Deno<"u"}function Fa(){return im(Io)}function mr(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function _a(){return!!globalThis.matchMedia("(pointer:fine)").matches}var lm={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},cm={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:lm,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:lm,query:()=>{},sendMessage:()=>{}}};var z;sm()?z=cm:z=globalThis.immersiveTranslateBrowserAPI;var W0={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return z.storage[n].get(a)},set:(e,t,n)=>z.storage[n].set({[e]:t})};function Uo(e,t,n){let[a]=W(()=>typeof t=="function"?t():t),[r]=W(n),[u,o]=W(a),[i,s]=W(!1),[l,c]=W("");ke(()=>{W0.get(e,a,r).then(g=>{g[e]&&o(g[e]),s(!0),c("")}).catch(g=>{s(!1),c(g)})},[e,a,r]);let m=Xn(g=>{let p=typeof g=="function"?g(u):g;P.debug("new settings",p),W0.set(e,p,r).then(()=>{o(p),s(!0),c("")}).catch(f=>{o(p),s(!1),c(f)})},[r,e,u]);return[u,m,i,l]}function jo(e,t,n){let a=[];return function(){let[u,o,i,s]=Uo(e,t,n),l=Xn(c=>{for(let m of a)m(c)},[]);return ke(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[u,l,i,s]}}function dm(e,t){return jo(e,t,"local")}function gm(e,t){return jo(e,t,"sync")}var S1="userConfig",D1={},L1=gm(S1,D1);function bt(e){let[t,n,a,r]=L1(),u=Xn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,u,a,r,n]}function oa(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Xt.map(r=>r.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let r=n.indexOf(t);return r===-1?"auto":Xt[r]}else return"auto";else return Xt[a]}var zo={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`))),i&&Pa(e,i,"immersive-translate-dynamic-injected-css")}var M6=0;function d(e,t,n,a,r){var u,o,i={};for(o in t)o=="ref"?u=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:u,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--M6,__source:r,__self:a};if(typeof e=="function"&&(u=e.defaultProps))for(o in u)i[o]===void 0&&(i[o]=u[o]);return ve.vnode&&ve.vnode(s),s}function U0({value:e,defaultCase:t=null,cases:n}){return e==null?null:d(rt,{children:n[e]!=null?n[e]:t})}function j0(){let[e,t]=W(location.hash);return ke(()=>{let n=()=>t(location.hash);return globalThis.addEventListener("hashchange",n,!1),()=>{globalThis.removeEventListener("hashchange",n)}},[]),e}function Je(e){k0({type:"success",text:e})}function Lt(e){k0({type:"error",text:e})}var z0=/iPhone/i,em=/iPod/i,tm=/iPad/i,nm=/\biOS-universal(?:.+)Mac\b/i,H0=/\bAndroid(?:.+)Mobile\b/i,am=/Android/i,gr=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ro=/Silk/i,zn=/Windows Phone/i,rm=/\bWindows(?:.+)ARM\b/i,um=/BlackBerry/i,om=/BB10/i,im=/Opera Mini/i,sm=/\b(CriOS|Chrome)(?:.+)Mobile/i,lm=/Mobile(?:.+)Firefox\b/i,cm=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function F6(e){return t=>t.test(e)}function Ma(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let r=F6(n),u={apple:{phone:r(z0)&&!r(zn),ipod:r(em),tablet:!r(z0)&&(r(tm)||cm(t))&&!r(zn),universal:r(nm),device:(r(z0)||r(em)||r(tm)||r(nm)||cm(t))&&!r(zn)},amazon:{phone:r(gr),tablet:!r(gr)&&r(Ro),device:r(gr)||r(Ro)},android:{phone:!r(zn)&&r(gr)||!r(zn)&&r(H0),tablet:!r(zn)&&!r(gr)&&!r(H0)&&(r(Ro)||r(am)),device:!r(zn)&&(r(gr)||r(Ro)||r(H0)||r(am))||r(/\bokhttp\b/i)},windows:{phone:r(zn),tablet:r(rm),device:r(zn)||r(rm)},other:{blackberry:r(um),blackberry10:r(om),opera:r(im),firefox:r(lm),chrome:r(sm),device:r(um)||r(om)||r(im)||r(lm)||r(sm)},any:!1,phone:!1,tablet:!1};return u.any=u.apple.device||u.android.device||u.windows.device||u.other.device,u.phone=u.apple.phone||u.android.phone||u.windows.phone,u.tablet=u.apple.tablet||u.android.tablet||u.windows.tablet,u}var W0="DENO",Io="CHROME",Oo="FIREFOX";function dm(e){let t=Io;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Oo:/deno/i.test(n)&&(t=W0)}catch{}return e===Io&&t===Io||e===Oo&&t===Oo||e===W0&&t===W0}function No(){return dm(Io)}function gm(){return typeof Deno<"u"}function Fa(){return dm(Oo)}function mr(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function _a(){return!!globalThis.matchMedia("(pointer:fine)").matches}var mm={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},pm={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:mm,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:mm,query:()=>{},sendMessage:()=>{}}};var z;gm()?z=pm:z=globalThis.immersiveTranslateBrowserAPI;var $0={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return z.storage[n].get(a)},set:(e,t,n)=>z.storage[n].set({[e]:t})};function Uo(e,t,n){let[a]=W(()=>typeof t=="function"?t():t),[r]=W(n),[u,o]=W(a),[i,s]=W(!1),[l,c]=W("");ke(()=>{$0.get(e,a,r).then(g=>{g[e]&&o(g[e]),s(!0),c("")}).catch(g=>{s(!1),c(g)})},[e,a,r]);let m=Xn(g=>{let p=typeof g=="function"?g(u):g;P.debug("new settings",p),$0.set(e,p,r).then(()=>{o(p),s(!0),c("")}).catch(f=>{o(p),s(!1),c(f)})},[r,e,u]);return[u,m,i,l]}function jo(e,t,n){let a=[];return function(){let[u,o,i,s]=Uo(e,t,n),l=Xn(c=>{for(let m of a)m(c)},[]);return ke(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[u,l,i,s]}}function fm(e,t){return jo(e,t,"local")}function hm(e,t){return jo(e,t,"sync")}var _6="userConfig",B6={},R6=hm(_6,B6);function bt(e){let[t,n,a,r]=R6(),u=Xn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,u,a,r,n]}function oa(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Xt.map(r=>r.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let r=n.indexOf(t);return r===-1?"auto":Xt[r]}else return"auto";else return Xt[a]}var zo={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4094,64 +4102,75 @@ ${o}} ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};function $0(e){return Array.isArray(e)?e:e?[e]:[]}function un(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Ye(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function Ho(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let r={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))r[o]=i;else if(o.startsWith("additional")){let s=$0(i);r[o]=Array.from(new Set([...r[o],...s]))}else r[o]=$0(i)}),r}function Ba(){if(ve.PROD==="1")return{};let e={};if(ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:ve.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:ve.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:ve.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(ve.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=ve.DEEPL_PROXY_ENDPOINT),ve.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=ve.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),ve.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:ve.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return ve.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),ve.MOCK==="1"&&(e.translationService="mock"),ve.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=ve.IMMERSIVE_TRANSLATE_SERVICE),e}async function Hn(){let e=await z.storage.local.get(ar);if(e[ar]){let t=e[ar],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),r=!1;a.length!==n.length&&(n=a,r=!0);let u={...t,tempTranslationUrlMatches:[...n]};return r&&await Wn(u),u}else return{}}async function Wn(e){await z.storage.local.set({[ar]:e})}async function mm(e){await z.storage.local.set({[Un]:e})}async function pr(){await z.storage.local.set({[Un]:{}})}async function ia(){await z.storage.local.set({[ar]:{}})}async function pm(){let e=await z.storage.local.get(Un),n={...fr(),...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};if(e[Un]){let a=e[Un];if(a&&a.buildinConfigUpdatedAt){let r=new Date(a.buildinConfigUpdatedAt),u=new Date(n.buildinConfigUpdatedAt);r>u&&(n=a)}}return n}async function ze(){let e=await z.storage.local.get(Un),t={...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};if(e[Un]){let h=e[Un];if(h&&h.buildinConfigUpdatedAt){let A=new Date(h.buildinConfigUpdatedAt),_=new Date(t.buildinConfigUpdatedAt);A>_&&(t=h)}}let n={};if(!le()&&z.commands&&z.commands.getAll){let h=await z.commands.getAll();for(let A of h)A.name&&A.shortcut&&(n[A.name]=A.shortcut)}let a=fr(),r=Ba(),u=await Eu(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Hn(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let h=i.tempTranslationUrlMatches.filter(A=>new Date(A.expiredAt)>s);if(h.length>0){let A=u.translationUrlPattern?u.translationUrlPattern?.matches||[]:[],_=Array.isArray(A)?A:[A],B=Array.from(new Set(_.concat(h.map(L=>L.match))));u.translationUrlPattern={...u.translationUrlPattern,matches:B}}}let l=Object.assign({},o,r,u);if(!l.interfaceLanguage){let h=await M1();l.interfaceLanguage=h}let c=l.interfaceLanguage==="en",m=l.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,p=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!m&&!g&&p?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),S=Object.keys(f),k=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let h of S){let A=h;if(A==="generalRule")typeof l[A]=="object"&&(f[A]=Ho(a[A],l[A]));else if(A==="translationServices"){let _=l[A]||{},B=t[A]||{},L=Object.keys(B),w=Object.keys(_),y=[...new Set([...L,...w])],T={};for(let b of y)T[b]={...B[b],..._[b]};f[A]=T}else if(typeof l[A]!="string"&&typeof l[A]!="boolean"&&typeof l[A]!="number"&&k.includes(A))l[A]&&(f[A]=Object.assign(f[A],l[A])),A==="shortcuts"&&(le()||Dt()?f[A]={...f[A],...n}:f[A]={...n});else if(A==="rules"){if(Array.isArray(l[A])&&(f[A]=[...l[A],...f[A]]),ve.PROD==="0"&&ve.DEV_RULES){let _=JSON.parse(ve.DEV_RULES);f[A]=[..._,...f[A]]}}else l[A]!==void 0&&(f[A]=l[A])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function Eu(){return(await z.storage.sync.get("userConfig")||{}).userConfig||{}}async function Wo(e){await z.storage.sync.set({userConfig:e})}var M1=async()=>{let e=["zh-CN"];try{e=await z.i18n.getAcceptLanguages()}catch(a){P.warn("get browser language error:",a)}let n=e.map(a=>oa(a)).find(a=>an[a]);return n||"en"},fr=()=>{let e={...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};return{...e,targetLanguage:So,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function xu(e){if(Math.abs(e)<1024)return e+" Byte";let n=["KB","MB","GB","TB","PB","EB","ZB","YB"],a=-1;do e/=1024,++a;while(Math.abs(e)>=1024&&as+l.text.length,0)+o.text.length>t||u.tempSentences.length>=n)&&(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(u.from!==o.from||u.to!==o.to)&&(u.tempSentences.length>0?(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(u.from=o.from,u.to=o.to)),u.tempSentences.push(o);return u.tempSentences.length>0&&r.push(u),r}function F1(e,t){let n=[],a=[];for(let r=0;r0?f"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};function q0(e){return Array.isArray(e)?e:e?[e]:[]}function un(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Ye(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function Ho(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let r={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))r[o]=i;else if(o.startsWith("additional")){let s=q0(i);r[o]=Array.from(new Set([...r[o],...s]))}else r[o]=q0(i)}),r}function Ba(){if(we.PROD==="1")return{};let e={};if(we.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&we.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:we.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:we.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(we.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&we.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:we.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:we.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(we.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:we.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(we.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:we.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(we.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&we.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:we.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:we.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(we.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&we.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:we.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:we.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(we.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:we.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(we.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=we.DEEPL_PROXY_ENDPOINT),we.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=we.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),we.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:we.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return we.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),we.MOCK==="1"&&(e.translationService="mock"),we.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=we.IMMERSIVE_TRANSLATE_SERVICE),e}async function Hn(){let e=await z.storage.local.get(ar);if(e[ar]){let t=e[ar],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),r=!1;a.length!==n.length&&(n=a,r=!0);let u={...t,tempTranslationUrlMatches:[...n]};return r&&await Wn(u),u}else return{}}async function Wn(e){await z.storage.local.set({[ar]:e})}async function bm(e){await z.storage.local.set({[Un]:e})}async function pr(){await z.storage.local.set({[Un]:{}})}async function ia(){await z.storage.local.set({[ar]:{}})}async function ym(){let e=await z.storage.local.get(Un),n={...fr(),...zo,buildinConfigUpdatedAt:we.BUILD_TIME};if(e[Un]){let a=e[Un];if(a&&a.buildinConfigUpdatedAt){let r=new Date(a.buildinConfigUpdatedAt),u=new Date(n.buildinConfigUpdatedAt);r>u&&(n=a)}}return n}async function ze(){let e=await z.storage.local.get(Un),t={...zo,buildinConfigUpdatedAt:we.BUILD_TIME};if(e[Un]){let h=e[Un];if(h&&h.buildinConfigUpdatedAt){let S=new Date(h.buildinConfigUpdatedAt),_=new Date(t.buildinConfigUpdatedAt);S>_&&(t=h)}}let n={};if(!le()&&z.commands&&z.commands.getAll){let h=await z.commands.getAll();for(let S of h)S.name&&S.shortcut&&(n[S.name]=S.shortcut)}let a=fr(),r=Ba(),u=await xu(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Hn(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let h=i.tempTranslationUrlMatches.filter(S=>new Date(S.expiredAt)>s);if(h.length>0){let S=u.translationUrlPattern?u.translationUrlPattern?.matches||[]:[],_=Array.isArray(S)?S:[S],B=Array.from(new Set(_.concat(h.map(L=>L.match))));u.translationUrlPattern={...u.translationUrlPattern,matches:B}}}let l=Object.assign({},o,r,u);if(!l.interfaceLanguage){let h=await O6();l.interfaceLanguage=h}let c=l.interfaceLanguage==="en",m=l.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,p=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!m&&!g&&p?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),A=Object.keys(f),k=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let h of A){let S=h;if(S==="generalRule")typeof l[S]=="object"&&(f[S]=Ho(a[S],l[S]));else if(S==="translationServices"){let _=l[S]||{},B=t[S]||{},L=Object.keys(B),v=Object.keys(_),y=[...new Set([...L,...v])],T={};for(let b of y)T[b]={...B[b],..._[b]};f[S]=T}else if(typeof l[S]!="string"&&typeof l[S]!="boolean"&&typeof l[S]!="number"&&k.includes(S))l[S]&&(f[S]=Object.assign(f[S],l[S])),S==="shortcuts"&&(le()||Dt()?f[S]={...f[S],...n}:f[S]={...n});else if(S==="rules"){if(Array.isArray(l[S])&&(f[S]=[...l[S],...f[S]]),we.PROD==="0"&&we.DEV_RULES){let _=JSON.parse(we.DEV_RULES);f[S]=[..._,...f[S]]}}else l[S]!==void 0&&(f[S]=l[S])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function xu(){return(await z.storage.sync.get("userConfig")||{}).userConfig||{}}async function Wo(e){await z.storage.sync.set({userConfig:e})}var O6=async()=>{let e=["zh-CN"];try{e=await z.i18n.getAcceptLanguages()}catch(a){P.warn("get browser language error:",a)}let n=e.map(a=>oa(a)).find(a=>an[a]);return n||"en"},fr=()=>{let e={...zo,buildinConfigUpdatedAt:we.BUILD_TIME};return{...e,targetLanguage:So,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function Eu(e){if(Math.abs(e)<1024)return e+" Byte";let n=["KB","MB","GB","TB","PB","EB","ZB","YB"],a=-1;do e/=1024,++a;while(Math.abs(e)>=1024&&as+l.text.length,0)+o.text.length>t||u.tempSentences.length>=n)&&(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(u.from!==o.from||u.to!==o.to)&&(u.tempSentences.length>0?(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(u.from=o.from,u.to=o.to)),u.tempSentences.push(o);return u.tempSentences.length>0&&r.push(u),r}function N6(e,t){let n=[],a=[];for(let r=0;r0?ft){let h=[];q0(S,t,h);for(let A=0;A0&&f{let i=e.lastIndexOf(o,t);return i>u?i:u},-1);if(r===-1){let u=e.slice(0,t);if(u&&!u.trim())return;n.push({text:u,prefix:"",suffix:""}),e.length>t&&q0(e.slice(t),t,n)}else{let u=e.slice(0,r+1);if(u&&u.trim()==="")return;u.startsWith(" ")?n.push({text:u.slice(1),prefix:" ",suffix:""}):n.push({text:u,prefix:"",suffix:""}),r+10){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,optionalProps:i,explicitProps:o}}var $o=e=>{let{config:t}=e,n=t.alpha,a=t.beta,r=t.canary,u=t.debug;return Object.keys(hn).filter(i=>{let s=hn[i];if(i.startsWith("mock"))return u?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,m=!!s.beta;return i===e.translationService||l&&r||c&&(n||r)||m&&(a||n||r)?!0:!c&&!m&&!l}).map(i=>K0(i,e))};function Zt(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var d8=bm(2),hm=bm(3);function bm(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let r=typeof n.slice=="function"?n:String(n),u=r.length-e+1;if(u<1)return a;for(;u--;)a[u]=r.slice(u,u+e);return a}}var _1=/\s+/g,B1=/[\t\n\v\f\r ]+/g;function ym(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?R1:O1;return String(e).replace(t.style==="html"?B1:_1,t.trim?I1(n):n)}function R1(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function O1(){return" "}function I1(e){return t;function t(n,a,r){return a===0||a+n.length===r.length?"":e(n)}}var Tm={}.hasOwnProperty;function N1(e){return e==null?"":ym(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function U1(e){return hm(" "+N1(e)+" ")}function j1(e){let t=U1(e),n={},a=-1;for(;++an&&(n=u,a=r)}return[a,n]}function G1(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function V1(e,t,n,a){t=Y1(t,n,a);let r=[],u;if(t)for(u in t)qo.call(t,u)&&r.push([u,J1(e,t[u])]);return r.length===0?V0():r.sort(X1)}function J1(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let u=e.length-a;for(let o of ib){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/u>.5?t==="zh-CN"?Sm(e)?"zh-TW":"zh-CN":t:"auto"}var Lm=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function Pm(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Go(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...Lm.keys()]},r=Cm(e,a);if(r&&r.length>0){if(r.length>1&&r[0][0]!=="eng"&&r[1][0]==="eng"&&r[1][1]>.6)return"en";let[u]=r[0],o=Lm.get(u);if(o)return o}return"auto"}var gt=class extends Error{constructor(n,a,r){super(a);this.name=n,r&&(this.details=r)}};async function hr(e){let t;if(e&&e.retry&&e.retry>0)try{t=await o0(Mm.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await Mm(e);return t}async function Mm(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let r=!0;e.fetchPolyfill&&(r=!1);let u=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),r){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await u(t,a)}catch(s){P.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of sb(i.body)){let m=new TextDecoder().decode(c);s+=m;let g;for(;(g=s.indexOf(` -`))>=0;){let p=s.slice(0,g).trim();if(s=s.slice(g+1),p.startsWith("event:")||p==="")continue;let f="";if(p.startsWith("data:")&&(f=p.slice(5).trim()),f==="[DONE]")break;let S;try{S=JSON.parse(f??"")}catch(k){P.debug("json error",k);continue}l=S}}return l}}else{let s;try{s=await i.text()}catch(m){P.error("parse response failed",m)}s&&P.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new gt("fetchError",c,s)}}async function*sb(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function la(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function lb(e,t){return e<>>32-t}function Jo(e,t,n,a,r,u){return la(lb(la(la(t,e),la(a,u)),r),n)}function Pt(e,t,n,a,r,u,o){return Jo(t&n|~t&a,e,t,r,u,o)}function Mt(e,t,n,a,r,u,o){return Jo(t&a|n&~a,e,t,r,u,o)}function Ft(e,t,n,a,r,u,o){return Jo(t^n^a,e,t,r,u,o)}function _t(e,t,n,a,r,u,o){return Jo(n^(t|~a),e,t,r,u,o)}function Vo(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,r,u,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function J0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Vo(a,e.length*8)),n=0;n<16;n+=1)r[n]=a[n]^909522486,u[n]=a[n]^1549556828;return o=Vo(r.concat(J0(t)),512+t.length*8),Fm(Vo(u.concat(o),512+128))}function _m(e){var t="0123456789abcdef",n="",a,r;for(r=0;r>>4&15)+t.charAt(a&15);return n}function Y0(e){return unescape(encodeURIComponent(e))}function Bm(e){return cb(Y0(e))}function gb(e){return _m(Bm(e))}function Rm(e,t){return db(Y0(e),Y0(t))}function mb(e,t){return _m(Rm(e,t))}function ca(e,t,n){return t?n?Rm(t,e):mb(t,e):n?Bm(e):gb(e)}var br=[];async function vu(e,t){return await new Promise((n,a)=>{let r=e,u=1,o=indexedDB.open(r,u);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function X0(e){let t=`${X}-${e.service}@${e.from}->${e.to}`;return await fb(t,e)}async function Z0(e){let t=ca(e.originalText),n=`${X}-${e.service}@${e.from}->${e.to}`;return await pb(n,t)}async function pb(e,t){let n=await vu(e);return await new Promise((a,r)=>{if(!n)return r();let u="cache",i=n.transaction([u],"readonly").objectStore(u).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),r()}})}async function fb(e,t){let n=await vu(e);return(await Q0()).includes(e)||await hb(e),await new Promise(r=>{if(!n)return r(!1);let u="cache",i=n.transaction([u],"readwrite").objectStore(u).put(t);i.onsuccess=s=>{n.close(),r(!0)},i.onerror=s=>{n.close(),r(!1)}})}async function hb(e){let t="cache_list",n=await vu(X+"-cacheList",t),r=n.transaction([t],"readwrite").objectStore(t).put({key:e});r.onsuccess=u=>{n.close(),br.push(e)},r.onerror=u=>{n.close()}}async function Q0(){if(br&&br.length>0)return br;let e=await vu(X+"-cacheList","cache_list");return br=await new Promise(t=>{let n="cache_list",r=e.transaction([n],"readonly").objectStore(n).getAllKeys();r.onsuccess=u=>{e.close(),t(r.result)},r.onerror=u=>{e.close(),t([])}}),br}async function el(){try{let e=[];(await Q0()).forEach(a=>{e.push(bb(a))});let n=await Promise.all(e);return xu(n.reduce((a,r)=>a+r,0))}catch{return xu(0)}}async function bb(e){let t=await vu(e),a=[...t.objectStoreNames].reduce((o,i)=>{let s=yb(t,i);return o.push(s),o},[]),r=await Promise.all(a);return t.close(),r.reduce((o,i)=>o+i,0)}async function yb(e,t){return await new Promise((n,a)=>{if(e==null)return a();let r=0,u=e.transaction([t]).objectStore(t).openCursor();u.onsuccess=o=>{let i=u.result;if(i){let s=i.value,l=JSON.stringify(s);r+=l.length,i.continue()}else n(r)},u.onerror=o=>a("error in "+t+": "+o)})}async function Om(){try{let t=(await Q0()).map(a=>Tb(a));return!!(await Promise.all(t)).every(a=>a)}catch{return!1}}async function Tb(e){return await new Promise(t=>{let n=indexedDB.deleteDatabase(e);n.onsuccess=()=>{t(!0)},n.onerror=a=>{t(!1)}})}var Im=xe+"StoreKey_";function Yo(e,t){let n=Im+e;return z.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Nm(e,t){let n=Im+e;return z.storage.local.set({[n]:t})}var Um=xe+"SyncStoreKey_";function tl(e,t){let n=Um+e;return z.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function mt(e,t){let n=Um+e;return z.storage.sync.set({[n]:t})}var Xo={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.1",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function da(){return Xo.version}function Zo(){return z.runtime.getManifest().version}var jm="G-MKMD9LWFTR";async function nt(e,t,n){try{let a=tt();if(a.INSTALL_FROM==="firefox_store")return;let u=le(),o=Ct(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let T=await Yo(s,0),b=Qo(new Date(T)),E=Date.now(),R=Qo(new Date(E));if(b===R)return;await Nm(s,E)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",m=await tl("fakeUserId","");m||(m=await Yo("fakeUserId",""),m&&await mt("fakeUserId",m));let g=da(),p=new Date,f=await tl("installedAt","");f||(f=await Yo("installedAt",""),f&&await mt("installedAt",f)),m?f||(f=new Date(0).toISOString(),await mt("installedAt",f)):(m=xb(32),await mt("fakeUserId",m)),f||(f=p.toISOString(),await mt("installedAt",f));let S=new Date(f),k=Qo(S),h=Qo(p),A=k===h,_=p.getTime()-S.getTime()<7*24*60*60*1e3,B=`https://www.google-analytics.com/mp/collect?measurement_id=${jm}&api_secret=${c}`;i||(B=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${jm}&api_secret=${c}`);let L=po.parse(window.navigator.userAgent),w=t.map(T=>{let b=T.params||{};L.os&&(b.os_name=L.os.name||"unknown",b.os_version=L.os.version||"unknown",b.os_version_name=L.os.versionName||"unknown"),L.browser&&(b.browser_name=L.browser.name||"unknown",b.browser_version=L.browser.version||"unknown"),L.platform&&(b.platform_type=L.platform.type||"unknown"),L.engine&&(b.engine_name=L.engine.name||"unknown",b.engine_version=L.engine.version||"unknown"),n.translationService&&(b.translation_service=n.translationService),n.targetLanguage&&(b.target_language=n.targetLanguage),n.config.interfaceLanguage&&(b.interface_language=n.config.interfaceLanguage),g&&(b.version=g),n.config.translationTheme&&(b.translation_theme=n.config.translationTheme),n.config.alpha&&(b.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?b.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):b.always_translate_languages="none",a.INSTALL_FROM&&(b.install_from=a.INSTALL_FROM),n.config.beta&&(b.beta=n.config.alpha.toString()),n.config.translationArea&&(b.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(b.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),k&&(b.install_day=Cb(S)),n.config.translationMode&&(b.translation_mode=n.config.translationMode),b.userscript=u.toString(),A?b.is_new_user_today="1":b.is_new_user_today="0",_?b.is_new_user_this_week="1":b.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?b.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():b.temp_translate_domain_minutes="0";let E="html";if(n.rule.isEbook?E="ebookReader":n.rule.isPdf?E="pdfReader":n.rule.isEbookBuilder?E="ebookBuilder":n.rule.isSubtitleBuilder&&(E="subtitleBuilder"),b.page_type=E,o?b.main_frame=0:b.main_frame=1,!l){let R=n.url;try{let D=new URL(R);b.site_host=D.hostname}catch{b.site_host="unknown"}n.sourceLanguage&&(b.source_language=n.sourceLanguage)}return{...T,params:b}}),y=await ue({responseType:"text",url:B,method:"POST",body:JSON.stringify({client_id:m,user_id:m,events:w})})}catch{}}function xb(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r0){if(a.includes(e)||a.includes(""))return!1;for(let r of a)if(r.includes("*")&&new RegExp(r).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let r of n)if(r.includes("*")&&new RegExp(r).test(e))return!0}return!1}var Wm="auto",ei="auto",Hm="auto";function ti(e){Wm=e}function sn(e){ei=e}function Ln(){return ei!=="auto"?ei:Hm!=="auto"?Hm:Wm}function yr(){return ei}var vb=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function $n(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function nl(e,t,n){let{blockSelectors:a,extraBlockSelectors:r,extraInlineSelectors:u}=t;if($n(e,u))return!1;if($n(e,r)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!vb.includes(n.display):$n(e,a)}var Qt=$n;function Ra(e){return!!e.shadowRoot}function ga(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function wu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function ni(e){let t=ko;return e&&(t=e),t}async function Pn(e,t="",n=100){let a="auto";return t?await lt({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=yr()),a)}function ai(e,t){return sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function wb(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${X}-loading-${n} notranslate">`}function ku(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",rn),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),st(a,Tg,t.toString());let r=wb(e);return a.innerHTML=Ie.sanitize(r),a}function Tr(e,t){return e.querySelector(`[${S0}='${t}']`)}function $m(){document.querySelectorAll(`[${S0}]`).forEach(t=>{t.remove()})}function qm(){document.querySelectorAll(`.${rn}-error`).forEach(t=>{t.remove()})}function Km(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{cr(n)&&t.push(n)}),t}function Gm(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:r,text:u}=e,o=new RegExp(`${r[0]}(\\d+)${r[1]}`,"gi");if(r.length>2){let s=r[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=u.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(u)||i.includes("")||i.includes("< styles>")||Kg(i)||Wg(i)||qg(i)||$g(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Fo(u,n,a)}function Mn(e){return e.nodeType===Node.ELEMENT_NODE}function Vm(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function Jm(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var kb=1e5;function ma(e){let{onParagraph:t,filterRule:n,id:a}=e;n=Ab(n);let{stayOriginalSelectors:r,globalStyles:u,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,m={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,p=null;function f(B){let{container:L,onFrame:w,onIgnoreElement:y,id:T}=B,b=document.createTreeWalker(L,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,D=>{let O=R(D);return O==NodeFilter.FILTER_ACCEPT?qt.mark(D,T):O==NodeFilter.FILTER_REJECT,O}),E=L;if(R(E)===NodeFilter.FILTER_REJECT)return;for(qt.mark(E,T);E;){if(o&&o.length>0){let{currentNode:D,isMatchedSelection:O}=S(b,E,o);if(D)E=D;else break;if(!O)continue}if(E.nodeType===Node.ELEMENT_NODE||E.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let D=E;if(D.nodeName==="IFRAME"){w&&w(D);break}D.nodeType===Node.ELEMENT_NODE&&(u&&rl(D,u),l&&ol(D,l));let O=nl(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&!O){h(D);let $=null;for(;!($=b.nextSibling())&&b.parentNode(););E=$;continue}let M=Ra(D);(!Ym(m,D)||O)&&(k(),D.childNodes.length>0&&A(m,D,D.immersiveTranslateComputedStyle||null)),M&&D.shadowRoot?.mode==="open"&&(O?w?.(D.shadowRoot):f({...B,container:D.shadowRoot})),D.nodeType===Node.ELEMENT_NODE&&D.nodeName==="PRE"&&i&&Pb(D)}else if(E.nodeType===Node.TEXT_NODE)h(E);else throw new Error("should not be here");E=b.nextNode(),m.commonAncestorContainer&&E&&E.parentNode===m.commonAncestorContainer&&(m._currentStacks=[]),m.commonAncestorContainer&&E&&E.nodeType===Node.ELEMENT_NODE&&m._currentStacks.push(E)}function R(D){if(D.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(Mn(D)){if(l){let F=Object.keys(l);if(F.length>0&&Qt(D,F))for(let Z of F){let de=l[Z];if(D.matches(Z)){let G=l[Z],me=Object.keys(G);for(let ge of me){let v=G[ge];D.getAttribute(ge)!==v&&(v===null?D.removeAttribute(ge):D.setAttribute(ge,v))}break}}}if(!B.force&&qt.isMarked(D,T)||Vm(D,T)||il(D,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:r})||D.nodeName==="IFRAME"&&!cr(D))return NodeFilter.FILTER_REJECT;if(D.nodeType===Node.ELEMENT_NODE){let F=window.getComputedStyle(D);if(D.immersiveTranslateComputedStyle={display:F.display,whiteSpace:F.whiteSpace},ul(D.immersiveTranslateComputedStyle))return y&&y(D),NodeFilter.FILTER_REJECT;let $=nl(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&$)return NodeFilter.FILTER_REJECT}let{width:O,height:M}=D.getBoundingClientRect();return D.nodeName==="IMG"&&(O>48&&M>48?D.immersiveTranslateComputedStyle={display:"block"}:O>0&&M>0&&c!==!1&&(D.setAttribute("width",O),D.setAttribute("height",M))),!D.childNodes||D.childNodes&&D.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!m.isPreWhitespace&&(O>0&&O<4||M>0&&M<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(D.nodeType===Node.TEXT_NODE){let O=D.textContent?.trim();if(!O)return m.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let M=D.parentNode;if(M.getBoundingClientRect){let{width:F,height:$}=M.getBoundingClientRect();if(F>0&&F<4||$>0&&$<4)return NodeFilter.FILTER_REJECT}return s>0&&O.length>=s&&al(D,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),m&&m.commonAncestorContainer&&m.flatNodes.length>0&&k();function S(B,L,w){let y=L.immersiveTranslateComputedStyle||null;if(p){if(!p.contains(L))if(g=!1,L&&L.nodeType===Node.ELEMENT_NODE)if(ri(L,w))g=!0,p=L,k(),A(m,p,y);else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g}}else if(L&&L.nodeType===Node.ELEMENT_NODE)if(ri(L,w))g=!0,p=L,k(),A(m,p,y);else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};return{currentNode:L,isMatchedSelection:!0}}function k(){let B=Lb(m,a);B&&t&&t(B),Xm(m)}function h(B){if(!Ym(m,B)){k(),Xm(m);let L=B.parentNode;L&&A(m,L,L.computedStyle)}m.flatNodes.push(B)}function A(B,L,w){B.commonAncestorContainer=L;let y=_(w);B.isPreWhitespace=y}function _(B){return B&&B.whiteSpace&&B.whiteSpace.startsWith("pre")||B&&B.whiteSpace==="break-spaces"||!1}}function Ym(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=Ra(t));let a=Db(e),r=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?r=!0:e.commonAncestorContainer&&(r=!1,e._currentStacks=[])),r}function Ab(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function Sb(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function rl(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){e.style.cssText=u;break}}}}function Db(e){return e&&e._currentStacks?e._currentStacks.some(t=>Ra(t)):!1}function Lb(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let u=Mb(n,a);u||(u=a);let o=[];for(let g of n){let p=Sb(e,u,g);p&&(o.includes(p)||o.push(p))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,m=0;for(;c&&(l.push(c),c!==s);){if(m++,m>kb){P.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:u,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function Xm(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function ul(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,r=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(r)&&(r=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||r<-1e3}var qt={_marked_key:"immersive_translate_walked",isMarked(e,t){return O0(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return Bo(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return st(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=sr(e,"markWalk")||"";return st(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||Ra(e)):!1}};function Pb(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=Ie.sanitize(n)}function Mb(e,t){if(!e.length)return null;let n=e.map(a=>{let r=new Set;for(;(a=a.parentNode)&&(r.add(a),a!==t););return r});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(r=>r.has(a)))return a;return null}function al(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let u=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(u>1){let o=n[u-1]||"",i=n[u-2]||"",s=n[u+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?u=-1:isNaN(Number(o))||(u=-1)}if(u===-1)n.length>t+20&&al(e,t+20);else{let o=n.slice(u+1);u++,o.startsWith(" ")&&u++;let i=e.splitText(u),s=document.createElement("br");i.parentNode?.insertBefore(s,i),u+10)for(let a of n){let r=t[a],u=Object.keys(r),o=Ug(e,[a]);for(let i of o)for(let s of u){let l=r[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function Qm(e,t,n,a,r,u){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let m of l){let g=s[m];if(m==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||Fb(c,r,u)||!zg(f,n,a))continue}c.getAttribute(m)!==g&&(g===null?c.removeAttribute(m):c.setAttribute(m,g))}}}function ol(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){let o=t[r],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function il(e,t){return Qt(e,t.excludeSelectors||[])?Qt(e,t.selectors||[])?!1:!Qt(e,t.stayOriginalSelectors||[]):!1}function ri(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Qt(e,t.concat(n))}function Fb(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,r=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.TEXT_NODE&&parent){let u=r.textContent||"";if(u.includes("Copyright"))continue;if(Fo(u,t,n))return!0}}return!1}var e3=["*://*/*","*","*://*"],n3="immersive-translate-wildcard-placeholder.com";function sl(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>e3.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let r=a.href,u=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===u)return!0;if(e3.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===u:Bb(r,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let k=i.split("://");l=k[0],l==="*"&&k.length>1&&(l="*",i="https://"+k[1])}else l="*",i="https://"+i;let m=i.replace(/\*/g,n3),g;try{g=new URL(m)}catch{return P.debug("invalid match pattern",m,"raw match value:",c),!1}let p=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let S=_b(l+":",t3(p),t3(f));if(S){let k=new URL(r);return k.port="",S.test(k.href)}else return!1}});if(o)return o}return null}function t3(e){return e.replaceAll(n3,"*")}function _b(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Fn(e,t){return sl(e,t)!==null}function Bb(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}var Er="input is invalid type",ll=typeof window=="object",pa=ll?window:{};pa.JS_SHA256_NO_WINDOW&&(ll=!1);var Rb=!ll&&typeof self=="object",Ob=!pa.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Ob?pa=global:Rb&&(pa=self);var H7=!pa.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,W7=typeof define=="function"&&define.amd,Au=!pa.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",ie="0123456789abcdef".split(""),Ib=[-2147483648,8388608,32768,128],bn=[24,16,8,0],ui=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],oi=["hex","array","digest","arrayBuffer"],yt=[];(pa.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});Au&&(pa.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var a3=function(e,t){return function(n){return new Tt(t,!0).update(n)[e]()}},u3=function(e){var t=a3("hex",e);t.create=function(){return new Tt(e)},t.update=function(r){return t.create().update(r)};for(var n=0;n>2]|=e[r]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[u>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=u-64,this.hash(),this.hashed=!0):this.start=u}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};Tt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Ib[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};Tt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,m,g,p,f,S,k,h,A,_;for(l=16;l<64;++l)p=s[l-15],c=(p>>>7|p<<25)^(p>>>18|p<<14)^p>>>3,p=s[l-2],m=(p>>>17|p<<15)^(p>>>19|p<<13)^p>>>10,s[l]=s[l-16]+c+s[l-7]+m<<0;for(_=t&n,l=0;l<64;l+=4)this.first?(this.is224?(k=300032,p=s[0]-1413257819,i=p-150054599<<0,a=p+24177077<<0):(k=704751109,p=s[0]-210244248,i=p-1521486534<<0,a=p+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),m=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),k=e&t,g=k^e&n^_,S=r&u^~r&o,p=i+m+S+ui[l]+s[l],f=c+g,i=a+p<<0,a=p+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),m=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),h=a&e,g=h^a&t^k,S=i&r^~i&u,p=o+m+S+ui[l+1]+s[l+1],f=c+g,o=n+p<<0,n=p+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),m=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),A=n&a,g=A^n&e^h,S=o&i^~o&r,p=u+m+S+ui[l+2]+s[l+2],f=c+g,u=t+p<<0,t=p+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),m=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),_=t&n,g=_^t&a^A,S=u&o^~u&i,p=r+m+S+ui[l+3]+s[l+3],f=c+g,r=e+p<<0,e=p+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+r<<0,this.h5=this.h5+u<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};Tt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=ie[e>>28&15]+ie[e>>24&15]+ie[e>>20&15]+ie[e>>16&15]+ie[e>>12&15]+ie[e>>8&15]+ie[e>>4&15]+ie[e&15]+ie[t>>28&15]+ie[t>>24&15]+ie[t>>20&15]+ie[t>>16&15]+ie[t>>12&15]+ie[t>>8&15]+ie[t>>4&15]+ie[t&15]+ie[n>>28&15]+ie[n>>24&15]+ie[n>>20&15]+ie[n>>16&15]+ie[n>>12&15]+ie[n>>8&15]+ie[n>>4&15]+ie[n&15]+ie[a>>28&15]+ie[a>>24&15]+ie[a>>20&15]+ie[a>>16&15]+ie[a>>12&15]+ie[a>>8&15]+ie[a>>4&15]+ie[a&15]+ie[r>>28&15]+ie[r>>24&15]+ie[r>>20&15]+ie[r>>16&15]+ie[r>>12&15]+ie[r>>8&15]+ie[r>>4&15]+ie[r&15]+ie[u>>28&15]+ie[u>>24&15]+ie[u>>20&15]+ie[u>>16&15]+ie[u>>12&15]+ie[u>>8&15]+ie[u>>4&15]+ie[u&15]+ie[o>>28&15]+ie[o>>24&15]+ie[o>>20&15]+ie[o>>16&15]+ie[o>>12&15]+ie[o>>8&15]+ie[o>>4&15]+ie[o&15];return this.is224||(s+=ie[i>>28&15]+ie[i>>24&15]+ie[i>>20&15]+ie[i>>16&15]+ie[i>>12&15]+ie[i>>8&15]+ie[i>>4&15]+ie[i&15]),s};Tt.prototype.toString=Tt.prototype.hex;Tt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,r>>24&255,r>>16&255,r>>8&255,r&255,u>>24&255,u>>16&255,u>>8&255,u&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};Tt.prototype.array=Tt.prototype.digest;Tt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function ii(e,t,n){var a,r=typeof e;if(r==="string"){var u=[],o=e.length,i=0,s;for(a=0;a>6,u[i++]=128|s&63):s<55296||s>=57344?(u[i++]=224|s>>12,u[i++]=128|s>>6&63,u[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),u[i++]=240|s>>18,u[i++]=128|s>>12&63,u[i++]=128|s>>6&63,u[i++]=128|s&63);e=u}else if(r==="object"){if(e===null)throw new Error(Er);if(Au&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!Au||!ArrayBuffer.isView(e)))throw new Error(Er)}else throw new Error(Er);e.length>64&&(e=new Tt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var m=e[a]||0;l[a]=92^m,c[a]=54^m}Tt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}ii.prototype=new Tt;ii.prototype.finalize=function(){if(Tt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();Tt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),Tt.prototype.finalize.call(this)}};var xr=u3();xr.sha256=xr;xr.sha224=u3(!0);xr.sha256.hmac=o3();xr.sha224.hmac=o3(!0);var i3=xr;var s3=i3.sha256;function yn(e){return Promise.resolve(s3(e))}function si(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function fa(e,t){let n=s3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function l3(e,t){let n=await fa(e,t);return si(n)}async function li(e,t){let n=Nb(t),a=await fa(e,n);return si(a)}function Nb(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}async function wt(e){let{url:t,config:n,state:a}=e,r=new URL(t),u="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:m,targetLanguage:g,sourceLanguageUrlPattern:p,immediateTranslationPattern:f}=n,S=Cr(t,o),k=Cr(t,f),h=i,A=Object.keys(s);for(let N of A){let re=s[N];if(Cr(t,re)){h=N;break}}let _=l,B=Object.keys(c);for(let N of B){let re=c[N];if(re&&Cr(t,re)){_=N;break}}let L=Cr(t,m),w=c3(t,m);w||(w=Fn(t,_g)),w||(w=Fn(t,n.blockUrls));let y=c3(t,n.inputTranslationUrlPattern);y||(y=Fn(t,n.inputTranslationBlockUrls));let T=Fn(t,n.mutationBlockUrls),b=Object.keys(p),E={};for(let N of b){let re=p[N];if(re&&re.matches)for(let te of re.matches)E[te]=N}let R=Object.keys(E),D=sl(t,R);D&&(u=E[D]??"auto",E[D]&&E[D]!=="auto"&&sn(E[D]));let O=g||"zh-CN",M=r.hostname,F=await yn(M),$=r.pathname+r.search+r.hash,Z=await yn($),de=`https://${F}.com/${Z}`,G=await Hn(),me=await pm(),ge=n.translationStartMode;ge==="dynamic"&&k&&(ge="immediate");let v={targetLanguage:O,config:n,translationService:h,isTranslateUrl:L,sourceLanguage:u,mainFrame:document.body,isTranslateExcludeUrl:w,isMutationTranslationExcludeUrl:T,isInputTranslationExcludeUrl:y,rule:n.generalRule,url:t,encryptedUrl:de,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ge,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:S,cache:n.cache,translationTheme:_},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ge,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:S,cache:n.cache,translationTheme:_},localConfig:G};v.state.translationArea==="body"&&(v.config.generalRule.excludeTags=v.config.generalRule.excludeTags.filter(N=>!v.config.generalRule.bodyTranslateTags.includes(N)),v.config.generalRule.additionalExcludeSelectors=v.config.generalRule.additionalExcludeSelectors.filter(N=>N!==".btn"));let H=n.translationServices[v.translationService]||{};H.immediateTranslationTextCount!==void 0&&Ub(H.immediateTranslationTextCount)&&H.immediateTranslationTextCount>=0&&(v.state.immediateTranslationTextCount=H.immediateTranslationTextCount),v.translationService==="deepl"&&H&&H.authKey&&H.authKey.startsWith("immersive_")&&H.immediateTranslationTextCountForImmersiveDeepl!==void 0&&H.immediateTranslationTextCountForImmersiveDeepl>=0&&(v.state.immediateTranslationTextCount=H.immediateTranslationTextCountForImmersiveDeepl),H&&H.translationDebounce&&typeof H.translationDebounce=="number"&&(v.state.translationDebounce=H.translationDebounce);let Q=me.immediateTranslationTextCount;n.immediateTranslationTextCount!==Q&&(v.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let fe=n.rules,se;globalThis.PDFViewerApplication?se=fe.find(N=>N.isPdf):globalThis.immersiveTranslateEbookViewer?se=fe.find(N=>N.isEbook):globalThis.immersiveTranslateEbookBuilder?se=fe.find(N=>N.isEbookBuilder):se=fe.find(N=>Cr(t,N)),v.rule.isPdf&&(v.state.translationArea="main"),v.state.translationArea==="body"&&(v.rule.paragraphMinTextCount=1,v.rule.paragraphMinWordCount=1),se&&se.isEbookBuilder&&(v.state.translationStartMode="immediate");let I=n.generalRule;if(se&&(v.rule=Ho(I,se)),v.rule.selectors.length>0&&(v.rule.paragraphMinTextCount=2,v.rule.paragraphMinWordCount=1),v.state.translationArea==="body"&&v.rule.excludeTags&&(v.rule.excludeTags=v.rule.excludeTags.filter(N=>!v.rule.bodyTranslateTags.includes(N)&&!v.rule.forceTranslateTags.includes(N))),v.rule.mainFrameSelector){let N=document.querySelector(v.rule.mainFrameSelector);N&&(v.mainFrame=N)}return v}function Cr(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:r,excludeSelectorMatches:u}=t;return a&&a.length>0&&Fn(e,a)?!1:n&&n.length>0&&Fn(e,n)?!0:u&&u.length>0&&_o(u)?!1:!!(r&&r.length>0&&_o(r))}function c3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Fn(e,n)||a&&a.length>0&&_o(a))}function Ub(e){return typeof e=="number"}async function d3(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await lt({text:ir(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=oa(document.documentElement.lang)),e}function g3(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function cl(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let r=t[a],u=jb(a);if(typeof r=="object"||u){let o=r;u&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let m=n.substring(s+i.length,c),g=Object.keys(o).filter(p=>p!=="tag").map(p=>`${p}="${o[p]}"`).join(" ");n=n.replace(`${i}${m}`,`<${l} ${g}>${m}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,r.toString())}}),n}function Su(e,t,n){let a=e[t];if(!a)return n;let r=n.split("."),u="";do{u+=r.shift();let o=a[u];o!==void 0&&(typeof o=="object"||!r.length)?(a=o,u=""):r.length?u+=".":a=n}while(r.length);return a}function Oa(e,t,n,a,r){if(!e.hasOwnProperty(n))return t;let u=Su(e,n,t);return u===t&&n!==a&&(u=Su(e,a,t)),cl(u,r)}function jb(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function ci(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function vr(e,t,n=[],a,r){let u=["notranslate"];return a&&u.push(Dg),e&&(u.push(`${X}-target-translation-theme-${e}`),t?u.push(`${L0}-theme-${e}`):u.push(`${D0}-theme-${e}`)),n.length>0&&u.push(...n),t?u.push(L0):(u.push(D0),r&&u.push(Sg)),u}function wr(e){let t=["notranslate",kg];return e&&t.push(`${X}-target-translation-theme-${e}-inner`),t}function m3(e,t,n){let{rule:a,state:r}=n,{translationTheme:u}=r,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,m=lr(n),g="afterend",p=m[0].replace(/\//g,"/");p=p.replace(/"/g,'\\"'),p=p.replace(//g,">");let f=m[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let S=`${p}(\\d+)${f}`,k=new RegExp(S,"g"),h=ci(s);h=Ie.sanitize(h),o.length>0&&(h=h.replace(k,L=>{let w=h.indexOf(L),y=h[w-1]===" ",T=h[w+L.length]===" ",b=L.slice(m[0].length,-m[1].length),E=Number(b);if(isNaN(E))return L;let R=o[Number(E)];if(R&&R.type==="element"){let D=R.value.outerHTML;return y||(D=" "+D),T||(D=D+" "),D}else P.error("variable type not supported",R,L);return L}));let A=vr(u,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&A.push(Ag);let _=wr(u),B="";return a.translationBlockStyle&&(B=`style="${a.translationBlockStyle}"`),h=`<${n.rule.targetWrapperTag} ${B} class="${A.join(" ")}" ${Dn}="1"><${a.targetWrapperTag} class="${_.join(" ")}" ${Dn}="1">${h}`,e.inline||(l==="smart"?h=`
${h}`:h=`${l}${h}`),e.inline&&(l!=="smart"?h=`${l}${h}`:h=`<${a.targetWrapperTag} class="notranslate" ${Dn}="1"> ${h}`),c==="smart"?h=`${h}`:h=`${h}${c}`,{html:h,position:g}}function di(e,t){let n=null,{stayOriginalSelectors:a,delimiters:r,isPreWhitespace:u}=t,o=[],i={};for(let s=0;s2&&(k=`<${r[2]}${S}>`),i[S]=l,o.push({text:k,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";m&&(f=ga(dl(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Qt(l,a)){let S=Object.keys(i).length,k=`${r[0]}${S}${r[1]}`;r.length>2&&(k=`<${r[2]}${S}>`),i[S]=l;let h=gl(o).endsWith(" ")?" ":"",A=ga(l.innerText||l.textContent),_=ga(l.nextSibling).startsWith(" ")?" ":"",B=wu(h+A+_),L=B[0]+k+B[1];if(h===" ")L=L.trimStart();else if(!L.startsWith(" ")){let w=wu(l.previousSibling)[1];w===""&&(w=" "),L=w+L}o.push({text:L,type:"variable"})}else{let f=gl(o).endsWith(" ")?" ":"",S=ga(l.innerText||l.textContent);m&&(S=ga(dl(l)));let k=ga(l.nextSibling).startsWith(" ")?" ":"",h=wu(f+S+k),A=h[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+h[1];if(f===" ")A=A.trimStart();else{let _=wu(l.previousSibling)[1];_===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(_=" "),A=_+A}o.push({text:A,type:"text"})}else{let f=gl(o).endsWith(" ")?" ":"",S="";l.textContent&&(S=ga(dl(l))),f===" "&&(S=S.trimStart()),o.push({text:S,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(m=o[l-1].text),l2){let c=l[2];return zb({delimiterTag:c,targetText:e.targetText,inline:r,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=m3(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function dl(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function zb(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:r,wrapperPrefix:u,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:m}=e;o=o||[];let g=ci(e.targetText);g=Ie.sanitize(g);let p=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),S=new RegExp(`<${t}(\\d+)>`);o.length>0&&(p=p.replace(f,_=>{let B=p.indexOf(_),L=p[B-1]===" ",w=p[B+_.length]===" ",y=_.match(S);if(!y)return _;let T=y[1],b=Number(T);if(isNaN(b))return _;let E=o[Number(b)];if(E&&E.type==="element"){let R=E.value.outerHTML;return L||(R=" "+R),w||(R=R+" "),R}else if(E&&E.type==="text"){let R=E.value;return L||(R=" "+R),w||(R=R+" "),R}else P.error("variable type not supported",E,_);return _}));let k=vr(l,n,a||[],i,c),h=wr(l),A="";return m&&(A=`style="${m}"`),p=`<${r} ${A} class="${k.join(" ")}" ${Dn}="1"><${r} class="${h.join(" ")}" ${Dn}="1">${p}`,n||(u==="smart"?p=`
${p}`:p=`${u}${p}`),n&&(u!=="smart"?p=`${u}${p}`:p=`<${r} class="notranslate" ${Dn}="1"> ${p}`),s==="smart"?p=`${p}`:p=`${p}${s}`,{html:p,position:"afterend"}}function gl(e){let t=e[e.length-1];return t?t.text:""}function ln(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var Hb={sanitize:e=>e};function mi(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:ln(e.ctx),onParagraph:Du.bind(null,e),onFrame:n=>{pl(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),or&&st(t,"consumeContainer",e.id))}function pl(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!cr(t))return;P.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ar(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else P.debug("onFrame shadowRoot",t.host),Ar(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ar(e,t,n=!0){let{globalStyles:a,globalAttributes:r}=ln(t.ctx),u=0;if(s(t,e,n))return;if(Mn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(Mn(c)&&(a&&rl(c,a),r&&ol(c,r)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(qt.mark(l.currentNode,t.id);l.nextNode();){qt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let m=l.currentNode;if(qt.mark(l.currentNode,t.id),i(m)){o(m);continue}else break}if(!l.parentNode())return}}}catch{}if(u==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){qt.clearMark(l),u++,t.immediateTranslateCapacity>=0?mi(t,l):(or&&st(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return pl(t,l.shadowRoot,n),!1;if(c==="iframe")return pl(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let m=t.containerRule;if(m.selectors&&m.selectors?.length>0)return ri(l,m.selectors);if(m.pageHeight){let g=l.scrollHeight;if(g>0&&g0)return!0}return!1}function s(l,c,m){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||m&&qt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let p=ln(l.ctx);return!!il(c,{excludeSelectors:p.excludeSelectors,selectors:p.selectors,stayOriginalSelectors:p.stayOriginalSelectors})}}function fl(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!qt.isMarked(a,e.ctxId))return;let r=a.contains(e.rootNodes[0]),u=a.contains(e.targetNodes[0]);if(r&&u)n="dual";else if(r)n="original";else if(u)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(gi(e.rootNodes),f3(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=ml(e.rootNodes);gi(e.rootNodes),kr(o,a,e.targetNodes||[]),f3(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];kr(o,a,e.rootNodes||[]),h3(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=ml(e.rootNodes);kr(o,a,e.targetNodes||[]),h3(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=ml(e.targetNodes);gi(e.targetNodes),kr(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&gi(e.targetNodes)}catch(o){P.error(o)}}}function f3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{st(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function h3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let r=sr(a,"immersiveTranslateClassBak");Bo(a,"immersiveTranslateClassBak"),a.className=r});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function ml(e){return e?e[e.length-1].nextSibling:null}function gi(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function kr(e,t,n){let a=e;t&&(a?n.forEach(r=>{a.parentNode?.insertBefore(r,a)}):n.forEach(r=>{t.appendChild(r)}))}var Wb=St(bl,300);async function Du(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||$b(t.rootNodes)||t.stepState>=2)return;t.stepState=2,or&&st(a,"onParseParagraph",e.id);let{ctx:r}=e,{rule:u}=r,o=lr(r),i=di(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:r.rule.stayOriginalTags.concat(r.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(r.rule.stayOriginalSelectors).concat(r.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await yl(t,{excludeLanguages:r?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:r.state.isDetectParagraphLanguage,targetLanguage:r.targetLanguage,noTranslateRegexp:r.rule.noTranslateRegexp,delimiters:ni(r.config.translationServices[r.translationService]?.placeholderDelimiters),minTextCount:n||r.state.translationArea==="body"?2:u.paragraphMinTextCount,minWordCount:n||r.state.translationArea==="body"?1:u.paragraphMinWordCount,ignoreZhCNandZhTW:r.rule.ignoreZhCNandZhTW});if(s){if(P.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(qb(e,t.text),hl(e,t)):(or&&st(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function $b(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?Mn(t)&&t.classList.contains(rn):!1}function qb(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function hl(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),or&&st(t.commonAncestorContainer,"consumeParagraph",e.id),Wb.call(e,e.ctx)}async function bl(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await _n(a,t,(r,u,o)=>{let i=o.id,s=Kb(e,i.toString());s&&Gb.call(null,r,u,o,s,t,n)})}catch(r){P.error("translateCurrentQueue error",r);return}}function Kb(e,t){return e.find(n=>n.id===t)}function Gb(e,t,n,a,r,u){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${X}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Tr(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(P.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=r,l=n.id,c=document.createElement(s.targetWrapperTag);st(c,Eg,l.toString()),c.classList.add("notranslate",rn,rn+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",r.targetLanguage);let m=a.rootNodes[a.rootNodes.length-1].nextSibling;kr(m,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` -`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let p=Oa(an,"retryAllParagraphs",r.config.interfaceLanguage,"zh-CN"),f=Oa(an,"errorTooltipTitle",r.config.interfaceLanguage,"zh-CN"),S=`<${s.targetWrapperTag} class="${X}-error notranslate"><${s.targetWrapperTag} class="${X}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=Ie.sanitize(S)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=p3(a,r),l=document.createElement(r.rule.targetWrapperTag);l.classList.add("notranslate",rn),l.setAttribute("lang",r.targetLanguage),l.setAttribute(Dn,"1");let c=Hb.sanitize(s);l.innerHTML=c,a.targetNodes=[l],fl(a,u),o=!0}else P.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function yl(e,t){let{text:n}=e,a=await lt({text:n||"",minLength:10}),{targetLanguage:r}=t;if(!Gm({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=yr());let s=Ln(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return sa(c,r,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(p=>sa(c,p,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var Vb=[];function b3(e){Vb.push(e)}function y3(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(Ao)||Tl(e).catch(u=>{P.error("translateTitle error:",u.name,u.message,u.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var fi="";async function Tl(e){let t=document.title;if(!t||t.includes(Ao))return;fi!==t&&(fi=t);let n=await Pn(e,t);if(!ai(e,n))try{let a=await ha({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=fi+Ao+a.text)}catch(a){throw a}}function T3(e){e.rule.isTranslateTitle&&(document.title=fi)}var El="Original";function Ke(){return El}function Nt(e){El=e,E3(El)}var xl;function x3(e){let t=e.ctx.rule.aiRule;if(P.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=ln(e.ctx),r=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(r,1);let u,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{hi(e,l,a)}),xl=new MutationObserver(l=>{l.forEach(function(c){if(Mn(c.target)){if(o==u&&c.target===u&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=u){c.removedNodes?.forEach(m=>{m===u&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==u){if(o.translated)return;o.translated=!0,P.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),hi(e,o,a);return}t.streamingChange&&u&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(m=>{let g=m.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(P.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),hi(e,g,a))},100))})}})}),xl.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){$n(l,[t.streamingSelector])&&(u=l,P.debug("streamingNode",u)),$n(l,[t.messageWrapperSelector])&&(o=l,P.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),P.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),hi(e,o,a),u=void 0,o=null}}function hi(e,t,n){ma({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Du(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function C3(){xl?.disconnect()}var J=null;function yi(){return J||null}function Ti(e){Jb(e),ny(e),Qb(e),ty(e),ua(document,e),Nt("Translated"),ey(J),Zb(J),b3(ba),Yb(J)}function Jb(e){e.rule.initialSelectorGlobalAttributes&&Qm(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function Yb(e){x3(e)}function Xb(){C3()}function Zb(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ar(n,e)})}async function Qb(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,r=e.localConfig.tempTranslationUrlMatches||[],u=r.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;u>-1||(r.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Wn({...e.localConfig,tempTranslationUrlMatches:[...r]})}}function ey(e){e.ctx.rule.isTranslateTitle&&(Tl(e.ctx),e.titleDynamicObserver=y3(e.ctx))}function ty(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function ny(e){let t=Zt();J&&(t=J.id),J=J||{},J.ctx=e,J.id=t,J.paragraphQueue=J.paragraphQueue||[],J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.containerRule={pageHeight:screen.availHeight,selectors:J.rule.selectors},J.paragraphEntities=J.paragraphEntities||{},J.autoIncreaseParagraphId=J.autoIncreaseParagraphId||1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.immediateTranslateCapacity=e.state.immediateTranslationTextCount,J.observeContainers=J.observeContainers||[],J.observeParagraphs=J.observeParagraphs||[],J.dynamicContainerObserver=J.dynamicContainerObserver||iy(J),J.ignoreResizeObserver=J.ignoreResizeObserver||sy(J),J.containerVisibleObserver=J.containerVisibleObserver||ry(J),J.paragraphVisibleObserver=J.paragraphVisibleObserver||uy(J),J.injectCssToDocument=bi,J.walkContainer=ma,J.translateState=e.state.translationMode||e.config.translationMode||"dual",J.allInlineWindows=[window],window.onerror=ay(J,e),window.immersiveTranslateSwitchTranslateState=vl.bind(J)}function w3(e,t){t.getRootNode()instanceof ShadowRoot?bi(t.getRootNode(),e):bi(t.ownerDocument,e),Cl(e)}function Cl(e){J||(J={},J.ctx=e,J.id=Zt(),J.paragraphQueue=[],J.injectCssToDocument=bi,J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.paragraphEntities={},J.autoIncreaseParagraphId=1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.translateState=e.config.translationMode||"dual",J.observeContainers=[],J.observeParagraphs=[],J.allInlineWindows=[window],window.switchTranslateState=vl.bind(J))}function ba(e=!0){J&&(Nt("Original"),Xb(),J.interruptEffectDOM=!0,J.ignoreResizeObserver?.disconnect(),J.dynamicContainerObserver?.disconnect(),J.containerVisibleObserver?.disconnect(),J.paragraphVisibleObserver?.disconnect(),J.titleDynamicObserver?.disconnect(),T3(J.ctx),$m(),qm(),e&&vl.call(J,"original"),Object.values(J.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),J=null)}function ay(e,t){e.interruptEffectDOM=!1;let n;return function(a){let r=a.message,u=!1;return r?.indexOf("Minified React error")>=0&&(u=!0),u&&(clearTimeout(n),ba(),n=setTimeout(()=>{Ti(t)},e.urlChangeDelay||2e3)),!0}}function ry(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(mi(e,a.target),n.unobserve(a.target))})})}function uy(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let r=a.target;(r.paragraphs||[]).forEach(o=>{hl(e,o)}),n.unobserve(r)}})})}var v3;function oy(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(v3),e.translateState=="original"?!1:(ba(e.urlChangeDelay>20),v3=setTimeout(()=>{let r=e.ctx;Ti(r)},e.urlChangeDelay),!0)):!1}function iy(e){return new MutationObserver(t=>{if(!oy(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!qt.isSkipMarkEle(n.target)&&!qt.isMarked(n.target,e.id))continue;let r=(n.target?.paragraphs||[]).reduce((u,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...u,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&$n(n.target,e.ctx.rule.mutationObserverContainerSelectors)){qt.clearMark(n.target),n.target.paragraphs=void 0,mi(e,n.target);return}n.addedNodes.forEach((u,o)=>{u.nodeType===Node.ELEMENT_NODE&&(r.includes(u)||Ar(u,e))})}})}function sy(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let r=a.target,u=globalThis.getComputedStyle(r);ul(u)||(n.unobserve(a.target),Ar(r,e))}})}function vl(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{fl(t,e)}),e=="original"&&document.querySelectorAll(`.${rn}`).forEach(t=>t.remove())}function bi(e,t){if(e instanceof HTMLIFrameElement){ua(e.contentDocument,t);return}ua(e,t)}async function k3(e){let t=Ct(),n="auto";if(le()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=I0(e.mainFrame):a=ir(e.mainFrame).slice(0,1e3),n=await lt({text:a})}else if(t)n=await lt({text:ir(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=I0(e.mainFrame),n=await lt({text:a})}else n=await S3();return n==="auto"&&(n=await d3()),ti(n),n}async function A3(){if(!J)return;document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=J.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){J.paragraphQueue.push(n);let u=a.commonAncestorContainer.querySelector(`[${vo}='${n}']`);u&&u.remove()}}bl.call(J,J.ctx)}var D3={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},L3={...an,"zh-CN":{...D3["zh-CN"],...an["zh-CN"]},"zh-TW":{...D3["zh-TW"],...an["zh-TW"]}},Sr=L3;function ya(e,t,n){return Oa(L3,e,t,So,n)}var Ei=()=>Xt.filter(e=>e!=="auto"),kt=(e,t,n,a)=>{let r=Lg[e]||e,u=Pg[e],o=Mg[e],i={"zh-CN":u,"zh-TW":o,en:r};if(n)return i[e]?i[e]:r;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${r})`}else return r};function Dr(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{P.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:xo,payload:e},"*")});let n=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(n)}function wl(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((u,o)=>(u[t[o]]=o,u),{}),r=Object.keys(a);for(let u of r){let o=u.replace(/MacCtrl/ig,"Ctrl");o&&Ne(o,i=>{i.preventDefault(),Dr({method:a[u]})})}}var At=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,r=Date.now();if(t.length=u?(t.push(r),0):(t.push(u),u-r)}};function Ta(e){return e!=null}function F3(e,t,n){return`${e.type}#${t}#${n}`}function _3(e,t,n,a,r){return{body:r,id:a,type:F3(e,t,n)}}function ly(e,t,n,a){return{id:n,response:a,type:F3(e,"ask",t)}}function B3(e,t,n,a){if(Ta(a)){let r=a.type;if(Ta(r)&&Ta(a.body)){let[u,o,i]=r.split("#");return u===e.type&&o===t&&i===n}else return!1}else return!1}function cy(e,t,n){if(Ta(n)){let a=n.type;if(Ta(a)&&Ta(n.response)){let[r,u,o]=a.split("#");return r===e.type&&u==="ask"&&o===t}else return!1}else return!1}function dy(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function gy(e,t,n,a){return new Promise(r=>{let u=o=>{let i=o.data;cy(t,n,i)&&i.id===a&&(e.removeEventListener("message",u),r(i.response))};e.addEventListener("message",u)})}function my(e,t,n,a){let r=u=>{let o=u.data;B3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",r),[e,r]}function P3(e,t,n,a,r,u){let o=async i=>{let s=i.data;if(B3(n,"ask",a,s)){let l=await u(s.body);t=i.source,t.postMessage(ly(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function py(e,t,n,a,r){let u=Math.random().toString();return e.postMessage(_3(t,"tell",n,u,a),r)}async function M3(e,t,n,a,r,u,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let m=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await gy(e,n,a,i);clearTimeout(m),l(g)});return t.postMessage(_3(n,"ask",a,i,r),u),s}var Bn=class{constructor(t,n,a=window,r="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=r;this.listeners=[];P3(a,n,this.getSystemProtocol("ping"),"ping",r,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let r=0;r<=n;r++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",r=window){let u=n.contentWindow;if(Ta(u))return new Bn(t,u,r,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:r=window.parent}={}){return new Bn(t,r,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new Bn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await M3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(my(this.thisWindow,this.protocol,t,n))}tell(t,n){py(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(P3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return M3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){dy(this.listeners)}};var fy;function xi(){return fy}var hy=new At({limit:7,interval:1250}),by={tencent:new At({limit:3,interval:1350}),baidu:new At({limit:1,interval:1550}),strict:new At({limit:1,interval:1050}),d:new At({limit:1,interval:1050}),youdao:new At({limit:5,interval:1050}),you:new At({limit:5,interval:1050}),cai:new At({limit:5,interval:1050}),google:new At({limit:10,interval:1050}),deepl:new At({limit:10,interval:1050}),transmart:new At({limit:30,interval:1050}),papago:new At({limit:3,interval:1150}),openai:new At({limit:10,interval:1300}),chatgpt:new At({limit:1,interval:1350})};function Lu(e){return by[e]||hy}async function R3(e){if(Ct()){let n=xi();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return P.error("can not comunicate with root frame, use strict limiter",a),Lu("strict").getDelay()}else return Lu("strict").getDelay()}else return Lu(e).getDelay()}async function O3(e,t){if(!Ct()){let a=Lu(e);t&&a.setOptions(t)}}async function I3(e){let t=e.key;return{value:Lu(t).getDelay()}}var Ci=new Map;async function kl(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=ca(e.body)),Ci.has(t))return Ci.get(t);let n=ue(e);Ci.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Ci.delete(t)},3e4)}}async function N3(e){return kl(e)}async function Pu(e){if(Ct()){let n=xi();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw P.error("can not comunicate with root frame, use strict limiter",a),a}else return kl(e)}else return kl(e)}var Pr={},yy={root:"",lang:"en",fallbackLang:"en"};function Al(e,t){let n=Object.assign({},yy,e);Pr=t||Pr;let[a,r]=W(n.lang),[u,o]=W(Pr),[i,s]=W(!1),l=m=>{if(u.hasOwnProperty(m))return;s(!1);let g=g3(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(p=>p.json()).then(p=>{Pr[m]=p,o({...Pr}),s(!0)}).catch(p=>{o({...Pr}),s(!0)}))};return ke(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:r,t:(m,g)=>{if(!u.hasOwnProperty(a))return m;let p=Su(u,a,m);return p===m&&a!==n.fallbackLang&&(p=Su(u,n.fallbackLang,m)),cl(p,g)},isReady:i}}var Dl=Ju(null),Sl={root:"assets",lang:"en",fallbackLang:"en"},vi=e=>{let{t,setLang:n,lang:a,isReady:r}=Al({root:e.root||Sl.root,lang:e.lang||Sl.lang,fallbackLang:e.fallbackLang||Sl.fallbackLang,getUrl:e.getUrl},e.translations);return d(Dl.Provider,{value:{t,setLang:n,lang:a,isReady:r},children:e.children})};function U3(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let r={},u=Object.keys(n);for(let l of u){let m=n[l].matches;for(let g of m)r[g]||(r[g]=[]),r[g].push(l)}let o=r[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(m=>m!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Mu(e,t=2e3){return n=>{let a,r=0;return u=>{++r==e&&(n(u),r=0),clearTimeout(a),a=setTimeout(()=>r=0,t)}}}function j3(e){let t;try{t=new URL(e)}catch{return!1}let n=z3(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(Ty(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function Ty(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function H3(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function W3(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function qn(e){let{items:t,maxWidth:n}=e;return n=n||128,d("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let r=a.target.value,u=t.find(o=>o.value===r);u&&u.onSelected(u)},children:t.map((a,r)=>d("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+r))})}function $3(e){let{items:t,maxWidth:n,isInput:a,value:r}=e;return n=n||128,a?d("input",{value:r,onChange:u=>{e.onChange(u.target.value)}}):d("select",{autoComplete:"off",style:{maxWidth:`${n}px`},value:t.find(u=>u.selected)?.value,onChange:u=>{let o=u.target.value,i=t.find(s=>s.value===o);i&&i.onSelected(i)},children:t.map((u,o)=>d("option",{value:u.value,selected:u.selected,children:u.label},"selectlink"+o))})}var wi="DROP_DOWN_DEFAULT_VALUE";function Ll(e){let{showArrow:t,onSelected:n,className:a,menus:r,maxWidth:u}=e;a=a||"",t=t??!0,u=u||70;let o=wn(null);return d("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:wi,style:{maxWidth:`${u}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==wi){o.current.value=wi,o.current?.dispatchEvent(new Event("change"));let l=r.find(c=>c.value===s);l&&n(l)}},children:[{value:wi,label:e.label}].concat(r).map((i,s)=>d("option",{value:i.value,children:i.label},"option-"+s))})}function be(){return Qu(Dl)}function Pl(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:r}=be(),u=t.name;return t.label&&(u=t.label),t.labelKey&&(u=r(t.labelKey)),t.type==="select"?d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[u,"\uFF1A"]}),d(qn,{items:t.options.map(o=>({label:`${o.label?r(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Ea(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var Ey=({date:e})=>{let{t}=be(),[n,a]=W(!1);return ke(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},xy=({minVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},Cy=()=>{let{t:e}=be();return d("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},vy=({message:e,handleSyncing:t,date:n})=>{let{t:a}=be();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Ml(e){let{isShowError:t,request:n}=e,[a,r]=W(null),{t:u}=be(),[o,i]=W(null),[s,l]=W(null),[c,m]=W(""),[g,p]=W(!1),[f,S]=W(!1),[k,h]=W(!1),[A,_]=W(null),[B,L]=W(null),w=da(),y=async()=>{m("");let T=o;if(o===null)try{let b=await n({url:aa});b?(i(b),T=b,p(!0)):(m(u("unknownError")),l(null))}catch(b){l(null),m(b.message);return}T!==null?(e.setStorageBuildinConfig(T),l(!1),r(T.buildinConfigUpdatedAt)):(m(u("canNotFetchRemoteRule")),l(null))};return ke(()=>{ze().then(T=>{let b=T.buildinConfigUpdatedAt;_(T);let E=new Date(b);if(r(b),w==="0.0.0"){h(!0);return}n({url:aa}).then(R=>{let D=R,O=D.minVersion,M=w;i(D);let F=D.latestVersion;if(F&&(Ea(M,F)?L(!0):L(!1)),Ea(M,O)){let $=D.buildinConfigUpdatedAt;new Date($)>E?(l(!0),y()):l(!1)}else S(!0),l(null)}).catch(R=>{l(null),m(R.message)})})},[]),ke(()=>{ze().then(T=>{_(T)})},[a]),A?d("div",{class:"text-sm mt-2",style:{maxWidth:218},children:k?d(Cy,{}):c?t===!1?null:d(vy,{handleSyncing:y,message:c,date:a||""}):f?t===!1?null:d(xy,{minVersion:o.minVersion}):s===null||s===!0?null:g?d(Ey,{date:a}):null}):null}function Fl(e){let t=da(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:r,onTranslateLocalHtmlFile:u,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:m,config:g,openAboutPage:p,onTranslateTheWholePage:f,onToggleEnabled:S,openOptionsPage:k,ontranslateToThePageEndImmediately:h,onSetPageLanguage:A,onToggleTranslate:_,onTranslateLocalPdfFile:B,onTranslatePdf:L,onRestorePage:w,ctx:y,currentUrl:T,currentLang:b,onClose:E,onTranslatePage:R,onSetLocalConfig:D,onMouseTriggerChanged:O,errorMsg:M,disabledButton:F,noPermissionPDF:$}=e,Z=a,[de,G]=W(""),[me,ge]=W(M),{t:v,lang:H}=be(),Q=60;H.startsWith("zh")||(Q=65);let fe=null,se=null,I=null,N=null,re=null,te=null,ae=null,ne=null,oe=null,Y=null,ce=null,Le=null,Oe=!0;if(g){Dt()&&g&&(Oe=g.generalRule.showSponsorOnSafari);let{translationService:j,translationServices:pe,translationUrlPattern:_e}=g;hn[j]&&(ne=K0(j,y)),pe&&pe[j]?Le=pe[j]||{}:Le={};try{oe=new URL(T||"")}catch{}if(T&&j3(T)){Y=H3(oe.hostname),ce=W3(T);let{matches:Ae,excludeMatches:De}=_e;se=Ae.includes(Y),fe=Ae.includes(oe.hostname),N=De.includes(Y),I=De.includes(oe.hostname),te=Ae.includes(ce),ae=De.includes(ce)}}if(g&&b&&b!=="auto"){let{translationLanguagePattern:j}=g,{matches:pe}=j;pe.includes(b)?re=!0:re=!1}let he=j=>{j.preventDefault(),k()},Xe=j=>{Z(pe=>(pe.alpha?G("Success disable alpha!"):G("Success enable alpha!"),{...pe,alpha:!pe.alpha}))},pt=j=>{Z(pe=>({...pe,translationMode:j})),o(j)},We=()=>{Z(j=>({...j,translationArea:"body"})),f()},$e=()=>{Z(j=>({...j,translationArea:"main"})),n()},qe=(j,pe,_e,Ae)=>{if(j==="default"){Z(Et=>{let Pe={...Et.translationUrlPattern};return{...Et,translationUrlPattern:{...Et.translationUrlPattern,matches:Ye([oe?.hostname,Y,T],Pe.matches),excludeMatches:Ye([oe?.hostname,Y,T],Pe.excludeMatches)}}});return}let De=j,Ve=De==="matches"?"excludeMatches":"matches";oe&&Z(Et=>{let Pe={...Et.translationUrlPattern};return Pe[De]=un(pe,Pe[De]),Ae.length>0&&(Pe[De]=Ye(Ae,Pe[De])),Pe[Ve]=Ye(_e,Pe[Ve]),{...Et,translationUrlPattern:{...Et.translationUrlPattern,...Pe}}}),De==="matches"&&l==="Original"?setTimeout(()=>{R(),E()},100):De==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{w(),E()},100)},Ht=j=>{if(!j){Z(Ae=>{let De={...Ae.translationLanguagePattern};return{...Ae,translationLanguagePattern:{...Ae.translationLanguagePattern,matches:Ye(b,De.matches),excludeMatches:Ye(b,De.excludeMatches)}}});return}let pe=j,_e=pe==="matches"?"excludeMatches":"matches";b&&Z(Ae=>{let De={...Ae.translationLanguagePattern};return De[pe]=un(b,De[pe]),De[_e]=Ye(b,De[_e]),{...Ae,translationLanguagePattern:{...Ae.translationLanguagePattern,...De}}}),pe==="matches"&&l==="Original"&&setTimeout(()=>{R(),E()},100)},Jn=oe?.pathname.toLowerCase().endsWith(".pdf"),Ze=v("translate");l==="Translated"||l==="Error"?Ze=v("show-original"):l==="Original"?Jn?Fa()&&oe.protocol==="file:"||$?Ze=v("translate-firefox-local-pdf"):le()?Ze=v("noSupportTranslate-pdf"):Ze=v("translate-pdf"):Ze=v("translate"):Ze=v(l);let vn=v("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(g.shortcuts.toggleTranslatePage&&(mr()&&y.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ze+=` (${v(`fingers.${y.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ze+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(vn+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let dn=[];y&&(dn=$o(y));let ft=j=>{j.preventDefault(),E()},Gt=Mr(y.config.translationService,y.config.targetLanguage);return d("div",{class:"p-3",children:[d("div",{class:"text-sm",children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[v("popupSourceLanguage"),"\uFF1A"]}),d(qn,{items:Xt.map(j=>({label:kt(j,g.interfaceLanguage),value:j,selected:j===y.sourceLanguage,onSelected:pe=>{A(pe.value)}}))})]}),g&&g.targetLanguage&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[v("popupTarget"),"\uFF1A"]}),d(qn,{items:Gt.filter(j=>j!=="auto").map(j=>({label:kt(j,g.interfaceLanguage),value:j,selected:j===g.targetLanguage,onSelected:pe=>{Z(_e=>({..._e,targetLanguage:pe.value}))}}))})]}),ne&&dn.length>0&&d(ut,{children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[v("popupService"),"\uFF1A"]}),d(qn,{items:dn.map(j=>({label:`${v("translationServices."+j.id)}${j.ok?"":" "+v("needAction")}`,value:j.id,selected:j.selected,onSelected:pe=>{let _e=dn.find(Ae=>Ae.id===pe.value);_e.ok?(Z(Ae=>({...Ae,translationService:_e.id})),_e.props.length===0?setTimeout(()=>{R()},1):setTimeout(()=>{w()},1)):(Z(Ae=>({...Ae,translationService:_e.id})),setTimeout(()=>{k()},100))}}))})]}),Le&&ne.props.length>0&&ne.props.map((j,pe)=>d("div",{class:"pl-4 text-sm",children:d(Pl,{field:j,value:Le[j.name],onChange:_e=>{Z(Ae=>{let De=Ae.translationServices||{},Ve=De[ne.id]||{};return setTimeout(()=>{w()},1),{...Ae,translationServices:{...De,[ne.id]:{...Ve,[j.name]:_e}}}})}},"field-"+pe)},"service"+pe))]}),oe&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:v("forThisSite")}),d(qn,{items:[{label:v("default"),value:"default",selected:fe===!1&&I===!1&&!se&&!N&&!te&&!ae,onSelected:()=>{qe("default",oe.hostname,[],[]);let j=oe.hostname,pe=y.localConfig.tempTranslationUrlMatches||[],_e=pe.filter(De=>De.match!==j),Ae=!1;_e.length!==pe.length&&(Ae=!0),Ae&&D({...y.localConfig,tempTranslationUrlMatches:[..._e]})}},ce&&{label:v("alwaysTranslateSomeSite",{hostname:v("currentUrl")}),value:"matchesUrl",selected:te,onSelected:()=>{qe("matches",ce,[ce],[])}},{label:v("alwaysTranslateSomeSite",{hostname:oe.hostname}),value:"matches",selected:fe,onSelected:j=>{qe(j.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:v("alwaysTranslateSomeSite",{hostname:Y}),value:"matchesWild",selected:se,onSelected:()=>{qe("matches",Y,[ce,oe.hostname,Y],[oe.hostname])}},ce&&{label:v("neverTranslateSomeSite",{hostname:v("currentUrl")}),value:"excludeMatchesUrl",selected:ae,onSelected:()=>{qe("excludeMatches",ce,[ce],[])}},{label:v("neverTranslateSomeSite",{hostname:oe.hostname}),value:"excludeMatches",selected:I,onSelected:j=>{qe(j.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:v("neverTranslateSomeSite",{hostname:Y}),value:"excludeMatchesWild",selected:N,onSelected:()=>{qe("excludeMatches",Y,[oe.hostname,ce,Y],[oe.hostname])}}].filter(Boolean)})]}),O&&_a()&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[v("mouse-translate"),"\uFF1A"]}),d(qn,{items:Lo.filter(j=>!(Lo.includes(g.generalRule.mouseHoverHoldKey)&&j==="OtherCustom")).map(j=>{let pe=v("mouseHoldKey",{key:j}),_e=Lo.includes(g.generalRule.mouseHoverHoldKey),Ae=j===g.generalRule.mouseHoverHoldKey;return j==="Auto"?pe=v("mouseHoldKeyAuto"):j==="Off"?pe=v("mouseHoldKeyOff"):j==="OtherCustom"?pe=_e?v("mouseHoldKeyOther"):v("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):j==="Other"&&(pe=v("mouseHoldKeyOther")),_e||j==="OtherCustom"&&(Ae=!0),{label:pe,value:j,selected:Ae,onSelected:De=>{De.value==="Other"?k("#interface"):O(De.value)}}})})]})]}),d("div",{class:"",children:d("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Jn?L&&L():_()},"aria-busy":l==="Translating",disabled:F||l==="Translating",children:Ze})}),d("div",{class:"text-sm",children:de}),d("div",{class:"text-sm",children:me}),d("div",{class:"flex justify-between flex-wrap",children:[b&&b!=="auto"?d("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[d("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!re,onChange:j=>{let pe=j.target.checked;Ht(pe?"matches":void 0)}}),v("alwaysTranslateSomeLanguage",{language:kt(b,g.interfaceLanguage,!1,!0)})]}):d("span",{}),d("div",{class:"flex flex-end flex-grow",children:d(Ll,{label:v("more"),showArrow:!0,maxWidth:Q,onSelected:j=>{j.value==="changeToOnlyTranslationMode"?pt("translation"):j.value==="changeToDualTranslationMode"?pt("dual"):j.value==="translateTheWholePage"?f():j.value==="translateToThePageEndImmediately"?h():j.value==="translateTheMainPage"?n():j.value==="showTranslationOnly"||(j.value==="translateLocalPdfFile"?B&&B():j.value==="translateLocalHtmlFile"?u&&u():j.value==="translateLocalSubtitleFile"?i&&i():j.value==="donate"?(globalThis.open(g.donateUrl),E()):j.value==="feedback"?(globalThis.open(g.feedbackUrl),E()):j.value==="options"?(k(),E()):j.value==="changeToTranslateTheWholePage"?We():j.value==="changeToTranslateTheMainPage"?$e():j.value==="about"?p():j.value==="toggleEnabled"?S():j.value==="openEbookViewer"?m():j.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+v("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+v("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+v("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+v("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+vn,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+v("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+v("browser.openEbookBuilder"),value:"openEbookBuilder"},!le()&&{label:"\u{1F4C1} "+v("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!le()&&{label:"\u{1F310} "+v("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+v("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?v("clickToDisableExtension"):v("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+v(Oe?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),d("footer",{children:[d(Ml,{isShowError:!1,request:r,setStorageBuildinConfig:s}),d("div",{class:"mt-3 text-sm flex justify-between",children:[d("a",{href:"#",class:"secondary",onClick:he,children:v("options")}),le()&&d("a",{href:"#",class:"secondary",onClick:ft,children:v("close")}),d("span",{class:"immersive-translate-no-select muted",onClick:Mu(7)(Xe),children:["V",t,g.enabled?null:d("a",{href:"#",onClick:S,children:[" ","(",v("hasBeenDisabled"),")"]})]})]})]})]})}async function q3(e){try{let t=new Date;P.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await z.storage.local.set({[vg]:t.toISOString()}),await wy(),le()||await K3()}catch(t){P.error("run cron task failed",t)}}async function wy(){try{let e=await Tn(),t=await ue({url:aa}),n=e.buildinConfigUpdatedAt,a=new Date(n),r=t.buildinConfigUpdatedAt,u=new Date(r),o=t.minVersion,i=z.runtime.getManifest().version;Ea(i,o)?u>a?(await z.storage.local.set({buildinConfig:t}),P.info(`sync remote rules success, latest: ${new Date(r).toLocaleString()}`)):P.debug(`no need to sync rules, latest: ${a}`):P.info(`local version is too old, please update to ${o} or later`)}catch(e){P.error("sync rules error: ",e)}}function Bl(e){let{onClose:t}=e,[n,a]=W("Original"),[r,u,o,i]=bt(()=>{setTimeout(()=>{_("updateGlobalContext",!1)()},250)}),[s,l]=W(null),[c,m]=W(globalThis.location.href),[g,p]=W("auto"),[f,S]=W(null),k=F=>{a(F.detail)},h=F=>{p(F);let $=U3(c,F,s.sourceLanguageUrlPattern);u(Z=>({...Z,sourceLanguageUrlPattern:$})),sn(F)},A=()=>{m(globalThis.location.href)};ke(()=>(document.addEventListener(Co,k,!1),Tn().then(F=>{l(F);let $=Ln();p($);let Z=Ke();a(Z),q3(F.interval)}),document.addEventListener("urlChange",A),()=>{document.removeEventListener("pageTranslatedStatus",k),document.removeEventListener("urlChange",A)}),[]),ke(()=>{Tn().then(F=>{l(F)})},[r]),ke(()=>{c&&s&&wt({url:c,config:s}).then(F=>{S(F)})},[c,s]);let _=(F,$,Z={})=>()=>{Dr({method:F,data:Z||{}}),$&&t()},B=()=>{t()},L=()=>{u(F=>({...F,enabled:!F.enabled})),setTimeout(()=>{B()},50)},w=()=>{_l(),setTimeout(()=>{B()},50)},y=()=>{_l(),setTimeout(()=>{B()},50)},T=(F="")=>{Ai(!0,F),setTimeout(()=>{t()},50)},b=()=>{Si(),setTimeout(()=>{t()},50)},E=()=>{Di(),setTimeout(()=>{t()},50)},R=()=>{V3(),setTimeout(()=>{t()},50)},D=()=>{Li(),setTimeout(()=>{t()},50)},O=()=>{J3(),setTimeout(()=>{t()},50)},M=F=>{u($=>({...$,generalRule:{...$.generalRule,mouseHoverHoldKey:F}}))};return!s||!f?null:d(Fl,{openEbookViewerPage:E,openEbookBuilderPage:D,onSwitchTranslationMode:F=>{_("switchTranslationMode",!0,{mode:F})()},onTranslateLocalHtmlFile:R,onTranslateLocalSubtitleFile:O,request:ue,onClose:B,onToggleEnabled:L,onTranslateTheWholePage:_("translateTheWholePage",!0),openOptionsPage:T,onToggleTranslate:_("toggleTranslatePage",!0),onTranslateTheMainPage:_("translateTheMainPage",!0),ontranslateToThePageEndImmediately:_("translateToThePageEndImmediately",!0),onTranslatePage:_("translatePage",!0),onRestorePage:_("restorePage",!1),onTranslatePdf:w,openAboutPage:b,onTranslateLocalPdfFile:y,onSetPageLanguage:h,onUserConfigChange:u,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:ki,onSetBuildinConfig:G3,onMouseTriggerChanged:M})}function ky(e,t){for(let n of t){if(le()&&!Fa()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Rl={position:"right",right:0,top:335},Ut={...Rl},Fi=!1,Ia=null,Rn=null,_i=null,Ol=null,Fr=null,Il=null,Y3=6,Pi,Mi,Z3=null,Q3=null;async function ep(){let e=tt();Il=await ap(),Ut=Il.pagePopupConfig||Ut;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Ol=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` -`);ky(n,[a]);let r=document.createElement("div");r.innerHTML=Ie.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(r),Ia=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");Rn=o,_i=n.querySelector("#mount"),Ia.setAttribute("style",Nl(Ut)),Hl(),o.addEventListener("mousedown",tp),o.addEventListener("touchstart",Dy),globalThis.addEventListener("resize",s=>{Ia.setAttribute("style",Nl(Ut))})}function Ay(){ka(null,_i),_i.style.display="none",Rn.style.display="block",Fr=setTimeout(()=>{Hl(!0)},2e3)}function X3(e){let t=e.querySelector("#mount"),n=()=>{Ay()},a=r=>{r&&r.target&&r.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let r=await Tn();ka(d(vi,{lang:r.interfaceLanguage,fallbackLang:"zh-CN",translations:Sr,children:d("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:d("div",{class:"immersive-translate-popup-wrapper",style:Sy(),children:d(Bl,{onClose:n})})})}),t)})().then(()=>{Rn.style.display="none",_i.style.display="block"})}function Sy(){let e=Ul(),t=e.height,{position:n,top:a,left:r}=Ut,u={position:"fixed"},o=300,i=300,s=100;return Og()&&(n=Rl.position,a=Rl.top),n==="right"||n==="left"?(u.top=a-s,u.top+o>=t?(u.bottom=30,delete u.top):u.top<=10&&(u.top=10),n==="right"?u.right=0:n==="left"&&(u.left=0)):(n==="top"||n==="bottom")&&(u.left=r-s,u.left+i>=e.width?(u.right=0,delete u.left):u.left<=10&&(u.left=0),n==="top"?u.top=0:n==="bottom"&&(u.bottom=0)),u}function Ul(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function tp(e){Q3=Ia.getAttribute("style"),Pi=e.pageX,Mi=e.pageY,Fr&&clearTimeout(Fr),Fi=!1,Rn.style.opacity="1",Rn.style.transform="none",Z3=Rn.getAttribute("style"),globalThis.addEventListener("mousemove",jl),globalThis.addEventListener("mouseup",zl),globalThis.addEventListener("touchmove",np),globalThis.addEventListener("touchend",Bi),globalThis.addEventListener("touchcancel",Bi)}function Dy(e){e.preventDefault&&e.preventDefault(),tp(e.changedTouches[0])}function np(e){jl(e.changedTouches[0])}function Bi(e){e.preventDefault&&e.preventDefault(),zl(e.changedTouches[0])}function jl(e){e.preventDefault&&e.preventDefault(),Fi=!0,Ia.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function zl(e){e.preventDefault&&e.preventDefault(),Py(),Fr&&clearTimeout(Fr),Pi=Pi||0,Mi=Mi||0;let t=Math.abs(e.pageX-Pi),n=Math.abs(e.pageY-Mi);t{Hl(!0)},2e3)}function Hl(e=!1){Rn.style.opacity="0.4";let t="";Ut.position==="left"?t="translateX(-40%)":Ut.position==="right"?t="translateX(40%)":Ut.position==="top"?t="translateY(-40%)":Ut.position==="bottom"&&(t="translateY(40%)"),Rn.style.transform=t,e&&(Rn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function Py(){globalThis.removeEventListener("mousemove",jl),globalThis.removeEventListener("mouseup",zl),globalThis.removeEventListener("touchmove",np),globalThis.removeEventListener("touchend",Bi),globalThis.removeEventListener("touchcancel",Bi)}function Nl(e){let t=My(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function My(e){let{position:t,...n}=e,a=Ul(),r={};return t==="left"?(r.left=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="right"?(r.right=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="top"?(r.top=0,n.left>a.width?r.left=a.width-100:r.left=n.left):t==="bottom"&&(r.bottom=0,n.left>a.width?r.left=a.width-100:r.left=n.left),r}var rp=!1;async function up(){rp||(rp=!0,ep().catch(e=>{P.error("init popup error",e)}))}var op=!1,lp=[()=>{Ne.unbind()}],$l=[...lp],Fy=St(async()=>{await Ai()},50),_y=St(async()=>{await Si()},50),By=St(async()=>{await Li()},50),Ry=St(async()=>{await Di()},50),cp=St(e=>{Dr({method:e})},50),Oy=St(()=>{Ri();let e=new CustomEvent(na,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),Iy=St(()=>{Ni();let e=new CustomEvent(na,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),Ny=St(()=>{Ii();let e=new CustomEvent(na,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function Uy(e,t){let n=e.document;if(op)return;if(op=!0,le()||pp(),n.addEventListener("securitypolicyviolation",Jy),n.addEventListener("immersiveTranslateEbookLoaded",Vy),n.addEventListener(mg,Gy),n.addEventListener("click",r=>{Wy(r,t)}),le()&&(globalThis.top!=globalThis.self?e.addEventListener("message",zy,!1):n.addEventListener(na,jy)),globalThis.top===globalThis.self){let r=Bn.rootIframe(F0);r.handleAsk("getRateLimitDelay",I3),r.handleAsk("throttleRequest",N3)}}function dp(e,t){Yy(),Uy(t,e);let n=t.document,a=Hy.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),$l.push(()=>{n.removeEventListener("touchstart",a)}),le()&&globalThis.top===globalThis.self&&(wl(e.config),Xy(e.config)),Dt()&&wl(e.config)}function jy(e){up()}function zy(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===xo&&Lr(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function Hy(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?Oy():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?Ny():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&Iy()}function Wy(e,t){let n=e.target;if(!n||!n.getAttribute){Wl(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&nt(a,[{name:a}],{...t,sourceLanguage:"none"});let r=n.getAttribute(`data-${X}-action`);if(r)if(r==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Oi(),Wl(n,!0);return}else if(r=="toast-error"){let u=n.getAttribute(`data-${X}-tooltip-text`);sp(qy.bind(null,t,u||""))}else r=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),sp($y.bind(null,t)));Wl(n)}async function ip(e=!1){let t=document.querySelector(`.${X}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await hp();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await fp(n)}function sp(e){let t=`${X}-modal`,n=`${X}-modal-title`,a=`${X}-modal-body`,r=`${X}-modal-footer`,u=document.querySelector(`.${t}`);if(u){let o=u.querySelector(`.${n}`),i=u.querySelector(`.${r}`),s=u.querySelector(`.${a}`);e(u,o,s,i)}else{u=document.createElement("div"),u.className=t+" notranslate",u.id=t;let o=document.createElement("div");o.className=X+"-modal-content notranslate",u.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=X+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=r,o.appendChild(c),document.body.appendChild(u),i.onclick=function(){u.style.display="none"},window.onclick=function(m){m.target==u&&(u.style.display="none")},e(u,s,l,c)}setTimeout(()=>{Ky()},100)}function $y(e,t,n,a,r){let u=gp.bind(null,e);n.innerHTML=`
${Rg} ${u("disableConfirm")}
`,a.innerHTML="";let o=document.createElement("p");o.innerHTML=`${u("searchEnhancementNotes")}`,a.appendChild(o);let i=[{id:"enable-search-enhancement",value:"enable",text:u("enableSearchEnhancement")},{id:"disable-once",value:"once",text:u("disableOnce")},{id:"disable-global",value:"global",text:u("disableGlobal")}];for(let g=0;g${u("option")}`})),a.appendChild(s);let l=a.querySelector(`.${X}-open-enhancement`);l&&(l.onclick=function(){bp(!0)});let c=document.createElement("button");c.innerText=u("closeModal"),c.className=`${X}-btn ${X}-cancel-btn`;let m=document.createElement("button");m.className=`${X}-btn`,m.innerText=u("saveSettings"),r.innerHTML="",r.appendChild(c),r.appendChild(m),c.onclick=function(){t.style.display="none"},m.onclick=function(){let g=a.getElementsByTagName("input"),p="";for(let f=0;f{mp()},10)}function Jy(e){ve.HAS_CSP_ERROR="1"}function Yy(){$l.forEach(e=>{e()}),$l=lp}function Xy(e){if(le()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Xo.commands,r=[...Object.keys(t).filter(u=>u==="toggleTranslatePage").map(u=>{let o=t[u].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=ya(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:u,title:i}}),{id:gu,title:ya("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:mu,title:ya("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:du,title:ya("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:A0,title:ya("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let u of r)GM.registerMenuCommand(u.title,()=>{u.id===du?Fy():u.id===A0?_y():u.id===mu?By():u.id===gu?Ry():cp(u.id)},u.key)}}function Zy(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{P.error("send content message request failed",e,n)});let t=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(t)}function Tp(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let r=a[a.length-1];if(!r)return{};let u=n-r.right,o=t.find(i=>Ge(i.left,u)&&Ge(i.width,r.width));return{prevP:r,curP:o}}function ql(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function Ep(e){return e?e==e[0].repeat(e.length):!0}function Ge(e,t,n=5){return Math.abs(e-t)<=n}var Kl=[",","\\.","\uFF0C","\u3002"];function xp(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],r=t[0];return Ge(a.left,r.left,7)&&Ge(a.nextTop,r.top,10)&&Ui(a,r)}function Cp({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Ap(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Sp({prevLineP:e,prevP:t},n){return Ge(e.left,n.left,1)&&Ge(e.right,t.right,1)&&t.mergedTimes>=1}function Gl(e,t){let{prevLineP:n}=e;return Ap(e,t)&&(Ge(n.bottom,t.bottom)||Ge(n.nextTop,t.top)&&Ge(n.left,t.left))}function Dp(e,t){let{prevLineP:n,prevP:a,scale:r}=e;return Ap(e,t)&&n.width0&&a/r<.1&&n.left!ql(u.str)).filter(u=>u.translateStatus!="success"&&u.translateStatus!="pending").map(u=>(u.translateStatus="pending",u));if(n.length<=0)return;let a=await lt({text:n.map(u=>u.str).join(` -`).slice(0,1e3)});ti(a);let r=n.map((u,o)=>({text:u.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=n[s];u?(l.translatedStr=u.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),eT(l)})}var Jl={};async function Qy(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Jl).filter(n=>!!n);await ji(_p,t)}function eT(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Jl[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",Qy)):e.translateStatus=="success"&&(Jl[e.id]=void 0,t.innerHTML=Ie.sanitize(e.translatedStr)))}function Bp(e,t){let n=[],a=nT(e,t);return aT(e,a).forEach(u=>{if(!(u.length<=0)){if(u.length==1){Fp(e,n,u[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),u.forEach(o=>{Fp(e,n,o,!1)}),n.push("
")}}),` +`;continue}else if(A.length>t){let h=[];K0(A,t,h);for(let S=0;S0&&f{let i=e.lastIndexOf(o,t);return i>u?i:u},-1);if(r===-1){let u=e.slice(0,t);if(u&&!u.trim())return;n.push({text:u,prefix:"",suffix:""}),e.length>t&&K0(e.slice(t),t,n)}else{let u=e.slice(0,r+1);if(u&&u.trim()==="")return;u.startsWith(" ")?n.push({text:u.slice(1),prefix:" ",suffix:""}):n.push({text:u,prefix:"",suffix:""}),r+10){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,optionalProps:i,explicitProps:o}}var $o=e=>{let{config:t}=e,n=t.alpha,a=t.beta,r=t.canary,u=t.debug;return Object.keys(hn).filter(i=>{let s=hn[i];if(i.startsWith("mock"))return u?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,m=!!s.beta;return i===e.translationService||l&&r||c&&(n||r)||m&&(a||n||r)?!0:!c&&!m&&!l}).map(i=>V0(i,e))};function Zt(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var f8=Em(2),xm=Em(3);function Em(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let r=typeof n.slice=="function"?n:String(n),u=r.length-e+1;if(u<1)return a;for(;u--;)a[u]=r.slice(u,u+e);return a}}var U6=/\s+/g,j6=/[\t\n\v\f\r ]+/g;function Cm(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?z6:H6;return String(e).replace(t.style==="html"?j6:U6,t.trim?W6(n):n)}function z6(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function H6(){return" "}function W6(e){return t;function t(n,a,r){return a===0||a+n.length===r.length?"":e(n)}}var wm={}.hasOwnProperty;function $6(e){return e==null?"":Cm(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function q6(e){return xm(" "+$6(e)+" ")}function K6(e){let t=q6(e),n={},a=-1;for(;++an&&(n=u,a=r)}return[a,n]}function Q6(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function eb(e,t,n,a){t=nb(t,n,a);let r=[],u;if(t)for(u in t)qo.call(t,u)&&r.push([u,tb(e,t[u])]);return r.length===0?J0():r.sort(ab)}function tb(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let u=e.length-a;for(let o of mb){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/u>.5?t==="zh-CN"?Mm(e)?"zh-TW":"zh-CN":t:"auto"}var _m=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function Bm(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Vo(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[..._m.keys()]},r=Am(e,a);if(r&&r.length>0){if(r.length>1&&r[0][0]!=="eng"&&r[1][0]==="eng"&&r[1][1]>.6)return"en";let[u]=r[0],o=_m.get(u);if(o)return o}return"auto"}var gt=class extends Error{constructor(n,a,r){super(a);this.name=n,r&&(this.details=r)}};async function hr(e){let t;if(e&&e.retry&&e.retry>0)try{t=await i0(Rm.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await Rm(e);return t}async function Rm(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let r=!0;e.fetchPolyfill&&(r=!1);let u=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),r){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await u(t,a)}catch(s){P.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of pb(i.body)){let m=new TextDecoder().decode(c);s+=m;let g;for(;(g=s.indexOf(` +`))>=0;){let p=s.slice(0,g).trim();if(s=s.slice(g+1),p.startsWith("event:")||p==="")continue;let f="";if(p.startsWith("data:")&&(f=p.slice(5).trim()),f==="[DONE]")break;let A;try{A=JSON.parse(f??"")}catch(k){P.debug("json error",k);continue}l=A}}return l}}else{let s;try{s=await i.text()}catch(m){P.error("parse response failed",m)}s&&P.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new gt("fetchError",c,s)}}async function*pb(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function la(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function fb(e,t){return e<>>32-t}function Jo(e,t,n,a,r,u){return la(fb(la(la(t,e),la(a,u)),r),n)}function Pt(e,t,n,a,r,u,o){return Jo(t&n|~t&a,e,t,r,u,o)}function Mt(e,t,n,a,r,u,o){return Jo(t&a|n&~a,e,t,r,u,o)}function Ft(e,t,n,a,r,u,o){return Jo(t^n^a,e,t,r,u,o)}function _t(e,t,n,a,r,u,o){return Jo(n^(t|~a),e,t,r,u,o)}function Go(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,r,u,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function Y0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Go(a,e.length*8)),n=0;n<16;n+=1)r[n]=a[n]^909522486,u[n]=a[n]^1549556828;return o=Go(r.concat(Y0(t)),512+t.length*8),Im(Go(u.concat(o),512+128))}function Om(e){var t="0123456789abcdef",n="",a,r;for(r=0;r>>4&15)+t.charAt(a&15);return n}function X0(e){return unescape(encodeURIComponent(e))}function Nm(e){return hb(X0(e))}function yb(e){return Om(Nm(e))}function Um(e,t){return bb(X0(e),X0(t))}function Tb(e,t){return Om(Um(e,t))}function ca(e,t,n){return t?n?Um(t,e):Tb(t,e):n?Nm(e):yb(e)}var br=[];async function wu(e,t){return await new Promise((n,a)=>{let r=e,u=1,o=indexedDB.open(r,u);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function Z0(e){let t=`${X}-${e.service}@${e.from}->${e.to}`;return await Eb(t,e)}async function Q0(e){let t=ca(e.originalText),n=`${X}-${e.service}@${e.from}->${e.to}`;return await xb(n,t)}async function xb(e,t){let n=await wu(e);return await new Promise((a,r)=>{if(!n)return r();let u="cache",i=n.transaction([u],"readonly").objectStore(u).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),r()}})}async function Eb(e,t){let n=await wu(e);return(await el()).includes(e)||await Cb(e),await new Promise(r=>{if(!n)return r(!1);let u="cache",i=n.transaction([u],"readwrite").objectStore(u).put(t);i.onsuccess=s=>{n.close(),r(!0)},i.onerror=s=>{n.close(),r(!1)}})}async function Cb(e){let t="cache_list",n=await wu(X+"-cacheList",t),r=n.transaction([t],"readwrite").objectStore(t).put({key:e});r.onsuccess=u=>{n.close(),br.push(e)},r.onerror=u=>{n.close()}}async function el(){if(br&&br.length>0)return br;let e=await wu(X+"-cacheList","cache_list");return br=await new Promise(t=>{let n="cache_list",r=e.transaction([n],"readonly").objectStore(n).getAllKeys();r.onsuccess=u=>{e.close(),t(r.result)},r.onerror=u=>{e.close(),t([])}}),br}async function tl(){try{let e=[];(await el()).forEach(a=>{e.push(wb(a))});let n=await Promise.all(e);return Eu(n.reduce((a,r)=>a+r,0))}catch{return Eu(0)}}async function wb(e){let t=await wu(e),a=[...t.objectStoreNames].reduce((o,i)=>{let s=vb(t,i);return o.push(s),o},[]),r=await Promise.all(a);return t.close(),r.reduce((o,i)=>o+i,0)}async function vb(e,t){return await new Promise((n,a)=>{if(e==null)return a();let r=0,u=e.transaction([t]).objectStore(t).openCursor();u.onsuccess=o=>{let i=u.result;if(i){let s=i.value,l=JSON.stringify(s);r+=l.length,i.continue()}else n(r)},u.onerror=o=>a("error in "+t+": "+o)})}async function jm(){try{let t=(await el()).map(a=>kb(a));return!!(await Promise.all(t)).every(a=>a)}catch{return!1}}async function kb(e){return await new Promise(t=>{let n=indexedDB.deleteDatabase(e);n.onsuccess=()=>{t(!0)},n.onerror=a=>{t(!1)}})}var zm=Ee+"StoreKey_";function Yo(e,t){let n=zm+e;return z.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Hm(e,t){let n=zm+e;return z.storage.local.set({[n]:t})}var Wm=Ee+"SyncStoreKey_";function nl(e,t){let n=Wm+e;return z.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function mt(e,t){let n=Wm+e;return z.storage.sync.set({[n]:t})}var Xo={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.2",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function da(){return Xo.version}function Zo(){return z.runtime.getManifest().version}var $m="G-MKMD9LWFTR";async function st(e,t,n){try{let a=tt();if(a.INSTALL_FROM==="firefox_store")return;let u=le(),o=Ct(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let T=await Yo(s,0),b=Qo(new Date(T)),x=Date.now(),R=Qo(new Date(x));if(b===R)return;await Hm(s,x)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",m=await nl("fakeUserId","");m||(m=await Yo("fakeUserId",""),m&&await mt("fakeUserId",m));let g=da(),p=new Date,f=await nl("installedAt","");f||(f=await Yo("installedAt",""),f&&await mt("installedAt",f)),m?f||(f=new Date(0).toISOString(),await mt("installedAt",f)):(m=Sb(32),await mt("fakeUserId",m)),f||(f=p.toISOString(),await mt("installedAt",f));let A=new Date(f),k=Qo(A),h=Qo(p),S=k===h,_=p.getTime()-A.getTime()<7*24*60*60*1e3,B=`https://www.google-analytics.com/mp/collect?measurement_id=${$m}&api_secret=${c}`;i||(B=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${$m}&api_secret=${c}`);let L=po.parse(window.navigator.userAgent),v=t.map(T=>{let b=T.params||{};L.os&&(b.os_name=L.os.name||"unknown",b.os_version=L.os.version||"unknown",b.os_version_name=L.os.versionName||"unknown"),L.browser&&(b.browser_name=L.browser.name||"unknown",b.browser_version=L.browser.version||"unknown"),L.platform&&(b.platform_type=L.platform.type||"unknown"),L.engine&&(b.engine_name=L.engine.name||"unknown",b.engine_version=L.engine.version||"unknown"),n.translationService&&(b.translation_service=n.translationService),n.targetLanguage&&(b.target_language=n.targetLanguage),n.config.interfaceLanguage&&(b.interface_language=n.config.interfaceLanguage),g&&(b.version=g),n.config.translationTheme&&(b.translation_theme=n.config.translationTheme),n.config.alpha&&(b.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?b.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):b.always_translate_languages="none",a.INSTALL_FROM&&(b.install_from=a.INSTALL_FROM),n.config.beta&&(b.beta=n.config.alpha.toString()),n.config.translationArea&&(b.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(b.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),k&&(b.install_day=Db(A)),n.config.translationMode&&(b.translation_mode=n.config.translationMode),b.userscript=u.toString(),S?b.is_new_user_today="1":b.is_new_user_today="0",_?b.is_new_user_this_week="1":b.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?b.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():b.temp_translate_domain_minutes="0";let x="html";if(n.rule.isEbook?x="ebookReader":n.rule.isPdf?x="pdfReader":n.rule.isEbookBuilder?x="ebookBuilder":n.rule.isSubtitleBuilder&&(x="subtitleBuilder"),b.page_type=x,o?b.main_frame=0:b.main_frame=1,!l){let R=n.url;try{let D=new URL(R);b.site_host=D.hostname}catch{b.site_host="unknown"}n.sourceLanguage&&(b.source_language=n.sourceLanguage)}return{...T,params:b}}),y=await ue({responseType:"text",url:B,method:"POST",body:JSON.stringify({client_id:m,user_id:m,events:v})})}catch{}}function Sb(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r0){if(a.includes(e)||a.includes(""))return!1;for(let r of a)if(r.includes("*")&&new RegExp(r).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let r of n)if(r.includes("*")&&new RegExp(r).test(e))return!0}return!1}var Vm="auto",ei="auto",Km="auto";function ti(e){Vm=e}function sn(e){ei=e}function Pn(){return ei!=="auto"?ei:Km!=="auto"?Km:Vm}function yr(){return ei}var Lb=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function $n(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function al(e,t,n){let{blockSelectors:a,extraBlockSelectors:r,extraInlineSelectors:u}=t;if($n(e,u))return!1;if($n(e,r)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!Lb.includes(n.display):$n(e,a)}var Qt=$n;function Ra(e){return!!e.shadowRoot}function ga(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function vu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function ni(e){let t=ko;return e&&(t=e),t}async function bn(e,t="",n=100){let a="auto";return t?await lt({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=yr()),a)}function ai(e,t){return sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function Pb(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${X}-loading-${n} notranslate">`}function ku(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",rn),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),it(a,wg,t.toString());let r=Pb(e);return a.innerHTML=_e.sanitize(r),a}function Tr(e,t){return e.querySelector(`[${D0}='${t}']`)}function Gm(){document.querySelectorAll(`[${D0}]`).forEach(t=>{t.remove()})}function Jm(){document.querySelectorAll(`.${rn}-error`).forEach(t=>{t.remove()})}function Ym(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{cr(n)&&t.push(n)}),t}function Xm(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:r,text:u}=e,o=new RegExp(`${r[0]}(\\d+)${r[1]}`,"gi");if(r.length>2){let s=r[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=u.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(u)||i.includes("")||i.includes("< styles>")||Yg(i)||Vg(i)||Jg(i)||Gg(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Fo(u,n,a)}function Mn(e){return e.nodeType===Node.ELEMENT_NODE}function Zm(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function Qm(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var Mb=1e5;function ma(e){let{onParagraph:t,filterRule:n,id:a}=e;n=Fb(n);let{stayOriginalSelectors:r,globalStyles:u,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,m={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,p=null;function f(B){let{container:L,onFrame:v,onIgnoreElement:y,id:T}=B,b=document.createTreeWalker(L,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,D=>{let I=R(D);return I==NodeFilter.FILTER_ACCEPT?qt.mark(D,T):I==NodeFilter.FILTER_REJECT,I}),x=L;if(R(x)===NodeFilter.FILTER_REJECT)return;for(qt.mark(x,T);x;){if(o&&o.length>0){let{currentNode:D,isMatchedSelection:I}=A(b,x,o);if(D)x=D;else break;if(!I)continue}if(x.nodeType===Node.ELEMENT_NODE||x.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let D=x;if(D.nodeName==="IFRAME"){v&&v(D);break}D.nodeType===Node.ELEMENT_NODE&&(u&&ul(D,u),l&&il(D,l));let I=al(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&!I){h(D);let $=null;for(;!($=b.nextSibling())&&b.parentNode(););x=$;continue}let M=Ra(D);(!e3(m,D)||I)&&(k(),D.childNodes.length>0&&S(m,D,D.immersiveTranslateComputedStyle||null)),M&&D.shadowRoot?.mode==="open"&&(I?v?.(D.shadowRoot):f({...B,container:D.shadowRoot})),D.nodeType===Node.ELEMENT_NODE&&D.nodeName==="PRE"&&i&&Ib(D)}else if(x.nodeType===Node.TEXT_NODE)h(x);else throw new Error("should not be here");x=b.nextNode(),m.commonAncestorContainer&&x&&x.parentNode===m.commonAncestorContainer&&(m._currentStacks=[]),m.commonAncestorContainer&&x&&x.nodeType===Node.ELEMENT_NODE&&m._currentStacks.push(x)}function R(D){if(D.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(Mn(D)){if(l){let F=Object.keys(l);if(F.length>0&&Qt(D,F))for(let Z of F){let de=l[Z];if(D.matches(Z)){let V=l[Z],me=Object.keys(V);for(let ge of me){let w=V[ge];D.getAttribute(ge)!==w&&(w===null?D.removeAttribute(ge):D.setAttribute(ge,w))}break}}}if(!B.force&&qt.isMarked(D,T)||Zm(D,T)||sl(D,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:r})||D.nodeName==="IFRAME"&&!cr(D))return NodeFilter.FILTER_REJECT;if(D.nodeType===Node.ELEMENT_NODE){let F=window.getComputedStyle(D);if(D.immersiveTranslateComputedStyle={display:F.display,whiteSpace:F.whiteSpace},ol(D.immersiveTranslateComputedStyle))return y&&y(D),NodeFilter.FILTER_REJECT;let $=al(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&$)return NodeFilter.FILTER_REJECT}let{width:I,height:M}=D.getBoundingClientRect();return D.nodeName==="IMG"&&(I>48&&M>48?D.immersiveTranslateComputedStyle={display:"block"}:I>0&&M>0&&c!==!1&&(D.setAttribute("width",I),D.setAttribute("height",M))),!D.childNodes||D.childNodes&&D.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!m.isPreWhitespace&&(I>0&&I<4||M>0&&M<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(D.nodeType===Node.TEXT_NODE){let I=D.textContent?.trim();if(!I)return m.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let M=D.parentNode;if(M.getBoundingClientRect){let{width:F,height:$}=M.getBoundingClientRect();if(F>0&&F<4||$>0&&$<4)return NodeFilter.FILTER_REJECT}return s>0&&I.length>=s&&rl(D,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),m&&m.commonAncestorContainer&&m.flatNodes.length>0&&k();function A(B,L,v){let y=L.immersiveTranslateComputedStyle||null;if(p){if(!p.contains(L))if(g=!1,L&&L.nodeType===Node.ELEMENT_NODE)if(ri(L,v))g=!0,p=L,k(),S(m,p,y);else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g}}else if(L&&L.nodeType===Node.ELEMENT_NODE)if(ri(L,v))g=!0,p=L,k(),S(m,p,y);else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};return{currentNode:L,isMatchedSelection:!0}}function k(){let B=Rb(m,a);B&&t&&t(B),t3(m)}function h(B){if(!e3(m,B)){k(),t3(m);let L=B.parentNode;L&&S(m,L,L.computedStyle)}m.flatNodes.push(B)}function S(B,L,v){B.commonAncestorContainer=L;let y=_(v);B.isPreWhitespace=y}function _(B){return B&&B.whiteSpace&&B.whiteSpace.startsWith("pre")||B&&B.whiteSpace==="break-spaces"||!1}}function e3(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=Ra(t));let a=Bb(e),r=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?r=!0:e.commonAncestorContainer&&(r=!1,e._currentStacks=[])),r}function Fb(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function _b(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function ul(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){e.style.cssText=u;break}}}}function Bb(e){return e&&e._currentStacks?e._currentStacks.some(t=>Ra(t)):!1}function Rb(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let u=Ob(n,a);u||(u=a);let o=[];for(let g of n){let p=_b(e,u,g);p&&(o.includes(p)||o.push(p))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,m=0;for(;c&&(l.push(c),c!==s);){if(m++,m>Mb){P.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:u,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function t3(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function ol(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,r=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(r)&&(r=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||r<-1e3}var qt={_marked_key:"immersive_translate_walked",isMarked(e,t){return O0(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return Bo(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return it(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=sr(e,"markWalk")||"";return it(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||Ra(e)):!1}};function Ib(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=_e.sanitize(n)}function Ob(e,t){if(!e.length)return null;let n=e.map(a=>{let r=new Set;for(;(a=a.parentNode)&&(r.add(a),a!==t););return r});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(r=>r.has(a)))return a;return null}function rl(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let u=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(u>1){let o=n[u-1]||"",i=n[u-2]||"",s=n[u+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?u=-1:isNaN(Number(o))||(u=-1)}if(u===-1)n.length>t+20&&rl(e,t+20);else{let o=n.slice(u+1);u++,o.startsWith(" ")&&u++;let i=e.splitText(u),s=document.createElement("br");i.parentNode?.insertBefore(s,i),u+10)for(let a of n){let r=t[a],u=Object.keys(r),o=Wg(e,[a]);for(let i of o)for(let s of u){let l=r[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function a3(e,t,n,a,r,u){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let m of l){let g=s[m];if(m==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||Nb(c,r,u)||!qg(f,n,a))continue}c.getAttribute(m)!==g&&(g===null?c.removeAttribute(m):c.setAttribute(m,g))}}}function il(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){let o=t[r],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function sl(e,t){return Qt(e,t.excludeSelectors||[])?Qt(e,t.selectors||[])?!1:!Qt(e,t.stayOriginalSelectors||[]):!1}function ri(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Qt(e,t.concat(n))}function Nb(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,r=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.TEXT_NODE&&parent){let u=r.textContent||"";if(u.includes("Copyright"))continue;if(Fo(u,t,n))return!0}}return!1}var r3=["*://*/*","*","*://*"],o3="immersive-translate-wildcard-placeholder.com";function ll(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>r3.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let r=a.href,u=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===u)return!0;if(r3.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===u:jb(r,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let k=i.split("://");l=k[0],l==="*"&&k.length>1&&(l="*",i="https://"+k[1])}else l="*",i="https://"+i;let m=i.replace(/\*/g,o3),g;try{g=new URL(m)}catch{return P.debug("invalid match pattern",m,"raw match value:",c),!1}let p=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let A=Ub(l+":",u3(p),u3(f));if(A){let k=new URL(r);return k.port="",A.test(k.href)}else return!1}});if(o)return o}return null}function u3(e){return e.replaceAll(o3,"*")}function Ub(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Fn(e,t){return ll(e,t)!==null}function jb(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}var xr="input is invalid type",cl=typeof window=="object",pa=cl?window:{};pa.JS_SHA256_NO_WINDOW&&(cl=!1);var zb=!cl&&typeof self=="object",Hb=!pa.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Hb?pa=global:zb&&(pa=self);var K7=!pa.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,V7=typeof define=="function"&&define.amd,Au=!pa.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",ie="0123456789abcdef".split(""),Wb=[-2147483648,8388608,32768,128],yn=[24,16,8,0],ui=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],oi=["hex","array","digest","arrayBuffer"],yt=[];(pa.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});Au&&(pa.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var i3=function(e,t){return function(n){return new Tt(t,!0).update(n)[e]()}},l3=function(e){var t=i3("hex",e);t.create=function(){return new Tt(e)},t.update=function(r){return t.create().update(r)};for(var n=0;n>2]|=e[r]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[u>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=u-64,this.hash(),this.hashed=!0):this.start=u}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};Tt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Wb[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};Tt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,m,g,p,f,A,k,h,S,_;for(l=16;l<64;++l)p=s[l-15],c=(p>>>7|p<<25)^(p>>>18|p<<14)^p>>>3,p=s[l-2],m=(p>>>17|p<<15)^(p>>>19|p<<13)^p>>>10,s[l]=s[l-16]+c+s[l-7]+m<<0;for(_=t&n,l=0;l<64;l+=4)this.first?(this.is224?(k=300032,p=s[0]-1413257819,i=p-150054599<<0,a=p+24177077<<0):(k=704751109,p=s[0]-210244248,i=p-1521486534<<0,a=p+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),m=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),k=e&t,g=k^e&n^_,A=r&u^~r&o,p=i+m+A+ui[l]+s[l],f=c+g,i=a+p<<0,a=p+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),m=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),h=a&e,g=h^a&t^k,A=i&r^~i&u,p=o+m+A+ui[l+1]+s[l+1],f=c+g,o=n+p<<0,n=p+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),m=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),S=n&a,g=S^n&e^h,A=o&i^~o&r,p=u+m+A+ui[l+2]+s[l+2],f=c+g,u=t+p<<0,t=p+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),m=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),_=t&n,g=_^t&a^S,A=u&o^~u&i,p=r+m+A+ui[l+3]+s[l+3],f=c+g,r=e+p<<0,e=p+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+r<<0,this.h5=this.h5+u<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};Tt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=ie[e>>28&15]+ie[e>>24&15]+ie[e>>20&15]+ie[e>>16&15]+ie[e>>12&15]+ie[e>>8&15]+ie[e>>4&15]+ie[e&15]+ie[t>>28&15]+ie[t>>24&15]+ie[t>>20&15]+ie[t>>16&15]+ie[t>>12&15]+ie[t>>8&15]+ie[t>>4&15]+ie[t&15]+ie[n>>28&15]+ie[n>>24&15]+ie[n>>20&15]+ie[n>>16&15]+ie[n>>12&15]+ie[n>>8&15]+ie[n>>4&15]+ie[n&15]+ie[a>>28&15]+ie[a>>24&15]+ie[a>>20&15]+ie[a>>16&15]+ie[a>>12&15]+ie[a>>8&15]+ie[a>>4&15]+ie[a&15]+ie[r>>28&15]+ie[r>>24&15]+ie[r>>20&15]+ie[r>>16&15]+ie[r>>12&15]+ie[r>>8&15]+ie[r>>4&15]+ie[r&15]+ie[u>>28&15]+ie[u>>24&15]+ie[u>>20&15]+ie[u>>16&15]+ie[u>>12&15]+ie[u>>8&15]+ie[u>>4&15]+ie[u&15]+ie[o>>28&15]+ie[o>>24&15]+ie[o>>20&15]+ie[o>>16&15]+ie[o>>12&15]+ie[o>>8&15]+ie[o>>4&15]+ie[o&15];return this.is224||(s+=ie[i>>28&15]+ie[i>>24&15]+ie[i>>20&15]+ie[i>>16&15]+ie[i>>12&15]+ie[i>>8&15]+ie[i>>4&15]+ie[i&15]),s};Tt.prototype.toString=Tt.prototype.hex;Tt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,r>>24&255,r>>16&255,r>>8&255,r&255,u>>24&255,u>>16&255,u>>8&255,u&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};Tt.prototype.array=Tt.prototype.digest;Tt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function ii(e,t,n){var a,r=typeof e;if(r==="string"){var u=[],o=e.length,i=0,s;for(a=0;a>6,u[i++]=128|s&63):s<55296||s>=57344?(u[i++]=224|s>>12,u[i++]=128|s>>6&63,u[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),u[i++]=240|s>>18,u[i++]=128|s>>12&63,u[i++]=128|s>>6&63,u[i++]=128|s&63);e=u}else if(r==="object"){if(e===null)throw new Error(xr);if(Au&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!Au||!ArrayBuffer.isView(e)))throw new Error(xr)}else throw new Error(xr);e.length>64&&(e=new Tt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var m=e[a]||0;l[a]=92^m,c[a]=54^m}Tt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}ii.prototype=new Tt;ii.prototype.finalize=function(){if(Tt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();Tt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),Tt.prototype.finalize.call(this)}};var Er=l3();Er.sha256=Er;Er.sha224=l3(!0);Er.sha256.hmac=c3();Er.sha224.hmac=c3(!0);var d3=Er;var g3=d3.sha256;function Tn(e){return Promise.resolve(g3(e))}function si(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function fa(e,t){let n=g3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function m3(e,t){let n=await fa(e,t);return si(n)}async function li(e,t){let n=$b(t),a=await fa(e,n);return si(a)}function $b(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}async function vt(e){let{url:t,config:n,state:a}=e,r=new URL(t),u="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:m,targetLanguage:g,sourceLanguageUrlPattern:p,immediateTranslationPattern:f}=n,A=Cr(t,o),k=Cr(t,f),h=i,S=Object.keys(s);for(let N of S){let re=s[N];if(Cr(t,re)){h=N;break}}let _=l,B=Object.keys(c);for(let N of B){let re=c[N];if(re&&Cr(t,re)){_=N;break}}let L=Cr(t,m),v=p3(t,m);v||(v=Fn(t,Og)),v||(v=Fn(t,n.blockUrls));let y=p3(t,n.inputTranslationUrlPattern);y||(y=Fn(t,n.inputTranslationBlockUrls));let T=Fn(t,n.mutationBlockUrls),b=Object.keys(p),x={};for(let N of b){let re=p[N];if(re&&re.matches)for(let te of re.matches)x[te]=N}let R=Object.keys(x),D=ll(t,R);D&&(u=x[D]??"auto",x[D]&&x[D]!=="auto"&&sn(x[D]));let I=g||"zh-CN",M=r.hostname,F=await Tn(M),$=r.pathname+r.search+r.hash,Z=await Tn($),de=`https://${F}.com/${Z}`,V=await Hn(),me=await ym(),ge=n.translationStartMode;ge==="dynamic"&&k&&(ge="immediate");let w={targetLanguage:I,config:n,translationService:h,isTranslateUrl:L,sourceLanguage:u,mainFrame:document.body,isTranslateExcludeUrl:v,isMutationTranslationExcludeUrl:T,isInputTranslationExcludeUrl:y,rule:n.generalRule,url:t,encryptedUrl:de,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ge,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:A,cache:n.cache,translationTheme:_},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ge,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:A,cache:n.cache,translationTheme:_},localConfig:V};w.state.translationArea==="body"&&(w.config.generalRule.excludeTags=w.config.generalRule.excludeTags.filter(N=>!w.config.generalRule.bodyTranslateTags.includes(N)),w.config.generalRule.additionalExcludeSelectors=w.config.generalRule.additionalExcludeSelectors.filter(N=>N!==".btn"));let H=n.translationServices[w.translationService]||{};H.immediateTranslationTextCount!==void 0&&qb(H.immediateTranslationTextCount)&&H.immediateTranslationTextCount>=0&&(w.state.immediateTranslationTextCount=H.immediateTranslationTextCount),w.translationService==="deepl"&&H&&H.authKey&&H.authKey.startsWith("immersive_")&&H.immediateTranslationTextCountForImmersiveDeepl!==void 0&&H.immediateTranslationTextCountForImmersiveDeepl>=0&&(w.state.immediateTranslationTextCount=H.immediateTranslationTextCountForImmersiveDeepl),H&&H.translationDebounce&&typeof H.translationDebounce=="number"&&(w.state.translationDebounce=H.translationDebounce);let Q=me.immediateTranslationTextCount;n.immediateTranslationTextCount!==Q&&(w.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let fe=n.rules,se;globalThis.PDFViewerApplication?se=fe.find(N=>N.isPdf):globalThis.immersiveTranslateEbookViewer?se=fe.find(N=>N.isEbook):globalThis.immersiveTranslateEbookBuilder?se=fe.find(N=>N.isEbookBuilder):se=fe.find(N=>Cr(t,N)),w.rule.isPdf&&(w.state.translationArea="main"),w.state.translationArea==="body"&&(w.rule.paragraphMinTextCount=1,w.rule.paragraphMinWordCount=1),se&&se.isEbookBuilder&&(w.state.translationStartMode="immediate");let O=n.generalRule;if(se&&(w.rule=Ho(O,se)),w.rule.selectors.length>0&&(w.rule.paragraphMinTextCount=2,w.rule.paragraphMinWordCount=1),w.state.translationArea==="body"&&w.rule.excludeTags&&(w.rule.excludeTags=w.rule.excludeTags.filter(N=>!w.rule.bodyTranslateTags.includes(N)&&!w.rule.forceTranslateTags.includes(N))),w.rule.mainFrameSelector){let N=document.querySelector(w.rule.mainFrameSelector);N&&(w.mainFrame=N)}return w}function Cr(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:r,excludeSelectorMatches:u}=t;return a&&a.length>0&&Fn(e,a)?!1:n&&n.length>0&&Fn(e,n)?!0:u&&u.length>0&&_o(u)?!1:!!(r&&r.length>0&&_o(r))}function p3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Fn(e,n)||a&&a.length>0&&_o(a))}function qb(e){return typeof e=="number"}async function f3(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await lt({text:ir(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=oa(document.documentElement.lang)),e}function h3(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function dl(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let r=t[a],u=Kb(a);if(typeof r=="object"||u){let o=r;u&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let m=n.substring(s+i.length,c),g=Object.keys(o).filter(p=>p!=="tag").map(p=>`${p}="${o[p]}"`).join(" ");n=n.replace(`${i}${m}`,`<${l} ${g}>${m}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,r.toString())}}),n}function Su(e,t,n){let a=e[t];if(!a)return n;let r=n.split("."),u="";do{u+=r.shift();let o=a[u];o!==void 0&&(typeof o=="object"||!r.length)?(a=o,u=""):r.length?u+=".":a=n}while(r.length);return a}function Ia(e,t,n,a,r){if(!e.hasOwnProperty(n))return t;let u=Su(e,n,t);return u===t&&n!==a&&(u=Su(e,a,t)),dl(u,r)}function Kb(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function ci(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function wr(e,t,n=[],a,r){let u=["notranslate"];return a&&u.push(Fg),e&&(u.push(`${X}-target-translation-theme-${e}`),t?u.push(`${P0}-theme-${e}`):u.push(`${L0}-theme-${e}`)),n.length>0&&u.push(...n),t?u.push(P0):(u.push(L0),r&&u.push(Mg)),u}function vr(e){let t=["notranslate",Lg];return e&&t.push(`${X}-target-translation-theme-${e}-inner`),t}function b3(e,t,n){let{rule:a,state:r}=n,{translationTheme:u}=r,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,m=lr(n),g="afterend",p=m[0].replace(/\//g,"/");p=p.replace(/"/g,'\\"'),p=p.replace(//g,">");let f=m[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let A=`${p}(\\d+)${f}`,k=new RegExp(A,"g"),h=ci(s);h=_e.sanitize(h),o.length>0&&(h=h.replace(k,L=>{let v=h.indexOf(L),y=h[v-1]===" ",T=h[v+L.length]===" ",b=L.slice(m[0].length,-m[1].length),x=Number(b);if(isNaN(x))return L;let R=o[Number(x)];if(R&&R.type==="element"){let D=R.value.outerHTML;return y||(D=" "+D),T||(D=D+" "),D}else P.error("variable type not supported",R,L);return L}));let S=wr(u,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&S.push(Pg);let _=vr(u),B="";return a.translationBlockStyle&&(B=`style="${a.translationBlockStyle}"`),h=`<${n.rule.targetWrapperTag} ${B} class="${S.join(" ")}" ${Ln}="1"><${a.targetWrapperTag} class="${_.join(" ")}" ${Ln}="1">${h}`,e.inline||(l==="smart"?h=`
${h}`:h=`${l}${h}`),e.inline&&(l!=="smart"?h=`${l}${h}`:h=`<${a.targetWrapperTag} class="notranslate" ${Ln}="1"> ${h}`),c==="smart"?h=`${h}`:h=`${h}${c}`,{html:h,position:g}}function di(e,t){let n=null,{stayOriginalSelectors:a,delimiters:r,isPreWhitespace:u}=t,o=[],i={};for(let s=0;s2&&(k=`<${r[2]}${A}>`),i[A]=l,o.push({text:k,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";m&&(f=ga(gl(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Qt(l,a)){let A=Object.keys(i).length,k=`${r[0]}${A}${r[1]}`;r.length>2&&(k=`<${r[2]}${A}>`),i[A]=l;let h=ml(o).endsWith(" ")?" ":"",S=ga(l.innerText||l.textContent),_=ga(l.nextSibling).startsWith(" ")?" ":"",B=vu(h+S+_),L=B[0]+k+B[1];if(h===" ")L=L.trimStart();else if(!L.startsWith(" ")){let v=vu(l.previousSibling)[1];v===""&&(v=" "),L=v+L}o.push({text:L,type:"variable"})}else{let f=ml(o).endsWith(" ")?" ":"",A=ga(l.innerText||l.textContent);m&&(A=ga(gl(l)));let k=ga(l.nextSibling).startsWith(" ")?" ":"",h=vu(f+A+k),S=h[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+h[1];if(f===" ")S=S.trimStart();else{let _=vu(l.previousSibling)[1];_===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(_=" "),S=_+S}o.push({text:S,type:"text"})}else{let f=ml(o).endsWith(" ")?" ":"",A="";l.textContent&&(A=ga(gl(l))),f===" "&&(A=A.trimStart()),o.push({text:A,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(m=o[l-1].text),l2){let c=l[2];return Vb({delimiterTag:c,targetText:e.targetText,inline:r,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=b3(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function gl(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function Vb(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:r,wrapperPrefix:u,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:m}=e;o=o||[];let g=ci(e.targetText);g=_e.sanitize(g);let p=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),A=new RegExp(`<${t}(\\d+)>`);o.length>0&&(p=p.replace(f,_=>{let B=p.indexOf(_),L=p[B-1]===" ",v=p[B+_.length]===" ",y=_.match(A);if(!y)return _;let T=y[1],b=Number(T);if(isNaN(b))return _;let x=o[Number(b)];if(x&&x.type==="element"){let R=x.value.outerHTML;return L||(R=" "+R),v||(R=R+" "),R}else if(x&&x.type==="text"){let R=x.value;return L||(R=" "+R),v||(R=R+" "),R}else P.error("variable type not supported",x,_);return _}));let k=wr(l,n,a||[],i,c),h=vr(l),S="";return m&&(S=`style="${m}"`),p=`<${r} ${S} class="${k.join(" ")}" ${Ln}="1"><${r} class="${h.join(" ")}" ${Ln}="1">${p}`,n||(u==="smart"?p=`
${p}`:p=`${u}${p}`),n&&(u!=="smart"?p=`${u}${p}`:p=`<${r} class="notranslate" ${Ln}="1"> ${p}`),s==="smart"?p=`${p}`:p=`${p}${s}`,{html:p,position:"afterend"}}function ml(e){let t=e[e.length-1];return t?t.text:""}function ln(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var Gb={sanitize:e=>e};function mi(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:ln(e.ctx),onParagraph:Du.bind(null,e),onFrame:n=>{fl(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),or&&it(t,"consumeContainer",e.id))}function fl(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!cr(t))return;P.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ar(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else P.debug("onFrame shadowRoot",t.host),Ar(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ar(e,t,n=!0){let{globalStyles:a,globalAttributes:r}=ln(t.ctx),u=0;if(s(t,e,n))return;if(Mn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(Mn(c)&&(a&&ul(c,a),r&&il(c,r)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(qt.mark(l.currentNode,t.id);l.nextNode();){qt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let m=l.currentNode;if(qt.mark(l.currentNode,t.id),i(m)){o(m);continue}else break}if(!l.parentNode())return}}}catch{}if(u==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){qt.clearMark(l),u++,t.immediateTranslateCapacity>=0?mi(t,l):(or&&it(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return fl(t,l.shadowRoot,n),!1;if(c==="iframe")return fl(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let m=t.containerRule;if(m.selectors&&m.selectors?.length>0)return ri(l,m.selectors);if(m.pageHeight){let g=l.scrollHeight;if(g>0&&g0)return!0}return!1}function s(l,c,m){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||m&&qt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let p=ln(l.ctx);return!!sl(c,{excludeSelectors:p.excludeSelectors,selectors:p.selectors,stayOriginalSelectors:p.stayOriginalSelectors})}}function hl(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!qt.isMarked(a,e.ctxId))return;let r=a.contains(e.rootNodes[0]),u=a.contains(e.targetNodes[0]);if(r&&u)n="dual";else if(r)n="original";else if(u)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(gi(e.rootNodes),T3(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=pl(e.rootNodes);gi(e.rootNodes),kr(o,a,e.targetNodes||[]),T3(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];kr(o,a,e.rootNodes||[]),x3(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=pl(e.rootNodes);kr(o,a,e.targetNodes||[]),x3(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=pl(e.targetNodes);gi(e.targetNodes),kr(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&gi(e.targetNodes)}catch(o){P.error(o)}}}function T3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{it(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function x3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let r=sr(a,"immersiveTranslateClassBak");Bo(a,"immersiveTranslateClassBak"),a.className=r});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function pl(e){return e?e[e.length-1].nextSibling:null}function gi(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function kr(e,t,n){let a=e;t&&(a?n.forEach(r=>{a.parentNode?.insertBefore(r,a)}):n.forEach(r=>{t.appendChild(r)}))}var Jb=St(yl,300);async function Du(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||Yb(t.rootNodes)||t.stepState>=2)return;t.stepState=2,or&&it(a,"onParseParagraph",e.id);let{ctx:r}=e,{rule:u}=r,o=lr(r),i=di(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:r.rule.stayOriginalTags.concat(r.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(r.rule.stayOriginalSelectors).concat(r.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await Tl(t,{excludeLanguages:r?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:r.state.isDetectParagraphLanguage,targetLanguage:r.targetLanguage,noTranslateRegexp:r.rule.noTranslateRegexp,delimiters:ni(r.config.translationServices[r.translationService]?.placeholderDelimiters),minTextCount:n||r.state.translationArea==="body"?2:u.paragraphMinTextCount,minWordCount:n||r.state.translationArea==="body"?1:u.paragraphMinWordCount,ignoreZhCNandZhTW:r.rule.ignoreZhCNandZhTW});if(s){if(P.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(Xb(e,t.text),bl(e,t)):(or&&it(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function Yb(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?Mn(t)&&t.classList.contains(rn):!1}function Xb(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function bl(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),or&&it(t.commonAncestorContainer,"consumeParagraph",e.id),Jb.call(e,e.ctx)}async function yl(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await _n(a,t,(r,u,o)=>{let i=o.id,s=Zb(e,i.toString());s&&Qb.call(null,r,u,o,s,t,n)})}catch(r){P.error("translateCurrentQueue error",r);return}}function Zb(e,t){return e.find(n=>n.id===t)}function Qb(e,t,n,a,r,u){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${X}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Tr(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(P.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=r,l=n.id,c=document.createElement(s.targetWrapperTag);it(c,vg,l.toString()),c.classList.add("notranslate",rn,rn+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",r.targetLanguage);let m=a.rootNodes[a.rootNodes.length-1].nextSibling;kr(m,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` +`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let p=Ia(an,"retryAllParagraphs",r.config.interfaceLanguage,"zh-CN"),f=Ia(an,"errorTooltipTitle",r.config.interfaceLanguage,"zh-CN"),A=`<${s.targetWrapperTag} class="${X}-error notranslate"><${s.targetWrapperTag} class="${X}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=_e.sanitize(A)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=y3(a,r),l=document.createElement(r.rule.targetWrapperTag);l.classList.add("notranslate",rn),l.setAttribute("lang",r.targetLanguage),l.setAttribute(Ln,"1");let c=Gb.sanitize(s);l.innerHTML=c,a.targetNodes=[l],hl(a,u),o=!0}else P.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function Tl(e,t){let{text:n}=e,a=await lt({text:n||"",minLength:10}),{targetLanguage:r}=t;if(!Xm({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=yr());let s=Pn(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return sa(c,r,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(p=>sa(c,p,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var ey=[];function E3(e){ey.push(e)}function C3(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(Ao)||xl(e).catch(u=>{P.error("translateTitle error:",u.name,u.message,u.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var fi="";async function xl(e){let t=document.title;if(!t||t.includes(Ao))return;fi!==t&&(fi=t);let n=await bn(e,t);if(!ai(e,n))try{let a=await ha({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=fi+Ao+a.text)}catch(a){throw a}}function w3(e){e.rule.isTranslateTitle&&(document.title=fi)}var El="Original";function Ke(){return El}function Nt(e){El=e,v3(El)}var Cl;function k3(e){let t=e.ctx.rule.aiRule;if(P.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=ln(e.ctx),r=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(r,1);let u,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{hi(e,l,a)}),Cl=new MutationObserver(l=>{l.forEach(function(c){if(Mn(c.target)){if(o==u&&c.target===u&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=u){c.removedNodes?.forEach(m=>{m===u&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==u){if(o.translated)return;o.translated=!0,P.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),hi(e,o,a);return}t.streamingChange&&u&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(m=>{let g=m.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(P.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),hi(e,g,a))},100))})}})}),Cl.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){$n(l,[t.streamingSelector])&&(u=l,P.debug("streamingNode",u)),$n(l,[t.messageWrapperSelector])&&(o=l,P.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),P.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),hi(e,o,a),u=void 0,o=null}}function hi(e,t,n){ma({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Du(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function A3(){Cl?.disconnect()}var J=null;function yi(){return J||null}function Ti(e){ty(e),sy(e),uy(e),iy(e),ua(document,e),Nt("Translated"),oy(J),ry(J),E3(ba),ny(J)}function ty(e){e.rule.initialSelectorGlobalAttributes&&a3(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function ny(e){k3(e)}function ay(){A3()}function ry(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ar(n,e)})}async function uy(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,r=e.localConfig.tempTranslationUrlMatches||[],u=r.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;u>-1||(r.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Wn({...e.localConfig,tempTranslationUrlMatches:[...r]})}}function oy(e){e.ctx.rule.isTranslateTitle&&(xl(e.ctx),e.titleDynamicObserver=C3(e.ctx))}function iy(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function sy(e){let t=Zt();J&&(t=J.id),J=J||{},J.ctx=e,J.id=t,J.paragraphQueue=J.paragraphQueue||[],J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.containerRule={pageHeight:screen.availHeight,selectors:J.rule.selectors},J.paragraphEntities=J.paragraphEntities||{},J.autoIncreaseParagraphId=J.autoIncreaseParagraphId||1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.immediateTranslateCapacity=e.state.immediateTranslationTextCount,J.observeContainers=J.observeContainers||[],J.observeParagraphs=J.observeParagraphs||[],J.dynamicContainerObserver=J.dynamicContainerObserver||my(J),J.ignoreResizeObserver=J.ignoreResizeObserver||py(J),J.containerVisibleObserver=J.containerVisibleObserver||cy(J),J.paragraphVisibleObserver=J.paragraphVisibleObserver||dy(J),J.injectCssToDocument=bi,J.walkContainer=ma,J.translateState=e.state.translationMode||e.config.translationMode||"dual",J.allInlineWindows=[window],window.onerror=ly(J,e),window.immersiveTranslateSwitchTranslateState=vl.bind(J)}function D3(e,t){t.getRootNode()instanceof ShadowRoot?bi(t.getRootNode(),e):bi(t.ownerDocument,e),wl(e)}function wl(e){J||(J={},J.ctx=e,J.id=Zt(),J.paragraphQueue=[],J.injectCssToDocument=bi,J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.paragraphEntities={},J.autoIncreaseParagraphId=1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.translateState=e.config.translationMode||"dual",J.observeContainers=[],J.observeParagraphs=[],J.allInlineWindows=[window],window.switchTranslateState=vl.bind(J))}function ba(e=!0){J&&(Nt("Original"),ay(),J.interruptEffectDOM=!0,J.ignoreResizeObserver?.disconnect(),J.dynamicContainerObserver?.disconnect(),J.containerVisibleObserver?.disconnect(),J.paragraphVisibleObserver?.disconnect(),J.titleDynamicObserver?.disconnect(),w3(J.ctx),Gm(),Jm(),e&&vl.call(J,"original"),Object.values(J.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),J=null)}function ly(e,t){e.interruptEffectDOM=!1;let n;return function(a){let r=a.message,u=!1;return r?.indexOf("Minified React error")>=0&&(u=!0),u&&(clearTimeout(n),ba(),n=setTimeout(()=>{Ti(t)},e.urlChangeDelay||2e3)),!0}}function cy(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(mi(e,a.target),n.unobserve(a.target))})})}function dy(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let r=a.target;(r.paragraphs||[]).forEach(o=>{bl(e,o)}),n.unobserve(r)}})})}var S3;function gy(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(S3),e.translateState=="original"?!1:(ba(e.urlChangeDelay>20),S3=setTimeout(()=>{let r=e.ctx;Ti(r)},e.urlChangeDelay),!0)):!1}function my(e){return new MutationObserver(t=>{if(!gy(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!qt.isSkipMarkEle(n.target)&&!qt.isMarked(n.target,e.id))continue;let r=(n.target?.paragraphs||[]).reduce((u,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...u,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&$n(n.target,e.ctx.rule.mutationObserverContainerSelectors)){qt.clearMark(n.target),n.target.paragraphs=void 0,mi(e,n.target);return}n.addedNodes.forEach((u,o)=>{u.nodeType===Node.ELEMENT_NODE&&(r.includes(u)||Ar(u,e))})}})}function py(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let r=a.target,u=globalThis.getComputedStyle(r);ol(u)||(n.unobserve(a.target),Ar(r,e))}})}function vl(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{hl(t,e)}),e=="original"&&document.querySelectorAll(`.${rn}`).forEach(t=>t.remove())}function bi(e,t){if(e instanceof HTMLIFrameElement){ua(e.contentDocument,t);return}ua(e,t)}async function L3(e){let t=Ct(),n="auto";if(le()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=N0(e.mainFrame):a=ir(e.mainFrame).slice(0,1e3),n=await lt({text:a})}else if(t)n=await lt({text:ir(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=N0(e.mainFrame),n=await lt({text:a})}else n=await M3();return n==="auto"&&(n=await f3()),ti(n),n}async function P3(){if(!J)return;document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=J.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){J.paragraphQueue.push(n);let u=a.commonAncestorContainer.querySelector(`[${wo}='${n}']`);u&&u.remove()}}yl.call(J,J.ctx)}var F3={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},_3={...an,"zh-CN":{...F3["zh-CN"],...an["zh-CN"]},"zh-TW":{...F3["zh-TW"],...an["zh-TW"]}},Sr=_3;function ya(e,t,n){return Ia(_3,e,t,So,n)}var xi=()=>Xt.filter(e=>e!=="auto"),kt=(e,t,n,a)=>{let r=_g[e]||e,u=Bg[e],o=Rg[e],i={"zh-CN":u,"zh-TW":o,en:r};if(n)return i[e]?i[e]:r;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${r})`}else return r};function Dr(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{P.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:Eo,payload:e},"*")});let n=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(n)}function kl(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((u,o)=>(u[t[o]]=o,u),{}),r=Object.keys(a);for(let u of r){let o=u.replace(/MacCtrl/ig,"Ctrl");o&&Ne(o,i=>{i.preventDefault(),Dr({method:a[u]})})}}var At=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,r=Date.now();if(t.length=u?(t.push(r),0):(t.push(u),u-r)}};function Ta(e){return e!=null}function I3(e,t,n){return`${e.type}#${t}#${n}`}function O3(e,t,n,a,r){return{body:r,id:a,type:I3(e,t,n)}}function fy(e,t,n,a){return{id:n,response:a,type:I3(e,"ask",t)}}function N3(e,t,n,a){if(Ta(a)){let r=a.type;if(Ta(r)&&Ta(a.body)){let[u,o,i]=r.split("#");return u===e.type&&o===t&&i===n}else return!1}else return!1}function hy(e,t,n){if(Ta(n)){let a=n.type;if(Ta(a)&&Ta(n.response)){let[r,u,o]=a.split("#");return r===e.type&&u==="ask"&&o===t}else return!1}else return!1}function by(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function yy(e,t,n,a){return new Promise(r=>{let u=o=>{let i=o.data;hy(t,n,i)&&i.id===a&&(e.removeEventListener("message",u),r(i.response))};e.addEventListener("message",u)})}function Ty(e,t,n,a){let r=u=>{let o=u.data;N3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",r),[e,r]}function B3(e,t,n,a,r,u){let o=async i=>{let s=i.data;if(N3(n,"ask",a,s)){let l=await u(s.body);t=i.source,t.postMessage(fy(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function xy(e,t,n,a,r){let u=Math.random().toString();return e.postMessage(O3(t,"tell",n,u,a),r)}async function R3(e,t,n,a,r,u,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let m=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await yy(e,n,a,i);clearTimeout(m),l(g)});return t.postMessage(O3(n,"ask",a,i,r),u),s}var Bn=class{constructor(t,n,a=window,r="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=r;this.listeners=[];B3(a,n,this.getSystemProtocol("ping"),"ping",r,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let r=0;r<=n;r++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",r=window){let u=n.contentWindow;if(Ta(u))return new Bn(t,u,r,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:r=window.parent}={}){return new Bn(t,r,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new Bn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await R3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Ty(this.thisWindow,this.protocol,t,n))}tell(t,n){xy(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(B3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return R3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){by(this.listeners)}};var Ey;function Ei(){return Ey}var Cy=new At({limit:7,interval:1250}),wy={tencent:new At({limit:3,interval:1350}),baidu:new At({limit:1,interval:1550}),strict:new At({limit:1,interval:1050}),d:new At({limit:1,interval:1050}),youdao:new At({limit:5,interval:1050}),you:new At({limit:5,interval:1050}),cai:new At({limit:5,interval:1050}),google:new At({limit:10,interval:1050}),deepl:new At({limit:10,interval:1050}),transmart:new At({limit:30,interval:1050}),papago:new At({limit:3,interval:1150}),openai:new At({limit:10,interval:1300}),chatgpt:new At({limit:1,interval:1350})};function Lu(e){return wy[e]||Cy}async function U3(e){if(Ct()){let n=Ei();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return P.error("can not comunicate with root frame, use strict limiter",a),Lu("strict").getDelay()}else return Lu("strict").getDelay()}else return Lu(e).getDelay()}async function j3(e,t){if(!Ct()){let a=Lu(e);t&&a.setOptions(t)}}async function z3(e){let t=e.key;return{value:Lu(t).getDelay()}}var Ci=new Map;async function Al(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=ca(e.body)),Ci.has(t))return Ci.get(t);let n=ue(e);Ci.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Ci.delete(t)},3e4)}}async function H3(e){return Al(e)}async function Pu(e){if(Ct()){let n=Ei();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw P.error("can not comunicate with root frame, use strict limiter",a),a}else return Al(e)}else return Al(e)}var Pr={},vy={root:"",lang:"en",fallbackLang:"en"};function Sl(e,t){let n=Object.assign({},vy,e);Pr=t||Pr;let[a,r]=W(n.lang),[u,o]=W(Pr),[i,s]=W(!1),l=m=>{if(u.hasOwnProperty(m))return;s(!1);let g=h3(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(p=>p.json()).then(p=>{Pr[m]=p,o({...Pr}),s(!0)}).catch(p=>{o({...Pr}),s(!0)}))};return ke(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:r,t:(m,g)=>{if(!u.hasOwnProperty(a))return m;let p=Su(u,a,m);return p===m&&a!==n.fallbackLang&&(p=Su(u,n.fallbackLang,m)),dl(p,g)},isReady:i}}var Ll=Ju(null),Dl={root:"assets",lang:"en",fallbackLang:"en"},wi=e=>{let{t,setLang:n,lang:a,isReady:r}=Sl({root:e.root||Dl.root,lang:e.lang||Dl.lang,fallbackLang:e.fallbackLang||Dl.fallbackLang,getUrl:e.getUrl},e.translations);return d(Ll.Provider,{value:{t,setLang:n,lang:a,isReady:r},children:e.children})};function W3(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let r={},u=Object.keys(n);for(let l of u){let m=n[l].matches;for(let g of m)r[g]||(r[g]=[]),r[g].push(l)}let o=r[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(m=>m!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Mu(e,t=2e3){return n=>{let a,r=0;return u=>{++r==e&&(n(u),r=0),clearTimeout(a),a=setTimeout(()=>r=0,t)}}}function $3(e){let t;try{t=new URL(e)}catch{return!1}let n=q3(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(ky(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function ky(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function K3(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function V3(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function qn(e){let{items:t,maxWidth:n}=e;return n=n||128,d("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let r=a.target.value,u=t.find(o=>o.value===r);u&&u.onSelected(u)},children:t.map((a,r)=>d("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+r))})}function G3(e){let{items:t,maxWidth:n,isInput:a,value:r}=e;return n=n||128,a?d("input",{value:r,onChange:u=>{e.onChange(u.target.value)}}):d("select",{autoComplete:"off",style:{maxWidth:`${n}px`},value:t.find(u=>u.selected)?.value,onChange:u=>{let o=u.target.value,i=t.find(s=>s.value===o);i&&i.onSelected(i)},children:t.map((u,o)=>d("option",{value:u.value,selected:u.selected,children:u.label},"selectlink"+o))})}var vi="DROP_DOWN_DEFAULT_VALUE";function Pl(e){let{showArrow:t,onSelected:n,className:a,menus:r,maxWidth:u}=e;a=a||"",t=t??!0,u=u||70;let o=kn(null);return d("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:vi,style:{maxWidth:`${u}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==vi){o.current.value=vi,o.current?.dispatchEvent(new Event("change"));let l=r.find(c=>c.value===s);l&&n(l)}},children:[{value:vi,label:e.label}].concat(r).map((i,s)=>d("option",{value:i.value,children:i.label},"option-"+s))})}function be(){return Qu(Ll)}function Ml(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:r}=be(),u=t.name;return t.label&&(u=t.label),t.labelKey&&(u=r(t.labelKey)),t.type==="select"?d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[u,"\uFF1A"]}),d(qn,{items:t.options.map(o=>({label:`${o.label?r(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function xa(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var Ay=({date:e})=>{let{t}=be(),[n,a]=W(!1);return ke(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},Sy=({minVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},Dy=()=>{let{t:e}=be();return d("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},Ly=({message:e,handleSyncing:t,date:n})=>{let{t:a}=be();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Fl(e){let{isShowError:t,request:n}=e,[a,r]=W(null),{t:u}=be(),[o,i]=W(null),[s,l]=W(null),[c,m]=W(""),[g,p]=W(!1),[f,A]=W(!1),[k,h]=W(!1),[S,_]=W(null),[B,L]=W(null),v=da(),y=async()=>{m("");let T=o;if(o===null)try{let b=await n({url:aa});b?(i(b),T=b,p(!0)):(m(u("unknownError")),l(null))}catch(b){l(null),m(b.message);return}T!==null?(e.setStorageBuildinConfig(T),l(!1),r(T.buildinConfigUpdatedAt)):(m(u("canNotFetchRemoteRule")),l(null))};return ke(()=>{ze().then(T=>{let b=T.buildinConfigUpdatedAt;_(T);let x=new Date(b);if(r(b),v==="0.0.0"){h(!0);return}n({url:aa}).then(R=>{let D=R,I=D.minVersion,M=v;i(D);let F=D.latestVersion;if(F&&(xa(M,F)?L(!0):L(!1)),xa(M,I)){let $=D.buildinConfigUpdatedAt;new Date($)>x?(l(!0),y()):l(!1)}else A(!0),l(null)}).catch(R=>{l(null),m(R.message)})})},[]),ke(()=>{ze().then(T=>{_(T)})},[a]),S?d("div",{class:"text-sm mt-2",style:{maxWidth:218},children:k?d(Dy,{}):c?t===!1?null:d(Ly,{handleSyncing:y,message:c,date:a||""}):f?t===!1?null:d(Sy,{minVersion:o.minVersion}):s===null||s===!0?null:g?d(Ay,{date:a}):null}):null}function _l(e){let t=da(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:r,onTranslateLocalHtmlFile:u,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:m,config:g,openAboutPage:p,onTranslateTheWholePage:f,onToggleEnabled:A,openOptionsPage:k,ontranslateToThePageEndImmediately:h,onSetPageLanguage:S,onToggleTranslate:_,onTranslateLocalPdfFile:B,onTranslatePdf:L,onRestorePage:v,ctx:y,currentUrl:T,currentLang:b,onClose:x,onTranslatePage:R,onSetLocalConfig:D,onMouseTriggerChanged:I,errorMsg:M,disabledButton:F,noPermissionPDF:$}=e,Z=a,[de,V]=W(""),[me,ge]=W(M),{t:w,lang:H}=be(),Q=60;H.startsWith("zh")||(Q=65);let fe=null,se=null,O=null,N=null,re=null,te=null,ae=null,ne=null,oe=null,Y=null,ce=null,Le=null,Oe=!0;if(g){Dt()&&g&&(Oe=g.generalRule.showSponsorOnSafari);let{translationService:j,translationServices:pe,translationUrlPattern:Be}=g;hn[j]&&(ne=V0(j,y)),pe&&pe[j]?Le=pe[j]||{}:Le={};try{oe=new URL(T||"")}catch{}if(T&&$3(T)){Y=K3(oe.hostname),ce=V3(T);let{matches:Ae,excludeMatches:De}=Be;se=Ae.includes(Y),fe=Ae.includes(oe.hostname),N=De.includes(Y),O=De.includes(oe.hostname),te=Ae.includes(ce),ae=De.includes(ce)}}if(g&&b&&b!=="auto"){let{translationLanguagePattern:j}=g,{matches:pe}=j;pe.includes(b)?re=!0:re=!1}let he=j=>{j.preventDefault(),k()},Xe=j=>{Z(pe=>(pe.alpha?V("Success disable alpha!"):V("Success enable alpha!"),{...pe,alpha:!pe.alpha}))},pt=j=>{Z(pe=>({...pe,translationMode:j})),o(j)},We=()=>{Z(j=>({...j,translationArea:"body"})),f()},$e=()=>{Z(j=>({...j,translationArea:"main"})),n()},qe=(j,pe,Be,Ae)=>{if(j==="default"){Z(xt=>{let Pe={...xt.translationUrlPattern};return{...xt,translationUrlPattern:{...xt.translationUrlPattern,matches:Ye([oe?.hostname,Y,T],Pe.matches),excludeMatches:Ye([oe?.hostname,Y,T],Pe.excludeMatches)}}});return}let De=j,Ge=De==="matches"?"excludeMatches":"matches";oe&&Z(xt=>{let Pe={...xt.translationUrlPattern};return Pe[De]=un(pe,Pe[De]),Ae.length>0&&(Pe[De]=Ye(Ae,Pe[De])),Pe[Ge]=Ye(Be,Pe[Ge]),{...xt,translationUrlPattern:{...xt.translationUrlPattern,...Pe}}}),De==="matches"&&l==="Original"?setTimeout(()=>{R(),x()},100):De==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{v(),x()},100)},Ht=j=>{if(!j){Z(Ae=>{let De={...Ae.translationLanguagePattern};return{...Ae,translationLanguagePattern:{...Ae.translationLanguagePattern,matches:Ye(b,De.matches),excludeMatches:Ye(b,De.excludeMatches)}}});return}let pe=j,Be=pe==="matches"?"excludeMatches":"matches";b&&Z(Ae=>{let De={...Ae.translationLanguagePattern};return De[pe]=un(b,De[pe]),De[Be]=Ye(b,De[Be]),{...Ae,translationLanguagePattern:{...Ae.translationLanguagePattern,...De}}}),pe==="matches"&&l==="Original"&&setTimeout(()=>{R(),x()},100)},Jn=oe?.pathname.toLowerCase().endsWith(".pdf"),Ze=w("translate");l==="Translated"||l==="Error"?Ze=w("show-original"):l==="Original"?Jn?Fa()&&oe.protocol==="file:"||$?Ze=w("translate-firefox-local-pdf"):le()?Ze=w("noSupportTranslate-pdf"):Ze=w("translate-pdf"):Ze=w("translate"):Ze=w(l);let vn=w("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(g.shortcuts.toggleTranslatePage&&(mr()&&y.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ze+=` (${w(`fingers.${y.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ze+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(vn+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let dn=[];y&&(dn=$o(y));let ft=j=>{j.preventDefault(),x()},Vt=Mr(y.config.translationService,y.config.targetLanguage);return d("div",{class:"p-3",children:[d("div",{class:"text-sm",children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[w("popupSourceLanguage"),"\uFF1A"]}),d(qn,{items:Xt.map(j=>({label:kt(j,g.interfaceLanguage),value:j,selected:j===y.sourceLanguage,onSelected:pe=>{S(pe.value)}}))})]}),g&&g.targetLanguage&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[w("popupTarget"),"\uFF1A"]}),d(qn,{items:Vt.filter(j=>j!=="auto").map(j=>({label:kt(j,g.interfaceLanguage),value:j,selected:j===g.targetLanguage,onSelected:pe=>{Z(Be=>({...Be,targetLanguage:pe.value}))}}))})]}),ne&&dn.length>0&&d(rt,{children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[w("popupService"),"\uFF1A"]}),d(qn,{items:dn.map(j=>({label:`${w("translationServices."+j.id)}${j.ok?"":" "+w("needAction")}`,value:j.id,selected:j.selected,onSelected:pe=>{let Be=dn.find(Ae=>Ae.id===pe.value);Be.ok?(Z(Ae=>({...Ae,translationService:Be.id})),Be.props.length===0?setTimeout(()=>{R()},1):setTimeout(()=>{v()},1)):(Z(Ae=>({...Ae,translationService:Be.id})),setTimeout(()=>{k()},100))}}))})]}),Le&&ne.props.length>0&&ne.props.map((j,pe)=>d("div",{class:"pl-4 text-sm",children:d(Ml,{field:j,value:Le[j.name],onChange:Be=>{Z(Ae=>{let De=Ae.translationServices||{},Ge=De[ne.id]||{};return setTimeout(()=>{v()},1),{...Ae,translationServices:{...De,[ne.id]:{...Ge,[j.name]:Be}}}})}},"field-"+pe)},"service"+pe))]}),oe&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:w("forThisSite")}),d(qn,{items:[{label:w("default"),value:"default",selected:fe===!1&&O===!1&&!se&&!N&&!te&&!ae,onSelected:()=>{qe("default",oe.hostname,[],[]);let j=oe.hostname,pe=y.localConfig.tempTranslationUrlMatches||[],Be=pe.filter(De=>De.match!==j),Ae=!1;Be.length!==pe.length&&(Ae=!0),Ae&&D({...y.localConfig,tempTranslationUrlMatches:[...Be]})}},ce&&{label:w("alwaysTranslateSomeSite",{hostname:w("currentUrl")}),value:"matchesUrl",selected:te,onSelected:()=>{qe("matches",ce,[ce],[])}},{label:w("alwaysTranslateSomeSite",{hostname:oe.hostname}),value:"matches",selected:fe,onSelected:j=>{qe(j.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:w("alwaysTranslateSomeSite",{hostname:Y}),value:"matchesWild",selected:se,onSelected:()=>{qe("matches",Y,[ce,oe.hostname,Y],[oe.hostname])}},ce&&{label:w("neverTranslateSomeSite",{hostname:w("currentUrl")}),value:"excludeMatchesUrl",selected:ae,onSelected:()=>{qe("excludeMatches",ce,[ce],[])}},{label:w("neverTranslateSomeSite",{hostname:oe.hostname}),value:"excludeMatches",selected:O,onSelected:j=>{qe(j.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:w("neverTranslateSomeSite",{hostname:Y}),value:"excludeMatchesWild",selected:N,onSelected:()=>{qe("excludeMatches",Y,[oe.hostname,ce,Y],[oe.hostname])}}].filter(Boolean)})]}),I&&_a()&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[w("mouse-translate"),"\uFF1A"]}),d(qn,{items:Lo.filter(j=>!(Lo.includes(g.generalRule.mouseHoverHoldKey)&&j==="OtherCustom")).map(j=>{let pe=w("mouseHoldKey",{key:j}),Be=Lo.includes(g.generalRule.mouseHoverHoldKey),Ae=j===g.generalRule.mouseHoverHoldKey;return j==="Auto"?pe=w("mouseHoldKeyAuto"):j==="Off"?pe=w("mouseHoldKeyOff"):j==="OtherCustom"?pe=Be?w("mouseHoldKeyOther"):w("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):j==="Other"&&(pe=w("mouseHoldKeyOther")),Be||j==="OtherCustom"&&(Ae=!0),{label:pe,value:j,selected:Ae,onSelected:De=>{De.value==="Other"?k("#interface"):I(De.value)}}})})]})]}),d("div",{class:"",children:d("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Jn?L&&L():_()},"aria-busy":l==="Translating",disabled:F||l==="Translating",children:Ze})}),d("div",{class:"text-sm",children:de}),d("div",{class:"text-sm",children:me}),d("div",{class:"flex justify-between flex-wrap",children:[b&&b!=="auto"?d("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[d("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!re,onChange:j=>{let pe=j.target.checked;Ht(pe?"matches":void 0)}}),w("alwaysTranslateSomeLanguage",{language:kt(b,g.interfaceLanguage,!1,!0)})]}):d("span",{}),d("div",{class:"flex flex-end flex-grow",children:d(Pl,{label:w("more"),showArrow:!0,maxWidth:Q,onSelected:j=>{j.value==="changeToOnlyTranslationMode"?pt("translation"):j.value==="changeToDualTranslationMode"?pt("dual"):j.value==="translateTheWholePage"?f():j.value==="translateToThePageEndImmediately"?h():j.value==="translateTheMainPage"?n():j.value==="showTranslationOnly"||(j.value==="translateLocalPdfFile"?B&&B():j.value==="translateLocalHtmlFile"?u&&u():j.value==="translateLocalSubtitleFile"?i&&i():j.value==="donate"?(globalThis.open(g.donateUrl),x()):j.value==="feedback"?(globalThis.open(g.feedbackUrl),x()):j.value==="options"?(k(),x()):j.value==="changeToTranslateTheWholePage"?We():j.value==="changeToTranslateTheMainPage"?$e():j.value==="about"?p():j.value==="toggleEnabled"?A():j.value==="openEbookViewer"?m():j.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+w("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+w("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+w("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+w("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+vn,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+w("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+w("browser.openEbookBuilder"),value:"openEbookBuilder"},!le()&&{label:"\u{1F4C1} "+w("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!le()&&{label:"\u{1F310} "+w("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+w("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?w("clickToDisableExtension"):w("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+w(Oe?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),d("footer",{children:[d(Fl,{isShowError:!1,request:r,setStorageBuildinConfig:s}),d("div",{class:"mt-3 text-sm flex justify-between",children:[d("a",{href:"#",class:"secondary",onClick:he,children:w("options")}),le()&&d("a",{href:"#",class:"secondary",onClick:ft,children:w("close")}),d("span",{class:"immersive-translate-no-select muted",onClick:Mu(7)(Xe),children:["V",t,g.enabled?null:d("a",{href:"#",onClick:A,children:[" ","(",w("hasBeenDisabled"),")"]})]})]})]})]})}async function J3(e){try{let t=new Date;P.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await z.storage.local.set({[Sg]:t.toISOString()}),await Py(),le()||await Y3()}catch(t){P.error("run cron task failed",t)}}async function Py(){try{let e=await xn(),t=await ue({url:aa}),n=e.buildinConfigUpdatedAt,a=new Date(n),r=t.buildinConfigUpdatedAt,u=new Date(r),o=t.minVersion,i=z.runtime.getManifest().version;xa(i,o)?u>a?(await z.storage.local.set({buildinConfig:t}),P.info(`sync remote rules success, latest: ${new Date(r).toLocaleString()}`)):P.debug(`no need to sync rules, latest: ${a}`):P.info(`local version is too old, please update to ${o} or later`)}catch(e){P.error("sync rules error: ",e)}}function Rl(e){let{onClose:t}=e,[n,a]=W("Original"),[r,u,o,i]=bt(()=>{setTimeout(()=>{_("updateGlobalContext",!1)()},250)}),[s,l]=W(null),[c,m]=W(globalThis.location.href),[g,p]=W("auto"),[f,A]=W(null),k=F=>{a(F.detail)},h=F=>{p(F);let $=W3(c,F,s.sourceLanguageUrlPattern);u(Z=>({...Z,sourceLanguageUrlPattern:$})),sn(F)},S=()=>{m(globalThis.location.href)};ke(()=>(document.addEventListener(Co,k,!1),xn().then(F=>{l(F);let $=Pn();p($);let Z=Ke();a(Z),J3(F.interval)}),document.addEventListener("urlChange",S),()=>{document.removeEventListener("pageTranslatedStatus",k),document.removeEventListener("urlChange",S)}),[]),ke(()=>{xn().then(F=>{l(F)})},[r]),ke(()=>{c&&s&&vt({url:c,config:s}).then(F=>{A(F)})},[c,s]);let _=(F,$,Z={})=>()=>{Dr({method:F,data:Z||{}}),$&&t()},B=()=>{t()},L=()=>{u(F=>({...F,enabled:!F.enabled})),setTimeout(()=>{B()},50)},v=()=>{Bl(),setTimeout(()=>{B()},50)},y=()=>{Bl(),setTimeout(()=>{B()},50)},T=(F="")=>{Ai(!0,F),setTimeout(()=>{t()},50)},b=()=>{Si(),setTimeout(()=>{t()},50)},x=()=>{Di(),setTimeout(()=>{t()},50)},R=()=>{Z3(),setTimeout(()=>{t()},50)},D=()=>{Li(),setTimeout(()=>{t()},50)},I=()=>{Q3(),setTimeout(()=>{t()},50)},M=F=>{u($=>({...$,generalRule:{...$.generalRule,mouseHoverHoldKey:F}}))};return!s||!f?null:d(_l,{openEbookViewerPage:x,openEbookBuilderPage:D,onSwitchTranslationMode:F=>{_("switchTranslationMode",!0,{mode:F})()},onTranslateLocalHtmlFile:R,onTranslateLocalSubtitleFile:I,request:ue,onClose:B,onToggleEnabled:L,onTranslateTheWholePage:_("translateTheWholePage",!0),openOptionsPage:T,onToggleTranslate:_("toggleTranslatePage",!0),onTranslateTheMainPage:_("translateTheMainPage",!0),ontranslateToThePageEndImmediately:_("translateToThePageEndImmediately",!0),onTranslatePage:_("translatePage",!0),onRestorePage:_("restorePage",!1),onTranslatePdf:v,openAboutPage:b,onTranslateLocalPdfFile:y,onSetPageLanguage:h,onUserConfigChange:u,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:ki,onSetBuildinConfig:X3,onMouseTriggerChanged:M})}function My(e,t){for(let n of t){if(le()&&!Fa()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Il={position:"right",right:0,top:335},Ut={...Il},Fi=!1,Oa=null,Rn=null,_i=null,Ol=null,Fr=null,Nl=null,ep=6,Pi,Mi,np=null,ap=null;async function rp(){let e=tt();Nl=await ip(),Ut=Nl.pagePopupConfig||Ut;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Ol=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` +`);My(n,[a]);let r=document.createElement("div");r.innerHTML=_e.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(r),Oa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");Rn=o,_i=n.querySelector("#mount"),Oa.setAttribute("style",Ul(Ut)),Wl(),o.addEventListener("mousedown",up),o.addEventListener("touchstart",By),globalThis.addEventListener("resize",s=>{Oa.setAttribute("style",Ul(Ut))})}function Fy(){ka(null,_i),_i.style.display="none",Rn.style.display="block",Fr=setTimeout(()=>{Wl(!0)},2e3)}function tp(e){let t=e.querySelector("#mount"),n=()=>{Fy()},a=r=>{r&&r.target&&r.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let r=await xn();ka(d(wi,{lang:r.interfaceLanguage,fallbackLang:"zh-CN",translations:Sr,children:d("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:d("div",{class:"immersive-translate-popup-wrapper",style:_y(),children:d(Rl,{onClose:n})})})}),t)})().then(()=>{Rn.style.display="none",_i.style.display="block"})}function _y(){let e=jl(),t=e.height,{position:n,top:a,left:r}=Ut,u={position:"fixed"},o=300,i=300,s=100;return jg()&&(n=Il.position,a=Il.top),n==="right"||n==="left"?(u.top=a-s,u.top+o>=t?(u.bottom=30,delete u.top):u.top<=10&&(u.top=10),n==="right"?u.right=0:n==="left"&&(u.left=0)):(n==="top"||n==="bottom")&&(u.left=r-s,u.left+i>=e.width?(u.right=0,delete u.left):u.left<=10&&(u.left=0),n==="top"?u.top=0:n==="bottom"&&(u.bottom=0)),u}function jl(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function up(e){ap=Oa.getAttribute("style"),Pi=e.pageX,Mi=e.pageY,Fr&&clearTimeout(Fr),Fi=!1,Rn.style.opacity="1",Rn.style.transform="none",np=Rn.getAttribute("style"),globalThis.addEventListener("mousemove",zl),globalThis.addEventListener("mouseup",Hl),globalThis.addEventListener("touchmove",op),globalThis.addEventListener("touchend",Bi),globalThis.addEventListener("touchcancel",Bi)}function By(e){e.preventDefault&&e.preventDefault(),up(e.changedTouches[0])}function op(e){zl(e.changedTouches[0])}function Bi(e){e.preventDefault&&e.preventDefault(),Hl(e.changedTouches[0])}function zl(e){e.preventDefault&&e.preventDefault(),Fi=!0,Oa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Hl(e){e.preventDefault&&e.preventDefault(),Iy(),Fr&&clearTimeout(Fr),Pi=Pi||0,Mi=Mi||0;let t=Math.abs(e.pageX-Pi),n=Math.abs(e.pageY-Mi);t{Wl(!0)},2e3)}function Wl(e=!1){Rn.style.opacity="0.4";let t="";Ut.position==="left"?t="translateX(-40%)":Ut.position==="right"?t="translateX(40%)":Ut.position==="top"?t="translateY(-40%)":Ut.position==="bottom"&&(t="translateY(40%)"),Rn.style.transform=t,e&&(Rn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function Iy(){globalThis.removeEventListener("mousemove",zl),globalThis.removeEventListener("mouseup",Hl),globalThis.removeEventListener("touchmove",op),globalThis.removeEventListener("touchend",Bi),globalThis.removeEventListener("touchcancel",Bi)}function Ul(e){let t=Oy(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function Oy(e){let{position:t,...n}=e,a=jl(),r={};return t==="left"?(r.left=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="right"?(r.right=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="top"?(r.top=0,n.left>a.width?r.left=a.width-100:r.left=n.left):t==="bottom"&&(r.bottom=0,n.left>a.width?r.left=a.width-100:r.left=n.left),r}var sp=!1;async function lp(){sp||(sp=!0,rp().catch(e=>{P.error("init popup error",e)}))}var cp=!1,mp=[()=>{Ne.unbind()}],ql=[...mp],Ny=St(async()=>{await Ai()},50),Uy=St(async()=>{await Si()},50),jy=St(async()=>{await Li()},50),zy=St(async()=>{await Di()},50),pp=St(e=>{Dr({method:e})},50),Hy=St(()=>{Ri();let e=new CustomEvent(na,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),Wy=St(()=>{Ni();let e=new CustomEvent(na,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),$y=St(()=>{Oi();let e=new CustomEvent(na,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function qy(e,t){let n=e.document;if(cp)return;if(cp=!0,le()||yp(),n.addEventListener("securitypolicyviolation",tT),n.addEventListener("immersiveTranslateEbookLoaded",eT),n.addEventListener(bg,Qy),n.addEventListener("click",r=>{Jy(r,t)}),le()&&(globalThis.top!=globalThis.self?e.addEventListener("message",Vy,!1):n.addEventListener(na,Ky)),globalThis.top===globalThis.self){let r=Bn.rootIframe(_0);r.handleAsk("getRateLimitDelay",z3),r.handleAsk("throttleRequest",H3)}}function fp(e,t){nT(),qy(t,e);let n=t.document,a=Gy.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),ql.push(()=>{n.removeEventListener("touchstart",a)}),le()&&globalThis.top===globalThis.self&&(kl(e.config),aT(e.config)),Dt()&&kl(e.config)}function Ky(e){lp()}function Vy(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===Eo&&Lr(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function Gy(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?Hy():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?$y():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&Wy()}function Jy(e,t){let n=e.target;if(!n||!n.getAttribute){$l(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&st(a,[{name:a}],{...t,sourceLanguage:"none"});let r=n.getAttribute(`data-${X}-action`);if(r)if(r==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Ii(),$l(n,!0);return}else if(r=="toast-error"){let u=n.getAttribute(`data-${X}-tooltip-text`);gp(Xy.bind(null,t,u||""))}else r=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),gp(Yy.bind(null,t)));$l(n)}async function dp(e=!1){let t=document.querySelector(`.${X}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await xp();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Tp(n)}function gp(e){let t=`${X}-modal`,n=`${X}-modal-title`,a=`${X}-modal-body`,r=`${X}-modal-footer`,u=document.querySelector(`.${t}`);if(u){let o=u.querySelector(`.${n}`),i=u.querySelector(`.${r}`),s=u.querySelector(`.${a}`);e(u,o,s,i)}else{u=document.createElement("div"),u.className=t+" notranslate",u.id=t;let o=document.createElement("div");o.className=X+"-modal-content notranslate",u.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=X+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=r,o.appendChild(c),document.body.appendChild(u),i.onclick=function(){u.style.display="none"},window.onclick=function(m){m.target==u&&(u.style.display="none")},e(u,s,l,c)}setTimeout(()=>{Zy()},100)}function Yy(e,t,n,a,r){let u=hp.bind(null,e);n.innerHTML=`
${Ug} ${u("disableConfirm")}
`,a.innerHTML="";let o=document.querySelector(`div[data-${X}-cancel-desc]`),i=document.createElement("p");i.innerHTML=o?_e.sanitize(o.textContent||""):_e.sanitize(u("searchEnhancementNotes")),i.style.cssText="margin-bottom:12px",a.appendChild(i);let s=[{id:"enable-search-enhancement",value:"enable",text:u("enableSearchEnhancement")},{id:"disable-once",value:"once",text:u("disableOnce")},{id:"disable-global",value:"global",text:u("disableGlobal")}];for(let p=0;p${u("option")}`})),a.appendChild(l);let c=a.querySelector(`.${X}-open-enhancement`);c&&(c.onclick=function(){Ep(!0)});let m=document.createElement("button");m.innerText=u("closeModal"),m.className=`${X}-btn ${X}-cancel-btn`;let g=document.createElement("button");g.className=`${X}-btn`,g.innerText=u("saveSettings"),r.innerHTML="",r.appendChild(m),r.appendChild(g),m.onclick=function(){t.style.display="none"},g.onclick=function(){let p=a.getElementsByTagName("input"),f="";for(let A=0;A{bp()},10)}function tT(e){we.HAS_CSP_ERROR="1"}function nT(){ql.forEach(e=>{e()}),ql=mp}function aT(e){if(le()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Xo.commands,r=[...Object.keys(t).filter(u=>u==="toggleTranslatePage").map(u=>{let o=t[u].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=ya(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:u,title:i}}),{id:gu,title:ya("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:mu,title:ya("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:du,title:ya("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:S0,title:ya("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let u of r)GM.registerMenuCommand(u.title,()=>{u.id===du?Ny():u.id===S0?Uy():u.id===mu?jy():u.id===gu?zy():pp(u.id)},u.key)}}function rT(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{P.error("send content message request failed",e,n)});let t=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(t)}function wp(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let r=a[a.length-1];if(!r)return{};let u=n-r.right,o=t.find(i=>Ve(i.left,u)&&Ve(i.width,r.width));return{prevP:r,curP:o}}function Kl(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function vp(e){return e?e==e[0].repeat(e.length):!0}function Ve(e,t,n=5){return Math.abs(e-t)<=n}var Vl=[",","\\.","\uFF0C","\u3002"];function kp(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],r=t[0];return Ve(a.left,r.left,7)&&Ve(a.nextTop,r.top,10)&&Ui(a,r)}function Ap({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Pp(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Mp({prevLineP:e,prevP:t},n){return Ve(e.left,n.left,1)&&Ve(e.right,t.right,1)&&t.mergedTimes>=1}function Gl(e,t){let{prevLineP:n}=e;return Pp(e,t)&&(Ve(n.bottom,t.bottom)||Ve(n.nextTop,t.top)&&Ve(n.left,t.left))}function Fp(e,t){let{prevLineP:n,prevP:a,scale:r}=e;return Pp(e,t)&&n.width0&&a/r<.1&&n.left!Kl(u.str)).filter(u=>u.translateStatus!="success"&&u.translateStatus!="pending").map(u=>(u.translateStatus="pending",u));if(n.length<=0)return;let a=await lt({text:n.map(u=>u.str).join(` +`).slice(0,1e3)});ti(a);let r=n.map((u,o)=>({text:u.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=n[s];u?(l.translatedStr=u.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),oT(l)})}var Yl={};async function uT(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Yl).filter(n=>!!n);await ji(Op,t)}function oT(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Yl[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",uT)):e.translateStatus=="success"&&(Yl[e.id]=void 0,t.innerHTML=_e.sanitize(e.translatedStr)))}function Np(e,t){let n=[],a=sT(e,t);return lT(e,a).forEach(u=>{if(!(u.length<=0)){if(u.length==1){Ip(e,n,u[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),u.forEach(o=>{Ip(e,n,o,!1)}),n.push("
")}}),`
${n.join("")} -
`}function Fp(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:r,pageHeight:u,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(r*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(r*o)+1).toFixed(2)}%`:"auto",m=`${(l.left*100/(r*o)).toFixed(2)}%`,g=`${(l.top*100/(u*o)).toFixed(2)}%`,p=No()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,S=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${m};top: ${g};width:${c};max-width:${s};`,!p&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let k=ql(l.str)?"":"translate-pending",h=l.str;l.translateStatus=="success"&&(h=l.translatedStr,k=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${h}

`),t.push("
")})}function tT(e,t){let{pageWidth:n,pageHeight:a,scale:r}=e,u=t[0][0],o=u.width,i=u.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let l=`${(o*100/(n*r)).toFixed(2)}%`,c=`${(u.left*100/(n*r)).toFixed(2)}%`,m=`${(u.top*100/(a*r)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${m};height:${s-i}px;overflow:auto;`}function nT(e,t){let n=[];return t.forEach((a,r)=>{if(r==0){n.push([a]);return}let u=n[n.length-1][0];if(e.prevLineP=u,Vl(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function aT(e,t){let n=[];return t.forEach((a,r)=>{if(r==0||a.length>1){n.push([a]);return}let u=n[n.length-1];if(e.prevGroup=u[u.length-1],xp(e,a)){u.push(a);return}n.push([a])}),n}var Rp="immersive-translate",_r,Kn=[];async function Np(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(nt("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await Op(1);await ji(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Kn=[],_r=void 0,sT(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let r=await Op(a);await ji(e,r||[])})}}function rT(e){if(_r)return{..._r,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let u=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(u),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return _r={...i},i}async function Op(e){let t=rT(e);if(!t)return;Kn[e]||(Kn[e]=await uT(t,e,Kn[e-1]||[]));let n=Kn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),r=document.querySelector(`.${Rp}-page[data-page-number="${e}"]`);if(!a||r)return;r=document.createElement("div"),r.setAttribute("style",a.getAttribute("style")||""),r.setAttribute("data-page-number",e+""),r.classList.add("page"),r.classList.add(`${Rp}-page`);let u=Bp(t,n);return r.innerHTML=Ie.sanitize(u,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(r):a.parentNode?.insertBefore(r,a.nextSibling),n}async function uT(e,t,n){let a=await e.pdfDocument.getPage(t),r=await a.getTextContent(),[u,o,i,s]=a._pageInfo.view;_r.pageWidth=i,_r.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=iT(e,r);e.origLineParagraphs=l;let{prevP:c,curP:m}=Tp(e,l);return m&&Up(c,void 0,m),oT(e,l)}function oT(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,wp(e,o)){if(kp(e,o)){u(l,o);return}if(Sp(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},u(l,o);return}if(Dp(e,o)){u(l,o);return}if(Gl(e,o)){u(l,o);return}if(Lp(e,o)){u(l,o),o.left{let o=u.str;if(!o.trim())return;let i=u.transform[4],s=u.transform[5],l=u.width*n,c=t.styles[u.fontName].fontFamily,m=u.transform[3],g=t.styles[u.fontName].descent,f=(1+(1-t.styles[u.fontName].ascent)+g)*m;isNaN(f)&&(f=m);let S=i*n,k=S+l,h=(a-s-f)*n,A=h+m*n,_=A+m*n*.2,B=k+m*n*.3,L={str:o,left:S,nextLeft:B,top:h,nextTop:_,id:`pageNum-${Zt()}`,width:l,originFontName:u.fontName,fontName:c,fontSize:m,right:k,bottom:A,attachList:[],mergedTimes:0,translatedStr:""};if(r.length==0)r.push(L);else{let w=r[r.length-1];if(e.prevLineP=w,Pp(e,L)){vp(e,L)?w.str+=o:w.str+=" "+o,w.right=k,w.fontName=c,w.width=Math.max(w.width+l,k-w.left),w.nextLeft=B;return}if(Mp(e,L)){w.width=Math.max(w.width+l,k-w.left),w.right=k,w.nextLeft=B,w.attachList.push(L);return}r.push(L)}}),r}function Up(e,t,n){if(!Ui(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function sT(e){setTimeout(()=>{let t="";for(let n=1;n<=Kn.length;n++){let a=!1;if(Kn[n]){for(let r=0;r1e3){a=!0;break}}if(a)break}}lt({text:t}).then(n=>{nt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var Na={};async function Yl(e){let n=[...document.querySelectorAll(".source-text")].map(r=>r.textContent).join(""),a=await Pn(e,n,1e3);return sn(a),a}async function jp(e){Nt("Translating");let t=Ln(),n=yr(),a=[...document.querySelectorAll(".source-text")];if(ai(e,t))return;let r=a.filter(u=>u.innerText?.trim()).map((u,o)=>{let i=u.parentElement?.parentElement?.querySelector(".target-text");return st(u,"id",o+""),i&&(Tr(i,o)?.remove(),i.appendChild(ku(e,o))),{text:u.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=Tr(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),u?(c.innerHTML=Ie.sanitize(`${u.message}`),Na[s]={ok:!1,sentence:i}):o&&(c.innerHTML=Ie.sanitize(o.text),Na[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Nt("Translated")}}async function zp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Na),n=[],a=[];for(let r of t){let u=Na[r];if(!u.ok){let i=document.querySelector(`#error-id-${r}`);if(i){let s=i.parentElement;i.remove(),s&&(delete Na[r],s.appendChild(ku(e,r)),a.push(u.sentence))}}}try{await _n({sentences:a},e,(r,u,o)=>{let i=o.id,s=Tr(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),r?(l.innerHTML=Ie.sanitize(`${r.message}`),Na[i]={ok:!1,sentence:o}):u&&(l.innerHTML=Ie.sanitize(u.text),Na[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Nt("Translated")}}function Xl(){Nt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Zl={};async function Hp(e){let t=[...document.querySelectorAll("iframe")],n="";for(let r of t){let u=r.contentDocument;if(!u)continue;let o=u.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await Pn(e,n,1e3);return sn(a),a}async function Wp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Zl),n=[];for(let a of t){let r=Zl[a];if(r.error){let o=r.commonAncestorContainer.querySelector(`[${vo}='${a}']`);o&&o.remove(),n.push(r)}}try{await pi(n,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}function $p(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+rn);for(let r of a)r.remove()}Nt("Original")}async function qp(e){Nt("Translating");let t=Zt(),n=[...document.querySelectorAll("iframe")],a=[],r=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ua(s,e);let l=s.body;if(!l)continue;let c=ln(e);c.isModifyImage=!1,ma({id:t,container:l,filterRule:c,onParagraph:m=>{a.push(m)}})}let u=ni(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=di(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:u,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await yl(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:u,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(r.push(l),Zl[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await pi(r,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}var lT=new AbortController,{signal:cT}=lT,ac=0,rc=0,Ql=!1,ec=0,Fu=!1,Ua,Kp=0,ja=[];function zi(e,t){dT();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,r=a.config,u=r.generalRule.mouseHoverHoldKey==="Off",o=r.generalRule.mouseHoverHoldKey==="Auto",i=St(m=>{if(Ql==!1&&Math.abs(m.clientX-ac)+Math.abs(m.clientY-rc)>3&&(ec<2?ec+=1:Ql=!0),ac=m.clientX,rc=m.clientY,o||Fu&&!Ua){let g=Xp(a.rule,t);if(g){if(uc(g))return;Vp(a,g)}}},o?700:300),s=m=>{let g=m.target;uc(g)||Vp(a)},l=m=>{let g=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",p=Ne.getPressedKeyCodes();if(p.length>1&&Ne[g]&&(Kp=Date.now(),Fu=!1),p.length===1&&Ne[g]){let f=Date.now();Fu=!0,Ua&&clearTimeout(Ua),Ua=setTimeout(()=>{let S=Kp-f;S>0&&S<=150?Fu=!1:s(m),Ua=void 0},150)}};if(ja.push(()=>{Ua&&clearTimeout(Ua)}),u)return;tc("mousemove",i,t),ja.push(()=>{t.removeEventListener("mousemove",i)});function c(){Ql=!1,ec=0,i.cancel()}if(o)tc("blur",c,t),ja.push(()=>{t.removeEventListener("blur",c)});else{let m=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];tc("keyup",Gp,t),ja.push(()=>{t.removeEventListener("keyup",Gp)}),g.includes(m)?Ne("*","mouseHover",l):Ne(r.generalRule.mouseHoverHoldKey,"mouseHover",s),Ne.setScope("mouseHover"),ja.push(()=>{Ne.deleteScope("mouseHover")})}}function dT(){ja.forEach(e=>e()),ja=[]}function Gp(e){Fu=!1}function tc(e,t,n=window){return n.addEventListener(e,t,{signal:cT})}function Vp(e,t,n=window){if(t=t||Xp(e.rule,n),!t){P.debug("can not find selection part!");return}if(uc(t)){P.debug("exclude dom");return}w3(e,t);let a=yi();a?.currentUrl!==window.location.href&&(ba(),Cl(e)),a&&(a.setupMouseHoverListener=zi);let r=ln(e);r.excludeSelectors=[],r.selectors=[];let u=!1;ma({id:a.id,container:t,filterRule:r,force:!0,onParagraph:o=>{Du(a,o,!0).then(i=>{if(i&&!u){u=!0;let s=Date.now();mt(hg,s),nt("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function Xp(e,t){return gT(ac,rc,e,t)}function gT(e,t,n,a){let r=Vg(e,t,n,a);if(r==null)return;let u=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=Jg(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:Yp(l,n)},o=()=>{try{r.setStartBefore(r.startContainer),r.setEndAfter(r.startContainer)}catch(l){P.debug("get mouse over word fail",l)}let s=r.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let r={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},u=0,o=Date.now();Hi&&self.removeEventListener("keydown",Hi),Hi=i,self.addEventListener("keydown",Hi);function i(l){if(Br)return;let c=l,m=c.target||c.srcElement,g=m?.tagName;(m?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(DT(l,r.triggerKey,r.codePrefixAlias)?s(l):u=0)}function s(l){Date.now()-o=r.triggerTimes&&(hT(e,r),u=0)}}function mT({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],r=n[e]||[];r.includes(e)||r.unshift(e);for(let u of r){let o=t.map(i=>{let s=u+i;return r.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function Zp(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Rr;function pT(e){let t=e.parentElement;if(!t)return;Rr=document.createElement("div"),Rr.className=X+"-input",Rr.innerHTML=`
`,t.appendChild(Rr);let n=t,a=!1;do{let r=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(r)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function fT(){Rr&&Rr.remove()}async function hT(e,t){if(!Br)try{let m=function(){o=e.config.inputTargetLanguage;let p=u.split(" ")[0];p&&p[0]&&(p=p[0].toLowerCase()+p.slice(1)),p.trim()&&t.flatAlias.includes(p)?(o=Zp(p,t.codeAlias),r=u.slice(p.length+1)):r=u},g=function(){o="";let p=mT(t),f=u.split(p);if(f.length<2)return;if(r=f[f.length-1],a=f[0],f.length>2){let k=u.lastIndexOf(r),h=u.slice(0,k).lastIndexOf(f[f.length-2]);a=u.slice(0,h+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let S=u.slice(a.length+1,u.indexOf(r)).trim();if(o=Zp(S,t.codeAlias),!o){P.warn("not found alias",S);return}},n=document.activeElement;Br=!0,pT(n);let a="",r="",u=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?m():(g(),o||m()),ST(e);let i=bT(r,t),s=await Pn(e,i);P.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;mt(bg,Date.now());let c=await ha(l,e);AT(n,a+c.text),Br=!1}catch(n){throw Br=!1,n}finally{Br=!1,fT()}}function bT(e,t){let{triggerTimes:n,triggerKey:a}=t,r=0,u=" ";a.length==1?(r=n,u=a):a.toLowerCase()=="space"&&(r=n);let o=e.length;for(let i=e.length-1;i>=e.length-r;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],u].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function yT(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function Qp(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function za(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function TT(e,t,n){await za(10);let a=new DataTransfer;e.forEach(r=>{r==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await za(10)}async function ET(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await za(10))}async function xT(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await za(20),(t.value||t.value==="")&&(t.value=e.text)}async function CT(e,t){tf(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await za(20))}var vT=[TT.bind(null,["plain"])];function wT(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function tf(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function kT(e){if(tf(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function AT(e,t){await kT(e),await za(50);let n=yT(t,e);wT(e),P.debug("clearContnet",_u(e)),await za(50);for(let a of[...vT,CT,xT,ET])if(await a(n,e),P.debug("setContent",a.name,Qp(n,e),_u(e),n),Qp(n,e))break}function ST(e){nt("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function DT(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let r="";e&&e.key&&(r=e.key.toLowerCase());let u=e.keyCode,o=n[t]||[];return u===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(r)||a===t||r===t)}async function uf(e){if(Ma().any||!e.rule.enableSearchEnhancement||!/https:\/\/www\.google\..+\/search/.test(e.url))return;let t=_T(e.url);if(!t)return;let n=await Pn(e,t);if(nt("detect_search_action",[{name:"detect_search_action"}],{...e,sourceLanguage:n}),!["zh-CN","zh-TW"].includes(n))return;P.debug("use dual search");let a=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")a=!0;else if(!rf(document.body))return;let u=document.querySelector(e.rule.searchEnhancementSelector);if(!u){let o=document.querySelector("#rcnt");if(!o)return;let i=o.children;if(i&&i.length>1)u=i[1];else{let s=i[0];u=document.createElement("div"),u.id="rhs",u.style.maxWidth="372px",u.style.marginLeft="50px",o.insertBefore(u,s.nextSibling)}}if(a||rf(document.body)){P.debug("find story");let o=await BT(e,t,n);P.debug("enKeyword",o);let i=await PT(o);if(P.debug("news list",i),i&&i.length<=0)return;let s=await FT(i,t,o);if(!s)return;nt("show_search_enhancement",[{name:"show_search_enhancement"}],{...e,sourceLanguage:"search_enhancement"}),LT(e,s,n),u.insertBefore(s,u?.firstChild)}}async function LT(e,t,n){let a=t.querySelectorAll('[translate="true"]');return RT(e,[...a],n),t}async function PT(e){let n=(await ue({url:MT(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,r=new DOMParser().parseFromString(n,"text/xml"),u=[],o=r.querySelectorAll("item");for(let i=0;i\u82F1\u6587\u641C\u7D22 ${n} \u7684\u76F8\u5173\u65B0\u95FB:
-
${u}
`,{ADD_ATTR:["target"]});let i=a.querySelector(`.${X}-search-more`);return i&&(i.onclick=()=>{let s=a.querySelector(`.${X}-expand-items`);s.style.display=="none"?(s.style.display="block",i.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(nf(n))}),a}function af(e){return e.map((t,n)=>{let a=t.title||"",r=t.source||"",u=a.split("-");return u.length>1&&(r=u[u.length-1].trim(),u=u.slice(0,u.length-1)),a=u.join("-"),a=a.trim(),`
${r}
`}function Ip(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:r,pageHeight:u,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(r*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(r*o)+1).toFixed(2)}%`:"auto",m=`${(l.left*100/(r*o)).toFixed(2)}%`,g=`${(l.top*100/(u*o)).toFixed(2)}%`,p=No()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,A=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${m};top: ${g};width:${c};max-width:${s};`,!p&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let k=Kl(l.str)?"":"translate-pending",h=l.str;l.translateStatus=="success"&&(h=l.translatedStr,k=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${h}

`),t.push("
")})}function iT(e,t){let{pageWidth:n,pageHeight:a,scale:r}=e,u=t[0][0],o=u.width,i=u.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let l=`${(o*100/(n*r)).toFixed(2)}%`,c=`${(u.left*100/(n*r)).toFixed(2)}%`,m=`${(u.top*100/(a*r)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${m};height:${s-i}px;overflow:auto;`}function sT(e,t){let n=[];return t.forEach((a,r)=>{if(r==0){n.push([a]);return}let u=n[n.length-1][0];if(e.prevLineP=u,Jl(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function lT(e,t){let n=[];return t.forEach((a,r)=>{if(r==0||a.length>1){n.push([a]);return}let u=n[n.length-1];if(e.prevGroup=u[u.length-1],kp(e,a)){u.push(a);return}n.push([a])}),n}var Up="immersive-translate",_r,Kn=[];async function Hp(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(st("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await jp(1);await ji(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Kn=[],_r=void 0,pT(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let r=await jp(a);await ji(e,r||[])})}}function cT(e){if(_r)return{..._r,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let u=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(u),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return _r={...i},i}async function jp(e){let t=cT(e);if(!t)return;Kn[e]||(Kn[e]=await dT(t,e,Kn[e-1]||[]));let n=Kn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),r=document.querySelector(`.${Up}-page[data-page-number="${e}"]`);if(!a||r)return;r=document.createElement("div"),r.setAttribute("style",a.getAttribute("style")||""),r.setAttribute("data-page-number",e+""),r.classList.add("page"),r.classList.add(`${Up}-page`);let u=Np(t,n);return r.innerHTML=_e.sanitize(u,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(r):a.parentNode?.insertBefore(r,a.nextSibling),n}async function dT(e,t,n){let a=await e.pdfDocument.getPage(t),r=await a.getTextContent(),[u,o,i,s]=a._pageInfo.view;_r.pageWidth=i,_r.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=mT(e,r);e.origLineParagraphs=l;let{prevP:c,curP:m}=wp(e,l);return m&&Wp(c,void 0,m),gT(e,l)}function gT(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,Dp(e,o)){if(Lp(e,o)){u(l,o);return}if(Mp(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},u(l,o);return}if(Fp(e,o)){u(l,o);return}if(Gl(e,o)){u(l,o);return}if(_p(e,o)){u(l,o),o.left{let o=u.str;if(!o.trim())return;let i=u.transform[4],s=u.transform[5],l=u.width*n,c=t.styles[u.fontName].fontFamily,m=u.transform[3]||u.height,g=t.styles[u.fontName].descent,f=(1+(1-t.styles[u.fontName].ascent)+g)*m;isNaN(f)&&(f=m);let A=i*n,k=A+l,h=(a-s-f)*n,S=h+m*n,_=S+m*n*.2,B=k+m*n*.3,L={str:o,left:A,nextLeft:B,top:h,nextTop:_,id:`pageNum-${Zt()}`,width:l,originFontName:u.fontName,fontName:c,fontSize:m,right:k,bottom:S,attachList:[],mergedTimes:0,translatedStr:""};if(r.length==0)r.push(L);else{let v=r[r.length-1];if(e.prevLineP=v,Bp(e,L)){Sp(e,L)?v.str+=o:v.str+=" "+o,v.right=k,v.fontName=c,v.width=Math.max(v.width+l,k-v.left),v.nextLeft=B;return}if(Rp(e,L)){v.width=Math.max(v.width+l,k-v.left),v.right=k,v.nextLeft=B,v.attachList.push(L);return}r.push(L)}}),r}function Wp(e,t,n){if(!Ui(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function pT(e){setTimeout(()=>{let t="";for(let n=1;n<=Kn.length;n++){let a=!1;if(Kn[n]){for(let r=0;r1e3){a=!0;break}}if(a)break}}lt({text:t}).then(n=>{st("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var Na={};async function Xl(e){let n=[...document.querySelectorAll(".source-text")].map(r=>r.textContent).join(""),a=await bn(e,n,1e3);return sn(a),a}async function $p(e){Nt("Translating");let t=Pn(),n=yr(),a=[...document.querySelectorAll(".source-text")];if(ai(e,t))return;let r=a.filter(u=>u.innerText?.trim()).map((u,o)=>{let i=u.parentElement?.parentElement?.querySelector(".target-text");return it(u,"id",o+""),i&&(Tr(i,o)?.remove(),i.appendChild(ku(e,o))),{text:u.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=Tr(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),u?(c.innerHTML=_e.sanitize(`${u.message}`),Na[s]={ok:!1,sentence:i}):o&&(c.innerHTML=_e.sanitize(o.text),Na[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Nt("Translated")}}async function qp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Na),n=[],a=[];for(let r of t){let u=Na[r];if(!u.ok){let i=document.querySelector(`#error-id-${r}`);if(i){let s=i.parentElement;i.remove(),s&&(delete Na[r],s.appendChild(ku(e,r)),a.push(u.sentence))}}}try{await _n({sentences:a},e,(r,u,o)=>{let i=o.id,s=Tr(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),r?(l.innerHTML=_e.sanitize(`${r.message}`),Na[i]={ok:!1,sentence:o}):u&&(l.innerHTML=_e.sanitize(u.text),Na[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Nt("Translated")}}function Zl(){Nt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Ql={};async function Kp(e){let t=[...document.querySelectorAll("iframe")],n="";for(let r of t){let u=r.contentDocument;if(!u)continue;let o=u.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await bn(e,n,1e3);return sn(a),a}async function Vp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Ql),n=[];for(let a of t){let r=Ql[a];if(r.error){let o=r.commonAncestorContainer.querySelector(`[${wo}='${a}']`);o&&o.remove(),n.push(r)}}try{await pi(n,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}function Gp(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+rn);for(let r of a)r.remove()}Nt("Original")}async function Jp(e){Nt("Translating");let t=Zt(),n=[...document.querySelectorAll("iframe")],a=[],r=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ua(s,e);let l=s.body;if(!l)continue;let c=ln(e);c.isModifyImage=!1,ma({id:t,container:l,filterRule:c,onParagraph:m=>{a.push(m)}})}let u=ni(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=di(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:u,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await Tl(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:u,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(r.push(l),Ql[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await pi(r,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}var fT=new AbortController,{signal:hT}=fT,rc=0,uc=0,ec=!1,tc=0,Fu=!1,Ua,Yp=0,ja=[];function zi(e,t){bT();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,r=a.config,u=r.generalRule.mouseHoverHoldKey==="Off",o=r.generalRule.mouseHoverHoldKey==="Auto",i=St(m=>{if(ec==!1&&Math.abs(m.clientX-rc)+Math.abs(m.clientY-uc)>3&&(tc<2?tc+=1:ec=!0),rc=m.clientX,uc=m.clientY,o||Fu&&!Ua){let g=tf(a.rule,t);if(g){if(oc(g))return;Zp(a,g)}}},o?700:300),s=m=>{let g=m.target;oc(g)||Zp(a)},l=m=>{let g=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",p=Ne.getPressedKeyCodes();if(p.length>1&&Ne[g]&&(Yp=Date.now(),Fu=!1),p.length===1&&Ne[g]){let f=Date.now();Fu=!0,Ua&&clearTimeout(Ua),Ua=setTimeout(()=>{let A=Yp-f;A>0&&A<=150?Fu=!1:s(m),Ua=void 0},150)}};if(ja.push(()=>{Ua&&clearTimeout(Ua)}),u)return;nc("mousemove",i,t),ja.push(()=>{t.removeEventListener("mousemove",i)});function c(){ec=!1,tc=0,i.cancel()}if(o)nc("blur",c,t),ja.push(()=>{t.removeEventListener("blur",c)});else{let m=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];nc("keyup",Xp,t),ja.push(()=>{t.removeEventListener("keyup",Xp)}),g.includes(m)?Ne("*","mouseHover",l):Ne(r.generalRule.mouseHoverHoldKey,"mouseHover",s),Ne.setScope("mouseHover"),ja.push(()=>{Ne.deleteScope("mouseHover")})}}function bT(){ja.forEach(e=>e()),ja=[]}function Xp(e){Fu=!1}function nc(e,t,n=window){return n.addEventListener(e,t,{signal:hT})}function Zp(e,t,n=window){if(t=t||tf(e.rule,n),!t){P.debug("can not find selection part!");return}if(oc(t)){P.debug("exclude dom");return}D3(e,t);let a=yi();a?.currentUrl!==window.location.href&&(ba(),wl(e)),a&&(a.setupMouseHoverListener=zi);let r=ln(e);r.excludeSelectors=[],r.selectors=[];let u=!1;ma({id:a.id,container:t,filterRule:r,force:!0,onParagraph:o=>{Du(a,o,!0).then(i=>{if(i&&!u){u=!0;let s=Date.now();mt(xg,s),st("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function tf(e,t){return yT(rc,uc,e,t)}function yT(e,t,n,a){let r=Zg(e,t,n,a);if(r==null)return;let u=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=Qg(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:ef(l,n)},o=()=>{try{r.setStartBefore(r.startContainer),r.setEndAfter(r.startContainer)}catch(l){P.debug("get mouse over word fail",l)}let s=r.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let r={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},u=0,o=Date.now();Hi&&self.removeEventListener("keydown",Hi),Hi=i,self.addEventListener("keydown",Hi);function i(l){if(Br)return;let c=l,m=c.target||c.srcElement,g=m?.tagName;(m?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(BT(l,r.triggerKey,r.codePrefixAlias)?s(l):u=0)}function s(l){Date.now()-o=r.triggerTimes&&(CT(e,r),u=0)}}function TT({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],r=n[e]||[];r.includes(e)||r.unshift(e);for(let u of r){let o=t.map(i=>{let s=u+i;return r.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function nf(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Rr;function xT(e){let t=e.parentElement;if(!t)return;Rr=document.createElement("div"),Rr.className=X+"-input",Rr.innerHTML=`
`,t.appendChild(Rr);let n=t,a=!1;do{let r=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(r)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function ET(){Rr&&Rr.remove()}async function CT(e,t){if(!Br)try{let m=function(){o=e.config.inputTargetLanguage;let p=u.split(" ")[0];p&&p[0]&&(p=p[0].toLowerCase()+p.slice(1)),p.trim()&&t.flatAlias.includes(p)?(o=nf(p,t.codeAlias),r=u.slice(p.length+1)):r=u},g=function(){o="";let p=TT(t),f=u.split(p);if(f.length<2)return;if(r=f[f.length-1],a=f[0],f.length>2){let k=u.lastIndexOf(r),h=u.slice(0,k).lastIndexOf(f[f.length-2]);a=u.slice(0,h+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let A=u.slice(a.length+1,u.indexOf(r)).trim();if(o=nf(A,t.codeAlias),!o){P.warn("not found alias",A);return}},n=document.activeElement;Br=!0,xT(n);let a="",r="",u=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?m():(g(),o||m()),_T(e);let i=wT(r,t),s=await bn(e,i);P.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;mt(Eg,Date.now());let c=await ha(l,e);FT(n,a+c.text),Br=!1}catch(n){throw Br=!1,n}finally{Br=!1,ET()}}function wT(e,t){let{triggerTimes:n,triggerKey:a}=t,r=0,u=" ";a.length==1?(r=n,u=a):a.toLowerCase()=="space"&&(r=n);let o=e.length;for(let i=e.length-1;i>=e.length-r;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],u].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function vT(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function af(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function za(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function kT(e,t,n){await za(10);let a=new DataTransfer;e.forEach(r=>{r==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await za(10)}async function AT(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await za(10))}async function ST(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await za(20),(t.value||t.value==="")&&(t.value=e.text)}async function DT(e,t){uf(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await za(20))}var LT=[kT.bind(null,["plain"])];function PT(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function uf(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function MT(e){if(uf(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function FT(e,t){await MT(e),await za(50);let n=vT(t,e);PT(e),P.debug("clearContnet",_u(e)),await za(50);for(let a of[...LT,DT,ST,AT])if(await a(n,e),P.debug("setContent",a.name,af(n,e),_u(e),n),af(n,e))break}function _T(e){st("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function BT(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let r="";e&&e.key&&(r=e.key.toLowerCase());let u=e.keyCode,o=n[t]||[];return u===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(r)||a===t||r===t)}async function lf(e,t,n){return(await ha({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}function RT(e,t,n,a){let r=[],u="en";for(let o of n)r.push({text:o.textContent||"",id:r.length,from:u,to:a,url:"https://google.com",fromByClient:u});return new Promise((o,i)=>{_n({sentences:r},{...e,translationService:"google"},(s,l,c)=>{if(s)return o([]);let m=l?.id||0,g=n[m];g&&g.className==X+"-search-title-wrapper"&&(g.innerHTML+=_e.sanitize(`
${l?.text}
`,{ADD_ATTR:["target"]}))})})}function Wi(e,t,n){t&&st(t.key,[{name:t.key}],{...e,sourceLanguage:t.sourceLanguage||n})}function ic(e,t,n,a){let r=n.querySelectorAll('[translate="true"]');return RT(e,t,[...r],a),n}async function sc(e,t){let a=(await ue({url:IT(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,u=new DOMParser().parseFromString(a,"text/xml"),o=[],i=u.querySelectorAll("item");for(let s=0;s${e.cancelDescription}
`:""} +

\u82F1\u6587\u641C\u7D22 + ${n} \u7684\u76F8\u5173\u65B0\u95FB:
+

+
${o}
+ + `.replaceAll(` +`,""),{ADD_ATTR:["target"]});let l=r.querySelector(`.${X}-search-more`);return l&&(l.onclick=()=>{let c=r.querySelector(`.${X}-expand-items`);c.style.display=="none"?(c.style.display="block",l.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(of(n))}),r}function sf(e,t){let n=e.style;return t.map((a,r)=>{let u=a.title||"",o=a.source||"",i=u.split("-");return i.length>1&&(o=i[i.length-1].trim(),i=i.slice(0,i.length-1)),u=i.join("-"),u=u.trim(),`
${o}
+
+ ${a}
${Jm(t.pubDate||"")}
+ >${u} +
+
${Qm(a.pubDate||"")}
`}).join(` -`)}function rf(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}function _T(e){let n=new URL(e).searchParams.get("q");return n||""}async function BT(e,t,n){return(await ha({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}async function RT(e,t,n){let a=[],r="en";for(let u of t)a.push({text:u.textContent||"",id:a.length,from:r,to:n,url:"https://google.com",fromByClient:r});return new Promise((u,o)=>{_n({sentences:a},{...e,translationService:"google"},(i,s,l)=>{if(i)return u([]);let c=s?.id||0,m=t[c];m&&m.className==X+"-search-title-wrapper"&&(m.innerHTML+=Ie.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}var Ce=null,Wi={},Or,$i;async function Ri(){if(Ke()==="Original"){let e={};$i&&(e.translationMode=$i),Or&&(e.translationTheme=Or),Ce&&(e={...Ce.state,...e}),await jt(vt(),e),await En(Ce)}else(Ke()==="Translated"||Ke()==="Error")&&Ha()}async function Oi(){if(Ce=await jt(vt(),{}),Ce.rule.isEbookBuilder)return Wp(Ce);if(Ce.rule.isSubtitleBuilder)return zp(Ce);A3()}async function Ii(){if(Ke()==="Original")Ce=await jt(vt(),{}),Or||(Or=Ce.state.translationTheme),Ce=await jt(vt(),{translationTheme:"mask"}),await En(Ce);else if(Ke()==="Translated"){let e=Km().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[Ce.mainFrame,...e],n=Ce?.state.translationTheme;for(let a of t){let r=sr(a,rr,!0);n==="mask"?r!=="none"?st(a,rr,"none",!0):st(a,rr,"mask",!0):r!=="mask"?st(a,rr,"mask",!0):st(a,rr,"none",!0)}}}async function oc(){let e=await jt(vt(),{});return e.rule.isSubtitleBuilder?Yl(e):k3(e)}function OT(e){Ke()==="Original"?jp(e):Xl()}function IT(e){Ke()==="Original"?Ti(e):ba()}async function Ha(){let e=await jt(vt(),{});if(e.rule.isSubtitleBuilder){Xl();return}else e.rule.isEbookBuilder&&$p();ba()}async function En(e){if(Ke()!=="Original"&&await Ha(),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Wi[e.translationService]||(Wi[e.translationService]=!0,Ct()||sc(e).catch(t=>{P.warn("init translation engine error",t)})),nt("translage_page_daily",[{name:"translage_page_daily"}],e),nt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:Ln()}),e.rule.isSubtitleBuilder)return OT(e);if(e.rule.isEbookBuilder)return qp(e);e.rule.isPdf||IT(e)}async function of(){Ke()==="Original"?await qi():(Ke()==="Translated"||Ke()==="Error")&&(Ce=await jt(vt(),{}),Ce.state.translationArea!=="main"?await qi():Ha())}async function qi(){Ce=await jt(vt(),{translationArea:"main"}),await En(Ce)}async function ic(){Ce=await jt(vt(),{translationArea:"body"}),await En(Ce)}async function Ni(){if(Ke()==="Original"){let e=await jt(vt(),{translationMode:"translation"});await En(e)}else(Ke()==="Translated"||Ke()==="Error")&&await Ha()}async function sf(e){if(Ce=await jt(vt(),{}),nt("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...Ce,sourceLanguage:"unknown"}),Ke()==="Original"){En(Ce);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function lf(){if(Ke()==="Original")await ic();else if(Ke()==="Translated"||Ke()==="Error"){let e={};Ce&&Ce.state&&(e=Ce.state),Ce=await jt(vt(),e),Ce.state.translationArea!=="body"?(Ce.state.translationArea="body",Ce=await jt(vt(),Ce.state),await En(Ce)):Ha()}}async function cf(){Ce=await jt(vt(),{translationStartMode:"immediate"}),await En(Ce)}async function mp(){let e=await jt(vt(),{});if(P.debug("init page ctx",e),e.rule.isSubtitleBuilder){Yl(e);return}if(e.rule.isEbookBuilder){Hp(e);return}if(e.rule.isPdf){await Np(e);return}if(uf(e),$i||($i=e.state.translationMode),Or||(Or=e.state.translationTheme),e.rule.urlChangeDelay&&await Qn(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await NT(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=gf(),r=document.createElement("meta");r.name="immersive-translate-options-url",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){P.warn("inject options url failed",u)}}if(e.rule.isInjectVersion){let a=da(),r=document.createElement("meta");r.name="immersive-translate-version",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){P.warn("inject version failed",u)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(r=>{let u=document.createElement("meta");u.name=r,u.content=e.rule.globalMeta[r],document.head.appendChild(u)}),e.rule.initialGlobalAttributes&&Zm(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await oc():sn(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(P.debug(`detect page language: ${e.url} ${t}`),sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||zm(t,e.config.translationLanguagePattern)&&(n=!0,P.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&_a()&&zi(e,window),n)Ce.state.isAutoTranslate=!0,En(Ce);else if(P.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Wi[e.translationService]||(Wi[e.translationService]=!0,Ct()||sc(e).catch(a=>{P.warn("init translation engine error",a)})))}}async function jt(e,t){let n=Object.keys(t);if(Ce){let a={url:e,config:Ce.config,state:{...Ce.state,...t}};Ce=await wt(a)}else{let a=await Tn(),r=t;n.length===0&&(r=void 0),Ce=await wt({url:e,config:a,state:r})}return Ce}async function df(){let e=await Tn(),t;Ce&&Ce.state&&(t=Ce.state);let n={url:vt(),config:e,state:t},a=await wt(n);Ce=a;let r=yi(),u=[];return r?u=r.allInlineWindows||[window]:u=[window],u.forEach(o=>{dp(a,o),_a()&&zi(a,o),ef(a)}),a}function NT(e,t=3e3){return new Promise((n,a)=>{let r=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,u=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(u),r&&clearTimeout(r),n(null))},50)})}var Bu=new Map,Wa=class{constructor(t,n=!1){this.logger=new hu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),z.runtime.onMessage.addListener((a,r,u)=>{let o=a.from,i=a.to,s,l,c;r.tab&&r.tab.id&&(s=r.tab.id,o=`${o}:${s}`,l=r.tab.url,c=r.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let m=cc(i),{type:g,name:p}=m;if(g!==t)return!1;let f=cc(o),k=Bu.get(g).get(p);if(!k)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:h,sync:A}=k,_={type:t,name:f.name,id:s,url:l,active:c};if(A){try{let B=h(a.payload,_);u({ok:!0,data:B})}catch(B){u({ok:!1,errorName:B.name,errorMessage:B.message,errorDetails:B.details})}return!1}else return h(a.payload,_).then(B=>{u({ok:!0,data:B})}).catch(B=>{u({ok:!1,errorName:B.name,errorMessage:B.message,errorDetails:B.details})}),!0}))}getConnection(t,n,a){let r=!1;a&&a.sync&&(r=!0);let u=this.fromType,o=Bu.get(u);if(o.has(t))return o.get(t).connectionInstance;{let i=new lc(`${u}:${t}`,this.logger);return Bu.get(u).set(t,{messageHandler:n,sync:r,connectionInstance:i}),i}}},lc=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=cc(t),{type:r,id:u}=a;if(r!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await z.runtime.sendMessage(o);return mf(o,i,this.logger)}catch(i){if(r==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await z.tabs.sendMessage(u,o);return mf(o,i,this.logger)}}};function mf(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new gt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new gt("noResponse","Unknown error")}function cc(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Lr=async function(e,t){let{method:n,data:a}=e,r=await df(),u=Date.now();P.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await ic(),mt(jn,u)):n==="translateTheMainPage"?(await qi(),mt(jn,u)):n==="translateToThePageEndImmediately"?(await cf(),mt(jn,u)):n==="toggleTranslatePage"?(await Ri(),mt(jn,u)):n==="toggleTranslateTheWholePage"?(await lf(),mt(jn,u)):n==="toggleTranslateTheMainPage"?(await of(),mt(jn,u)):n==="toggleOnlyTransation"?(await Ni(),mt(jn,u)):n==="translatePage"?(await En(r),mt(jn,u)):n==="toggleTranslationMask"?await Ii():n==="restorePage"?Ha():n==="setCurrentPageLanguageByClient"?sn(a):n==="retryFailedParagraphs"?Oi():n==="switchTranslationMode"&&a&&a.mode&&sf(a.mode)},UT=function(e,t){let{method:n,data:a}=e;if(P.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ke();if(n==="getCurrentPageLanguage"){let r=Ln();return oc().catch(u=>{P.warn("detectCurrentPageLanguage failed",u)}),r}},Ki,Gi;function pp(){let e=Vi();Ct()||jT(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Vi(){return Ki||(Ki=new Wa("content_script",!1).getConnection("main",Lr),Ki)}function jT(){return Gi||(Gi=new Wa("content_script",!1).getConnection("main_sync",UT,{sync:!0}),Gi)}var zT=new Map;function pf(e){let t=HT(64),n=new CustomEvent(gg,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,r)=>{zT.set(t,(u,o)=>{u?r(u):a(o)})})}function HT(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r{})}function ff(e){return le()?Z0(e):at({method:"queryParagraphCache",data:e})}async function hf(e){if(le()){await X0(e);return}return at({method:"setParagraphCache",data:e})}async function bf(){if(le())return Promise.resolve();await at({method:"mockRequest"})}function Ai(e=!1,t=""){return le()?(z.runtime.openOptionsPage(e,t),Promise.resolve()):at({method:"openOptionsPage"})}function gf(e=""){return le()||Dt()?tt().OPTIONS_URL:z.runtime.getURL("options.html")}function z3(e=""){return z&&z.runtime&&z.runtime.getURL?z.runtime.getURL("options.html"):""}function Si(e=!1){return le()?(z.extra.openAboutPage(e),Promise.resolve()):at({method:"openAboutPage"})}function bp(e=!1){return le()?(z.extra.openSearchEnhancement(e),Promise.resolve()):at({method:"openSearchEnhancement"})}function Di(e=!1){return le()?(z.extra.openEbookViewerPage(e),Promise.resolve()):at({method:"openEbookViewerPage"})}function V3(e=!1){return le()?Promise.resolve():at({method:"openHtmlViewerPage"})}function Li(e=!1){return le()?(z.extra.openEbookBuilderPage(e),Promise.resolve()):at({method:"openEbookBuilderPage"})}function yp(e){Dt()}function _l(e=!1){return le()?(alert("it's not support in userscript"),Promise.resolve()):at({method:"openPdfViewerPage"})}function J3(e=!1){return le()?(z.extra.openSubtitleBuilderPage(e),Promise.resolve()):at({method:"openSubtitleBuilderPage"})}function K3(){return le()?(P.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):at({method:"autoSyncLatestConfig"})}var ye=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:r}=t,u=[],o=null,i=new Set;for(let k of r)k.from&&k.from!=="auto"&&i.add(k.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{u=fm(r,l,c)}catch(k){if(a)for(let h=0;hk));let m=[],g=[],p=(k,h,A)=>{let _=h.translatedTexts[0];g[k]||(g[k]=h,g[k].translatedTexts=Array(h.sentenceTotalParts).fill(null)),g[k].translatedTexts[h.partIndex]=_;let B=g[k],L=0;for(let w=0;w{let B=await R3(this.translationOptions.translationService);await Qn(B||0);let L=h.from;if(s&&(L="auto"),h.fromByClient&&h.fromByClient!=="auto"&&(L=h.fromByClient),this.isSupportList)return{...await this.translateList({text:h.tempSentences.map(y=>y.text),from:L,to:h.to,url:A,options:n}),sourceTempSentences:h.tempSentences};{let w=wg;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(w=this.serviceConfig.translationTextSeparator);let y=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(y=this.serviceConfig.newlinePlaceholderDelimiters);let T="";y&&y.length>=2?T=h.tempSentences.map((O,M)=>M===h.tempSentences.length-1?O.text:O.text+y[0]+(M+1)+y[1]).join(""):T=h.tempSentences.map(O=>O.text).join(w);let b=await this.translate({text:T,from:L,to:h.to,url:A,options:n}),{text:E}=b,R=[];if(y&&y.length>=2){let O=`${y[0]}\\d+${y[1]}`;y&&y.length>=3&&(O=y[2]);let M=new RegExp(O,"g");R=E.split(M)}else R=E.split(w);let D=[];if(R.length>h.tempSentences.length){for(let O=0;O{let{text:L,sourceTempSentences:w}=B;for(let y=0;y{if(a){for(let L=0;L({...k.sentence,text:k.translatedTexts.join("")}))}}detectLanguageLocally(t){return lt({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ye.langMap=new Map;var yf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],xn=class extends ye{constructor(n,a,r){super(n,a,r);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),r=`${n.getUTCMonth()+1}`.padStart(2,"0"),u=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${r}-${u}`}async translate(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:xn.langMap.get(r)||"auto",SourceText:a,Target:xn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:xn.langMapReverse.get(i.Response.Source)||r,to:xn.langMapReverse.get(i.Response.Target)||u}}async translateList(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:xn.langMap.get(r)||"auto",SourceTextList:a,Target:xn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:xn.langMapReverse.get(i.Response.Source)||r,to:xn.langMapReverse.get(i.Response.Target)||u}}async signedRequest({secretId:n,secretKey:a,action:r,payload:u,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),m=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await yn(u)].join(` -`),g=xn.getUTCDate(l),p=["TC3-HMAC-SHA256",c,`${g}/${o}/tc3_request`,await yn(m)].join(` -`),f=await l3(g,`TC3${a}`),S=await li(o,f),k=await li("tc3_request",S),h=await li(p,k),A=await ue({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":r,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${h}`},body:u});if(A instanceof Error)throw A;if(A.Response&&A.Response.Error&&A.Response.Error.Message)throw new Error(A.Response.Error.Message);return A}},$a=xn;$a.langMap=new Map(yf),$a.langMapReverse=new Map(yf.map(([n,a])=>[a,n]));var Tf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],WT={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Ji=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=new URLSearchParams({source:r,target:u,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await ue({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:WT});return{text:i.targetText,from:Ji.langMapReverse.get(i.source)||r,to:Ji.langMapReverse.get(i.target)||u}}},qa=Ji;qa.langMap=new Map(Tf),qa.langMapReverse=new Map(Tf.map(([n,a])=>[a,n]));var Ef=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],xa=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=xa.langMap.get(r)||"auto",i=xa.langMap.get(u)||u,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:xa.langMapReverse.get(s.data[2])||"auto",to:u}}async translateXml(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=xa.langMap.get(r)||"auto",i=xa.langMap.get(u)||u,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:xa.langMapReverse.get(s.data[2])||"auto",to:u}}async fetchXmlWithoutToken(n,a,r){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}).toString();return{data:await ue({retry:2,url:o})}}async fetchWithoutToken(n,a,r){let u=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}),o=this.apiUrl+"?"+u.toString();return{data:await ue({retry:2,url:o})}}},Gn=xa;Gn.langMap=new Map(Ef),Gn.langMapReverse=new Map(Ef.map(([n,a])=>[a,n]));function $T(e,t){return t?e+(t-e%t):e}function qT(e,t){return e.split(t).length-1}function dc(e){let t=Date.now(),n=1;for(let a of e)n+=qT(a,"i");return $T(t,n)}function KT(e,t){return Math.floor(Math.random()*(t-e+1))+e}function gc(){return KT(1e6,1e8)}var mc="https://www2.deepl.com/jsonrpc",pc="auto",xf=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function GT(e=xf){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function fc(e){return GT()[e.toLowerCase()]}var VT={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function JT(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function YT(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function XT(e,t,n,a,r,u,o){let i=gc(),s=YT(a,n),l=[];t.forEach(g=>{l.push({text:g,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=dc(t);let c=await ue({retry:2,method:"POST",url:e,body:JT(s),headers:VT}),m={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{m.text.push(g.text)}),m}async function Cf(e,t,n,a=pc,r,u,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:XT(e,t,fc(n),fc(a)??"auto",r,u,o):{text:[],from:a,to:n}}var vf=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Ir=class extends ye{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=mc;n&&n.apiUrl&&(this.API_URL=on(mc,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:r,from:u}=n,o=await Cf(this.API_URL,a,Ir.langMap.get(r)||r,Ir.langMap.get(u)||"auto");return{text:o.text,from:Ir.langMapReverse.get(o.from),to:Ir.langMapReverse.get(o.to)}}},Ca=Ir;Ca.langMap=new Map(vf),Ca.langMapReverse=new Map(vf.map(([n,a])=>[a,n]));var wf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],hc="https://transmart.qq.com/api/imt",Ka=class extends ye{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:r}=n,u=await this.detectLanguage(a),o=Ka.langMap.get(u)||u,i=Ka.langMap.get(r)||r;if(u===r)return{text:a,from:u,to:r};let s=tt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=kf());let m=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),g=await ue({url:hc,body:m,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:u||"auto",to:r}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:r,to:u}=n,o=tt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=kf()),r.length===1){let f=await this.translate({from:a,text:r[0],to:u,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(r.join(` -`));if(l===u)return{text:r,from:l,to:u};let c=Ka.langMap.get(l)||l,m=Ka.langMap.get(u)||u,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:r,lang:c,orig_url:i},target:{lang:m},type:"plain"}),p=await ue({url:hc,body:g,method:"POST"});if(p.header.ret_code!=="succ")throw new Error(p.message||p.header.ret_code);return{text:p.auto_translation,from:l||"auto",to:u}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},r=await ue({url:hc,method:"POST",body:JSON.stringify(a)});if(r.header.ret_code!=="succ")throw new Error(r.message||r.header.ret_code);let u=r.language,o=Ka.langMapReverse.get(u);return o||u}},Ga=Ka;Ga.langMap=new Map(wf),Ga.langMapReverse=new Map(wf.map(([n,a])=>[a,n]));function kf(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function Af(){return Math.random()>=0}var Nr=class extends ye{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,r=a.match(/^\s*/)[0].length;return{text:a.slice(0,r)+"\u6A21\u62DF\uFF1A"+a.slice(r,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:r,to:u}=n;if(await bf(),!Af())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:r,to:u,text:[""]}:{from:r,to:u,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var Df=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],bc=new Map(Df),Sf=new Map(Df.map(([e,t])=>[t,e])),yc=class extends ye{constructor(n,a,r){super(n,a,r);this.apikey="";this.codename=yc.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:r,to:u}=n,o=await ue({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:bc.get(r)||"auto",target_lang:bc.get(u)||u})});if(o.status){let i=o;return i.result&&u=="zh-TW",{text:i.result,from:Sf.get(i.source_lang),to:Sf.get(i.target_lang)}}else throw new Error(o.msg)}},Ru=yc;Ru.langMap=bc,Ru.DEFAULT_CODENAME="deepl";var Yi=Ru;var Kt=null,Lf=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Tc=new Map(Lf),ZT=new Map(Lf.map(([e,t])=>[t,e])),Xi=class extends ye{constructor(n,a,r){super(n,a,r);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=on(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=on(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=on(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=on(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(u=>u.trim())}static async clearState(){Kt=null,await z.storage.local.remove(fn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Kt){Kt={};let a=await z.storage.local.get(fn);a&&a[fn]&&(Kt=a[fn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new mo(n,{state:Kt,onFetch:(r,u)=>{let i=new URL(r).pathname;return i==="/refresh_token"||i==="/oidc/token"?Pu({url:r,...u}):ue({url:r,...u})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:r=>{Kt=r,z.storage.local.set({[fn]:Kt})}});await a.updateToken(),Kt=a.getState(),a.getIsStateChanged()&&await z.storage.local.set({[fn]:Kt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:r,text:u}=n,o={source_lang:Tc.get(a)||"",target_lang:Tc.get(r)||r},i=this.getRandomKey(),s=new URLSearchParams(o);u.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let m;if(i.startsWith("immersive_")){let f=new mo(i,{state:Kt,onFetch:(S,k)=>{let A=new URL(S).pathname;return A==="/refresh_token"||A==="/oidc/token"?Pu({url:S,...k}):ue({url:S,...k})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:S=>{Kt=S,z.storage.local.set({[fn]:Kt})}});m=await f.translateApi(l),f.getIsStateChanged()&&(Kt=f.getState(),await z.storage.local.set({[fn]:Kt}))}else m=await ue({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=m,p=g.map(f=>f.text);if(r==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let k=await new Gn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(h=>h.text).join(` +`)}function cf(e,t){if(!e.keyword)return;let n=e.keyword.value||"";for(let a=0;anew RegExp(a.urlMatch).test(t))}async function gf(e){if(Ma().any)return;if(!e.rule.enableSearchEnhancement){P.debug("enable is false");return}let t=OT(e.rule.searchEnhancementConfig||[],e.url);if(!t){P.debug("not found siteConfig",e.url);return}let n=cf(t,e.url);if(!n){P.debug("not found keyword",e.url);return}t.id=="google"?UT(e,t,n):NT(e,t,n)}async function NT(e,t,n){let a=await bn(e,document.title);t.selector&&setTimeout(async()=>{let r=document.querySelector(t.selector);if(!r){P.debug("selector node not found",t.selector);return}let u=await sc(n,t.showCount);if(u&&u.length<=0){P.debug("list not found");return}let o=await lc(t,u,n,t.showCount);if(!o){P.debug("getInseredNode none");return}o.style.cssText=t.style.container||"";let i=t.selectorAction||"appendChild";i=="insertBefore"?r.parentElement?.insertBefore(o,r):i=="appendChild"?r.appendChild(o):i=="replace"&&r?.replaceWith(o),ic(e,t,o,a),Wi(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a)},t.delayTime||0)}async function UT(e,t,n){let a=await bn(e,n);if(Wi(e,{key:"detect_search_action"},a),!["zh-CN","zh-TW"].includes(a))return;P.debug("use dual search");let r=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")r=!0;else if(!df(document.body))return;let o=document.querySelector("#rhs");if(!o){let i=document.querySelector("#rcnt");if(!i)return;let s=i.children;if(s&&s.length>1)o=s[1];else{let l=s[0];o=document.createElement("div"),o.id="rhs",o.style.maxWidth="372px",o.style.marginLeft="50px",i.insertBefore(o,l.nextSibling)}}if(r||df(document.body)){P.debug("find story");let i=await lf(e,n,a);P.debug("enKeyword",i);let s=await sc(i,t.showCount);if(P.debug("news list",s),s&&s.length<=0)return;let l=await lc(t,s,i,t.showCount);if(!l)return;Wi(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a),ic(e,t,l,a),o.insertBefore(l,o?.firstChild)}}function df(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}var Ce=null,$i={},Ir,qi;async function Ri(){if(Ke()==="Original"){let e={};qi&&(e.translationMode=qi),Ir&&(e.translationTheme=Ir),Ce&&(e={...Ce.state,...e}),await jt(wt(),e),await En(Ce)}else(Ke()==="Translated"||Ke()==="Error")&&Ha()}async function Ii(){if(Ce=await jt(wt(),{}),Ce.rule.isEbookBuilder)return Vp(Ce);if(Ce.rule.isSubtitleBuilder)return qp(Ce);P3()}async function Oi(){if(Ke()==="Original")Ce=await jt(wt(),{}),Ir||(Ir=Ce.state.translationTheme),Ce=await jt(wt(),{translationTheme:"mask"}),await En(Ce);else if(Ke()==="Translated"){let e=Ym().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[Ce.mainFrame,...e],n=Ce?.state.translationTheme;for(let a of t){let r=sr(a,rr,!0);n==="mask"?r!=="none"?it(a,rr,"none",!0):it(a,rr,"mask",!0):r!=="mask"?it(a,rr,"mask",!0):it(a,rr,"none",!0)}}}async function cc(){let e=await jt(wt(),{});return e.rule.isSubtitleBuilder?Xl(e):L3(e)}function jT(e){Ke()==="Original"?$p(e):Zl()}function zT(e){Ke()==="Original"?Ti(e):ba()}async function Ha(){let e=await jt(wt(),{});if(e.rule.isSubtitleBuilder){Zl();return}else e.rule.isEbookBuilder&&Gp();ba()}async function En(e){if(Ke()!=="Original"&&await Ha(),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),$i[e.translationService]||($i[e.translationService]=!0,Ct()||gc(e).catch(t=>{P.warn("init translation engine error",t)})),st("translage_page_daily",[{name:"translage_page_daily"}],e),st("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:Pn()}),e.rule.isSubtitleBuilder)return jT(e);if(e.rule.isEbookBuilder)return Jp(e);e.rule.isPdf||zT(e)}async function mf(){Ke()==="Original"?await Ki():(Ke()==="Translated"||Ke()==="Error")&&(Ce=await jt(wt(),{}),Ce.state.translationArea!=="main"?await Ki():Ha())}async function Ki(){Ce=await jt(wt(),{translationArea:"main"}),await En(Ce)}async function dc(){Ce=await jt(wt(),{translationArea:"body"}),await En(Ce)}async function Ni(){if(Ke()==="Original"){let e=await jt(wt(),{translationMode:"translation"});await En(e)}else(Ke()==="Translated"||Ke()==="Error")&&await Ha()}async function pf(e){if(Ce=await jt(wt(),{}),st("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...Ce,sourceLanguage:"unknown"}),Ke()==="Original"){En(Ce);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function ff(){if(Ke()==="Original")await dc();else if(Ke()==="Translated"||Ke()==="Error"){let e={};Ce&&Ce.state&&(e=Ce.state),Ce=await jt(wt(),e),Ce.state.translationArea!=="body"?(Ce.state.translationArea="body",Ce=await jt(wt(),Ce.state),await En(Ce)):Ha()}}async function hf(){Ce=await jt(wt(),{translationStartMode:"immediate"}),await En(Ce)}async function bp(){let e=await jt(wt(),{});if(P.debug("init page ctx",e),e.rule.isSubtitleBuilder){Xl(e);return}if(e.rule.isEbookBuilder){Kp(e);return}if(e.rule.isPdf){await Hp(e);return}if(gf(e),qi||(qi=e.state.translationMode),Ir||(Ir=e.state.translationTheme),e.rule.urlChangeDelay&&await Qn(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await HT(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=yf(),r=document.createElement("meta");r.name="immersive-translate-options-url",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){P.warn("inject options url failed",u)}}if(e.rule.isInjectVersion){let a=da(),r=document.createElement("meta");r.name="immersive-translate-version",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){P.warn("inject version failed",u)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(r=>{let u=document.createElement("meta");u.name=r,u.content=e.rule.globalMeta[r],document.head.appendChild(u)}),e.rule.initialGlobalAttributes&&n3(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await cc():sn(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(P.debug(`detect page language: ${e.url} ${t}`),sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||qm(t,e.config.translationLanguagePattern)&&(n=!0,P.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&_a()&&zi(e,window),n)Ce.state.isAutoTranslate=!0,En(Ce);else if(P.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&($i[e.translationService]||($i[e.translationService]=!0,Ct()||gc(e).catch(a=>{P.warn("init translation engine error",a)})))}}async function jt(e,t){let n=Object.keys(t);if(Ce){let a={url:e,config:Ce.config,state:{...Ce.state,...t}};Ce=await vt(a)}else{let a=await xn(),r=t;n.length===0&&(r=void 0),Ce=await vt({url:e,config:a,state:r})}return Ce}async function bf(){let e=await xn(),t;Ce&&Ce.state&&(t=Ce.state);let n={url:wt(),config:e,state:t},a=await vt(n);Ce=a;let r=yi(),u=[];return r?u=r.allInlineWindows||[window]:u=[window],u.forEach(o=>{fp(a,o),_a()&&zi(a,o),rf(a)}),a}function HT(e,t=3e3){return new Promise((n,a)=>{let r=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,u=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(u),r&&clearTimeout(r),n(null))},50)})}var Bu=new Map,Wa=class{constructor(t,n=!1){this.logger=new hu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),z.runtime.onMessage.addListener((a,r,u)=>{let o=a.from,i=a.to,s,l,c;r.tab&&r.tab.id&&(s=r.tab.id,o=`${o}:${s}`,l=r.tab.url,c=r.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let m=pc(i),{type:g,name:p}=m;if(g!==t)return!1;let f=pc(o),k=Bu.get(g).get(p);if(!k)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:h,sync:S}=k,_={type:t,name:f.name,id:s,url:l,active:c};if(S){try{let B=h(a.payload,_);u({ok:!0,data:B})}catch(B){u({ok:!1,errorName:B.name,errorMessage:B.message,errorDetails:B.details})}return!1}else return h(a.payload,_).then(B=>{u({ok:!0,data:B})}).catch(B=>{u({ok:!1,errorName:B.name,errorMessage:B.message,errorDetails:B.details})}),!0}))}getConnection(t,n,a){let r=!1;a&&a.sync&&(r=!0);let u=this.fromType,o=Bu.get(u);if(o.has(t))return o.get(t).connectionInstance;{let i=new mc(`${u}:${t}`,this.logger);return Bu.get(u).set(t,{messageHandler:n,sync:r,connectionInstance:i}),i}}},mc=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=pc(t),{type:r,id:u}=a;if(r!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await z.runtime.sendMessage(o);return Tf(o,i,this.logger)}catch(i){if(r==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await z.tabs.sendMessage(u,o);return Tf(o,i,this.logger)}}};function Tf(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new gt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new gt("noResponse","Unknown error")}function pc(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Lr=async function(e,t){let{method:n,data:a}=e,r=await bf(),u=Date.now();P.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await dc(),mt(jn,u)):n==="translateTheMainPage"?(await Ki(),mt(jn,u)):n==="translateToThePageEndImmediately"?(await hf(),mt(jn,u)):n==="toggleTranslatePage"?(await Ri(),mt(jn,u)):n==="toggleTranslateTheWholePage"?(await ff(),mt(jn,u)):n==="toggleTranslateTheMainPage"?(await mf(),mt(jn,u)):n==="toggleOnlyTransation"?(await Ni(),mt(jn,u)):n==="translatePage"?(await En(r),mt(jn,u)):n==="toggleTranslationMask"?await Oi():n==="restorePage"?Ha():n==="setCurrentPageLanguageByClient"?sn(a):n==="retryFailedParagraphs"?Ii():n==="switchTranslationMode"&&a&&a.mode&&pf(a.mode)},WT=function(e,t){let{method:n,data:a}=e;if(P.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ke();if(n==="getCurrentPageLanguage"){let r=Pn();return cc().catch(u=>{P.warn("detectCurrentPageLanguage failed",u)}),r}},Vi,Gi;function yp(){let e=Ji();Ct()||$T(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Ji(){return Vi||(Vi=new Wa("content_script",!1).getConnection("main",Lr),Vi)}function $T(){return Gi||(Gi=new Wa("content_script",!1).getConnection("main_sync",WT,{sync:!0}),Gi)}var qT=new Map;function xf(e){let t=KT(64),n=new CustomEvent(hg,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,r)=>{qT.set(t,(u,o)=>{u?r(u):a(o)})})}function KT(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r{})}function Ef(e){return le()?Q0(e):nt({method:"queryParagraphCache",data:e})}async function Cf(e){if(le()){await Z0(e);return}return nt({method:"setParagraphCache",data:e})}async function wf(){if(le())return Promise.resolve();await nt({method:"mockRequest"})}function Ai(e=!1,t=""){return le()?(z.runtime.openOptionsPage(e,t),Promise.resolve()):nt({method:"openOptionsPage"})}function yf(e=""){return le()||Dt()?tt().OPTIONS_URL:z.runtime.getURL("options.html")}function q3(e=""){return z&&z.runtime&&z.runtime.getURL?z.runtime.getURL("options.html"):""}function Si(e=!1){return le()?(z.extra.openAboutPage(e),Promise.resolve()):nt({method:"openAboutPage"})}function Ep(e=!1){return le()?(z.extra.openSearchEnhancement(e),Promise.resolve()):nt({method:"openSearchEnhancement"})}function Di(e=!1){return le()?(z.extra.openEbookViewerPage(e),Promise.resolve()):nt({method:"openEbookViewerPage"})}function Z3(e=!1){return le()?Promise.resolve():nt({method:"openHtmlViewerPage"})}function Li(e=!1){return le()?(z.extra.openEbookBuilderPage(e),Promise.resolve()):nt({method:"openEbookBuilderPage"})}function Cp(e){Dt()}function Bl(e=!1){return le()?(alert("it's not support in userscript"),Promise.resolve()):nt({method:"openPdfViewerPage"})}function Q3(e=!1){return le()?(z.extra.openSubtitleBuilderPage(e),Promise.resolve()):nt({method:"openSubtitleBuilderPage"})}function Y3(){return le()?(P.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):nt({method:"autoSyncLatestConfig"})}var ye=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:r}=t,u=[],o=null,i=new Set;for(let k of r)k.from&&k.from!=="auto"&&i.add(k.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{u=Tm(r,l,c)}catch(k){if(a)for(let h=0;hk));let m=[],g=[],p=(k,h,S)=>{let _=h.translatedTexts[0];g[k]||(g[k]=h,g[k].translatedTexts=Array(h.sentenceTotalParts).fill(null)),g[k].translatedTexts[h.partIndex]=_;let B=g[k],L=0;for(let v=0;v{let B=await U3(this.translationOptions.translationService);await Qn(B||0);let L=h.from;if(s&&(L="auto"),h.fromByClient&&h.fromByClient!=="auto"&&(L=h.fromByClient),this.isSupportList)return{...await this.translateList({text:h.tempSentences.map(y=>y.text),from:L,to:h.to,url:S,options:n}),sourceTempSentences:h.tempSentences};{let v=Dg;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(v=this.serviceConfig.translationTextSeparator);let y=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(y=this.serviceConfig.newlinePlaceholderDelimiters);let T="";y&&y.length>=2?T=h.tempSentences.map((I,M)=>M===h.tempSentences.length-1?I.text:I.text+y[0]+(M+1)+y[1]).join(""):T=h.tempSentences.map(I=>I.text).join(v);let b=await this.translate({text:T,from:L,to:h.to,url:S,options:n}),{text:x}=b,R=[];if(y&&y.length>=2){let I=`${y[0]}\\d+${y[1]}`;y&&y.length>=3&&(I=y[2]);let M=new RegExp(I,"g");R=x.split(M)}else R=x.split(v);let D=[];if(R.length>h.tempSentences.length){for(let I=0;I{let{text:L,sourceTempSentences:v}=B;for(let y=0;y{if(a){for(let L=0;L({...k.sentence,text:k.translatedTexts.join("")}))}}detectLanguageLocally(t){return lt({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ye.langMap=new Map;var vf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Cn=class extends ye{constructor(n,a,r){super(n,a,r);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),r=`${n.getUTCMonth()+1}`.padStart(2,"0"),u=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${r}-${u}`}async translate(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:Cn.langMap.get(r)||"auto",SourceText:a,Target:Cn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Cn.langMapReverse.get(i.Response.Source)||r,to:Cn.langMapReverse.get(i.Response.Target)||u}}async translateList(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:Cn.langMap.get(r)||"auto",SourceTextList:a,Target:Cn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Cn.langMapReverse.get(i.Response.Source)||r,to:Cn.langMapReverse.get(i.Response.Target)||u}}async signedRequest({secretId:n,secretKey:a,action:r,payload:u,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),m=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Tn(u)].join(` +`),g=Cn.getUTCDate(l),p=["TC3-HMAC-SHA256",c,`${g}/${o}/tc3_request`,await Tn(m)].join(` +`),f=await m3(g,`TC3${a}`),A=await li(o,f),k=await li("tc3_request",A),h=await li(p,k),S=await ue({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":r,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${h}`},body:u});if(S instanceof Error)throw S;if(S.Response&&S.Response.Error&&S.Response.Error.Message)throw new Error(S.Response.Error.Message);return S}},$a=Cn;$a.langMap=new Map(vf),$a.langMapReverse=new Map(vf.map(([n,a])=>[a,n]));var kf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],VT={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Yi=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=new URLSearchParams({source:r,target:u,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await ue({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:VT});return{text:i.targetText,from:Yi.langMapReverse.get(i.source)||r,to:Yi.langMapReverse.get(i.target)||u}}},qa=Yi;qa.langMap=new Map(kf),qa.langMapReverse=new Map(kf.map(([n,a])=>[a,n]));var Af=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Ea=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=Ea.langMap.get(r)||"auto",i=Ea.langMap.get(u)||u,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Ea.langMapReverse.get(s.data[2])||"auto",to:u}}async translateXml(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=Ea.langMap.get(r)||"auto",i=Ea.langMap.get(u)||u,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Ea.langMapReverse.get(s.data[2])||"auto",to:u}}async fetchXmlWithoutToken(n,a,r){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}).toString();return{data:await ue({retry:2,url:o})}}async fetchWithoutToken(n,a,r){let u=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}),o=this.apiUrl+"?"+u.toString();return{data:await ue({retry:2,url:o})}}},Vn=Ea;Vn.langMap=new Map(Af),Vn.langMapReverse=new Map(Af.map(([n,a])=>[a,n]));function GT(e,t){return t?e+(t-e%t):e}function JT(e,t){return e.split(t).length-1}function fc(e){let t=Date.now(),n=1;for(let a of e)n+=JT(a,"i");return GT(t,n)}function YT(e,t){return Math.floor(Math.random()*(t-e+1))+e}function hc(){return YT(1e6,1e8)}var bc="https://www2.deepl.com/jsonrpc",yc="auto",Sf=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function XT(e=Sf){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function Tc(e){return XT()[e.toLowerCase()]}var ZT={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function QT(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function ex(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function tx(e,t,n,a,r,u,o){let i=hc(),s=ex(a,n),l=[];t.forEach(g=>{l.push({text:g,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=fc(t);let c=await ue({retry:2,method:"POST",url:e,body:QT(s),headers:ZT}),m={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{m.text.push(g.text)}),m}async function Df(e,t,n,a=yc,r,u,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:tx(e,t,Tc(n),Tc(a)??"auto",r,u,o):{text:[],from:a,to:n}}var Lf=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Or=class extends ye{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=bc;n&&n.apiUrl&&(this.API_URL=on(bc,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:r,from:u}=n,o=await Df(this.API_URL,a,Or.langMap.get(r)||r,Or.langMap.get(u)||"auto");return{text:o.text,from:Or.langMapReverse.get(o.from),to:Or.langMapReverse.get(o.to)}}},Ca=Or;Ca.langMap=new Map(Lf),Ca.langMapReverse=new Map(Lf.map(([n,a])=>[a,n]));var Pf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],xc="https://transmart.qq.com/api/imt",Ka=class extends ye{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:r}=n,u=await this.detectLanguage(a),o=Ka.langMap.get(u)||u,i=Ka.langMap.get(r)||r;if(u===r)return{text:a,from:u,to:r};let s=tt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=Mf());let m=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),g=await ue({url:xc,body:m,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:u||"auto",to:r}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:r,to:u}=n,o=tt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=Mf()),r.length===1){let f=await this.translate({from:a,text:r[0],to:u,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(r.join(` +`));if(l===u)return{text:r,from:l,to:u};let c=Ka.langMap.get(l)||l,m=Ka.langMap.get(u)||u,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:r,lang:c,orig_url:i},target:{lang:m},type:"plain"}),p=await ue({url:xc,body:g,method:"POST"});if(p.header.ret_code!=="succ")throw new Error(p.message||p.header.ret_code);return{text:p.auto_translation,from:l||"auto",to:u}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},r=await ue({url:xc,method:"POST",body:JSON.stringify(a)});if(r.header.ret_code!=="succ")throw new Error(r.message||r.header.ret_code);let u=r.language,o=Ka.langMapReverse.get(u);return o||u}},Va=Ka;Va.langMap=new Map(Pf),Va.langMapReverse=new Map(Pf.map(([n,a])=>[a,n]));function Mf(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function Ff(){return Math.random()>=0}var Nr=class extends ye{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,r=a.match(/^\s*/)[0].length;return{text:a.slice(0,r)+"\u6A21\u62DF\uFF1A"+a.slice(r,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:r,to:u}=n;if(await wf(),!Ff())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:r,to:u,text:[""]}:{from:r,to:u,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var Bf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],Ec=new Map(Bf),_f=new Map(Bf.map(([e,t])=>[t,e])),Cc=class extends ye{constructor(n,a,r){super(n,a,r);this.apikey="";this.codename=Cc.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:r,to:u}=n,o=await ue({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:Ec.get(r)||"auto",target_lang:Ec.get(u)||u})});if(o.status){let i=o;return i.result&&u=="zh-TW",{text:i.result,from:_f.get(i.source_lang),to:_f.get(i.target_lang)}}else throw new Error(o.msg)}},Ru=Cc;Ru.langMap=Ec,Ru.DEFAULT_CODENAME="deepl";var Xi=Ru;var Kt=null,Rf=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wc=new Map(Rf),nx=new Map(Rf.map(([e,t])=>[t,e])),Zi=class extends ye{constructor(n,a,r){super(n,a,r);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=on(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=on(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=on(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=on(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(u=>u.trim())}static async clearState(){Kt=null,await z.storage.local.remove(fn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Kt){Kt={};let a=await z.storage.local.get(fn);a&&a[fn]&&(Kt=a[fn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new mo(n,{state:Kt,onFetch:(r,u)=>{let i=new URL(r).pathname;return i==="/refresh_token"||i==="/oidc/token"?Pu({url:r,...u}):ue({url:r,...u})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:r=>{Kt=r,z.storage.local.set({[fn]:Kt})}});await a.updateToken(),Kt=a.getState(),a.getIsStateChanged()&&await z.storage.local.set({[fn]:Kt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:r,text:u}=n,o={source_lang:wc.get(a)||"",target_lang:wc.get(r)||r},i=this.getRandomKey(),s=new URLSearchParams(o);u.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let m;if(i.startsWith("immersive_")){let f=new mo(i,{state:Kt,onFetch:(A,k)=>{let S=new URL(A).pathname;return S==="/refresh_token"||S==="/oidc/token"?Pu({url:A,...k}):ue({url:A,...k})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:A=>{Kt=A,z.storage.local.set({[fn]:Kt})}});m=await f.translateApi(l),f.getIsStateChanged()&&(Kt=f.getState(),await z.storage.local.set({[fn]:Kt}))}else m=await ue({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=m,p=g.map(f=>f.text);if(r==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let k=await new Vn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(h=>h.text).join(` `),url:"",options:{}});k&&k.text&&(p=k.text.split(` -`))}return{text:p,from:g[0]&&ZT.get(g[0].detected_source_language)||a,to:r}}};Xi.langMap=Tc;var Pf=Xi;var QT=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],Ec=new Map(QT),Zi=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:r,to:u}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:Ec.get(r)||r,to:Ec.get(u)||u,apikey:this.APIKEY})},s=await ue(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` -`)&&(l=l.slice(0,-1)),{text:l,from:r,to:u}}else throw new Error(JSON.stringify(s))}};Zi.langMap=Ec;var Mf=Zi;var eE=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],xc=new Map(eE),Qi=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:[]};let o={"api-version":"3.0",to:xc.get(u)||u};r!=="auto"&&(o.from=xc.get(r)||r);let i=new URLSearchParams(o),s=JSON.stringify(a.map(m=>({text:m}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await ue(l);if(c.length===0)throw new Error("server response invalid");return{from:r,to:u,text:c.map(m=>m.translations.map(p=>p.text).join(" "))}}};Qi.langMap=xc;var Ff=Qi;var tE=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Ou=new Map(tE),Cc=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n,o;if(a.length===0)return{from:r,to:u,text:[]};let i=` +`))}return{text:p,from:g[0]&&nx.get(g[0].detected_source_language)||a,to:r}}};Zi.langMap=wc;var If=Zi;var ax=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],vc=new Map(ax),Qi=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:r,to:u}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:vc.get(r)||r,to:vc.get(u)||u,apikey:this.APIKEY})},s=await ue(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` +`)&&(l=l.slice(0,-1)),{text:l,from:r,to:u}}else throw new Error(JSON.stringify(s))}};Qi.langMap=vc;var Of=Qi;var rx=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],kc=new Map(rx),es=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:[]};let o={"api-version":"3.0",to:kc.get(u)||u};r!=="auto"&&(o.from=kc.get(r)||r);let i=new URLSearchParams(o),s=JSON.stringify(a.map(m=>({text:m}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await ue(l);if(c.length===0)throw new Error("server response invalid");return{from:r,to:u,text:c.map(m=>m.translations.map(p=>p.text).join(" "))}}};es.langMap=kc;var Nf=es;var ux=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Iu=new Map(ux),Ac=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n,o;if(a.length===0)return{from:r,to:u,text:[]};let i=`
-`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};r==="auto"||!Ou.get(r)?(o=(await ue({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Ou.get(r)||r,target:Ou.get(u)||u})):l.body=JSON.stringify({text:s,source:Ou.get(r),target:Ou.get(u)||u});let c=await ue(l);if(c.translatedText==="")throw new Error("server response invalid");let m=c.translatedText.split("
").map(g=>g.trim());return{from:r,to:u,text:m}}},_f=Cc;var nE=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],Iu=new Map(nE),es=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};r==="auto"||!Iu.get(r)?(o=(await ue({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Iu.get(r)||r,target:Iu.get(u)||u})):l.body=JSON.stringify({text:s,source:Iu.get(r),target:Iu.get(u)||u});let c=await ue(l);if(c.translatedText==="")throw new Error("server response invalid");let m=c.translatedText.split("
").map(g=>g.trim());return{from:r,to:u,text:m}}},Uf=Ac;var ox=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],Ou=new Map(ox),ts=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(u=>u.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=on(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=Iu.get(r)||r,i=Iu.get(u)||u,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let p=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:p})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},m=this.getRandomKey();m&&(c.headers.Authorization="Bearer "+m,c.headers["api-key"]=m,m.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await ue(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let p=g.choices[0].message.content.trim();return p.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(p=""),!a.includes(".")&&(p.endsWith("\u3002")||p.endsWith("."))&&(p=p.slice(0,-1)),{from:r,to:u,text:p}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=this.prompt.replace(/{{to}}/g,Iu.get(u)||u).replace(/{{text}}/g,a).replace(/{{from}}/g,Iu.get(r)||r),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await ue(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:r,to:u,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};es.langMap=Iu;var Bf=es;var ts=xe+"CacheKey_";function ns(e,t){let n=ts+e;return z.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:r,expired:u}=a[n];return u&&ua.startsWith(ts));if(n.length>0)return z.storage.local.remove(n)}}var aE=[["auto","auto"],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"],["en","en"],["yue","\u7CA4\u8BED"],["wyw","\u53E4\u6587"],["en","en"],["ja","ja"],["ko","ko"],["fr","fr"],["de","de"],["es","es"],["it","it"],["ru","ru"],["pt","pt"],["nl","nl"],["pl","pl"],["ar","ar"],["af","af"],["am","am"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["el","el"],["eo","eo"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ku","ku"],["ky","ky"],["la","lo"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["no","no"],["ny","ny"],["pa","pa"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["sr-Cyrl","sr"],["sr-Latn","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],us=new Map(aE),vc="chatgptWebAccessToken";async function Of(){let e=await ns(vc);if(e)return e;let t=await ue({url:"https://chat.openai.com/api/auth/session",method:"get",responseType:"json"});if(!t.accessToken)throw new Error("UNAUTHORIZED");return await as(vc,t.accessToken,10*60*1e3),t.accessToken}var Ur,os=class{constructor(){u4(this,Ur,Promise.resolve());return os.instance||(os.instance=this),this}enqueue(t){return o4(this,Ur,vs(this,Ur).then(()=>t())),vs(this,Ur)}},wc=os;Ur=new WeakMap;var kc=new wc;Object.freeze(kc);var Nu=class extends ye{constructor(n,a,r){super(n,a,r);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: +{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(u=>u.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=on(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=Ou.get(r)||r,i=Ou.get(u)||u,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let p=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:p})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},m=this.getRandomKey();m&&(c.headers.Authorization="Bearer "+m,c.headers["api-key"]=m,m.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await ue(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let p=g.choices[0].message.content.trim();return p.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(p=""),!a.includes(".")&&(p.endsWith("\u3002")||p.endsWith("."))&&(p=p.slice(0,-1)),{from:r,to:u,text:p}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=this.prompt.replace(/{{to}}/g,Ou.get(u)||u).replace(/{{text}}/g,a).replace(/{{from}}/g,Ou.get(r)||r),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await ue(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:r,to:u,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};ts.langMap=Ou;var jf=ts;var ns=Ee+"CacheKey_";function as(e,t){let n=ns+e;return z.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:r,expired:u}=a[n];return u&&ua.startsWith(ns));if(n.length>0)return z.storage.local.remove(n)}}var ix=[["auto","auto"],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"],["en","en"],["yue","\u7CA4\u8BED"],["wyw","\u53E4\u6587"],["en","en"],["ja","ja"],["ko","ko"],["fr","fr"],["de","de"],["es","es"],["it","it"],["ru","ru"],["pt","pt"],["nl","nl"],["pl","pl"],["ar","ar"],["af","af"],["am","am"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["el","el"],["eo","eo"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ku","ku"],["ky","ky"],["la","lo"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["no","no"],["ny","ny"],["pa","pa"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["sr-Cyrl","sr"],["sr-Latn","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],os=new Map(ix),Sc="chatgptWebAccessToken";async function Hf(){let e=await as(Sc);if(e)return e;let t=await ue({url:"https://chat.openai.com/api/auth/session",method:"get",responseType:"json"});if(!t.accessToken)throw new Error("UNAUTHORIZED");return await rs(Sc,t.accessToken,10*60*1e3),t.accessToken}var Ur,is=class{constructor(){l4(this,Ur,Promise.resolve());return is.instance||(is.instance=this),this}enqueue(t){return c4(this,Ur,vs(this,Ur).then(()=>t())),vs(this,Ur)}},Dc=is;Ur=new WeakMap;var Lc=new Dc;Object.freeze(Lc);var Nu=class extends ye{constructor(n,a,r){super(n,a,r);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: -{{text}}`}throttleDebounce(n,a,r){let u=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{u=s,n.apply(l,i)};s-u>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},r))}}async deleteConversation(n){if(n){let a=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return P.debug("delete conversation res:",a),a}}async translate(n){return await kc.enqueue(async()=>{let{text:a,from:r,to:u}=n;if(a.length===0)return Promise.resolve({from:r,to:u,text:""});let o=us.get(r)||r,i=us.get(u)||u;if(this.accessToken=await Of(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:Zt()})});return P.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:r,to:u,text:c?.message?.content?.parts?.[0]})}catch(c){throw P.debug("post chatgpt error:",c),await rs(vc),c}})}async translateStream(n,a){let{text:r,from:u,to:o}=n;if(r.length===0){a(null,{from:u,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:m}=s;a(null,{from:l,to:c,text:m})},300,200);await kc.enqueue(async()=>{let s="chatgpt"+Zt(),l=z.runtime.connect({name:s}),c,m;l.onMessage.addListener(k=>{if(!(!k||k==="")){if(k==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{m=JSON.parse(k)}catch(h){P.debug("chatgpt json error",h,k);return}c=m?.conversation_id,m?.message?.author?.role==="assistant"&&i({from:u,to:o,text:m?.message?.content?.parts?.[0]})}});let g=us.get(u)||u,p=us.get(o)||o;if(this.accessToken=await Of(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let S=this.prompt.replace(/{{to}}/g,p).replace(/{{text}}/g,r).replace(/{{from}}/g,g);ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[S]}}],model:f,parent_message_id:Zt()})}).catch(k=>{P.debug("chatgpt error",k),l.disconnect(),this.deleteConversation(c),a(k,{from:u,to:o,text:""})})})}};var rE=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],rt={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Ac=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Sc=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Ac(t);if(a)return Array.isArray(n)?`${a}=${n.map(Ac).sort().join(`&${a}=`)}`:`${a}=${Ac(n)}`}).filter(t=>t).join("&"),jr=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let r=t[a];return typeof r<"u"&&r!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],r=this.credentialString(n);return a.push(`${rt.algorithm} Credential=${t.accessKeyId}/${r}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),r={...this.request.params},u=this.request.params,o=this.request.headers;t.sessionToken&&(r[rt.tokenHeader]=t.sessionToken),r[rt.dateHeader]=a,r[rt.notSignBody]="",r[rt.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,r[rt.algorithmKey]=rt.algorithm,r[rt.signHeadersKey]="",r[rt.signQueriesKey]=void 0,r[rt.signatureKey]=void 0,r=this.sortParams(r),this.request.params=r,this.request.headers={};let i=await this.signature(t,a);return this.request.params=u,this.request.headers=o,r[rt.signQueriesKey]=Object.keys(r).sort().join(";"),r[rt.signatureKey]=i,Sc(r)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[rt.dateHeader]=n,t.sessionToken&&(this.request.headers[rt.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[rt.contentSha256Header]=await yn(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return si(await fa(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push(rt.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` -`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Sc(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} +{{text}}`}throttleDebounce(n,a,r){let u=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{u=s,n.apply(l,i)};s-u>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},r))}}async deleteConversation(n){if(n){let a=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return P.debug("delete conversation res:",a),a}}async translate(n){return await Lc.enqueue(async()=>{let{text:a,from:r,to:u}=n;if(a.length===0)return Promise.resolve({from:r,to:u,text:""});let o=os.get(r)||r,i=os.get(u)||u;if(this.accessToken=await Hf(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:Zt()})});return P.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:r,to:u,text:c?.message?.content?.parts?.[0]})}catch(c){throw P.debug("post chatgpt error:",c),await us(Sc),c}})}async translateStream(n,a){let{text:r,from:u,to:o}=n;if(r.length===0){a(null,{from:u,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:m}=s;a(null,{from:l,to:c,text:m})},300,200);await Lc.enqueue(async()=>{let s="chatgpt"+Zt(),l=z.runtime.connect({name:s}),c,m;l.onMessage.addListener(k=>{if(!(!k||k==="")){if(k==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{m=JSON.parse(k)}catch(h){P.debug("chatgpt json error",h,k);return}c=m?.conversation_id,m?.message?.author?.role==="assistant"&&i({from:u,to:o,text:m?.message?.content?.parts?.[0]})}});let g=os.get(u)||u,p=os.get(o)||o;if(this.accessToken=await Hf(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let A=this.prompt.replace(/{{to}}/g,p).replace(/{{text}}/g,r).replace(/{{from}}/g,g);ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[A]}}],model:f,parent_message_id:Zt()})}).catch(k=>{P.debug("chatgpt error",k),l.disconnect(),this.deleteConversation(c),a(k,{from:u,to:o,text:""})})})}};var sx=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],at={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Pc=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Mc=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Pc(t);if(a)return Array.isArray(n)?`${a}=${n.map(Pc).sort().join(`&${a}=`)}`:`${a}=${Pc(n)}`}).filter(t=>t).join("&"),jr=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let r=t[a];return typeof r<"u"&&r!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],r=this.credentialString(n);return a.push(`${at.algorithm} Credential=${t.accessKeyId}/${r}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),r={...this.request.params},u=this.request.params,o=this.request.headers;t.sessionToken&&(r[at.tokenHeader]=t.sessionToken),r[at.dateHeader]=a,r[at.notSignBody]="",r[at.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,r[at.algorithmKey]=at.algorithm,r[at.signHeadersKey]="",r[at.signQueriesKey]=void 0,r[at.signatureKey]=void 0,r=this.sortParams(r),this.request.params=r,this.request.headers={};let i=await this.signature(t,a);return this.request.params=u,this.request.headers=o,r[at.signQueriesKey]=Object.keys(r).sort().join(";"),r[at.signatureKey]=i,Mc(r)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[at.dateHeader]=n,t.sessionToken&&(this.request.headers[at.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[at.contentSha256Header]=await Tn(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return si(await fa(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push(at.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` +`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Mc(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} `),t.push(this.signedHeaders()),t.push(await this.hexEncodedBodyHash()),t.join(` `)}canonicalHeaders(){let t=[];Object.keys(this.request.headers).forEach(a=>{t.push([a,this.request.headers[a]])}),t.sort((a,r)=>a[0].toLowerCase(){let r=a[0].toLowerCase();if(this.isSignableHeader(r)){let u=a[1];if(typeof u>"u"||u===null||typeof u.toString!="function")throw new Error(`Header ${r} contains invalid value`);n.push(`${r}:${this.canonicalHeaderValues(u.toString())}`)}}),n.join(` -`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await yn(t)}async hexEncodedBodyHash(){return this.request.headers[rt.contentSha256Header]?this.request.headers[rt.contentSha256Header]:this.request.body?await this.hexEncodedHash(Sc(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return rE.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,r){let u=await fa(n,`${rt.kDatePrefix}${t.secretKey}`),o=await fa(a,u),i=await fa(r,o);return fa(rt.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,rt.v4Identifier].join("/")}};var If=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Dc=new Map(If),uE=new Map(If.map(([e,t])=>[t,e])),is=class extends ye{constructor(n,a,r){super(n,a,r);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let r={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},u=new jr(r,"translate");await u.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(r.params),i=await ue({retry:2,url:"https://open.volcengineapi.com"+r.pathname+"?"+o.toString(),headers:u.request.headers,method:r.method,body:r.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new gt(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new gt(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:r,to:u}=n,o=Dc.get(r),i={TargetLanguage:Dc.get(u)||u,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` -`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new jr(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),m=await ue({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(m.TranslationList){let g=m.TranslationList.map(f=>f.Translation),p=r;return m.TranslationList.length>0&&m.TranslationList[0].DetectedSourceLanguage&&(p=uE.get(m.TranslationList[0].DetectedSourceLanguage)||r),{text:g,from:p,to:u}}else if(m.ResponseMetadata&&m.ResponseMetadata.Error){let g=m.ResponseMetadata.Error;throw new gt(g.Code,g.Message)}else if(m.ResponseMetaData&&m.ResponseMetaData.Error){let g=m.ResponseMetaData.Error;throw new gt(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(m))}};is.langMap=Dc;var Nf=is;var Uf=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Lc=new Map(Uf),oE=new Map(Uf.map(([e,t])=>[t,e])),zr=class extends ye{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=Lc.get(r)||"detect",i=Lc.get(u)||u,l=await ue({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,m=r;return l.detected_language&&(m=oE.get(l.detected_language)||r),{text:c,from:m,to:u}}else{let c=l.base_resp;throw new gt(c.status_code.toString(),c.status_message)}}};zr.langMap=Lc;var iE=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Pc=new Map(iE),Hr=class extends ye{constructor(n,a,r){super(n,a,r);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:r,to:u}=n,i=await ue({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:Pc.get(r)||r,target_lang:Pc.get(u)||u,text:a})});if(i.code===200)return{text:i.data,from:r,to:u};throw new Error(i.message||i.message||"API Error")}};Hr.langMap=Pc;var Mc="https://{s}bing.com",$f=Mc+"/translator",sE=Mc+"/ttranslatev3",lE=Mc+"/tspellcheckv3",ss="bingGlobalConfig",qf=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],jf=new Map(qf),zf=new Map(qf.map(([e,t])=>[t,e])),Hf=1e3,Cn,Wr;function Fc(e,t){return e.replace("{s}",t?t+".":"")}async function cE(){if(!Cn){let n=await z.storage.local.get(ss);return n&&(Cn=n[ss]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Cn;return Date.now()-e>t}async function Wf(){let e,t,n,a,r,u,o,i,s,l;try{let c=Fc($f,e),m=await ue({retry:2,url:c,responseType:"raw"}),{body:g,headers:p,url:f}=m;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=p["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[r,a,u,o,i,s]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Cn={subdomain:e,IG:t,IID:n,key:r,token:a,tokenTs:r,tokenExpiryInterval:u,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await z.storage.local.set({[ss]:Cn}),Cn}function dE(e){let{IG:t,IID:n,subdomain:a,isVertical:r}=Cn;return Fc(e?lE:sE,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Cn.count++:"")}function gE(e,t,n,a){let{token:r,key:u}=Cn,o={fromLang:n,text:t,token:r,key:u};return!e&&a&&(o.to=a),o}async function Kf(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>Hf)throw new Error(`The supported maximum length of text is ${Hf}. Please shorten the text.`);Wr||(Wr=Wf()),await Wr,await cE()&&(Wr=Wf(),await Wr),t=t||"auto",n=n||"zh-CN",t=jf.get(t)||t,n=jf.get(n)||n;let r=dE(!1),u=gE(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Fc($f,Cn.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(u),s=r,l=i.toString(),c=await ue({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Cn=null,Wr=null,await z.storage.local.remove(ss),c.ShowCaptcha)throw new Error(` +`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Tn(t)}async hexEncodedBodyHash(){return this.request.headers[at.contentSha256Header]?this.request.headers[at.contentSha256Header]:this.request.body?await this.hexEncodedHash(Mc(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return sx.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,r){let u=await fa(n,`${at.kDatePrefix}${t.secretKey}`),o=await fa(a,u),i=await fa(r,o);return fa(at.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,at.v4Identifier].join("/")}};var Wf=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Fc=new Map(Wf),lx=new Map(Wf.map(([e,t])=>[t,e])),ss=class extends ye{constructor(n,a,r){super(n,a,r);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let r={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},u=new jr(r,"translate");await u.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(r.params),i=await ue({retry:2,url:"https://open.volcengineapi.com"+r.pathname+"?"+o.toString(),headers:u.request.headers,method:r.method,body:r.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new gt(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new gt(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:r,to:u}=n,o=Fc.get(r),i={TargetLanguage:Fc.get(u)||u,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` +`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new jr(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),m=await ue({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(m.TranslationList){let g=m.TranslationList.map(f=>f.Translation),p=r;return m.TranslationList.length>0&&m.TranslationList[0].DetectedSourceLanguage&&(p=lx.get(m.TranslationList[0].DetectedSourceLanguage)||r),{text:g,from:p,to:u}}else if(m.ResponseMetadata&&m.ResponseMetadata.Error){let g=m.ResponseMetadata.Error;throw new gt(g.Code,g.Message)}else if(m.ResponseMetaData&&m.ResponseMetaData.Error){let g=m.ResponseMetaData.Error;throw new gt(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(m))}};ss.langMap=Fc;var $f=ss;var qf=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],_c=new Map(qf),cx=new Map(qf.map(([e,t])=>[t,e])),zr=class extends ye{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=_c.get(r)||"detect",i=_c.get(u)||u,l=await ue({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,m=r;return l.detected_language&&(m=cx.get(l.detected_language)||r),{text:c,from:m,to:u}}else{let c=l.base_resp;throw new gt(c.status_code.toString(),c.status_message)}}};zr.langMap=_c;var dx=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Bc=new Map(dx),Hr=class extends ye{constructor(n,a,r){super(n,a,r);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:r,to:u}=n,i=await ue({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:Bc.get(r)||r,target_lang:Bc.get(u)||u,text:a})});if(i.code===200)return{text:i.data,from:r,to:u};throw new Error(i.message||i.message||"API Error")}};Hr.langMap=Bc;var Rc="https://{s}bing.com",Yf=Rc+"/translator",gx=Rc+"/ttranslatev3",mx=Rc+"/tspellcheckv3",ls="bingGlobalConfig",Xf=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],Kf=new Map(Xf),Vf=new Map(Xf.map(([e,t])=>[t,e])),Gf=1e3,wn,Wr;function Ic(e,t){return e.replace("{s}",t?t+".":"")}async function px(){if(!wn){let n=await z.storage.local.get(ls);return n&&(wn=n[ls]),!0}let{tokenTs:e,tokenExpiryInterval:t}=wn;return Date.now()-e>t}async function Jf(){let e,t,n,a,r,u,o,i,s,l;try{let c=Ic(Yf,e),m=await ue({retry:2,url:c,responseType:"raw"}),{body:g,headers:p,url:f}=m;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=p["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[r,a,u,o,i,s]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return wn={subdomain:e,IG:t,IID:n,key:r,token:a,tokenTs:r,tokenExpiryInterval:u,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await z.storage.local.set({[ls]:wn}),wn}function fx(e){let{IG:t,IID:n,subdomain:a,isVertical:r}=wn;return Ic(e?mx:gx,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+wn.count++:"")}function hx(e,t,n,a){let{token:r,key:u}=wn,o={fromLang:n,text:t,token:r,key:u};return!e&&a&&(o.to=a),o}async function Zf(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>Gf)throw new Error(`The supported maximum length of text is ${Gf}. Please shorten the text.`);Wr||(Wr=Jf()),await Wr,await px()&&(Wr=Jf(),await Wr),t=t||"auto",n=n||"zh-CN",t=Kf.get(t)||t,n=Kf.get(n)||n;let r=fx(!1),u=hx(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Ic(Yf,wn.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(u),s=r,l=i.toString(),c=await ue({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(wn=null,Wr=null,await z.storage.local.remove(ls),c.ShowCaptcha)throw new Error(` Sorry that bing translator seems to be asking for the captcha, Please take care not to request too frequently. The response code is ${c.StatusCode}. `);if(c.StatusCode===401)throw new Error(` Max count of translation exceeded. Please try it again later. The response code is 401. - `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let m=c[0].translations[0],g=c[0].detectedLanguage;return{text:m.text,from:zf.get(g.language),to:zf.get(m.to)}}function Gf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Va=null,mE=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],_c=new Map(mE),$r=class extends ye{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Va=null,await rs(yo)}async translate(n){let{text:a,from:r,to:u}=n;return a?await Kf(a,r,u):{...n}}async init(){if(!Va){Va={};let n=await ns(yo);n&&(Va=n)}await Vf(Va)}async translateList(n){let{from:a,to:r,text:u}=n,o=_c.get(a)||"auto",i=_c.get(r)||r;o==="auto"&&(o="");let s=await Vf(Va),l=[];for(let p of u)l.push({Text:p});let c=JSON.stringify(l),m=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await ue({url:m,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(p=>p.translations[0]?.text||""),from:a,to:r};throw new Error("Microsoft translate error "+JSON.stringify(g))}};$r.langMap=_c;async function Vf(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return Jf().catch(r=>{P.error(r)}),e}return Jf()}async function Jf(){let e=await Pu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=Gf(e),n=t.accessTokenExpiresAt,r=new Date(n).getTime()-Date.now();return Va=t,await as(yo,t,r-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var Yf=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Bc=new Map(Yf),pE=new Map(Yf.map(([e,t])=>[t,e])),ls=class extends ye{constructor(n,a,r){super(n,a,r);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:r}=this,{appid:u,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Bc.get(s)||"auto",to:Bc.get(l)||l,q:i,salt:a,appid:u,sign:ca(u+i+a+o)}),m=new URL(r);m.search=c.toString();let g=await ue({url:m.toString()});if(g.error_code)throw new gt("API_SERVER_ERROR",g.error_msg);let{trans_result:p,from:f}=g,S=p.map(({dst:h})=>h);return{from:pE.get(f)||f,to:l,text:S.join(` -`)}}};ls.langMap=Bc;var Xf=ls;var fE=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],cs=new Map(fE),ds=class extends ye{constructor(n,a,r){super(n,a,r);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(u=>u.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:r,to:u}=n;if(!cs.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${cs.get(r)||"auto"}2${cs.get(u)}`})})).target,from:r,to:u}}};ds.langMap=cs;var Zf=ds;var hE=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],gs=new Map(hE),ms=class extends ye{constructor(n,a,r){super(n,a,r);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n;if(!gs.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a;return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${gs.get(r)||"auto"}2${gs.get(u)}`})})).target,from:r,to:u}}};ms.langMap=gs;var Qf=ms;var eh=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Rc=new Map(eh),bE=new Map(eh.map(([e,t])=>[t,e]));function yE(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var ps=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o=TE(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+yE(a)+o+i+this.appSecret,l=await yn(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Rc.get(r)||"auto",to:Rc.get(u)||u,sign:l,signType:"v3",curtime:i.toString()},m=new URLSearchParams(c),p=await ue({url:"https://openapi.youdao.com/api",method:"POST",body:m.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!p.translation)throw new Error(JSON.stringify(p));let f=p.l,[S,k]=f.split("2");return{text:p.translation.join(` -`),from:bE.get(S),to:u}}};ps.langMap=Rc;function TE(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r[t,e]));var fs=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o={q:a,from:Oc.get(r)||"auto",to:Oc.get(u)||u},i=new URLSearchParams(o),s=await ue({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` -`),from:r,to:u};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};fs.langMap=Oc;var ah=fs;var EE={mock:Nr,mock2:Nr,google:Gn,transmart:Ga,deepl:Pf,volc:Nf,volcAlpha:zr,bing:$r,tencent:$a,tenAlpha:qa,baidu:Xf,caiyun:Zf,cai:Qf,openl:Yi,youdao:th,you:ah,d:Ca,dpro:Ca,deeplx:Hr,niu:Mf,azure:Ff,openai:Bf,chatgpt:Nu,papago:_f},Vn={};Object.keys(hn).forEach(e=>{Vn[e]={...hn[e],class:EE[e]}});function Mr(e,t){let n=Xt;if(Vn[e]&&Vn[e].class&&Vn[e].class.langMap&&Vn[e].class.langMap.size>0){let a=Vn[e].class.langMap,r=n.filter(u=>a.get(u));return r.includes(t)||r.unshift("placeholder"),r}else return Xt}function rh(e,t){let n=Vn[e],a=t.config.translationServices[e]||{},r=!0,u=n.allProps||[],o=[],i=[];if(u.length>0){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,explicitProps:o||[],optionalProps:i||[]}}async function ha(e,t){if(!e.text)return e;let n=await _n({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new gt("translateFailed","translate failed")}async function sc(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,r=t.translationServices,u=n,o=r[u]||{},i=new Vn[u].class(o,a,{translationService:u}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await O3(u,o),await i.init()}async function _n(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:r,state:u}=t,o=a.translationGeneralConfig,i=a.translationServices,s=r,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(h=>({...h,from:"auto"})));let c=[],m={sentences:Array(e.sentences.length)},g=e.sentences.length,p=-1;if(u.cache)for(let h of e.sentences){p++;let A=s;s==="openl"&&(A=s+"-"+l.codename||Yi.DEFAULT_CODENAME);let _=null;try{_=await oo(ff({originalText:h.text,from:h.from,to:h.to,service:A}),1e3)}catch(B){P.warn("query cache DB error, but it's ok",B)}if(_){let B={...h,text:_.translatedText};m.sentences[p]=B,n&&n(null,B,h)}else c.push(h)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&P.debug(`use ${g-f} sentences from cache`),!c.length)return m;let S;try{S=new Vn[s].class(l,o,{translationService:s}),await S.init()}catch(h){if(n)for(let A of c)n(h,null,A);throw h}let k=await S.multipleTranslate({sentences:c},l,(h,A,_)=>{if(n&&n(h,A,_),!h&&A&&!s.startsWith("mock")&&u.cache){let B=s;s==="openl"&&(B=s+"-"+l.codename||Yi.DEFAULT_CODENAME),u.cache&&oo(hf({translatedText:A.text,from:_.from,to:_.to,detectedFrom:A.from,key:ca(_.text),service:B}),3e3).catch(L=>{P.warn("set cache DB error",L)})}});for(let h of k.sentences){let A=m.sentences.findIndex(_=>!_);if(A===-1)throw new gt("translateFailed","can not match the result");m.sentences[A]=h}return m}function Fe(e){return d("div",{class:"nav-left",children:[d("div",{class:"title",children:e.title}),d("div",{class:"description",children:e.description})]})}function qr(e){let{t}=be(),n={};e.width&&(n={width:`${e.width}px`});let[a,r]=W(e.value),{field:u,onFinish:o}=e,i=u.name;u.label&&(i=u.label),u.labelKey&&(i=t(u.labelKey));let s={};return u.descriptionLink1&&(s[1]=u.descriptionLink1),d("div",{class:"mt-3",children:[d("label",{for:e.field.name,class:"mb-[var(--spacing)]",children:[i,"\uFF1A"]}),e.field.type==="textarea"?d(ut,{children:[d("textarea",{style:n,autoComplete:"off",required:e.field.required,placeholder:e.field.placeholder||e.field.name,class:"input",value:a,type:e.type,onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]}):d(ut,{children:[d("input",{style:n,required:e.field.required,placeholder:e.field.placeholder||e.field.name,value:a,type:e.type,disabled:e.field.disabled||!1,name:e.field.name,autoComplete:"off",onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{(e.type==="text"||e.type==="password")&&o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]})]})}function Kr(e){let{t}=be(),[n,a]=W(!0),[r,u]=W(!1),{onFinish:o,field:i,onChange:s,value:l}=e;l=l===void 0?i.default||"":l,ke(()=>{i.options&&(i.options.some(g=>g.value===l)||u(!0))},[]);let c=i.name;if(i.label&&(c=i.label),i.labelKey&&(c=t(i.labelKey)),i.type==="select")return d("div",{class:"flex flex-col mt-5 mb-6",children:[d("label",{class:"text-16 mb-2",children:[c,"\uFF1A"]}),d($3,{maxWidth:200,items:i.options.map(m=>({label:`${m.label?t(m.label):m.value}`,value:m.value,selected:l===m.value,onSelected:()=>{s(m.value)}})),onChange:s,isInput:r,value:l}),d("label",{for:"customContent",class:"text-sm",onClick:()=>{u(!r)},children:[d("input",{type:"checkbox",id:"customContent",name:"customContent",checked:r}),t("customContent")]})]});if(i.type==="text")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="textarea")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="number")return d("div",{children:d(qr,{field:i,value:l,type:i.type,width:196,onChange:s})});if(i.type==="password")return d("div",{children:[d(qr,{field:i,value:l,type:n?i.type:"text",onChange:s,onFinish:o}),d("label",{for:"translate",onClick:()=>{a(!n)},children:[d("input",{type:"checkbox",id:"translate",name:"translate"}),t("show password")]})]});if(i.type==="color"){let m=l,g="";return m||(m="#FFFFFF",g="#FFFFFF"),d("div",{children:d("label",{class:"flex items-center",for:i.name,children:[d("span",{class:"mr-2",children:i.label||i.name}),d("input",{type:"text",id:i.name,class:"border-color-text mr-2",placeholder:g||"",value:l,onInput:p=>{s(p.target.value)}}),d("input",{id:i.name,type:"color",name:i.name,value:m,onInput:p=>{s(p.target.value)}})]})})}else return null}function hs(e){let{t,lang:n}=be();return d("details",{role:"list",class:"nav-right",children:[d("summary",{"aria-haspopup":"listbox",children:t("edit")}),d("ul",{role:"listbox",class:"option-list",children:e.options.map((a,r)=>{let u=kt(a.value,n);return d("li",{children:d("label",{children:[d("input",{type:"checkbox",onChange:()=>{e.onToggleAlwaysLangs(!a.checked,a.value)},value:a.value,checked:a.checked}),u]})},"language-"+r)})})]})}function va(e){let{t}=be();return d("div",{children:e.urls.map((n,a)=>d("div",{class:"url-list",children:[d("div",{class:"url-left",children:d("div",{class:"url-name height-tight",children:n})}),d("nav",{children:d("ul",{children:d("li",{children:d("details",{role:"list",dir:"rtl",children:[d("summary",{"aria-haspopup":"listbox",role:"link"}),d("ul",{class:"delete",role:"listbox",children:[d("li",{children:d("a",{onClick:r=>{e.onEditUrl(n,e.type,a)},children:t("edit")})}),d("li",{children:d("a",{onClick:r=>{e.onDeleteUrl(n,e.type)},children:t("delete")})})]})]})})})})]},"menu"+a))})}function wa(e){let{t}=be(),n=wn(null),{toggleModal:a}=e;return d("dialog",{id:"immersive-translate-overlay",onClick:u=>{u.target&&u.target.id==="immersive-translate-overlay"&&a(u)},open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:e.toggleModal}),d("div",{class:"add-text",children:t("add url")}),d("input",{placeholder:"URL",ref:n,value:e.urlValue}),d("blockquote",{children:d("p",{class:"text-sm",children:t("addUrlDescription")})}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:e.toggleModal,children:t("cancel")})}),d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:u=>{if(u.preventDefault(),n.current&&n.current.value){if(e.onSubmitAddUrl){if(e.urlValue!==""){e.onSubmitAddUrl(n.current.value,e.index,e.type,"edit");return}e.onSubmitAddUrl(n.current.value,e.index,e.type);return}else if(e.onAddInterfaceUrl){if(e.urlValue!==""){e.onAddInterfaceUrl(n.current.value,"edit");return}e.onAddInterfaceUrl(n.current.value)}}},children:t("confirm")})})]})]})})}async function Gr(){let e=["bingGlobalConfig","baiduGlobalConfig",fn,Sn];for(let t of e)await z.storage.local.remove(t);le()||await Om(),await Rf()}function uh(){return le()?Promise.resolve("0 B"):el()}var oh=Ei();function bs(){let{t:e}=be(),[t,n,a,r,u]=bt(),[o,i]=W(null),[s,l]=W(null),[c,m]=W(0),[g,p]=W(!1),[f,S]=W(""),[k,h]=W(""),[A,_]=W(!1),[B,L]=W(!1),[w,y]=W(""),T=[];s&&(T=$o(s));let b=null,E=null,R=[],D=[];if(o&&s){let{translationService:I,translationServices:N}=o;hn[I]&&(E=rh(I,s)),N&&N[I]?b=Object.assign({},N[I]||{}):b={},R=oh.concat("").map(re=>o.translationLanguagePattern&&o.translationLanguagePattern.matches&&o.translationLanguagePattern.matches.includes(re)?{checked:!0,value:re}:{checked:!1,value:re}),D=oh.map(re=>o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&o.translationLanguagePattern.excludeMatches.includes(re)?{checked:!0,value:re}:{checked:!1,value:re})}ke(()=>(Ne("esc",()=>{_(!1),L(!1)}),ze().then(I=>{i(I),P.debug("current config",I)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(I=>{i(I)})},[t]),ke(()=>{o&&wt({url:"http://localhost",config:o,state:{cache:!1}}).then(I=>{l(I)})},[o]);let O=I=>{n(N=>({...N,translationService:I}))},M=I=>{n(()=>({...I}))},F=I=>{I.preventDefault(),confirm(e("confirmResetConfig"))&&(u(Ba()),ia().catch(N=>{P.error("clean local config error",N)}),pr().catch(N=>{P.error("clean buildin config error",N)}),Gr().catch(N=>{P.error("clean cache error",N)}),Je(e("resetSuccess")))},$=I=>{n(N=>({...N,targetLanguage:I}))},Z=(I,N)=>{if(!I){n(ae=>{let ne={...ae.translationLanguagePattern};return{...ae,translationLanguagePattern:{...ae.translationLanguagePattern,matches:Ye(N,ne.matches),excludeMatches:Ye(N,ne.excludeMatches)}}});return}let re=I,te=re==="matches"?"excludeMatches":"matches";N&&n(ae=>{let ne={...ae.translationLanguagePattern};return ne[re]=un(N,ne[re]),ne[te]=Ye(N,ne[te]),{...ae,translationLanguagePattern:{...ae.translationLanguagePattern,...ne}}})},de=(I,N)=>{Z(I?"matches":void 0,N)},G=(I,N)=>{Z(I?"excludeMatches":void 0,N)},me=I=>{I==="matches"?_(!A):L(!B)},ge=(I,N,re,te)=>{me(re),n(ae=>{let ne=t.translationUrlPattern,oe=[],Y=[];ne&&ne.matches&&ne.excludeMatches&&(oe=ne.matches,Y=ne.excludeMatches);let ce=[...oe],Le=[...Y];return te==="edit"&&(re==="matches"?ce[N]=I:Le[N]=I),re==="matches"?(ce=un(I,ce),Le=Ye(I,Y)):(ce=Ye(I,oe),Le=un(I,Le)),{...ae,translationUrlPattern:{...ae.translationUrlPattern,matches:ce,excludeMatches:Le}}})},v=(I,N)=>{n(re=>{let te=t.translationUrlPattern,ae=[];N==="matches"?te&&te.matches&&(ae=te.matches):te&&te.excludeMatches&&(ae=te.excludeMatches);let ne=[...ae];return ne=Ye(I,ne),{...re,translationUrlPattern:{...re.translationUrlPattern,[N]:ne}}})},H=(I,N,re)=>{me(N),y(I),m(re)};if(!o)return d("div",{children:"loading"});let Q=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.matches&&(Q=o.translationLanguagePattern.matches);let fe=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&(fe=o.translationLanguagePattern.excludeMatches);let se=Mr(o.translationService,o.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:[d("strong",{class:"text-lg",children:e("general")}),d("a",{class:"text-sm",href:"#",onClick:F,children:e("reset")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("target"),description:e("translate other languages into specific language")}),d("select",{class:"select",onChange:I=>{I.preventDefault(),$(I.target.value)},children:se.filter(I=>I!=="auto").map((I,N)=>d("option",{value:I,selected:I===o.targetLanguage,children:kt(I,o.interfaceLanguage)},"language"+N))})]}),d("div",{class:"nav",children:[d(Fe,{title:e("service"),description:e("select translation service")}),d("select",{class:"select",onChange:I=>{I.preventDefault(),S(""),h(""),O(I.target.value)},children:T.map((I,N)=>d("option",{value:I.id,selected:I.id===o.translationService,children:`${e("translationServices."+I.id)}${I.ok?"":" "+e("needActionForOptions")}`},"service-item="+N))})]}),E&&E.docUrl?d("div",{children:[d("a",{target:"_blank",class:"pb-1 docUrl",href:E.homepage,children:e(`translationServices.${E.id}`)}),"\xA0",d("span",{class:"description pb-1",children:e("please refer to")}),"\xA0",d("a",{target:"_blank",class:"pb-1 docUrl",href:E.docUrl,children:e("KeyAndConfigurationTutorial")})]}):null,b&&E&&E.explicitProps.length>0&&E.explicitProps.map((I,N)=>d("div",{class:"mt-2",children:d(Kr,{field:I,value:b[I.name],onChange:re=>{n(te=>{let ae=te.translationServices||{},ne=ae[E.id]||{};return{...te,translationServices:{...ae,[E.id]:{...ne,[I.name]:re}}}})},onFinish:()=>{Je(e("saved"))}},I.name+N)},"service-item-prop-"+I.name+N)),b&&E&&E.optionalProps&&E.optionalProps.length>0&&d("details",{class:"pt-2 border-none",children:[d("summary",{style:{lineHeight:"1rem"},children:[e("moreOptions"),"\xA0\u{1F449}"]}),d("div",{children:E.optionalProps.map((I,N)=>{let re=b[I.name];return I.name==="apiUrl"&&E&&E.id==="openai"&&b&&b.APIKEY&&b.APIKEY.startsWith("immersiveopenai_")&&(I={...I,disabled:!0},re="https://openai-api.immersivetranslate.com/v1/chat/completions"),d("div",{class:"mt-2",children:d(Kr,{field:I,value:re,onChange:te=>{n(ae=>{let ne=ae.translationServices||{},oe=ne[E.id]||{};return{...ae,translationServices:{...ne,[E.id]:{...oe,[I.name]:te}}}})},onFinish:()=>{Je(e("saved"))}},I.name+N)},"service-item-optional-prop-"+I.name+N)})}),d("a",{href:"#",class:"secondary",onClick:I=>{I.preventDefault(),n(N=>{let re=N.translationServices||{};return{...N,translationServices:{...re,[E.id]:{}}}}),setTimeout(()=>{window.location.reload()},100)},children:e("resetToDefaultSettings")})]}),b&&E&&d("div",{class:"text-right",children:[k&&d("span",{class:"verified text-green-500 mr-2",children:e("verified")}),f&&d("span",{class:"verified text-red-500 mr-2",children:f}),d("a",{"aria-busy":g,href:"#",class:"secondary",onClick:async I=>{I.preventDefault();try{S(""),h(""),p(!0),await Qn(500);let N=E.class;N&&N.clearState&&await N.clearState(),await ha({id:1e6,text:"Hello world",from:"en",to:"zh-CN",url:"https://google.com",fromByClient:"auto"},s),h("verified")}catch(N){S(N.message)}finally{p(!1)}},children:e("verifyService")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("always languages"),description:e("always translate the following languages")}),d(hs,{options:R,onToggleAlwaysLangs:de})]}),d("div",{class:"langs-list",children:Q.map((I,N)=>d("div",{class:"lang-card",children:[d("div",{id:`${I}`,children:kt(I,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${I}`,onClick:re=>{re.preventDefault(),de(!1,Q[N])}})]},"lang-"+N))}),d("div",{class:"nav",children:[d(Fe,{title:e("neverTranslateLanguagesLabel"),description:e("neverTranslateTheFollowingLanguagesDescription")}),d(hs,{options:D,onToggleAlwaysLangs:G})]}),d("div",{class:"langs-list",children:fe.map((I,N)=>d("div",{class:"lang-card",children:[d("div",{id:`${I}`,children:kt(I,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${I}`,onClick:re=>{re.preventDefault(),G(!1,fe[N])}})]},"never-lang-"+N))}),d("div",{class:"nav",children:[d(Fe,{title:e("always sites"),description:e("always translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:I=>{I.preventDefault(),me("matches")},children:e("add")})}),A?d(wa,{toggleModal:I=>{I.preventDefault(),me("matches")},onSubmitAddUrl:ge,type:"matches",urlValue:w,index:c}):null]}),d(va,{urls:o.translationUrlPattern.matches,type:"matches",onDeleteUrl:v,onEditUrl:H}),d("div",{class:"nav",children:[d(Fe,{title:e("never sites"),description:e("never translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:I=>{I.preventDefault(),me("excludeMatches")},children:e("add")})}),B?d(wa,{toggleModal:I=>{I.preventDefault(),me("excludeMatches")},onSubmitAddUrl:ge,type:"excludeMatches",urlValue:w,index:c}):null]}),d(va,{urls:o.translationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:v,onEditUrl:H})]})}var zt={};Po.forEach(e=>{e.labelKey&&(zt[e.key]=e.labelKey)});var rN=Ei();function Ic(){let e=fr(),[t,n,a,r]=bt(),[u,o]=W(null),{t:i}=be(),[s,l]=W(0),[c,m]=W("");ke(()=>{ze().then(b=>{wt({config:b,url:globalThis.location.href}).then(E=>{o(E)})})},[t]);let[g,p]=W(!1),f=b=>{p(!g)},S=(b,E,R)=>{f(E),m(b),l(R)},k=(b,E)=>{n(R=>{let D=t.inputTranslationUrlPattern,O=[];E==="matches"?D&&D.matches&&(O=D.matches):D&&D.excludeMatches&&(O=D.excludeMatches);let M=[...O];return M=Ye(b,M),{...R,inputTranslationUrlPattern:{...R.inputTranslationUrlPattern,[E]:M}}})},h=b=>{n(E=>({...E,translationTheme:b}))},A=b=>{n(E=>({...E,interfaceLanguage:b}))},_=b=>{n(E=>({...E,inputTargetLanguage:b}))},B=b=>{n(E=>({...E,inputStartingTriggerKey:b}))},L=(b,E,R,D)=>{f(R),n(O=>{let M=t.inputTranslationUrlPattern,F=[],$=[];M&&M.matches&&M.excludeMatches&&(F=M.matches,$=M.excludeMatches);let Z=[...F],de=[...$];return D==="edit"&&(R==="matches"?Z[E]=b:de[E]=b),R==="matches"?(Z=un(b,Z),de=Ye(b,$)):(Z=Ye(b,F),de=un(b,de)),{...O,inputTranslationUrlPattern:{...O.inputTranslationUrlPattern,matches:Z,excludeMatches:de}}})},w=b=>{n(E=>({...E,inputTrailingTriggerKey:b}))};if(!u)return d("div",{children:"loading"});let y=u.config,T=Mr(y.translationService,y.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("inputOptions")})}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslation"),description:y.enableInputTranslationWithoutTriggerKey?i("enableInputTranslationDescriptionForNoneKey",{inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage),trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:y.inputTrailingTriggerKeyRepeatTimes}):i("enableInputTranslationDescription",{inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage),startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey,trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:y.inputTrailingTriggerKeyRepeatTimes})}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let E=b.target.checked;n(R=>({...R,enableInputTranslation:!!E}))},checked:y.enableInputTranslation})})]}),d("details",{class:"mt-3",children:[d("summary",{children:[i("clickToSeeQuickDemo")," \u{1F447}\u{1F447}"]}),d("video",{controls:!0,src:"https://s.immersivetranslate.com/videos/immpersive-translate-input-translation-demo-202307044.mp4"})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTargetLanguage"),description:y.enableInputTranslationWithoutTriggerKey?i("inputTargetLanguageDescriptionForNoneKey"):i("inputTargetLanguageDescription",{startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),_(b.target.value)},children:T.filter(b=>b!=="auto").map((b,E)=>d("option",{value:b,selected:b===y.inputTargetLanguage,children:kt(b,y.interfaceLanguage)},"language"+E))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslationWithoutTriggerKeyTitle",{trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage)}),description:""}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let E=b.target.checked;n(R=>({...R,enableInputTranslationWithoutTriggerKey:!!E}))},checked:y.enableInputTranslationWithoutTriggerKey})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputStartingTriggerKeyTitle"),description:y.inputStartingTriggerKey==="none"?i("inputStartingTriggerKeyDescriptionForNoneKey"):i("inputStartingTriggerKeyDescription",{startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),B(b.target.value)},children:Po.filter(b=>b.skipForStarting!==!0).map((b,E)=>d("option",{value:b.key,selected:b.key===y.inputStartingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+E))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTrailingTriggerKeyTitle"),description:i("inputTrailingTriggerKeyDescription",{trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),w(b.target.value)},children:Po.filter(b=>b.skipForTrailing!==!0).map((b,E)=>d("option",{value:b.key,selected:b.key===y.inputTrailingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+E))})]}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:i("inputHelperInfo",{1:"https://immersivetranslate.com/docs/input/"})}}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTranslationBlockUrlsTitle"),description:i("inputTranslationBlockUrlsDescription")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:b=>{b.preventDefault(),f("excludeMatches")},children:i("add")})}),g?d(wa,{toggleModal:b=>{b.preventDefault(),f("excludeMatches")},onSubmitAddUrl:L,type:"excludeMatches",urlValue:c,index:s}):null]}),d(va,{urls:y.inputTranslationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:k,onEditUrl:S})]})}function Nc(e){let{t}=be(),{corfirmText:n,fingerCountToToggleTranslagePageWhenTouching:a,fingerCountToToggleTranslationMaskWhenTouching:r,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:u,onChange:o,onClose:i,shortcuts:s,mouseHoverHoldKey:l}=e,c={mouseHoverHoldKey:wn(null)},m=wn(null);for(let p=0;p{p.target&&p.target.id==="immersive-translate-overlay"&&i()};return ke(()=>{},[]),d("dialog",{id:"immersive-translate-overlay",onClick:g,open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()}}),s.map((p,f)=>{let{name:S,description:k,shortcut:h}=p;return d("div",{class:"flex justify-between items-center",children:[d("label",{class:"mb-2 text-sm",for:S,children:[k,":"]}),d("input",{type:"text",class:"!w-36",ref:c[S],disabled:p.disabled,id:S,name:S,value:h})]},`key-${f}`)}),_a()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("mouseHoverHoldKey")}),d("input",{type:"text",class:"!w-36",ref:c.mouseHoverHoldKey,id:"mouseHoverHoldKey",name:"mouseHoverHoldKey",value:l})]}),mr()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslatePageWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",ref:m,onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslagePageWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===a,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("fingerCountToToggleTranslagePageOnlyTranslationWhenTouching")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===u,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslationMaskWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslationMaskWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===r,children:`${t("fingers."+p)}`},"finger-"+f))})]}),e.note&&d(e.note,{}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()},children:t("cancel")})}),n&&d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:p=>{p.preventDefault();let f=[];for(let k=0;k{throw u});t.push(...r),n=a||""}while(n);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(n){return P.error("get config error, use default",n),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,n=Eo){let a=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:n,parents:["appDataFolder"],mimeType:"application/json"},a)}updateConfig(t,n){let a=new Blob([JSON.stringify(n,null,2)],{type:"application/json"});return this.updateContent(t,a)}async upload(t,n){let a=new FormData;a.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),a.append("file",n);let r=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:a});return r.ok?await r.json():Promise.reject(r.text())}async list(t,n){let a=new URL("https://www.googleapis.com/drive/v3/files");t&&a.searchParams.append("pageToken",t),n&&a.searchParams.append("q",n),a.searchParams.append("spaces","appDataFolder"),a.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),a.searchParams.append("pageSize","100"),a.searchParams.append("orderBy","createdTime desc");try{return P.debug("list api:",a.toString(),this.accessToken),await(await fetch(a.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){throw P.error("fetch google ip error",r),r}}async updateContent(t,n){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:n})).text()}};function sh(e,t){let n=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${To}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(n.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function lh(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function Uc(e,t,n,a,r,u,o){P.debug(`autoSyncStrategy accessToken: ${e}`);let i=new On(e);try{let s=(await i.findByName(Eo)).files;P.debug("files",s);let l=s[0]?.id,c=null;if(l&&(c=await i.getConfig(l).then(m=>({fileId:l,config:m}))),c){let{config:m,fileId:g}=c,p=m.updatedAt?new Date(m.updatedAt):new Date(0),f=t.updatedAt?new Date(t.updatedAt):new Date(0);if(P.debug("remoteUpdatedAt",p,"localUpdatedAt",f),p>f)P.debug("remote is newer, update local config",m),n(m),u&&u(!0);else if(p.getTime()===f.getTime())P.debug("remote and local are the same, do nothing"),u&&u(!1);else if(p(await cn.removeAuthInfo(),bu()&&globalThis.location.reload(),a))}static async getAuthInfo(){let t=await z.storage.local.get(Sn);if(t[Sn])return t[Sn]}static async removeAuthInfo(){return await z.storage.local.remove(Sn)}static setAuthInfo(t){return z.storage.local.set({[Sn]:t})}async auth(t=!1){let n=await cn.getAuthInfo();if(P.debug(this.CLASSNAME,"token from cache:",n),n&&n.access_token&&await ch(n.access_token).then(u=>!0).catch(u=>!1))return Promise.resolve(n);let a=sh(this._state,this._redirectUrl);return P.debug(this.CLASSNAME,"auth url: "+a),bu()?this.userscriptAuthWorkflow(a,t):this.extensionAuthWorkflow(a).then(r=>(cn.setAuthInfo(r),r))}async userscriptAuthWorkflow(t,n){return n&&await z.storage.local.set({[cu]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let n,a=!1;return new Promise((r,u)=>{let o=()=>{z.tabs.onUpdated.removeListener(i),z.tabs.onRemoved.removeListener(s)},i=(g,p,f)=>{if(P.debug(this.CLASSNAME,"create tab onUpdated: "+f.url),n===g){let S=new URL(f.url||""),k=lh(f.url);S.pathname.startsWith("/auth-done")&&k?.access_token&&(P.debug(this.CLASSNAME,"auth done: "+f.url),r({access_token:k.access_token}),a=!0,z.tabs.remove(g),o())}},s=(g,p)=>{P.debug(this.CLASSNAME,"create tab onRemoved: "+g),(g===n||!a)&&(o(),u(new Error("auth failed")))},l=Math.min(500,screen.availWidth),c=Math.min(650,screen.availHeight),m;z.windows===void 0?m=z.tabs.create({url:t}).then(g=>{n=g.id}):m=z.windows.create({url:t,type:"popup",width:l,height:c,left:Math.round((screen.width-l)/2),top:Math.round((screen.height-c)/2)}).then(g=>{n=g.tabs[0].id}),m.then(()=>{z.tabs.onUpdated.addListener(i),z.tabs.onRemoved.addListener(s)}).catch(g=>{P.debug(this.CLASSNAME,"create tab failed: "+g),u(g)})})}};var vE="https://www.googleapis.com/oauth2/v3/tokeninfo",wE=To,kE=tt().REDIRECT_URL;function ch(e){if(!e)throw"Authorization failure";let t=`${vE}?access_token=${e}`,n=new Request(t,{method:"GET"});function a(r){return new Promise((u,o)=>{r.status!=200&&o("Token validation error"),r.json().then(i=>{i.aud&&i.aud===wE?u(e):o("Token validation error")})})}return fetch(n).then(a)}function dh(e,t=!1){let n=kE;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let r=window.location.hostname,u=window.location.port;n=`${window.location.protocol}//${r}${u?`:${u}`:""}/auth-done/`}return new cn(e,n).auth(t)}function jc(e,t=!1){return dh(e,t).then(n=>n.access_token||null)}var Uu=No()?["action"]:["browser_action","page_action"],AE=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...Uu]},{id:du,contexts:Uu},{id:gu,contexts:Uu},{id:mu,contexts:Uu},{id:fg,contexts:Uu}];async function ys(e){e=e||await ze(),P.debug("update ContextMenu",e);for(let t of AE){let n=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(n=!1);let a=ya(`browser.${t.id}`,e.interfaceLanguage);z.contextMenus.update(t.id,{title:a,visible:n})}}var SE=Object.keys(Sr),DE=e=>{let t=e.translationTheme;return!e.translationThemePatterns[t]||!e.translationThemePatterns[t].matches?[]:[...e.translationThemePatterns[t].matches]};function zc(e){let t=[];return fu[e]&&(t=t.concat(fu[e])),t.push({name:"textColor",type:"color",required:!1}),t.push({name:"zoom",type:"number",default:100,required:!1}),t}function Hc(){let[e,t,n,a]=bt(),[r,u]=W(!1),[o,i]=W(!1),[s,l]=W(0),[c,m]=W(null),{t:g,setLang:p}=be(),[f,S]=W("");ke(()=>(Ne("esc",()=>{u(!1),i(!1)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(T=>{wt({config:T,url:globalThis.location.href}).then(b=>{m(b)})})},[e]);let k=T=>{t(b=>{let E={matches:[],excludeMatches:[]};return b&&b.translationThemePatterns&&b.translationThemePatterns[T]&&(E=b.translationThemePatterns[T]),dr(document,T,E),{...b,translationTheme:T}})},h=T=>{t(b=>({...b,interfaceLanguage:T}))},A=(T,b,E)=>{u(!r),t(R=>{let D=R.translationThemePatterns||{},O=D[b]||{},M=O.matches||[],F=[...M];return E==="edit"&&(F=Ye(f,M)),F=un(T,F),{...R,translationThemePatterns:{...D,[b]:{...O,matches:F}}}})},_=(T,b)=>{t(E=>{let R=E.translationThemePatterns||{},D=R[b]||{},M=[...D.matches||[]];return M=Ye(T,M),{...E,translationThemePatterns:{...R,[b]:{...D,matches:M}}}})},B=(T,b,E)=>{u(!r),S(T),l(E)};if(!c)return d("div",{children:"loading"});let L=c.config,w=g("confirm"),y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Command+C"}),"\xA0 ",d("kbd",{children:"Ctrl+Shift+D"})," "]});return le()||(Fa()?(y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsNoteForFirefox")," ",d("a",{target:"_blank",href:"https://support.mozilla.org/zh-CN/kb/%E7%AE%A1%E7%90%86Firefox%E7%9A%84%E6%89%A9%E5%B1%95%E5%BF%AB%E6%8D%B7%E6%96%B9%E5%BC%8F",children:[g("help"),"?"]}),d("br",{}),d("br",{}),g("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Cmd+C"}),"\xA0 ",d("kbd",{children:"Ctrl"}),"\xA0",d("kbd",{children:"D"})," "]}),w=g("confirm")):(y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsNoteForChrome"),"\xA0",d("a",{href:"#",onClick:T=>{T.preventDefault(),z.tabs.create({url:"chrome://extensions/shortcuts"})},children:g("goSettings")})]}),w=g("confirm"))),d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:g("interface")})}),d("div",{class:"nav",children:[d(Fe,{title:g("interface language")}),d("select",{class:"select",onChange:T=>{p(T.target.value),h(T.target.value),le()||setTimeout(()=>{ys()},200)},children:SE.map((T,b)=>d("option",{value:T,selected:T===L.interfaceLanguage,children:kt(T,L.interfaceLanguage,!0)},"locale"+b))})]}),d("div",{class:"nav",children:[d(Fe,{title:g("keyboard shortcuts")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:T=>{T.preventDefault(),i(!o)},children:g("modify")})})]}),d("div",{class:"nav",children:[d(Fe,{title:g("enableLineBreak"),description:g("enableLineBreakDescription")}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:T=>{let b=T.target.checked;t(E=>{let R=E.generalRule||{};return{...E,generalRule:{...R,lineBreakMaxTextCount:b?280:0}}})},checked:c.rule.lineBreakMaxTextCount>0,id:"switch",name:"switch",role:"switch"})})]}),c.rule.lineBreakMaxTextCount>0&&d("div",{class:"nav",children:[d(Fe,{title:g("lineBreakMaxTextCount")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:T=>{let b=T.target.value;t(E=>{let R=E.generalRule||{};return{...E,generalRule:{...R,lineBreakMaxTextCount:parseInt(b)}}})},name:"count",value:c.rule.lineBreakMaxTextCount,placeholder:"Text Length",required:!0})})]}),(Ma().any||le())&&d("div",{class:"nav",children:[d(Fe,{title:g("enableUserscriptPagePopup"),description:g("enableUserscriptPagePopupDescription",{touch:g("fingers."+L.generalRule.fingerCountToToggleTranslagePageWhenTouching)})}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:T=>{let b=T.target.checked;t(E=>{let R=E.generalRule||{};return{...E,generalRule:{...R,isShowUserscriptPagePopup:b}}})},checked:c.rule.isShowUserscriptPagePopup,id:"switch",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:g("translation display"),description:g("select diplay style")}),d("select",{class:"select",onChange:T=>{k(T.target.value)},children:P0.map((T,b)=>d("option",{value:T,selected:T===L.translationTheme,children:g(`translationTheme.${T}`)},"theme"+b))})]}),d("div",{class:"pt-2 text-sm",children:d("p",{children:[Bg,d("div",{class:"pt-2"}),d("font",{class:vr(L.translationTheme,!1,[],!1,!1).join(" "),children:d("font",{class:wr(L.translationTheme).join(" "),children:M0})}),L.translationTheme&&zc(L.translationTheme).length>0?d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:g("customTheme")}),d("div",{class:"flex flex-col items-end",children:[zc(L.translationTheme).map((T,b)=>{T.label=g(`customThemeLabel.${T.name}`);let E=L.translationThemePatterns||{},R=L.translationTheme,D=E[R]||{},O=`theme-${R}-${T.name}`,M=ih(O)||void 0,F=D[T.name]||M;return d(Kr,{field:T,value:F,onChange:$=>{t(Z=>{let de=Z.translationThemePatterns||{},me={...de[L.translationTheme]||{},[T.name]:$},ge={...Z,translationThemePatterns:{...de,[L.translationTheme]:me}};return dr(document,L.translationTheme,me),ge})}},"theme-prop"+b)}),d("a",{href:"#",class:"text-sm secondary",onClick:T=>{T.preventDefault(),t(b=>{let E=b.translationThemePatterns||{},R={...E[L.translationTheme]};zc(L.translationTheme).forEach(O=>{delete R[O.name]});let D={...b,translationThemePatterns:{...E,[L.translationTheme]:R}};return dr(document,L.translationTheme,{matches:[],excludeMatches:[]},!0),D})},children:g("resetToDefaultColor")})]})]}):null,d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:g("previewAllThemes")}),P0.map((T,b)=>d("div",{class:"pt-2",children:d("label",{children:[d("div",{class:"flex justify-between",children:d("div",{children:[d("input",{type:"radio",name:"theme",value:T,checked:T===L.translationTheme,onChange:E=>{k(E.target.value)}}),g(`translationTheme.${T}`)]})}),d("p",{children:d("font",{class:vr(T,!1,[],!1,!1).join(" "),children:d("font",{class:wr(T).join(" "),children:M0})})})]})},"theme-index-"+b))]})]})}),d("div",{class:"nav",children:[d(Fe,{title:"",description:g("useAboveStyleForTheseSites",{theme:g(`translationTheme.${L.translationTheme}`)})}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:T=>{T.preventDefault(),u(!r)},children:g("add")})})]}),r?d(wa,{toggleModal:T=>{T.preventDefault(),u(!r)},onAddInterfaceUrl:(T,b)=>{A(T,L.translationTheme,b)},urlValue:f,index:s}):null,d(va,{urls:DE(L),type:"matches",onDeleteUrl:T=>{_(T,L.translationTheme)},onEditUrl:B}),o?d(Nc,{note:y,corfirmText:w,fingerCountToToggleTranslagePageWhenTouching:L.generalRule.fingerCountToToggleTranslagePageWhenTouching,fingerCountToToggleTranslationMaskWhenTouching:L.generalRule.fingerCountToToggleTranslationMaskWhenTouching,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:L.generalRule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching,mouseHoverHoldKey:L.generalRule.mouseHoverHoldKey,shortcuts:Fg.map(T=>({name:T,shortcut:L.shortcuts[T],description:g(`browser.${T}`),disabled:!le()})),onChange:T=>{if(T){let{shortcuts:b,fingerCountToToggleTranslagePageWhenTouching:E,fingerCountToToggleTranslationMaskWhenTouching:R,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D,mouseHoverHoldKey:O}=T;le()?t(M=>{b=b||[];let F=b.reduce((Z,de)=>(Z[de.name]=de.shortcut,Z),{...M.shortcuts}),$={...M,shortcuts:F};return E!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslagePageWhenTouching:E}),R!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslationMaskWhenTouching:R}),D!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),O&&($.generalRule={...$.generalRule,mouseHoverHoldKey:O}),$}):(E!==void 0||R!==void 0||O||D!==void 0)&&t(M=>{let F={...M};return E!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslagePageWhenTouching:E}),R!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslationMaskWhenTouching:R}),D!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),O&&(F.generalRule={...F.generalRule,mouseHoverHoldKey:O}),F}),T&&T.isClose&&i(!1)}else i(!1),z.tabs.create({url:"chrome://extensions/shortcuts"})},onClose:()=>{i(!1)}}):null]})}function Wc(){let[e,t,n,a]=bt(),[r,u]=W(null),{t:o}=be(),[i,s]=W({}),[l,c]=W({});ke(()=>{ze().then(w=>{u(w)}),z.storage.sync.get(null).then(w=>{s(w),z.storage.local.get(null).then(y=>{c(y)})})},[e]);let m=w=>{t(y=>({...y,debug:w}))},g=w=>{t(y=>({...y,beta:w}))},p=w=>{t(()=>({...w}))},f=w=>{try{let y=w.target.value,T={...e};if(!y)delete T.rules;else{let b=JSON.parse(y);if(!Array.isArray(b)){Lt("Invalid rules, rules must be an array");return}T.rules=b}p(T),Je(o("saved"))}catch(y){Lt(`Invalid JSON ${y.message}`)}},S=w=>{let y={...e};y.generalRule||(y.generalRule={}),y.generalRule={...y.generalRule,injectedCss:w.target.value||""},p(y),Je(o("saved"))},k=w=>{try{let y=JSON.parse(w.target.value);p(y),Je(o("saved"))}catch(y){Lt(`Invalid JSON ${y.message}`)}},h=w=>{w.preventDefault()},A=w=>{w.preventDefault(),confirm(o("confirmResetConfig"))&&(p(Ba()),ia().catch(y=>{P.error("clean local config error",y)}),pr().catch(y=>{P.error("clean buildin config error",y)}),Gr().catch(y=>{P.error("clean cache error",y)}),Je(o("resetSuccess")))},_=w=>{w.preventDefault();let y={...e};delete y.rules,p(y),Je(o("resetThisSuccess"))},B=w=>{w.preventDefault();let y={...e};y.generalRule||(y.generalRule={}),y.generalRule={...y.generalRule},delete y.generalRule.injectedCss,p(y),Je(o("resetThisSuccess"))},L=`[{ + `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let m=c[0].translations[0],g=c[0].detectedLanguage;return{text:m.text,from:Vf.get(g.language),to:Vf.get(m.to)}}function Qf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Ga=null,bx=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Oc=new Map(bx),$r=class extends ye{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Ga=null,await us(yo)}async translate(n){let{text:a,from:r,to:u}=n;return a?await Zf(a,r,u):{...n}}async init(){if(!Ga){Ga={};let n=await as(yo);n&&(Ga=n)}await eh(Ga)}async translateList(n){let{from:a,to:r,text:u}=n,o=Oc.get(a)||"auto",i=Oc.get(r)||r;o==="auto"&&(o="");let s=await eh(Ga),l=[];for(let p of u)l.push({Text:p});let c=JSON.stringify(l),m=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await ue({url:m,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(p=>p.translations[0]?.text||""),from:a,to:r};throw new Error("Microsoft translate error "+JSON.stringify(g))}};$r.langMap=Oc;async function eh(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return th().catch(r=>{P.error(r)}),e}return th()}async function th(){let e=await Pu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=Qf(e),n=t.accessTokenExpiresAt,r=new Date(n).getTime()-Date.now();return Ga=t,await rs(yo,t,r-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var nh=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Nc=new Map(nh),yx=new Map(nh.map(([e,t])=>[t,e])),cs=class extends ye{constructor(n,a,r){super(n,a,r);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:r}=this,{appid:u,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Nc.get(s)||"auto",to:Nc.get(l)||l,q:i,salt:a,appid:u,sign:ca(u+i+a+o)}),m=new URL(r);m.search=c.toString();let g=await ue({url:m.toString()});if(g.error_code)throw new gt("API_SERVER_ERROR",g.error_msg);let{trans_result:p,from:f}=g,A=p.map(({dst:h})=>h);return{from:yx.get(f)||f,to:l,text:A.join(` +`)}}};cs.langMap=Nc;var ah=cs;var Tx=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ds=new Map(Tx),gs=class extends ye{constructor(n,a,r){super(n,a,r);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(u=>u.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:r,to:u}=n;if(!ds.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${ds.get(r)||"auto"}2${ds.get(u)}`})})).target,from:r,to:u}}};gs.langMap=ds;var rh=gs;var xx=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ms=new Map(xx),ps=class extends ye{constructor(n,a,r){super(n,a,r);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n;if(!ms.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a;return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${ms.get(r)||"auto"}2${ms.get(u)}`})})).target,from:r,to:u}}};ps.langMap=ms;var uh=ps;var oh=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Uc=new Map(oh),Ex=new Map(oh.map(([e,t])=>[t,e]));function Cx(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var fs=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o=wx(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+Cx(a)+o+i+this.appSecret,l=await Tn(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Uc.get(r)||"auto",to:Uc.get(u)||u,sign:l,signType:"v3",curtime:i.toString()},m=new URLSearchParams(c),p=await ue({url:"https://openapi.youdao.com/api",method:"POST",body:m.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!p.translation)throw new Error(JSON.stringify(p));let f=p.l,[A,k]=f.split("2");return{text:p.translation.join(` +`),from:Ex.get(A),to:u}}};fs.langMap=Uc;function wx(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r[t,e]));var hs=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o={q:a,from:jc.get(r)||"auto",to:jc.get(u)||u},i=new URLSearchParams(o),s=await ue({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` +`),from:r,to:u};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};hs.langMap=jc;var lh=hs;var vx={mock:Nr,mock2:Nr,google:Vn,transmart:Va,deepl:If,volc:$f,volcAlpha:zr,bing:$r,tencent:$a,tenAlpha:qa,baidu:ah,caiyun:rh,cai:uh,openl:Xi,youdao:ih,you:lh,d:Ca,dpro:Ca,deeplx:Hr,niu:Of,azure:Nf,openai:jf,chatgpt:Nu,papago:Uf},Gn={};Object.keys(hn).forEach(e=>{Gn[e]={...hn[e],class:vx[e]}});function Mr(e,t){let n=Xt;if(Gn[e]&&Gn[e].class&&Gn[e].class.langMap&&Gn[e].class.langMap.size>0){let a=Gn[e].class.langMap,r=n.filter(u=>a.get(u));return r.includes(t)||r.unshift("placeholder"),r}else return Xt}function ch(e,t){let n=Gn[e],a=t.config.translationServices[e]||{},r=!0,u=n.allProps||[],o=[],i=[];if(u.length>0){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,explicitProps:o||[],optionalProps:i||[]}}async function ha(e,t){if(!e.text)return e;let n=await _n({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new gt("translateFailed","translate failed")}async function gc(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,r=t.translationServices,u=n,o=r[u]||{},i=new Gn[u].class(o,a,{translationService:u}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await j3(u,o),await i.init()}async function _n(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:r,state:u}=t,o=a.translationGeneralConfig,i=a.translationServices,s=r,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(h=>({...h,from:"auto"})));let c=[],m={sentences:Array(e.sentences.length)},g=e.sentences.length,p=-1;if(u.cache)for(let h of e.sentences){p++;let S=s;s==="openl"&&(S=s+"-"+l.codename||Xi.DEFAULT_CODENAME);let _=null;try{_=await oo(Ef({originalText:h.text,from:h.from,to:h.to,service:S}),1e3)}catch(B){P.warn("query cache DB error, but it's ok",B)}if(_){let B={...h,text:_.translatedText};m.sentences[p]=B,n&&n(null,B,h)}else c.push(h)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&P.debug(`use ${g-f} sentences from cache`),!c.length)return m;let A;try{A=new Gn[s].class(l,o,{translationService:s}),await A.init()}catch(h){if(n)for(let S of c)n(h,null,S);throw h}let k=await A.multipleTranslate({sentences:c},l,(h,S,_)=>{if(n&&n(h,S,_),!h&&S&&!s.startsWith("mock")&&u.cache){let B=s;s==="openl"&&(B=s+"-"+l.codename||Xi.DEFAULT_CODENAME),u.cache&&oo(Cf({translatedText:S.text,from:_.from,to:_.to,detectedFrom:S.from,key:ca(_.text),service:B}),3e3).catch(L=>{P.warn("set cache DB error",L)})}});for(let h of k.sentences){let S=m.sentences.findIndex(_=>!_);if(S===-1)throw new gt("translateFailed","can not match the result");m.sentences[S]=h}return m}function Fe(e){return d("div",{class:"nav-left",children:[d("div",{class:"title",children:e.title}),d("div",{class:"description",children:e.description})]})}function qr(e){let{t}=be(),n={};e.width&&(n={width:`${e.width}px`});let[a,r]=W(e.value),{field:u,onFinish:o}=e,i=u.name;u.label&&(i=u.label),u.labelKey&&(i=t(u.labelKey));let s={};return u.descriptionLink1&&(s[1]=u.descriptionLink1),d("div",{class:"mt-3",children:[d("label",{for:e.field.name,class:"mb-[var(--spacing)]",children:[i,"\uFF1A"]}),e.field.type==="textarea"?d(rt,{children:[d("textarea",{style:n,autoComplete:"off",required:e.field.required,placeholder:e.field.placeholder||e.field.name,class:"input",value:a,type:e.type,onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]}):d(rt,{children:[d("input",{style:n,required:e.field.required,placeholder:e.field.placeholder||e.field.name,value:a,type:e.type,disabled:e.field.disabled||!1,name:e.field.name,autoComplete:"off",onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{(e.type==="text"||e.type==="password")&&o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]})]})}function Kr(e){let{t}=be(),[n,a]=W(!0),[r,u]=W(!1),{onFinish:o,field:i,onChange:s,value:l}=e;l=l===void 0?i.default||"":l,ke(()=>{i.options&&(i.options.some(g=>g.value===l)||u(!0))},[]);let c=i.name;if(i.label&&(c=i.label),i.labelKey&&(c=t(i.labelKey)),i.type==="select")return d("div",{class:"flex flex-col mt-5 mb-6",children:[d("label",{class:"text-16 mb-2",children:[c,"\uFF1A"]}),d(G3,{maxWidth:200,items:i.options.map(m=>({label:`${m.label?t(m.label):m.value}`,value:m.value,selected:l===m.value,onSelected:()=>{s(m.value)}})),onChange:s,isInput:r,value:l}),d("label",{for:"customContent",class:"text-sm",onClick:()=>{u(!r)},children:[d("input",{type:"checkbox",id:"customContent",name:"customContent",checked:r}),t("customContent")]})]});if(i.type==="text")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="textarea")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="number")return d("div",{children:d(qr,{field:i,value:l,type:i.type,width:196,onChange:s})});if(i.type==="password")return d("div",{children:[d(qr,{field:i,value:l,type:n?i.type:"text",onChange:s,onFinish:o}),d("label",{for:"translate",onClick:()=>{a(!n)},children:[d("input",{type:"checkbox",id:"translate",name:"translate"}),t("show password")]})]});if(i.type==="color"){let m=l,g="";return m||(m="#FFFFFF",g="#FFFFFF"),d("div",{children:d("label",{class:"flex items-center",for:i.name,children:[d("span",{class:"mr-2",children:i.label||i.name}),d("input",{type:"text",id:i.name,class:"border-color-text mr-2",placeholder:g||"",value:l,onInput:p=>{s(p.target.value)}}),d("input",{id:i.name,type:"color",name:i.name,value:m,onInput:p=>{s(p.target.value)}})]})})}else return null}function bs(e){let{t,lang:n}=be();return d("details",{role:"list",class:"nav-right",children:[d("summary",{"aria-haspopup":"listbox",children:t("edit")}),d("ul",{role:"listbox",class:"option-list",children:e.options.map((a,r)=>{let u=kt(a.value,n);return d("li",{children:d("label",{children:[d("input",{type:"checkbox",onChange:()=>{e.onToggleAlwaysLangs(!a.checked,a.value)},value:a.value,checked:a.checked}),u]})},"language-"+r)})})]})}function wa(e){let{t}=be();return d("div",{children:e.urls.map((n,a)=>d("div",{class:"url-list",children:[d("div",{class:"url-left",children:d("div",{class:"url-name height-tight",children:n})}),d("nav",{children:d("ul",{children:d("li",{children:d("details",{role:"list",dir:"rtl",children:[d("summary",{"aria-haspopup":"listbox",role:"link"}),d("ul",{class:"delete",role:"listbox",children:[d("li",{children:d("a",{onClick:r=>{e.onEditUrl(n,e.type,a)},children:t("edit")})}),d("li",{children:d("a",{onClick:r=>{e.onDeleteUrl(n,e.type)},children:t("delete")})})]})]})})})})]},"menu"+a))})}function va(e){let{t}=be(),n=kn(null),{toggleModal:a}=e;return d("dialog",{id:"immersive-translate-overlay",onClick:u=>{u.target&&u.target.id==="immersive-translate-overlay"&&a(u)},open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:e.toggleModal}),d("div",{class:"add-text",children:t("add url")}),d("input",{placeholder:"URL",ref:n,value:e.urlValue}),d("blockquote",{children:d("p",{class:"text-sm",children:t("addUrlDescription")})}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:e.toggleModal,children:t("cancel")})}),d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:u=>{if(u.preventDefault(),n.current&&n.current.value){if(e.onSubmitAddUrl){if(e.urlValue!==""){e.onSubmitAddUrl(n.current.value,e.index,e.type,"edit");return}e.onSubmitAddUrl(n.current.value,e.index,e.type);return}else if(e.onAddInterfaceUrl){if(e.urlValue!==""){e.onAddInterfaceUrl(n.current.value,"edit");return}e.onAddInterfaceUrl(n.current.value)}}},children:t("confirm")})})]})]})})}async function Vr(){let e=["bingGlobalConfig","baiduGlobalConfig",fn,Dn];for(let t of e)await z.storage.local.remove(t);le()||await jm(),await zf()}function dh(){return le()?Promise.resolve("0 B"):tl()}var gh=xi();function ys(){let{t:e}=be(),[t,n,a,r,u]=bt(),[o,i]=W(null),[s,l]=W(null),[c,m]=W(0),[g,p]=W(!1),[f,A]=W(""),[k,h]=W(""),[S,_]=W(!1),[B,L]=W(!1),[v,y]=W(""),T=[];s&&(T=$o(s));let b=null,x=null,R=[],D=[];if(o&&s){let{translationService:O,translationServices:N}=o;hn[O]&&(x=ch(O,s)),N&&N[O]?b=Object.assign({},N[O]||{}):b={},R=gh.concat("").map(re=>o.translationLanguagePattern&&o.translationLanguagePattern.matches&&o.translationLanguagePattern.matches.includes(re)?{checked:!0,value:re}:{checked:!1,value:re}),D=gh.map(re=>o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&o.translationLanguagePattern.excludeMatches.includes(re)?{checked:!0,value:re}:{checked:!1,value:re})}ke(()=>(Ne("esc",()=>{_(!1),L(!1)}),ze().then(O=>{i(O),P.debug("current config",O)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(O=>{i(O)})},[t]),ke(()=>{o&&vt({url:"http://localhost",config:o,state:{cache:!1}}).then(O=>{l(O)})},[o]);let I=O=>{n(N=>({...N,translationService:O}))},M=O=>{n(()=>({...O}))},F=O=>{O.preventDefault(),confirm(e("confirmResetConfig"))&&(u(Ba()),ia().catch(N=>{P.error("clean local config error",N)}),pr().catch(N=>{P.error("clean buildin config error",N)}),Vr().catch(N=>{P.error("clean cache error",N)}),Je(e("resetSuccess")))},$=O=>{n(N=>({...N,targetLanguage:O}))},Z=(O,N)=>{if(!O){n(ae=>{let ne={...ae.translationLanguagePattern};return{...ae,translationLanguagePattern:{...ae.translationLanguagePattern,matches:Ye(N,ne.matches),excludeMatches:Ye(N,ne.excludeMatches)}}});return}let re=O,te=re==="matches"?"excludeMatches":"matches";N&&n(ae=>{let ne={...ae.translationLanguagePattern};return ne[re]=un(N,ne[re]),ne[te]=Ye(N,ne[te]),{...ae,translationLanguagePattern:{...ae.translationLanguagePattern,...ne}}})},de=(O,N)=>{Z(O?"matches":void 0,N)},V=(O,N)=>{Z(O?"excludeMatches":void 0,N)},me=O=>{O==="matches"?_(!S):L(!B)},ge=(O,N,re,te)=>{me(re),n(ae=>{let ne=t.translationUrlPattern,oe=[],Y=[];ne&&ne.matches&&ne.excludeMatches&&(oe=ne.matches,Y=ne.excludeMatches);let ce=[...oe],Le=[...Y];return te==="edit"&&(re==="matches"?ce[N]=O:Le[N]=O),re==="matches"?(ce=un(O,ce),Le=Ye(O,Y)):(ce=Ye(O,oe),Le=un(O,Le)),{...ae,translationUrlPattern:{...ae.translationUrlPattern,matches:ce,excludeMatches:Le}}})},w=(O,N)=>{n(re=>{let te=t.translationUrlPattern,ae=[];N==="matches"?te&&te.matches&&(ae=te.matches):te&&te.excludeMatches&&(ae=te.excludeMatches);let ne=[...ae];return ne=Ye(O,ne),{...re,translationUrlPattern:{...re.translationUrlPattern,[N]:ne}}})},H=(O,N,re)=>{me(N),y(O),m(re)};if(!o)return d("div",{children:"loading"});let Q=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.matches&&(Q=o.translationLanguagePattern.matches);let fe=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&(fe=o.translationLanguagePattern.excludeMatches);let se=Mr(o.translationService,o.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:[d("strong",{class:"text-lg",children:e("general")}),d("a",{class:"text-sm",href:"#",onClick:F,children:e("reset")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("target"),description:e("translate other languages into specific language")}),d("select",{class:"select",onChange:O=>{O.preventDefault(),$(O.target.value)},children:se.filter(O=>O!=="auto").map((O,N)=>d("option",{value:O,selected:O===o.targetLanguage,children:kt(O,o.interfaceLanguage)},"language"+N))})]}),d("div",{class:"nav",children:[d(Fe,{title:e("service"),description:e("select translation service")}),d("select",{class:"select",onChange:O=>{O.preventDefault(),A(""),h(""),I(O.target.value)},children:T.map((O,N)=>d("option",{value:O.id,selected:O.id===o.translationService,children:`${e("translationServices."+O.id)}${O.ok?"":" "+e("needActionForOptions")}`},"service-item="+N))})]}),x&&x.docUrl?d("div",{children:[d("a",{target:"_blank",class:"pb-1 docUrl",href:x.homepage,children:e(`translationServices.${x.id}`)}),"\xA0",d("span",{class:"description pb-1",children:e("please refer to")}),"\xA0",d("a",{target:"_blank",class:"pb-1 docUrl",href:x.docUrl,children:e("KeyAndConfigurationTutorial")})]}):null,b&&x&&x.explicitProps.length>0&&x.explicitProps.map((O,N)=>d("div",{class:"mt-2",children:d(Kr,{field:O,value:b[O.name],onChange:re=>{n(te=>{let ae=te.translationServices||{},ne=ae[x.id]||{};return{...te,translationServices:{...ae,[x.id]:{...ne,[O.name]:re}}}})},onFinish:()=>{Je(e("saved"))}},O.name+N)},"service-item-prop-"+O.name+N)),b&&x&&x.optionalProps&&x.optionalProps.length>0&&d("details",{class:"pt-2 border-none",children:[d("summary",{style:{lineHeight:"1rem"},children:[e("moreOptions"),"\xA0\u{1F449}"]}),d("div",{children:x.optionalProps.map((O,N)=>{let re=b[O.name];return O.name==="apiUrl"&&x&&x.id==="openai"&&b&&b.APIKEY&&b.APIKEY.startsWith("immersiveopenai_")&&(O={...O,disabled:!0},re="https://openai-api.immersivetranslate.com/v1/chat/completions"),d("div",{class:"mt-2",children:d(Kr,{field:O,value:re,onChange:te=>{n(ae=>{let ne=ae.translationServices||{},oe=ne[x.id]||{};return{...ae,translationServices:{...ne,[x.id]:{...oe,[O.name]:te}}}})},onFinish:()=>{Je(e("saved"))}},O.name+N)},"service-item-optional-prop-"+O.name+N)})}),d("a",{href:"#",class:"secondary",onClick:O=>{O.preventDefault(),n(N=>{let re=N.translationServices||{};return{...N,translationServices:{...re,[x.id]:{}}}}),setTimeout(()=>{window.location.reload()},100)},children:e("resetToDefaultSettings")})]}),b&&x&&d("div",{class:"text-right",children:[k&&d("span",{class:"verified text-green-500 mr-2",children:e("verified")}),f&&d("span",{class:"verified text-red-500 mr-2",children:f}),d("a",{"aria-busy":g,href:"#",class:"secondary",onClick:async O=>{O.preventDefault();try{A(""),h(""),p(!0),await Qn(500);let N=x.class;N&&N.clearState&&await N.clearState(),await ha({id:1e6,text:"Hello world",from:"en",to:"zh-CN",url:"https://google.com",fromByClient:"auto"},s),h("verified")}catch(N){A(N.message)}finally{p(!1)}},children:e("verifyService")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("always languages"),description:e("always translate the following languages")}),d(bs,{options:R,onToggleAlwaysLangs:de})]}),d("div",{class:"langs-list",children:Q.map((O,N)=>d("div",{class:"lang-card",children:[d("div",{id:`${O}`,children:kt(O,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${O}`,onClick:re=>{re.preventDefault(),de(!1,Q[N])}})]},"lang-"+N))}),d("div",{class:"nav",children:[d(Fe,{title:e("neverTranslateLanguagesLabel"),description:e("neverTranslateTheFollowingLanguagesDescription")}),d(bs,{options:D,onToggleAlwaysLangs:V})]}),d("div",{class:"langs-list",children:fe.map((O,N)=>d("div",{class:"lang-card",children:[d("div",{id:`${O}`,children:kt(O,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${O}`,onClick:re=>{re.preventDefault(),V(!1,fe[N])}})]},"never-lang-"+N))}),d("div",{class:"nav",children:[d(Fe,{title:e("always sites"),description:e("always translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:O=>{O.preventDefault(),me("matches")},children:e("add")})}),S?d(va,{toggleModal:O=>{O.preventDefault(),me("matches")},onSubmitAddUrl:ge,type:"matches",urlValue:v,index:c}):null]}),d(wa,{urls:o.translationUrlPattern.matches,type:"matches",onDeleteUrl:w,onEditUrl:H}),d("div",{class:"nav",children:[d(Fe,{title:e("never sites"),description:e("never translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:O=>{O.preventDefault(),me("excludeMatches")},children:e("add")})}),B?d(va,{toggleModal:O=>{O.preventDefault(),me("excludeMatches")},onSubmitAddUrl:ge,type:"excludeMatches",urlValue:v,index:c}):null]}),d(wa,{urls:o.translationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:w,onEditUrl:H})]})}var zt={};Po.forEach(e=>{e.labelKey&&(zt[e.key]=e.labelKey)});var pN=xi();function zc(){let e=fr(),[t,n,a,r]=bt(),[u,o]=W(null),{t:i}=be(),[s,l]=W(0),[c,m]=W("");ke(()=>{ze().then(b=>{vt({config:b,url:globalThis.location.href}).then(x=>{o(x)})})},[t]);let[g,p]=W(!1),f=b=>{p(!g)},A=(b,x,R)=>{f(x),m(b),l(R)},k=(b,x)=>{n(R=>{let D=t.inputTranslationUrlPattern,I=[];x==="matches"?D&&D.matches&&(I=D.matches):D&&D.excludeMatches&&(I=D.excludeMatches);let M=[...I];return M=Ye(b,M),{...R,inputTranslationUrlPattern:{...R.inputTranslationUrlPattern,[x]:M}}})},h=b=>{n(x=>({...x,translationTheme:b}))},S=b=>{n(x=>({...x,interfaceLanguage:b}))},_=b=>{n(x=>({...x,inputTargetLanguage:b}))},B=b=>{n(x=>({...x,inputStartingTriggerKey:b}))},L=(b,x,R,D)=>{f(R),n(I=>{let M=t.inputTranslationUrlPattern,F=[],$=[];M&&M.matches&&M.excludeMatches&&(F=M.matches,$=M.excludeMatches);let Z=[...F],de=[...$];return D==="edit"&&(R==="matches"?Z[x]=b:de[x]=b),R==="matches"?(Z=un(b,Z),de=Ye(b,$)):(Z=Ye(b,F),de=un(b,de)),{...I,inputTranslationUrlPattern:{...I.inputTranslationUrlPattern,matches:Z,excludeMatches:de}}})},v=b=>{n(x=>({...x,inputTrailingTriggerKey:b}))};if(!u)return d("div",{children:"loading"});let y=u.config,T=Mr(y.translationService,y.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("inputOptions")})}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslation"),description:y.enableInputTranslationWithoutTriggerKey?i("enableInputTranslationDescriptionForNoneKey",{inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage),trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:y.inputTrailingTriggerKeyRepeatTimes}):i("enableInputTranslationDescription",{inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage),startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey,trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:y.inputTrailingTriggerKeyRepeatTimes})}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let x=b.target.checked;n(R=>({...R,enableInputTranslation:!!x}))},checked:y.enableInputTranslation})})]}),d("details",{class:"mt-3",children:[d("summary",{children:[i("clickToSeeQuickDemo")," \u{1F447}\u{1F447}"]}),d("video",{controls:!0,src:"https://s.immersivetranslate.com/videos/immpersive-translate-input-translation-demo-202307044.mp4"})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTargetLanguage"),description:y.enableInputTranslationWithoutTriggerKey?i("inputTargetLanguageDescriptionForNoneKey"):i("inputTargetLanguageDescription",{startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),_(b.target.value)},children:T.filter(b=>b!=="auto").map((b,x)=>d("option",{value:b,selected:b===y.inputTargetLanguage,children:kt(b,y.interfaceLanguage)},"language"+x))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslationWithoutTriggerKeyTitle",{trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage)}),description:""}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let x=b.target.checked;n(R=>({...R,enableInputTranslationWithoutTriggerKey:!!x}))},checked:y.enableInputTranslationWithoutTriggerKey})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputStartingTriggerKeyTitle"),description:y.inputStartingTriggerKey==="none"?i("inputStartingTriggerKeyDescriptionForNoneKey"):i("inputStartingTriggerKeyDescription",{startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),B(b.target.value)},children:Po.filter(b=>b.skipForStarting!==!0).map((b,x)=>d("option",{value:b.key,selected:b.key===y.inputStartingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+x))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTrailingTriggerKeyTitle"),description:i("inputTrailingTriggerKeyDescription",{trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),v(b.target.value)},children:Po.filter(b=>b.skipForTrailing!==!0).map((b,x)=>d("option",{value:b.key,selected:b.key===y.inputTrailingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+x))})]}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:i("inputHelperInfo",{1:"https://immersivetranslate.com/docs/input/"})}}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTranslationBlockUrlsTitle"),description:i("inputTranslationBlockUrlsDescription")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:b=>{b.preventDefault(),f("excludeMatches")},children:i("add")})}),g?d(va,{toggleModal:b=>{b.preventDefault(),f("excludeMatches")},onSubmitAddUrl:L,type:"excludeMatches",urlValue:c,index:s}):null]}),d(wa,{urls:y.inputTranslationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:k,onEditUrl:A})]})}function Hc(e){let{t}=be(),{corfirmText:n,fingerCountToToggleTranslagePageWhenTouching:a,fingerCountToToggleTranslationMaskWhenTouching:r,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:u,onChange:o,onClose:i,shortcuts:s,mouseHoverHoldKey:l}=e,c={mouseHoverHoldKey:kn(null)},m=kn(null);for(let p=0;p{p.target&&p.target.id==="immersive-translate-overlay"&&i()};return ke(()=>{},[]),d("dialog",{id:"immersive-translate-overlay",onClick:g,open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()}}),s.map((p,f)=>{let{name:A,description:k,shortcut:h}=p;return d("div",{class:"flex justify-between items-center",children:[d("label",{class:"mb-2 text-sm",for:A,children:[k,":"]}),d("input",{type:"text",class:"!w-36",ref:c[A],disabled:p.disabled,id:A,name:A,value:h})]},`key-${f}`)}),_a()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("mouseHoverHoldKey")}),d("input",{type:"text",class:"!w-36",ref:c.mouseHoverHoldKey,id:"mouseHoverHoldKey",name:"mouseHoverHoldKey",value:l})]}),mr()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslatePageWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",ref:m,onChange:p=>{p.preventDefault();let f=p.target.value,A={fingerCountToToggleTranslagePageWhenTouching:parseInt(f)};o(A)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===a,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("fingerCountToToggleTranslagePageOnlyTranslationWhenTouching")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,A={fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:parseInt(f)};o(A)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===u,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslationMaskWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,A={fingerCountToToggleTranslationMaskWhenTouching:parseInt(f)};o(A)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===r,children:`${t("fingers."+p)}`},"finger-"+f))})]}),e.note&&d(e.note,{}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()},children:t("cancel")})}),n&&d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:p=>{p.preventDefault();let f=[];for(let k=0;k{throw u});t.push(...r),n=a||""}while(n);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(n){return P.error("get config error, use default",n),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,n=xo){let a=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:n,parents:["appDataFolder"],mimeType:"application/json"},a)}updateConfig(t,n){let a=new Blob([JSON.stringify(n,null,2)],{type:"application/json"});return this.updateContent(t,a)}async upload(t,n){let a=new FormData;a.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),a.append("file",n);let r=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:a});return r.ok?await r.json():Promise.reject(r.text())}async list(t,n){let a=new URL("https://www.googleapis.com/drive/v3/files");t&&a.searchParams.append("pageToken",t),n&&a.searchParams.append("q",n),a.searchParams.append("spaces","appDataFolder"),a.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),a.searchParams.append("pageSize","100"),a.searchParams.append("orderBy","createdTime desc");try{return P.debug("list api:",a.toString(),this.accessToken),await(await fetch(a.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){throw P.error("fetch google ip error",r),r}}async updateContent(t,n){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:n})).text()}};function ph(e,t){let n=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${To}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(n.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function fh(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function Wc(e,t,n,a,r,u,o){P.debug(`autoSyncStrategy accessToken: ${e}`);let i=new In(e);try{let s=(await i.findByName(xo)).files;P.debug("files",s);let l=s[0]?.id,c=null;if(l&&(c=await i.getConfig(l).then(m=>({fileId:l,config:m}))),c){let{config:m,fileId:g}=c,p=m.updatedAt?new Date(m.updatedAt):new Date(0),f=t.updatedAt?new Date(t.updatedAt):new Date(0);if(P.debug("remoteUpdatedAt",p,"localUpdatedAt",f),p>f)P.debug("remote is newer, update local config",m),n(m),u&&u(!0);else if(p.getTime()===f.getTime())P.debug("remote and local are the same, do nothing"),u&&u(!1);else if(p(await cn.removeAuthInfo(),bu()&&globalThis.location.reload(),a))}static async getAuthInfo(){let t=await z.storage.local.get(Dn);if(t[Dn])return t[Dn]}static async removeAuthInfo(){return await z.storage.local.remove(Dn)}static setAuthInfo(t){return z.storage.local.set({[Dn]:t})}async auth(t=!1){let n=await cn.getAuthInfo();if(P.debug(this.CLASSNAME,"token from cache:",n),n&&n.access_token&&await hh(n.access_token).then(u=>!0).catch(u=>!1))return Promise.resolve(n);let a=ph(this._state,this._redirectUrl);return P.debug(this.CLASSNAME,"auth url: "+a),bu()?this.userscriptAuthWorkflow(a,t):this.extensionAuthWorkflow(a).then(r=>(cn.setAuthInfo(r),r))}async userscriptAuthWorkflow(t,n){return n&&await z.storage.local.set({[cu]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let n,a=!1;return new Promise((r,u)=>{let o=()=>{z.tabs.onUpdated.removeListener(i),z.tabs.onRemoved.removeListener(s)},i=(g,p,f)=>{if(P.debug(this.CLASSNAME,"create tab onUpdated: "+f.url),n===g){let A=new URL(f.url||""),k=fh(f.url);A.pathname.startsWith("/auth-done")&&k?.access_token&&(P.debug(this.CLASSNAME,"auth done: "+f.url),r({access_token:k.access_token}),a=!0,z.tabs.remove(g),o())}},s=(g,p)=>{P.debug(this.CLASSNAME,"create tab onRemoved: "+g),(g===n||!a)&&(o(),u(new Error("auth failed")))},l=Math.min(500,screen.availWidth),c=Math.min(650,screen.availHeight),m;z.windows===void 0?m=z.tabs.create({url:t}).then(g=>{n=g.id}):m=z.windows.create({url:t,type:"popup",width:l,height:c,left:Math.round((screen.width-l)/2),top:Math.round((screen.height-c)/2)}).then(g=>{n=g.tabs[0].id}),m.then(()=>{z.tabs.onUpdated.addListener(i),z.tabs.onRemoved.addListener(s)}).catch(g=>{P.debug(this.CLASSNAME,"create tab failed: "+g),u(g)})})}};var Sx="https://www.googleapis.com/oauth2/v3/tokeninfo",Dx=To,Lx=tt().REDIRECT_URL;function hh(e){if(!e)throw"Authorization failure";let t=`${Sx}?access_token=${e}`,n=new Request(t,{method:"GET"});function a(r){return new Promise((u,o)=>{r.status!=200&&o("Token validation error"),r.json().then(i=>{i.aud&&i.aud===Dx?u(e):o("Token validation error")})})}return fetch(n).then(a)}function bh(e,t=!1){let n=Lx;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let r=window.location.hostname,u=window.location.port;n=`${window.location.protocol}//${r}${u?`:${u}`:""}/auth-done/`}return new cn(e,n).auth(t)}function $c(e,t=!1){return bh(e,t).then(n=>n.access_token||null)}var Uu=No()?["action"]:["browser_action","page_action"],Px=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...Uu]},{id:du,contexts:Uu},{id:gu,contexts:Uu},{id:mu,contexts:Uu},{id:Tg,contexts:Uu}];async function Ts(e){e=e||await ze(),P.debug("update ContextMenu",e);for(let t of Px){let n=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(n=!1);let a=ya(`browser.${t.id}`,e.interfaceLanguage);z.contextMenus.update(t.id,{title:a,visible:n})}}var Mx=Object.keys(Sr),Fx=e=>{let t=e.translationTheme;return!e.translationThemePatterns[t]||!e.translationThemePatterns[t].matches?[]:[...e.translationThemePatterns[t].matches]};function qc(e){let t=[];return fu[e]&&(t=t.concat(fu[e])),t.push({name:"textColor",type:"color",required:!1}),t.push({name:"zoom",type:"number",default:100,required:!1}),t}function Kc(){let[e,t,n,a]=bt(),[r,u]=W(!1),[o,i]=W(!1),[s,l]=W(0),[c,m]=W(null),{t:g,setLang:p}=be(),[f,A]=W("");ke(()=>(Ne("esc",()=>{u(!1),i(!1)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(T=>{vt({config:T,url:globalThis.location.href}).then(b=>{m(b)})})},[e]);let k=T=>{t(b=>{let x={matches:[],excludeMatches:[]};return b&&b.translationThemePatterns&&b.translationThemePatterns[T]&&(x=b.translationThemePatterns[T]),dr(document,T,x),{...b,translationTheme:T}})},h=T=>{t(b=>({...b,interfaceLanguage:T}))},S=(T,b,x)=>{u(!r),t(R=>{let D=R.translationThemePatterns||{},I=D[b]||{},M=I.matches||[],F=[...M];return x==="edit"&&(F=Ye(f,M)),F=un(T,F),{...R,translationThemePatterns:{...D,[b]:{...I,matches:F}}}})},_=(T,b)=>{t(x=>{let R=x.translationThemePatterns||{},D=R[b]||{},M=[...D.matches||[]];return M=Ye(T,M),{...x,translationThemePatterns:{...R,[b]:{...D,matches:M}}}})},B=(T,b,x)=>{u(!r),A(T),l(x)};if(!c)return d("div",{children:"loading"});let L=c.config,v=g("confirm"),y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Command+C"}),"\xA0 ",d("kbd",{children:"Ctrl+Shift+D"})," "]});return le()||(Fa()?(y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsNoteForFirefox")," ",d("a",{target:"_blank",href:"https://support.mozilla.org/zh-CN/kb/%E7%AE%A1%E7%90%86Firefox%E7%9A%84%E6%89%A9%E5%B1%95%E5%BF%AB%E6%8D%B7%E6%96%B9%E5%BC%8F",children:[g("help"),"?"]}),d("br",{}),d("br",{}),g("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Cmd+C"}),"\xA0 ",d("kbd",{children:"Ctrl"}),"\xA0",d("kbd",{children:"D"})," "]}),v=g("confirm")):(y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsNoteForChrome"),"\xA0",d("a",{href:"#",onClick:T=>{T.preventDefault(),z.tabs.create({url:"chrome://extensions/shortcuts"})},children:g("goSettings")})]}),v=g("confirm"))),d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:g("interface")})}),d("div",{class:"nav",children:[d(Fe,{title:g("interface language")}),d("select",{class:"select",onChange:T=>{p(T.target.value),h(T.target.value),le()||setTimeout(()=>{Ts()},200)},children:Mx.map((T,b)=>d("option",{value:T,selected:T===L.interfaceLanguage,children:kt(T,L.interfaceLanguage,!0)},"locale"+b))})]}),d("div",{class:"nav",children:[d(Fe,{title:g("keyboard shortcuts")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:T=>{T.preventDefault(),i(!o)},children:g("modify")})})]}),d("div",{class:"nav",children:[d(Fe,{title:g("enableLineBreak"),description:g("enableLineBreakDescription")}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:T=>{let b=T.target.checked;t(x=>{let R=x.generalRule||{};return{...x,generalRule:{...R,lineBreakMaxTextCount:b?280:0}}})},checked:c.rule.lineBreakMaxTextCount>0,id:"switch",name:"switch",role:"switch"})})]}),c.rule.lineBreakMaxTextCount>0&&d("div",{class:"nav",children:[d(Fe,{title:g("lineBreakMaxTextCount")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:T=>{let b=T.target.value;t(x=>{let R=x.generalRule||{};return{...x,generalRule:{...R,lineBreakMaxTextCount:parseInt(b)}}})},name:"count",value:c.rule.lineBreakMaxTextCount,placeholder:"Text Length",required:!0})})]}),(Ma().any||le())&&d("div",{class:"nav",children:[d(Fe,{title:g("enableUserscriptPagePopup"),description:g("enableUserscriptPagePopupDescription",{touch:g("fingers."+L.generalRule.fingerCountToToggleTranslagePageWhenTouching)})}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:T=>{let b=T.target.checked;t(x=>{let R=x.generalRule||{};return{...x,generalRule:{...R,isShowUserscriptPagePopup:b}}})},checked:c.rule.isShowUserscriptPagePopup,id:"switch",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:g("translation display"),description:g("select diplay style")}),d("select",{class:"select",onChange:T=>{k(T.target.value)},children:M0.map((T,b)=>d("option",{value:T,selected:T===L.translationTheme,children:g(`translationTheme.${T}`)},"theme"+b))})]}),d("div",{class:"pt-2 text-sm",children:d("p",{children:[Ng,d("div",{class:"pt-2"}),d("font",{class:wr(L.translationTheme,!1,[],!1,!1).join(" "),children:d("font",{class:vr(L.translationTheme).join(" "),children:F0})}),L.translationTheme&&qc(L.translationTheme).length>0?d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:g("customTheme")}),d("div",{class:"flex flex-col items-end",children:[qc(L.translationTheme).map((T,b)=>{T.label=g(`customThemeLabel.${T.name}`);let x=L.translationThemePatterns||{},R=L.translationTheme,D=x[R]||{},I=`theme-${R}-${T.name}`,M=mh(I)||void 0,F=D[T.name]||M;return d(Kr,{field:T,value:F,onChange:$=>{t(Z=>{let de=Z.translationThemePatterns||{},me={...de[L.translationTheme]||{},[T.name]:$},ge={...Z,translationThemePatterns:{...de,[L.translationTheme]:me}};return dr(document,L.translationTheme,me),ge})}},"theme-prop"+b)}),d("a",{href:"#",class:"text-sm secondary",onClick:T=>{T.preventDefault(),t(b=>{let x=b.translationThemePatterns||{},R={...x[L.translationTheme]};qc(L.translationTheme).forEach(I=>{delete R[I.name]});let D={...b,translationThemePatterns:{...x,[L.translationTheme]:R}};return dr(document,L.translationTheme,{matches:[],excludeMatches:[]},!0),D})},children:g("resetToDefaultColor")})]})]}):null,d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:g("previewAllThemes")}),M0.map((T,b)=>d("div",{class:"pt-2",children:d("label",{children:[d("div",{class:"flex justify-between",children:d("div",{children:[d("input",{type:"radio",name:"theme",value:T,checked:T===L.translationTheme,onChange:x=>{k(x.target.value)}}),g(`translationTheme.${T}`)]})}),d("p",{children:d("font",{class:wr(T,!1,[],!1,!1).join(" "),children:d("font",{class:vr(T).join(" "),children:F0})})})]})},"theme-index-"+b))]})]})}),d("div",{class:"nav",children:[d(Fe,{title:"",description:g("useAboveStyleForTheseSites",{theme:g(`translationTheme.${L.translationTheme}`)})}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:T=>{T.preventDefault(),u(!r)},children:g("add")})})]}),r?d(va,{toggleModal:T=>{T.preventDefault(),u(!r)},onAddInterfaceUrl:(T,b)=>{S(T,L.translationTheme,b)},urlValue:f,index:s}):null,d(wa,{urls:Fx(L),type:"matches",onDeleteUrl:T=>{_(T,L.translationTheme)},onEditUrl:B}),o?d(Hc,{note:y,corfirmText:v,fingerCountToToggleTranslagePageWhenTouching:L.generalRule.fingerCountToToggleTranslagePageWhenTouching,fingerCountToToggleTranslationMaskWhenTouching:L.generalRule.fingerCountToToggleTranslationMaskWhenTouching,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:L.generalRule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching,mouseHoverHoldKey:L.generalRule.mouseHoverHoldKey,shortcuts:Ig.map(T=>({name:T,shortcut:L.shortcuts[T],description:g(`browser.${T}`),disabled:!le()})),onChange:T=>{if(T){let{shortcuts:b,fingerCountToToggleTranslagePageWhenTouching:x,fingerCountToToggleTranslationMaskWhenTouching:R,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D,mouseHoverHoldKey:I}=T;le()?t(M=>{b=b||[];let F=b.reduce((Z,de)=>(Z[de.name]=de.shortcut,Z),{...M.shortcuts}),$={...M,shortcuts:F};return x!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslagePageWhenTouching:x}),R!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslationMaskWhenTouching:R}),D!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),I&&($.generalRule={...$.generalRule,mouseHoverHoldKey:I}),$}):(x!==void 0||R!==void 0||I||D!==void 0)&&t(M=>{let F={...M};return x!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslagePageWhenTouching:x}),R!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslationMaskWhenTouching:R}),D!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),I&&(F.generalRule={...F.generalRule,mouseHoverHoldKey:I}),F}),T&&T.isClose&&i(!1)}else i(!1),z.tabs.create({url:"chrome://extensions/shortcuts"})},onClose:()=>{i(!1)}}):null]})}function Vc(){let[e,t,n,a]=bt(),[r,u]=W(null),{t:o}=be(),[i,s]=W({}),[l,c]=W({});ke(()=>{ze().then(v=>{u(v)}),z.storage.sync.get(null).then(v=>{s(v),z.storage.local.get(null).then(y=>{c(y)})})},[e]);let m=v=>{t(y=>({...y,debug:v}))},g=v=>{t(y=>({...y,beta:v}))},p=v=>{t(()=>({...v}))},f=v=>{try{let y=v.target.value,T={...e};if(!y)delete T.rules;else{let b=JSON.parse(y);if(!Array.isArray(b)){Lt("Invalid rules, rules must be an array");return}T.rules=b}p(T),Je(o("saved"))}catch(y){Lt(`Invalid JSON ${y.message}`)}},A=v=>{let y={...e};y.generalRule||(y.generalRule={}),y.generalRule={...y.generalRule,injectedCss:v.target.value||""},p(y),Je(o("saved"))},k=v=>{try{let y=JSON.parse(v.target.value);p(y),Je(o("saved"))}catch(y){Lt(`Invalid JSON ${y.message}`)}},h=v=>{v.preventDefault()},S=v=>{v.preventDefault(),confirm(o("confirmResetConfig"))&&(p(Ba()),ia().catch(y=>{P.error("clean local config error",y)}),pr().catch(y=>{P.error("clean buildin config error",y)}),Vr().catch(y=>{P.error("clean cache error",y)}),Je(o("resetSuccess")))},_=v=>{v.preventDefault();let y={...e};delete y.rules,p(y),Je(o("resetThisSuccess"))},B=v=>{v.preventDefault();let y={...e};y.generalRule||(y.generalRule={}),y.generalRule={...y.generalRule},delete y.generalRule.injectedCss,p(y),Je(o("resetThisSuccess"))},L=`[{ "matches": "www.google.com", "selectors": [".title"] }, { "matches": "*.twitter.com", "selectors": [".text"], "excludeSelectors": ["footer"] -}]`;return r?d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:o("developer")})}),d("div",{dangerouslySetInnerHTML:{__html:o("developerDescription",{1:"https://immersivetranslate.com/docs/advanced/"})},class:"secondary text-xs text-gray-500 mb-4"}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{m(!r.debug)},checked:r.debug}),o("toggleDebug")]})}),d("fieldset",{class:"mt-2",children:[d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"beta",name:"beta",role:"switch",onChange:()=>{g(!r.beta)},checked:!!r.beta}),o("toggleBeta")]}),d("small",{class:"text-gray-500",dangerouslySetInnerHTML:{__html:o("betaDescription",{1:Do})}})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit User Rules"}),d("textarea",{class:"user-rule",rows:10,onChange:f,placeholder:L,spellcheck:!1,value:e.rules?JSON.stringify(e.rules||[],null,2):""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:_,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Injected CSS"}),d("textarea",{rows:10,onChange:S,spellcheck:!1,placeholder:".title { color: red }",value:e.generalRule&&e.generalRule.injectedCss?e.generalRule.injectedCss:""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:B,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Full User Config"}),d("textarea",{rows:10,onChange:k,spellcheck:!1,value:JSON.stringify(e,null,2)}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:A,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the final config"}),d("pre",{children:d("code",{children:JSON.stringify(r,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the sync storage object"}),d("pre",{children:d("code",{children:JSON.stringify(i,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the local storage object"}),d("pre",{children:d("code",{children:JSON.stringify(l,null,2)})})]})]}):d("div",{children:"loading"})}function Ts(){let e=new Date;return`${e.getFullYear()}-${e.getMonth()+1}-${e.getDate()}_${e.getHours()}-${e.getMinutes()}-${e.getSeconds()}`}function LE(e){let{t}=be(),{accessToken:n,id:a,listAllFiles:r}=e,[u,o]=W(!1);function i(s,l){s.preventDefault(),o(!0),new On(n).delete(l).catch(c=>{Lt(t("delete"))}).then(()=>r()).finally(()=>o(!1))}return d("a",{href:"#",className:"secondary margin-left text-sm",onClick:s=>i(s,a),"aria-busy":u,children:t("delete")})}function $c(e){let{onClose:t,accessToken:n,authExpire:a}=e,{t:r}=be(),[u,o,i,s]=bt(),[l,c]=W([]),[m,g]=W(!0),[p,f]=W(!1),[S,k]=W({});ke(()=>{n&&A().then(()=>g(!1))},[n]);let h=y=>{y.target&&y.target.id==="immersive-translate-overlay"&&t()};function A(){return new On(n).listAll().then(T=>{c(T)}).catch(T=>a())}function _(y){if(y.preventDefault(),l.length>=10)return Lt(r("maxBackupFiles",{count:10}));f(!0);let T="immersive-translate-config-"+Ts()+".json";new On(n).uploadConfig(u,T).catch(b=>{Lt(r("uploadFail"))}).then(()=>A()).finally(()=>f(!1))}function B(y,T,b){y.preventDefault(),k({[b]:!0}),new On(n).getConfig(T).then(E=>{o(()=>({...E})),Je(r("importSuccess"))}).catch(E=>{P.error(E),Lt(r("importFail"))}).finally(()=>k({}))}function L(y,T){new On(n).getConfig(y).then(b=>{let E=document.createElement("a");E.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(JSON.stringify(b,null,2))),E.setAttribute("download",T),E.style.display="none",document.body.appendChild(E),E.click(),document.body.removeChild(E)}).catch(b=>{P.error("download google config file failed",b),Lt(r("downloadFail")+": "+b.message)})}function w(y){y.preventDefault(),o({...u,autoSync:!1}),cn.revoke(n).then(()=>t())}return d("dialog",{id:"immersive-translate-overlay",onClick:h,open:!0,children:d("article",{class:"md:w-[32rem] px-4",children:[d("a",{href:"#",title:r("clickToDownload"),"aria-label":"Close",className:"close","data-target":"modal-example",onClick:y=>{y.preventDefault(),t()}}),d("h4",{children:r("syncTitle")}),d("div",{className:"mb-4",children:l.map((y,T)=>d("div",{class:"flex flex-wrap justify-between",children:[d("div",{class:"mr-2 mb-2",children:[d("div",{children:d("a",{href:"#",onClick:b=>{b.preventDefault(),L(y.id,y.name)},class:"block truncate w-40 sm:w-auto",children:y.name.replace("immersive-translate-","")})}),d("div",{class:"text-xs text-gray-500",children:[new Date(y.modifiedTime).toLocaleString(),",\xA0",xu(parseInt(y.size))]})]}),d("div",{children:[d("a",{href:"#",role:"button",className:"margin-right secondary","aria-busy":S[T],disabled:S[T],onClick:b=>B(b,y.id,T),children:r("import_hint")}),d(LE,{accessToken:n,id:y.id,listAllFiles:A})]})]},"file"+T))}),d("div",{className:"flex items-center",children:[d("a",{href:"#",role:"button",className:"mr-4","data-target":"modal-example","aria-busy":p,onClick:_,disabled:m,children:r("create_new_backup")}),d("a",{href:"#",className:"secondary text-sm","data-target":"modal-example",onClick:w,disabled:m,children:r("revokeAuth")})]})]})})}function qc(){let[e,t,n,a,r]=bt(),[u,o]=W(null),[i,s]=W(null),l=M=>{s(M),Wn(M)},{t:c,setLang:m}=be();ke(()=>{ze().then(M=>{o(M)}),Hn().then(M=>{l(M)})},[]);let g=M=>{t(()=>({...M}))},p=M=>{M.preventDefault();let F=document.createElement("input");F.setAttribute("type","file"),F.setAttribute("accept","text/plain"),F.style.display="none",document.body.appendChild(F),F.oninput=$=>{let Z=$.target,de=new FileReader;de.onload=function(){try{let G=JSON.parse(de.result);g(G),Je(c("successImportConfig"))}catch(G){Lt(`Invalid JSON ${G.message}`)}},de.readAsText(Z.files[0])},F.click(),document.body.removeChild(F)},f=M=>{M.preventDefault(),confirm(c("confirmResetConfig"))&&(r(Ba()),Je(c("resetSuccess")),setTimeout(()=>{z.storage.local.remove(Sn),ia().catch(F=>{P.error("clean local config error",F)})},500))},[S,k]=W(!1),[h,A]=W(!1),[_,B]=W(!1),[L,w]=W("");ke(()=>{if(bu()&&n){let M=localStorage.getItem(cu);if(localStorage.removeItem(cu),M){let F=globalThis.localStorage.getItem(k0);P.debug("import_export","rawAuthInfoStr",F);let $={},Z={},de="";if(F){globalThis.localStorage.removeItem(k0);try{$=JSON.parse(F),Z=$.state||{},de=$.access_token||""}catch(G){P.error("parse state error",G)}}if(de&&Z&&(cn.setAuthInfo({access_token:de}),P.debug("import_export","Google OAuth:",$),$)){let G=$.state;P.debug("state",G),G?.mode==="auto"?(A(!0),D(de)):(B(!0),E(de))}}}},[n]);function y(){A(!0),jc({source:globalThis.location.href,mode:"auto"},!0).then(M=>{P.debug("import_export","Google OAuth:"+M),M!==null&&D(M)}).catch(M=>{M&&M.message==="tokenValidateErrorRedirectToAuthUrl"?P.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):R(M)})}function T(){B(!0),k(!1),jc({source:globalThis.location.href,mode:"manual"},!0).then(M=>{P.debug("import_export","Google OAuth:"+M),M!==null&&E(M)}).catch(M=>{M&&M.message==="tokenValidateErrorRedirectToAuthUrl"?P.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):R(M)})}function b(){w(""),y()}function E(M){w(M),B(!1),k(!0)}function R(M){A(!1),B(!1),k(!1),t({...e,autoSync:!1}),P.error("import_export","Google OAuth error:"+M),Lt(c("authFail"))}function D(M){A(!0),P.debug("sync latest with drive",M,e),w(M),Uc(M,e,F=>{F.interfaceLanguage&&m(F.interfaceLanguage),r(F)},F=>l({...i,lastSyncedAt:F}),F=>t({...e,updatedAt:F}),F=>{F?Je(c("successSyncConfig")):Je(c("successSyncButNoChange"))},F=>Lt(c("syncFail")+F)).finally(()=>{A(!1)})}function O(M){t({...e,autoSync:M.checked}),M.checked&&y()}return u?d("div",{class:"pb-4",children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:c("import_export_title")})}),d("div",{class:"pb-2",children:[d("a",{class:"mr-2 secondary mb-2 !text-sm",onClick:p,href:"#",role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zm10-5.828L19.071 7.1l1.414 1.414L12 17 3.515 8.515 4.929 7.1 11 13.17V2h2v11.172z"})]}),c("import")]}),d("a",{href:"#",class:"secondary mr-2 mb-2 !text-sm",onClick:M=>{M.preventDefault();let F=new Blob([JSON.stringify(e,null,2)],{type:"text/plain;charset=utf-8"});au.saveAs(F,"immersive-translate-config-"+Ts()+".txt")},role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zM13 5.828V17h-2V5.828L4.929 11.9l-1.414-1.414L12 2l8.485 8.485-1.414 1.414L13 5.83z"})]}),c("export")]}),d("a",{href:"#",onClick:f,class:"secondary text-sm",children:c("reset")})]}),d("details",{class:"mt-4 mb-6",children:[d("summary",{children:c("clickToExpandConfig")}),d("pre",{children:d("code",{children:JSON.stringify(e,null,2)})})]}),d("hgroup",{class:"my-2",children:[d("h5",{children:c("syncToCloud")}),d("h6",{class:"!text-sm",children:c("syncToCloudDescription")})]}),d("div",{children:[d("a",{className:"mr-4 secondary mb-2 !text-sm ",onClick:M=>{M.preventDefault(),y()},"aria-busy":h,href:"#",role:"button",children:[h?d(ut,{}):d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",children:d("path",{fill:"currentColor",d:"M15.375 19.25q-.525.25-.95-.038q-.425-.287-.425-.937q0-.25.163-.487q.162-.238.412-.363q1.575-.75 2.5-2.225T18 11.95q0-1.125-.425-2.188Q17.15 8.7 16.25 7.8L16 7.55V9q0 .425-.287.712Q15.425 10 15 10t-.712-.288Q14 9.425 14 9V5q0-.425.288-.713Q14.575 4 15 4h4q.425 0 .712.287Q20 4.575 20 5t-.288.713Q19.425 6 19 6h-1.75l.4.35q1.225 1.225 1.788 2.662Q20 10.45 20 11.95q0 2.4-1.25 4.362q-1.25 1.963-3.375 2.938ZM5 20q-.425 0-.713-.288Q4 19.425 4 19t.287-.712Q4.575 18 5 18h1.75l-.4-.35q-1.225-1.225-1.788-2.662Q4 13.55 4 12.05q0-2.4 1.25-4.363Q6.5 5.725 8.625 4.75q.525-.25.95.037q.425.288.425.938q0 .25-.162.487q-.163.238-.413.363q-1.575.75-2.5 2.225T6 12.05q0 1.125.425 2.187Q6.85 15.3 7.75 16.2l.25.25V15q0-.425.288-.713Q8.575 14 9 14t.713.287Q10 14.575 10 15v4q0 .425-.287.712Q9.425 20 9 20Z"})}),c("syncToGoogleDrive")]}),d("a",{href:"#","aria-busy":_,onClick:M=>{M.preventDefault(),T()},class:"secondary text-sm",children:c("backupToCloud")})]}),d("div",{class:"text-xs text-gray-500",children:i?.lastSyncedAt&&c("lastSyncedAt",{date:new Date(i.lastSyncedAt).toLocaleString()})}),i?.lastSyncErrorMessage&&d("p",{class:"mt-2 text-xs text-red-500"}),S?d($c,{onClose:()=>k(!1),authExpire:b,accessToken:L}):null]}):null}var PE="buildinConfig",ME={},gh=dm(PE,ME);var FE=({date:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("The local rules are up to date")," ",new Date(e).toLocaleString()]})},_E=({date:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},BE=()=>{let{t:e}=be();return d("p",{class:"text-sm","aria-busy":!0,children:[e("Checking for updates"),"..."]})},RE=()=>{let{t:e}=be();return d("p",{class:"text-sm",children:[e("Rules are being synchronized"),"..."]})},OE=({minVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},IE=({latestVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("foundNewVersion"),":"," ",d("a",{href:"https://github.com/immersive-translate/immersive-translate/releases",children:e})]})},NE=()=>{let{t:e}=be();return d("p",{class:"text-sm",children:e("theLocalExtensionIsUpToUpdate")})},UE=({message:e,handleSyncing:t,date:n})=>{let{t:a}=be();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Kc(){let[e,t]=W(null),{t:n}=be(),[a,r]=W(n("calculating")+"..."),[u,o]=W(null),[i,s]=gh(),[l,c]=W(null),[m,g]=W(""),[p,f]=W(!1),[S,k]=W(!1),[h,A]=W(null),[_,B]=W(null),[L,w,y,T]=bt(),[b,E]=W(!1),R=Zo(),D=!0;Dt()&&h&&(D=h.generalRule.showSponsorOnSafari);let O=async()=>{g("");let G=u;if(u===null)try{let me=await hr({url:aa});me?(o(me),G=me,f(!0)):(g(n("unknownError")),c(null))}catch(me){c(null),g(me.message);return}G!==null?(s(G),c(!1),t(G.buildinConfigUpdatedAt)):(g(n("canNotFetchRemoteRule")),c(null))};ke(()=>{ze().then(G=>{let me=G.buildinConfigUpdatedAt;A(G);let ge=new Date(me);t(me),hr({url:aa}).then(v=>{let H=v.minVersion,Q=R;o(v);let fe=v.latestVersion;if(fe&&(Ea(Q,fe)?B(!0):B(!1)),Ea(Q,H)){let se=v.buildinConfigUpdatedAt;new Date(se)>ge?(c(!0),O()):c(!1)}else k(!0),c(null)}).catch(v=>{c(null),g(v.message)})}),uh().then(G=>{r(G)})},[]),ke(()=>{ze().then(G=>{A(G)})},[L,e]);let M=G=>{w(me=>{let ge=!me.alpha;return ge?Je(n("enableAlphaSuccess")):Je(n("disableAlphaSuccess")),{...me,alpha:ge}})},F=G=>{G.preventDefault(),G.stopPropagation(),E(!0),pr().catch(me=>{P.error("clear build config failed:",me)}),ia().catch(me=>{P.error("clear local config failed:",me)}),Gr().then(()=>{E(!1),Je("\u6E05\u7406\u6210\u529F"),r("0 B")}).catch(me=>{E(!1),Lt(me.message)})},$=G=>{w(me=>({...me,cache:G}))},Z=G=>{w(me=>({...me,enabled:G}))},de="aboutIntro";return D||(de="aboutIntroWithoutSponsor"),h?d("div",{class:"text-sm",children:[d("div",{class:"nav",children:d("strong",{onClick:Mu(7)(M),class:"text-lg immersive-translate-no-select",children:n("about")})}),d("p",{onClick:Mu(7)(M),class:"mb-2 immersive-translate-no-select",children:["V",R]}),_===!1&&d(IE,{latestVersion:u?.latestVersion}),_===!0&&d(NE,{}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"enabled",name:"enabled",role:"switch",onChange:()=>{Z(!h.enabled)},checked:h.enabled}),n("enabledExtension")]})}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{$(!h.cache)},checked:h.cache}),n("allowCacheTranslations")]})}),!le()&&a&&d("p",{class:"text-sm",children:[n("cacheSize"),"\xA0",a," \xA0 ",b?d("span",{children:[n("cleaning"),"..."]}):d("a",{class:"text-sm",href:"#",onClick:F,children:n("cleanCache")})]}),m?d(UE,{handleSyncing:O,message:m,date:e||""}):S?d(OE,{minVersion:u.minVersion}):l===null?d(BE,{}):l===!0?d(RE,{}):p?d(_E,{date:e}):d(FE,{date:e}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:n(de,{1:"https://immersivetranslate.com/docs/thanks/",2:"https://immersivetranslate.com/docs/donate/",3:"twitter.com/immersivetran",4:"https://t.me/immersivetranslate",5:"https://immersivetranslate.substack.com",6:"https://immersivetranslate.com/docs/services/deepL/"})}}),d("div",{class:"flex items-center justify-center",children:[d("div",{class:"flex flex-col items-center",children:[d("img",{width:"120",src:"https://immersivetranslate.com/assets/wechat-qrcode.jpg",alt:"wechat contact"}),d("div",{class:"text-sm",children:n("wechatPublicAccount")})]}),d("div",{class:"w-16"}),d("div",{class:"flex flex-col items-center",children:[d("img",{width:"125",src:"https://immersivetranslate.com/assets/qq-channel.png",alt:"qq channel contact"}),d("div",{class:"text-sm text-center",children:d("a",{target:"_blank",href:"https://pd.qq.com/s/260rd4u6r",children:n("qqCommunities")})})]})]}),d("ul",{class:"text-sm ml-4",children:[d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/issues",children:n("feedback")})}),d("li",{children:d("a",{class:"secondary",href:Do,children:n("joinTelegramGroup")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/docs/CHANGELOG/",children:n("changelog")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/",children:n("projectHomepage")})}),d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/",children:n("Github")})}),D&&!1]}),d("div",{class:"flex justify-center",children:d("iframe",{src:"https://immersivetranslate.substack.com/embed",width:"480",height:"320",style:"border:1px solid #EEE; background:white;",frameBorder:0,scrolling:"no"})})]}):null}function Gc(){let e=fr(),[t,n,a,r]=bt(),[u,o]=W(null),{t:i}=be();ke(()=>{ze().then(m=>{wt({config:m,url:globalThis.location.href}).then(g=>{o(g)})})},[t]);let s=m=>{n(g=>({...g,translationTheme:m}))},l=m=>{n(g=>({...g,interfaceLanguage:m}))};if(!u)return d("div",{children:"loading"});let c=u.config;return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("advanced")})}),d("div",{class:"nav",children:[d(Fe,{title:i("translate all areas of the page"),description:i("translationAreaDescription")}),d("label",{for:"translationAreaDescription",children:d("input",{type:"checkbox",id:"translationAreaDescription",name:"switch",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,translationArea:g?"body":"main"}))},checked:c.translationArea==="body"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translate to the bottom of the page"),description:i("translateToThePageEndImmediatelyDescription")}),d("label",{for:"translateToThePageEndImmediatelyDescription",children:d("input",{type:"checkbox",onChange:m=>{let g=m.target.checked;n(p=>({...p,translationStartMode:g?"immediate":"dynamic"}))},checked:c.translationStartMode==="immediate",id:"translateToThePageEndImmediatelyDescription",name:"switch",role:"switch"})})]}),!le()&&d("div",{class:"nav",children:[d(Fe,{title:i("isShowContextMenu")}),d("label",{for:"isShowContextMenu",children:d("input",{type:"checkbox",onChange:m=>{let g=m.target.checked;ys({...u.config,isShowContextMenu:g}),n(p=>({...p,isShowContextMenu:g}))},checked:u.config.isShowContextMenu===!0,id:"isShowContextMenu",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("isTranslateTitle"),description:i("isTranslateTitleDescription")}),d("label",{for:"isTranslateTitle",children:d("input",{type:"checkbox",id:"isTranslateTitle",name:"isTranslateTitle",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,generalRule:{...p.generalRule,isTranslateTitle:g}}))},checked:c.generalRule.isTranslateTitle})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableSearchEnhancement"),description:i("enableSearchEnhancementDescription")}),d("label",{for:"enableSearchEnhancement",children:d("input",{type:"checkbox",id:"enableSearchEnhancement",name:"enableSearchEnhancement",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,generalRule:{...p.generalRule,enableSearchEnhancement:g}}))},checked:c.generalRule.enableSearchEnhancement})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("loadingThemeTitle"),description:i("loadingThemeDescription")}),d("select",{class:"select",onChange:m=>{n(g=>({...g,loadingTheme:m.target.value}))},children:[d("option",{value:"spinner",selected:c.loadingTheme==="spinner",children:i("loadingTheme.spinner")}),d("option",{value:"text",selected:c.loadingTheme==="text",children:i("loadingTheme.text")}),d("option",{value:"none",selected:c.loadingTheme==="none",children:i("loadingTheme.none")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translationLineBreakSettingTitle"),description:i("translationLineBreakSettingDescription",{count:e.generalRule.blockMinTextCount})}),d("select",{class:"select",onChange:m=>{n(g=>{let p=g.generalRule||{};return parseInt(m.target.value)===0?p={...p,blockMinTextCount:0,blockMinWordCount:0}:p={...p,blockMinTextCount:e.generalRule.blockMinTextCount,blockMinWordCount:e.generalRule.blockMinWordCount},{...g,generalRule:p}})},children:[d("option",{value:32,selected:c.generalRule.blockMinTextCount>0,children:i("smartLineBreak")}),d("option",{value:0,selected:c.generalRule.blockMinTextCount===0,children:i("alwaysLineBreak")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("tempTranslateDomainTitle"),description:i("tempTranslateDomainDescription")}),d("select",{class:"select",onChange:m=>{n(g=>({...g,tempTranslateDomainMinutes:parseInt(m.target.value)}))},children:[d("option",{value:0,selected:c.tempTranslateDomainMinutes===0,children:i("disabled")}),d("option",{value:5,selected:c.tempTranslateDomainMinutes===5,children:i("xMinutes",{count:5})}),d("option",{value:10,selected:c.tempTranslateDomainMinutes===10,children:i("xMinutes",{count:10})}),d("option",{value:15,selected:c.tempTranslateDomainMinutes===15,children:i("xMinutes",{count:15})}),d("option",{value:30,selected:c.tempTranslateDomainMinutes===30,children:i("xMinutes",{count:30})}),d("option",{value:60,selected:c.tempTranslateDomainMinutes===60,children:i("xMinutes",{count:60})})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("the number of characters to be translated first")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:m=>{let g=m.target.value;n(p=>({...p,immediateTranslationTextCount:parseInt(g)}))},name:"count",value:c.immediateTranslationTextCount,placeholder:"Text Length",required:!0})})]})]})}var mh=tu({presets:[no(),ro()]});function ph(){let e=document.getElementById("mount");e&&(async()=>{Xs(mh);let t=await ze();t.debug&&P.setLevel("debug"),globalThis.location.hash||(globalThis.location.hash="#general");let n=await wt({url:"http://localhost",config:t});nt("options_page_view",[{name:"options_page_view"}],{...n,sourceLanguage:globalThis.location.hash}),ua(document,n),ka(d(vi,{lang:t.interfaceLanguage,fallbackLang:"zh-CN",translations:Sr,children:d(jE,{donateUrl:t.donateUrl,config:t})}),e)})()}function jE(e){let t=U0(),{t:n}=be(),a=Zo(),{config:r}=e,u=[{name:n("general"),props:{href:"#general",className:"secondary"}},{name:n("interface"),props:{href:"#interface",className:"secondary"}},{name:n("inputOptions"),props:{href:"#input",className:"secondary"}},{name:n("advanced"),props:{href:"#advanced",className:"secondary"}},{name:n("import_export"),props:{href:"#import_export",className:"secondary"}},{name:n("about"),props:{href:"#about",className:"secondary"}}];u.forEach(i=>{t===i.props.href&&(i.props.className="primary",i.props["aria-current"]="page")});let o=!0;return Dt()&&(o=r.generalRule.showSponsorOnSafari),d(ut,{children:d("main",{class:"container-fluid",children:[d("aside",{children:d("nav",{class:"flex flex-col h-full justify-between",children:[d("div",{children:[d("hgroup",{class:"mb-2",children:[d("h4",{class:"cursor-pointer p-0 m-0",onClick:()=>{globalThis.location.hash="#general"},children:n("browser.brandName")}),d("h6",{class:"!text-sm",children:a})]}),d("ul",{class:"flex flex-wrap justify-between md:block text-sm md:text-base",children:u.map((i,s)=>d("li",{class:"li",children:d("a",{...i.props,children:i.name})},`nav-${s}`))})]}),d("div",{class:"m-0 p-0 flex flex-col",children:[o&&!1,d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/communities/",children:n("feedbackAndJoin")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/",children:n("document")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"#developer",children:n("developer")})]})]})}),d("div",{role:"main",children:d(N0,{value:t,defaultCase:d(bs,{}),cases:{"#general":d(bs,{}),"#input":d(Ic,{}),"#interface":d(Hc,{}),"#import_export":d(qc,{}),"#about":d(Kc,{}),"#advanced":d(Gc,{}),"#developer":d(Wc,{})}})})]})})}ph();})(); +}]`;return r?d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:o("developer")})}),d("div",{dangerouslySetInnerHTML:{__html:o("developerDescription",{1:"https://immersivetranslate.com/docs/advanced/"})},class:"secondary text-xs text-gray-500 mb-4"}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{m(!r.debug)},checked:r.debug}),o("toggleDebug")]})}),d("fieldset",{class:"mt-2",children:[d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"beta",name:"beta",role:"switch",onChange:()=>{g(!r.beta)},checked:!!r.beta}),o("toggleBeta")]}),d("small",{class:"text-gray-500",dangerouslySetInnerHTML:{__html:o("betaDescription",{1:Do})}})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit User Rules"}),d("textarea",{class:"user-rule",rows:10,onChange:f,placeholder:L,spellcheck:!1,value:e.rules?JSON.stringify(e.rules||[],null,2):""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:_,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Injected CSS"}),d("textarea",{rows:10,onChange:A,spellcheck:!1,placeholder:".title { color: red }",value:e.generalRule&&e.generalRule.injectedCss?e.generalRule.injectedCss:""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:B,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Full User Config"}),d("textarea",{rows:10,onChange:k,spellcheck:!1,value:JSON.stringify(e,null,2)}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:S,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the final config"}),d("pre",{children:d("code",{children:JSON.stringify(r,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the sync storage object"}),d("pre",{children:d("code",{children:JSON.stringify(i,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the local storage object"}),d("pre",{children:d("code",{children:JSON.stringify(l,null,2)})})]})]}):d("div",{children:"loading"})}function xs(){let e=new Date;return`${e.getFullYear()}-${e.getMonth()+1}-${e.getDate()}_${e.getHours()}-${e.getMinutes()}-${e.getSeconds()}`}function _x(e){let{t}=be(),{accessToken:n,id:a,listAllFiles:r}=e,[u,o]=W(!1);function i(s,l){s.preventDefault(),o(!0),new In(n).delete(l).catch(c=>{Lt(t("delete"))}).then(()=>r()).finally(()=>o(!1))}return d("a",{href:"#",className:"secondary margin-left text-sm",onClick:s=>i(s,a),"aria-busy":u,children:t("delete")})}function Gc(e){let{onClose:t,accessToken:n,authExpire:a}=e,{t:r}=be(),[u,o,i,s]=bt(),[l,c]=W([]),[m,g]=W(!0),[p,f]=W(!1),[A,k]=W({});ke(()=>{n&&S().then(()=>g(!1))},[n]);let h=y=>{y.target&&y.target.id==="immersive-translate-overlay"&&t()};function S(){return new In(n).listAll().then(T=>{c(T)}).catch(T=>a())}function _(y){if(y.preventDefault(),l.length>=10)return Lt(r("maxBackupFiles",{count:10}));f(!0);let T="immersive-translate-config-"+xs()+".json";new In(n).uploadConfig(u,T).catch(b=>{Lt(r("uploadFail"))}).then(()=>S()).finally(()=>f(!1))}function B(y,T,b){y.preventDefault(),k({[b]:!0}),new In(n).getConfig(T).then(x=>{o(()=>({...x})),Je(r("importSuccess"))}).catch(x=>{P.error(x),Lt(r("importFail"))}).finally(()=>k({}))}function L(y,T){new In(n).getConfig(y).then(b=>{let x=document.createElement("a");x.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(JSON.stringify(b,null,2))),x.setAttribute("download",T),x.style.display="none",document.body.appendChild(x),x.click(),document.body.removeChild(x)}).catch(b=>{P.error("download google config file failed",b),Lt(r("downloadFail")+": "+b.message)})}function v(y){y.preventDefault(),o({...u,autoSync:!1}),cn.revoke(n).then(()=>t())}return d("dialog",{id:"immersive-translate-overlay",onClick:h,open:!0,children:d("article",{class:"md:w-[32rem] px-4",children:[d("a",{href:"#",title:r("clickToDownload"),"aria-label":"Close",className:"close","data-target":"modal-example",onClick:y=>{y.preventDefault(),t()}}),d("h4",{children:r("syncTitle")}),d("div",{className:"mb-4",children:l.map((y,T)=>d("div",{class:"flex flex-wrap justify-between",children:[d("div",{class:"mr-2 mb-2",children:[d("div",{children:d("a",{href:"#",onClick:b=>{b.preventDefault(),L(y.id,y.name)},class:"block truncate w-40 sm:w-auto",children:y.name.replace("immersive-translate-","")})}),d("div",{class:"text-xs text-gray-500",children:[new Date(y.modifiedTime).toLocaleString(),",\xA0",Eu(parseInt(y.size))]})]}),d("div",{children:[d("a",{href:"#",role:"button",className:"margin-right secondary","aria-busy":A[T],disabled:A[T],onClick:b=>B(b,y.id,T),children:r("import_hint")}),d(_x,{accessToken:n,id:y.id,listAllFiles:S})]})]},"file"+T))}),d("div",{className:"flex items-center",children:[d("a",{href:"#",role:"button",className:"mr-4","data-target":"modal-example","aria-busy":p,onClick:_,disabled:m,children:r("create_new_backup")}),d("a",{href:"#",className:"secondary text-sm","data-target":"modal-example",onClick:v,disabled:m,children:r("revokeAuth")})]})]})})}function Jc(){let[e,t,n,a,r]=bt(),[u,o]=W(null),[i,s]=W(null),l=M=>{s(M),Wn(M)},{t:c,setLang:m}=be();ke(()=>{ze().then(M=>{o(M)}),Hn().then(M=>{l(M)})},[]);let g=M=>{t(()=>({...M}))},p=M=>{M.preventDefault();let F=document.createElement("input");F.setAttribute("type","file"),F.setAttribute("accept","text/plain"),F.style.display="none",document.body.appendChild(F),F.oninput=$=>{let Z=$.target,de=new FileReader;de.onload=function(){try{let V=JSON.parse(de.result);g(V),Je(c("successImportConfig"))}catch(V){Lt(`Invalid JSON ${V.message}`)}},de.readAsText(Z.files[0])},F.click(),document.body.removeChild(F)},f=M=>{M.preventDefault(),confirm(c("confirmResetConfig"))&&(r(Ba()),Je(c("resetSuccess")),setTimeout(()=>{z.storage.local.remove(Dn),ia().catch(F=>{P.error("clean local config error",F)})},500))},[A,k]=W(!1),[h,S]=W(!1),[_,B]=W(!1),[L,v]=W("");ke(()=>{if(bu()&&n){let M=localStorage.getItem(cu);if(localStorage.removeItem(cu),M){let F=globalThis.localStorage.getItem(A0);P.debug("import_export","rawAuthInfoStr",F);let $={},Z={},de="";if(F){globalThis.localStorage.removeItem(A0);try{$=JSON.parse(F),Z=$.state||{},de=$.access_token||""}catch(V){P.error("parse state error",V)}}if(de&&Z&&(cn.setAuthInfo({access_token:de}),P.debug("import_export","Google OAuth:",$),$)){let V=$.state;P.debug("state",V),V?.mode==="auto"?(S(!0),D(de)):(B(!0),x(de))}}}},[n]);function y(){S(!0),$c({source:globalThis.location.href,mode:"auto"},!0).then(M=>{P.debug("import_export","Google OAuth:"+M),M!==null&&D(M)}).catch(M=>{M&&M.message==="tokenValidateErrorRedirectToAuthUrl"?P.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):R(M)})}function T(){B(!0),k(!1),$c({source:globalThis.location.href,mode:"manual"},!0).then(M=>{P.debug("import_export","Google OAuth:"+M),M!==null&&x(M)}).catch(M=>{M&&M.message==="tokenValidateErrorRedirectToAuthUrl"?P.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):R(M)})}function b(){v(""),y()}function x(M){v(M),B(!1),k(!0)}function R(M){S(!1),B(!1),k(!1),t({...e,autoSync:!1}),P.error("import_export","Google OAuth error:"+M),Lt(c("authFail"))}function D(M){S(!0),P.debug("sync latest with drive",M,e),v(M),Wc(M,e,F=>{F.interfaceLanguage&&m(F.interfaceLanguage),r(F)},F=>l({...i,lastSyncedAt:F}),F=>t({...e,updatedAt:F}),F=>{F?Je(c("successSyncConfig")):Je(c("successSyncButNoChange"))},F=>Lt(c("syncFail")+F)).finally(()=>{S(!1)})}function I(M){t({...e,autoSync:M.checked}),M.checked&&y()}return u?d("div",{class:"pb-4",children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:c("import_export_title")})}),d("div",{class:"pb-2",children:[d("a",{class:"mr-2 secondary mb-2 !text-sm",onClick:p,href:"#",role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zm10-5.828L19.071 7.1l1.414 1.414L12 17 3.515 8.515 4.929 7.1 11 13.17V2h2v11.172z"})]}),c("import")]}),d("a",{href:"#",class:"secondary mr-2 mb-2 !text-sm",onClick:M=>{M.preventDefault();let F=new Blob([JSON.stringify(e,null,2)],{type:"text/plain;charset=utf-8"});au.saveAs(F,"immersive-translate-config-"+xs()+".txt")},role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zM13 5.828V17h-2V5.828L4.929 11.9l-1.414-1.414L12 2l8.485 8.485-1.414 1.414L13 5.83z"})]}),c("export")]}),d("a",{href:"#",onClick:f,class:"secondary text-sm",children:c("reset")})]}),d("details",{class:"mt-4 mb-6",children:[d("summary",{children:c("clickToExpandConfig")}),d("pre",{children:d("code",{children:JSON.stringify(e,null,2)})})]}),d("hgroup",{class:"my-2",children:[d("h5",{children:c("syncToCloud")}),d("h6",{class:"!text-sm",children:c("syncToCloudDescription")})]}),d("div",{children:[d("a",{className:"mr-4 secondary mb-2 !text-sm ",onClick:M=>{M.preventDefault(),y()},"aria-busy":h,href:"#",role:"button",children:[h?d(rt,{}):d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",children:d("path",{fill:"currentColor",d:"M15.375 19.25q-.525.25-.95-.038q-.425-.287-.425-.937q0-.25.163-.487q.162-.238.412-.363q1.575-.75 2.5-2.225T18 11.95q0-1.125-.425-2.188Q17.15 8.7 16.25 7.8L16 7.55V9q0 .425-.287.712Q15.425 10 15 10t-.712-.288Q14 9.425 14 9V5q0-.425.288-.713Q14.575 4 15 4h4q.425 0 .712.287Q20 4.575 20 5t-.288.713Q19.425 6 19 6h-1.75l.4.35q1.225 1.225 1.788 2.662Q20 10.45 20 11.95q0 2.4-1.25 4.362q-1.25 1.963-3.375 2.938ZM5 20q-.425 0-.713-.288Q4 19.425 4 19t.287-.712Q4.575 18 5 18h1.75l-.4-.35q-1.225-1.225-1.788-2.662Q4 13.55 4 12.05q0-2.4 1.25-4.363Q6.5 5.725 8.625 4.75q.525-.25.95.037q.425.288.425.938q0 .25-.162.487q-.163.238-.413.363q-1.575.75-2.5 2.225T6 12.05q0 1.125.425 2.187Q6.85 15.3 7.75 16.2l.25.25V15q0-.425.288-.713Q8.575 14 9 14t.713.287Q10 14.575 10 15v4q0 .425-.287.712Q9.425 20 9 20Z"})}),c("syncToGoogleDrive")]}),d("a",{href:"#","aria-busy":_,onClick:M=>{M.preventDefault(),T()},class:"secondary text-sm",children:c("backupToCloud")})]}),d("div",{class:"text-xs text-gray-500",children:i?.lastSyncedAt&&c("lastSyncedAt",{date:new Date(i.lastSyncedAt).toLocaleString()})}),i?.lastSyncErrorMessage&&d("p",{class:"mt-2 text-xs text-red-500"}),A?d(Gc,{onClose:()=>k(!1),authExpire:b,accessToken:L}):null]}):null}var Bx="buildinConfig",Rx={},yh=fm(Bx,Rx);var Ix=({date:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("The local rules are up to date")," ",new Date(e).toLocaleString()]})},Ox=({date:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},Nx=()=>{let{t:e}=be();return d("p",{class:"text-sm","aria-busy":!0,children:[e("Checking for updates"),"..."]})},Ux=()=>{let{t:e}=be();return d("p",{class:"text-sm",children:[e("Rules are being synchronized"),"..."]})},jx=({minVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},zx=({latestVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("foundNewVersion"),":"," ",d("a",{href:"https://github.com/immersive-translate/immersive-translate/releases",children:e})]})},Hx=()=>{let{t:e}=be();return d("p",{class:"text-sm",children:e("theLocalExtensionIsUpToUpdate")})},Wx=({message:e,handleSyncing:t,date:n})=>{let{t:a}=be();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Yc(){let[e,t]=W(null),{t:n}=be(),[a,r]=W(n("calculating")+"..."),[u,o]=W(null),[i,s]=yh(),[l,c]=W(null),[m,g]=W(""),[p,f]=W(!1),[A,k]=W(!1),[h,S]=W(null),[_,B]=W(null),[L,v,y,T]=bt(),[b,x]=W(!1),R=Zo(),D=!0;Dt()&&h&&(D=h.generalRule.showSponsorOnSafari);let I=async()=>{g("");let V=u;if(u===null)try{let me=await hr({url:aa});me?(o(me),V=me,f(!0)):(g(n("unknownError")),c(null))}catch(me){c(null),g(me.message);return}V!==null?(s(V),c(!1),t(V.buildinConfigUpdatedAt)):(g(n("canNotFetchRemoteRule")),c(null))};ke(()=>{ze().then(V=>{let me=V.buildinConfigUpdatedAt;S(V);let ge=new Date(me);t(me),hr({url:aa}).then(w=>{let H=w.minVersion,Q=R;o(w);let fe=w.latestVersion;if(fe&&(xa(Q,fe)?B(!0):B(!1)),xa(Q,H)){let se=w.buildinConfigUpdatedAt;new Date(se)>ge?(c(!0),I()):c(!1)}else k(!0),c(null)}).catch(w=>{c(null),g(w.message)})}),dh().then(V=>{r(V)})},[]),ke(()=>{ze().then(V=>{S(V)})},[L,e]);let M=V=>{v(me=>{let ge=!me.alpha;return ge?Je(n("enableAlphaSuccess")):Je(n("disableAlphaSuccess")),{...me,alpha:ge}})},F=V=>{V.preventDefault(),V.stopPropagation(),x(!0),pr().catch(me=>{P.error("clear build config failed:",me)}),ia().catch(me=>{P.error("clear local config failed:",me)}),Vr().then(()=>{x(!1),Je("\u6E05\u7406\u6210\u529F"),r("0 B")}).catch(me=>{x(!1),Lt(me.message)})},$=V=>{v(me=>({...me,cache:V}))},Z=V=>{v(me=>({...me,enabled:V}))},de="aboutIntro";return D||(de="aboutIntroWithoutSponsor"),h?d("div",{class:"text-sm",children:[d("div",{class:"nav",children:d("strong",{onClick:Mu(7)(M),class:"text-lg immersive-translate-no-select",children:n("about")})}),d("p",{onClick:Mu(7)(M),class:"mb-2 immersive-translate-no-select",children:["V",R]}),_===!1&&d(zx,{latestVersion:u?.latestVersion}),_===!0&&d(Hx,{}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"enabled",name:"enabled",role:"switch",onChange:()=>{Z(!h.enabled)},checked:h.enabled}),n("enabledExtension")]})}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{$(!h.cache)},checked:h.cache}),n("allowCacheTranslations")]})}),!le()&&a&&d("p",{class:"text-sm",children:[n("cacheSize"),"\xA0",a," \xA0 ",b?d("span",{children:[n("cleaning"),"..."]}):d("a",{class:"text-sm",href:"#",onClick:F,children:n("cleanCache")})]}),m?d(Wx,{handleSyncing:I,message:m,date:e||""}):A?d(jx,{minVersion:u.minVersion}):l===null?d(Nx,{}):l===!0?d(Ux,{}):p?d(Ox,{date:e}):d(Ix,{date:e}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:n(de,{1:"https://immersivetranslate.com/docs/thanks/",2:"https://immersivetranslate.com/docs/donate/",3:"twitter.com/immersivetran",4:"https://t.me/immersivetranslate",5:"https://immersivetranslate.substack.com",6:"https://immersivetranslate.com/docs/services/deepL/"})}}),d("div",{class:"flex items-center justify-center",children:[d("div",{class:"flex flex-col items-center",children:[d("img",{width:"120",src:"https://immersivetranslate.com/assets/wechat-qrcode.jpg",alt:"wechat contact"}),d("div",{class:"text-sm",children:n("wechatPublicAccount")})]}),d("div",{class:"w-16"}),d("div",{class:"flex flex-col items-center",children:[d("img",{width:"125",src:"https://immersivetranslate.com/assets/qq-channel.png",alt:"qq channel contact"}),d("div",{class:"text-sm text-center",children:d("a",{target:"_blank",href:"https://pd.qq.com/s/260rd4u6r",children:n("qqCommunities")})})]})]}),d("ul",{class:"text-sm ml-4",children:[d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/issues",children:n("feedback")})}),d("li",{children:d("a",{class:"secondary",href:Do,children:n("joinTelegramGroup")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/docs/CHANGELOG/",children:n("changelog")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/",children:n("projectHomepage")})}),d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/",children:n("Github")})}),D&&!1]}),d("div",{class:"flex justify-center",children:d("iframe",{src:"https://immersivetranslate.substack.com/embed",width:"480",height:"320",style:"border:1px solid #EEE; background:white;",frameBorder:0,scrolling:"no"})})]}):null}function Xc(){let e=fr(),[t,n,a,r]=bt(),[u,o]=W(null),{t:i}=be();ke(()=>{ze().then(m=>{vt({config:m,url:globalThis.location.href}).then(g=>{o(g)})})},[t]);let s=m=>{n(g=>({...g,translationTheme:m}))},l=m=>{n(g=>({...g,interfaceLanguage:m}))};if(!u)return d("div",{children:"loading"});let c=u.config;return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("advanced")})}),d("div",{class:"nav",children:[d(Fe,{title:i("translate all areas of the page"),description:i("translationAreaDescription")}),d("label",{for:"translationAreaDescription",children:d("input",{type:"checkbox",id:"translationAreaDescription",name:"switch",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,translationArea:g?"body":"main"}))},checked:c.translationArea==="body"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translate to the bottom of the page"),description:i("translateToThePageEndImmediatelyDescription")}),d("label",{for:"translateToThePageEndImmediatelyDescription",children:d("input",{type:"checkbox",onChange:m=>{let g=m.target.checked;n(p=>({...p,translationStartMode:g?"immediate":"dynamic"}))},checked:c.translationStartMode==="immediate",id:"translateToThePageEndImmediatelyDescription",name:"switch",role:"switch"})})]}),!le()&&d("div",{class:"nav",children:[d(Fe,{title:i("isShowContextMenu")}),d("label",{for:"isShowContextMenu",children:d("input",{type:"checkbox",onChange:m=>{let g=m.target.checked;Ts({...u.config,isShowContextMenu:g}),n(p=>({...p,isShowContextMenu:g}))},checked:u.config.isShowContextMenu===!0,id:"isShowContextMenu",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("isTranslateTitle"),description:i("isTranslateTitleDescription")}),d("label",{for:"isTranslateTitle",children:d("input",{type:"checkbox",id:"isTranslateTitle",name:"isTranslateTitle",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,generalRule:{...p.generalRule,isTranslateTitle:g}}))},checked:c.generalRule.isTranslateTitle})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableSearchEnhancement"),description:i("enableSearchEnhancementDescription")}),d("label",{for:"enableSearchEnhancement",children:d("input",{type:"checkbox",id:"enableSearchEnhancement",name:"enableSearchEnhancement",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,generalRule:{...p.generalRule,enableSearchEnhancement:g}}))},checked:c.generalRule.enableSearchEnhancement})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("loadingThemeTitle"),description:i("loadingThemeDescription")}),d("select",{class:"select",onChange:m=>{n(g=>({...g,loadingTheme:m.target.value}))},children:[d("option",{value:"spinner",selected:c.loadingTheme==="spinner",children:i("loadingTheme.spinner")}),d("option",{value:"text",selected:c.loadingTheme==="text",children:i("loadingTheme.text")}),d("option",{value:"none",selected:c.loadingTheme==="none",children:i("loadingTheme.none")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translationLineBreakSettingTitle"),description:i("translationLineBreakSettingDescription",{count:e.generalRule.blockMinTextCount})}),d("select",{class:"select",onChange:m=>{n(g=>{let p=g.generalRule||{};return parseInt(m.target.value)===0?p={...p,blockMinTextCount:0,blockMinWordCount:0}:p={...p,blockMinTextCount:e.generalRule.blockMinTextCount,blockMinWordCount:e.generalRule.blockMinWordCount},{...g,generalRule:p}})},children:[d("option",{value:32,selected:c.generalRule.blockMinTextCount>0,children:i("smartLineBreak")}),d("option",{value:0,selected:c.generalRule.blockMinTextCount===0,children:i("alwaysLineBreak")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("tempTranslateDomainTitle"),description:i("tempTranslateDomainDescription")}),d("select",{class:"select",onChange:m=>{n(g=>({...g,tempTranslateDomainMinutes:parseInt(m.target.value)}))},children:[d("option",{value:0,selected:c.tempTranslateDomainMinutes===0,children:i("disabled")}),d("option",{value:5,selected:c.tempTranslateDomainMinutes===5,children:i("xMinutes",{count:5})}),d("option",{value:10,selected:c.tempTranslateDomainMinutes===10,children:i("xMinutes",{count:10})}),d("option",{value:15,selected:c.tempTranslateDomainMinutes===15,children:i("xMinutes",{count:15})}),d("option",{value:30,selected:c.tempTranslateDomainMinutes===30,children:i("xMinutes",{count:30})}),d("option",{value:60,selected:c.tempTranslateDomainMinutes===60,children:i("xMinutes",{count:60})})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("the number of characters to be translated first")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:m=>{let g=m.target.value;n(p=>({...p,immediateTranslationTextCount:parseInt(g)}))},name:"count",value:c.immediateTranslationTextCount,placeholder:"Text Length",required:!0})})]})]})}var Th=tu({presets:[no(),ro()]});function xh(){let e=document.getElementById("mount");e&&(async()=>{Zs(Th);let t=await ze();t.debug&&P.setLevel("debug"),globalThis.location.hash||(globalThis.location.hash="#general");let n=await vt({url:"http://localhost",config:t});st("options_page_view",[{name:"options_page_view"}],{...n,sourceLanguage:globalThis.location.hash}),ua(document,n),ka(d(wi,{lang:t.interfaceLanguage,fallbackLang:"zh-CN",translations:Sr,children:d($x,{donateUrl:t.donateUrl,config:t})}),e)})()}function $x(e){let t=j0(),{t:n}=be(),a=Zo(),{config:r}=e,u=[{name:n("general"),props:{href:"#general",className:"secondary"}},{name:n("interface"),props:{href:"#interface",className:"secondary"}},{name:n("inputOptions"),props:{href:"#input",className:"secondary"}},{name:n("advanced"),props:{href:"#advanced",className:"secondary"}},{name:n("import_export"),props:{href:"#import_export",className:"secondary"}},{name:n("about"),props:{href:"#about",className:"secondary"}}];u.forEach(i=>{t===i.props.href&&(i.props.className="primary",i.props["aria-current"]="page")});let o=!0;return Dt()&&(o=r.generalRule.showSponsorOnSafari),d(rt,{children:d("main",{class:"container-fluid",children:[d("aside",{children:d("nav",{class:"flex flex-col h-full justify-between",children:[d("div",{children:[d("hgroup",{class:"mb-2",children:[d("h4",{class:"cursor-pointer p-0 m-0",onClick:()=>{globalThis.location.hash="#general"},children:n("browser.brandName")}),d("h6",{class:"!text-sm",children:a})]}),d("ul",{class:"flex flex-wrap justify-between md:block text-sm md:text-base",children:u.map((i,s)=>d("li",{class:"li",children:d("a",{...i.props,children:i.name})},`nav-${s}`))})]}),d("div",{class:"m-0 p-0 flex flex-col",children:[o&&!1,d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/communities/",children:n("feedbackAndJoin")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/",children:n("document")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"#developer",children:n("developer")})]})]})}),d("div",{role:"main",children:d(U0,{value:t,defaultCase:d(ys,{}),cases:{"#general":d(ys,{}),"#input":d(zc,{}),"#interface":d(Kc,{}),"#import_export":d(Jc,{}),"#about":d(Yc,{}),"#advanced":d(Xc,{}),"#developer":d(Vc,{})}})})]})})}xh();})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/dist/chrome/popup.js b/dist/chrome/popup.js index fb570c3a8..5c4ea4315 100644 --- a/dist/chrome/popup.js +++ b/dist/chrome/popup.js @@ -1,4 +1,4 @@ -(()=>{var zm=Object.defineProperty;var Um=(e,t)=>{for(var n in t)zm(e,n,{get:t[n],enumerable:!0})};var ll=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var i0=(e,t,n)=>(ll(e,t,"read from private field"),n?n.call(e):t.get(e)),cl=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},dl=(e,t,n,a)=>(ll(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T16:25:26.171Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Km=Object.defineProperty;var Gm=(e,t)=>{for(var n in t)Km(e,n,{get:t[n],enumerable:!0})};var ml=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var s0=(e,t,n)=>(ml(e,t,"read from private field"),n?n.call(e):t.get(e)),pl=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},fl=(e,t,n,a)=>(ml(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,11 +4067,11 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var Wm=Object.create,l0=Object.defineProperty,qm=Object.getOwnPropertyDescriptor,ml=Object.getOwnPropertyNames,$m=Object.getPrototypeOf,Km=Object.prototype.hasOwnProperty,Gm=(e,t)=>function(){return t||(0,e[ml(e)[0]])((t={exports:{}}).exports,t),t.exports},Vm=(e,t)=>{for(var n in t)l0(e,n,{get:t[n],enumerable:!0})},s0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of ml(t))!Km.call(e,u)&&u!==n&&l0(e,u,{get:()=>t[u],enumerable:!(a=qm(t,u))||a.enumerable});return e},Jm=(e,t,n)=>(s0(e,t,"default"),n&&s0(n,t,"default")),pl=(e,t,n)=>(n=e!=null?Wm($m(e)):{},s0(t||!e||!e.__esModule?l0(n,"default",{value:e,enumerable:!0}):n,e)),fl=Gm({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/.pnpm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var u={exports:{}};a(u),n.browser=u.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",u=r=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(k,D=void 0){super(D),this.createItem=k}get(k){return this.has(k)||this.set(k,this.createItem(k)),super.get(k)}}let s=y=>y&&typeof y=="object"&&typeof y.then=="function",l=(y,k)=>(...D)=>{r.runtime.lastError?y.reject(new Error(r.runtime.lastError.message)):k.singleCallbackArg||D.length<=1&&k.singleCallbackArg!==!1?y.resolve(D[0]):y.resolve(D)},c=y=>y==1?"argument":"arguments",d=(y,k)=>function(x,...L){if(L.lengthk.maxArgs)throw new Error(`Expected at most ${k.maxArgs} ${c(k.maxArgs)} for ${y}(), got ${L.length}`);return new Promise((O,w)=>{if(k.fallbackToNoCallback)try{x[y](...L,l({resolve:O,reject:w},k))}catch{x[y](...L),k.fallbackToNoCallback=!1,k.noCallback=!0,O()}else k.noCallback?(x[y](...L),O()):x[y](...L,l({resolve:O,reject:w},k))})},g=(y,k,D)=>new Proxy(k,{apply(x,L,O){return D.call(L,y,...O)}}),m=Function.call.bind(Object.prototype.hasOwnProperty),f=(y,k={},D={})=>{let x=Object.create(null),L={has(w,R){return R in y||R in x},get(w,R,J){if(R in x)return x[R];if(!(R in y))return;let N=y[R];if(typeof N=="function")if(typeof k[R]=="function")N=g(y,y[R],k[R]);else if(m(D,R)){let pe=d(R,D[R]);N=g(y,y[R],pe)}else N=N.bind(y);else if(typeof N=="object"&&N!==null&&(m(k,R)||m(D,R)))N=f(N,k[R],D[R]);else if(m(D,"*"))N=f(N,k[R],D["*"]);else return Object.defineProperty(x,R,{configurable:!0,enumerable:!0,get(){return y[R]},set(pe){y[R]=pe}}),N;return x[R]=N,N},set(w,R,J,N){return R in x?x[R]=J:y[R]=J,!0},defineProperty(w,R,J){return Reflect.defineProperty(x,R,J)},deleteProperty(w,R){return Reflect.deleteProperty(x,R)}},O=Object.create(y);return new Proxy(O,L)},v=y=>({addListener(k,D,...x){k.addListener(y.get(D),...x)},hasListener(k,D){return k.hasListener(y.get(D))},removeListener(k,D){k.removeListener(y.get(D))}}),T=new i(y=>typeof y!="function"?y:function(D){let x=f(D,{},{getContent:{minArgs:0,maxArgs:0}});y(x)}),p=new i(y=>typeof y!="function"?y:function(D,x,L){let O=!1,w,R=new Promise(fe=>{w=function(_e){O=!0,fe(_e)}}),J;try{J=y(D,x,w)}catch(fe){J=Promise.reject(fe)}let N=J!==!0&&s(J);if(J!==!0&&!N&&!O)return!1;let pe=fe=>{fe.then(_e=>{L(_e)},_e=>{let z;_e&&(_e instanceof Error||typeof _e.message=="string")?z=_e.message:z="An unexpected error occurred",L({__mozWebExtensionPolyfillReject__:!0,message:z})}).catch(_e=>{})};return pe(N?J:R),!0}),C=({reject:y,resolve:k},D)=>{r.runtime.lastError?r.runtime.lastError.message===a?k():y(new Error(r.runtime.lastError.message)):D&&D.__mozWebExtensionPolyfillReject__?y(new Error(D.message)):k(D)},F=(y,k,D,...x)=>{if(x.lengthk.maxArgs)throw new Error(`Expected at most ${k.maxArgs} ${c(k.maxArgs)} for ${y}(), got ${x.length}`);return new Promise((L,O)=>{let w=C.bind(null,{resolve:L,reject:O});x.push(w),D.sendMessage(...x)})},S={devtools:{network:{onRequestFinished:v(T)}},runtime:{onMessage:v(p),onMessageExternal:v(p),sendMessage:F.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:F.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},A={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":A},services:{"*":A},websites:{"*":A}},f(r,S,o)};n.exports=u(chrome)}else n.exports=globalThis.browser})}}),hl={};Vm(hl,{default:()=>Iu});var Ym=pl(fl());Jm(hl,pl(fl()));var{default:gl,...Xm}=Ym,Iu=gl!==void 0?gl:Xm;globalThis.immersiveTranslateBrowserAPI=Iu;var qu,he,xl,Zm,Qa,bl,Cl,Uu={},wl=[],Qm=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function wn(e,t){for(var n in t)e[n]=t[n];return e}function vl(e){var t=e.parentNode;t&&t.removeChild(e)}function kl(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?qu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return ju(e,o,a,u,null)}function ju(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++xl};return u==null&&he.vnode!=null&&he.vnode(r),r}function en(e){return e.children}function zu(e,t){this.props=e,this.context=t}function ma(e,t){if(t==null)return e.__?ma(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?ju(m.type,m.props,m.key,m.ref?m.ref:null,m.__v):m)!=null){if(m.__=n,m.__b=n.__b+1,(g=p[c])===null||g&&m.key==g.key&&m.type===g.type)p[c]=void 0;else for(d=0;d=n.__.length&&n.__.push({__V:$u}),n.__[e]}function ye(e){return eu=1,ap(Wl,e)}function ap(e,t,n){var a=Gu(tu++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):Wl(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=We,!We.u)){We.u=!0;var u=We.shouldComponentUpdate;We.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var d=c.__[0];c.__=c.__N,c.__N=void 0,d!==c.__[0]&&(l=!0)}}),!!l&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function Ze(e,t){var n=Gu(tu++,3);!he.__s&&Hl(n.__H,t)&&(n.__=e,n.i=t,We.__H.__h.push(n))}function f0(e){return eu=5,Ul(function(){return{current:e}},[])}function Ul(e,t){var n=Gu(tu++,7);return Hl(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function qn(e,t){return eu=8,Ul(function(){return e},t)}function h0(e){var t=We.context[e.__c],n=Gu(tu++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(We)),t.props.value):e.__}function up(){for(var e;e=zl.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Ku),e.__H.__h.forEach(p0),e.__H.__h=[]}catch(t){e.__H.__h=[],he.__e(t,e.__v)}}he.__b=function(e){typeof e.type!="function"||e.o||e.type===en?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),We=null,Bl&&Bl(e)},he.__r=function(e){Rl&&Rl(e),tu=0;var t=(We=e.__c).__H;t&&(m0===We?(t.__h=[],We.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=$u,n.__N=n.i=void 0})):(t.__h.forEach(Ku),t.__h.forEach(p0),t.__h=[])),m0=We},he.diffed=function(e){Ol&&Ol(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(zl.push(t)!==1&&_l===he.requestAnimationFrame||((_l=he.requestAnimationFrame)||rp)(up)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==$u&&(n.__=n.__V),n.i=void 0,n.__V=$u})),m0=We=null},he.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Ku),n.__h=n.__h.filter(function(a){return!a.__||p0(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],he.__e(a,n.__v)}}),Nl&&Nl(e,t)},he.unmount=function(e){Il&&Il(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Ku(a)}catch(u){t=u}}),n.__H=void 0,t&&he.__e(t,n.__v))};var jl=typeof requestAnimationFrame=="function";function rp(e){var t,n=function(){clearTimeout(a),jl&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);jl&&(t=requestAnimationFrame(n))}function Ku(e){var t=We,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),We=t}function p0(e){var t=We;e.__c=e.__(),We=t}function Hl(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function Wl(e,t){return typeof t=="function"?t(e):t}function Vu(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let l of r){let d=n[l].matches;for(let g of d)u[g]||(u[g]=[]),u[g].push(l)}let o=u[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(d=>d!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}var b0=/iPhone/i,ql=/iPod/i,$l=/iPad/i,Kl=/\biOS-universal(?:.+)Mac\b/i,E0=/\bAndroid(?:.+)Mobile\b/i,Gl=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ju=/Silk/i,gn=/Windows Phone/i,Vl=/\bWindows(?:.+)ARM\b/i,Jl=/BlackBerry/i,Yl=/BB10/i,Xl=/Opera Mini/i,Zl=/\b(CriOS|Chrome)(?:.+)Mobile/i,Ql=/Mobile(?:.+)Firefox\b/i,e4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function op(e){return t=>t.test(e)}function nu(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=op(n),r={apple:{phone:u(b0)&&!u(gn),ipod:u(ql),tablet:!u(b0)&&(u($l)||e4(t))&&!u(gn),universal:u(Kl),device:(u(b0)||u(ql)||u($l)||u(Kl)||e4(t))&&!u(gn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(Ju),device:u(fa)||u(Ju)},android:{phone:!u(gn)&&u(fa)||!u(gn)&&u(E0),tablet:!u(gn)&&!u(fa)&&!u(E0)&&(u(Ju)||u(Gl)),device:!u(gn)&&(u(fa)||u(Ju)||u(E0)||u(Gl))||u(/\bokhttp\b/i)},windows:{phone:u(gn),tablet:u(Vl),device:u(gn)||u(Vl)},other:{blackberry:u(Jl),blackberry10:u(Yl),opera:u(Xl),firefox:u(Ql),chrome:u(Zl),device:u(Jl)||u(Yl)||u(Xl)||u(Ql)||u(Zl)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var y0="DENO",Yu="CHROME",Xu="FIREFOX";function t4(e){let t=Yu;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Xu:/deno/i.test(n)&&(t=y0)}catch{}return e===Yu&&t===Yu||e===Xu&&t===Xu||e===y0&&t===y0}function n4(){return t4(Yu)}function a4(){return typeof Deno<"u"}function ha(){return t4(Xu)}function u4(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function au(){return!!globalThis.matchMedia("(pointer:fine)").matches}var r4={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},o4={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:r4,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:r4,query:()=>{},sendMessage:()=>{}}};var j;a4()?j=o4:j=globalThis.immersiveTranslateBrowserAPI;var i4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var s4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var l4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var cp=[{code:"zh-CN",messages:i4},{code:"zh-TW",messages:s4},{code:"en",messages:l4}],mn="immersiveTranslateDeeplGlobalState",Zu="immersiveTranslateBingGlobalState",Rt={};for(let e of cp)Rt[e.code]=e.messages;var $n="Immersive Translate",q="immersive-translate",Qu="pdf/index.html",d4="html/index.html",g4="subtitle/index.html";var se="immersiveTranslate";var Lb=se+"GoogleAccessToken",Pb=se+"AuthFlow";var Fb=se+"AuthState",er=se+"IframeMessage",Mb=se+"WaitForRateLimit",m4=se+"DocumentMessageAsk",Et=se+"DocumentMessageTellThirdParty",p4=se+"DocumentMessageThirdPartyTell",dp=se+"DocumentMessageHandler",gp=`${se}Container`,f4=`${se}SpecifiedContainer`,vn="buildinConfig",uu="localConfig",T0="openOptionsPage",x0="openAboutPage";var C0="openEbookViewer",w0="openEbookBuilder";var tr=`${se}PageTranslatedStatus`,_b=`${se}PageUrlChanged`,kn=`${se}ReceiveCommand`,h4=se+"LastUseMouseHoverTime",b4=se+"LastUseInputTime",pn=se+"LastUseManualTranslatePageTime",ru=`${se}PopupReceiveMessage`,mp="immersivetranslate.com",pp="config.immersivetranslate.com",Bb=`https://${mp}/`,ou=`https://${pp}/default_config.json`,Rb=`${se}Mark`,iu="immersiveTranslateEffect",St=`${se}Root`,Ob=`data-${q}-effect`,tn=`data-${q}-translation-element-mark`,E4=`${se}TranslationElementMark`,Nb=`${se}TranslatedMark`,Ib=`${se}ParagraphId`,y4=`${se}LoadingId`,v0=`data-${q}-loading-id`,T4=`${se}ErrorId`,nr=`data-${q}-error-id`,fp=`${se}AtomicBlockMark`,x4=`${se}ExcludeMark`,jb=`data-${q}-exclude-mark`,hp=`${se}StayOriginalMark`,zb=`${se}PreWhitespaceMark`,ar=`${se}InlineMark`,C4=`${se}BlockMark`,Ub=`${se}Left`,Hb=`${se}Right`,Wb=`${se}Width`,qb=`${se}Height`,$b=`${se}Top`,Kb=`${se}FontSize`,w4="lastRunTime",Gb=`${se}GlobalStyleMark`,ur=["@","#"],rr=" --- ",v4=` -`,Ot=`${q}-target-wrapper`,Vb=`${q}-pdf-target-container`,k4=`${q}-target-inner`,Jb=`${q}-source-wrapper`,k0=`${q}-target-translation-block-wrapper`,Yb=`${q}-root-translation-theme`,ba=`${se}RootTranslationTheme`,A4=`${q}-target-translation-vertical-block-wrapper`,S4=`${q}-target-translation-pdf-block-wrapper`,D4=`${q}-target-translation-pre-whitespace`,A0=`${q}-target-translation-inline-wrapper`;var L4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Nt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],P4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},F4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},M4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var _4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var or="zh-CN";var c4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"chrome_zip"};var Jm=Object.create,c0=Object.defineProperty,Ym=Object.getOwnPropertyDescriptor,bl=Object.getOwnPropertyNames,Xm=Object.getPrototypeOf,Zm=Object.prototype.hasOwnProperty,Qm=(e,t)=>function(){return t||(0,e[bl(e)[0]])((t={exports:{}}).exports,t),t.exports},ep=(e,t)=>{for(var n in t)c0(e,n,{get:t[n],enumerable:!0})},l0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of bl(t))!Zm.call(e,u)&&u!==n&&c0(e,u,{get:()=>t[u],enumerable:!(a=Ym(t,u))||a.enumerable});return e},tp=(e,t,n)=>(l0(e,t,"default"),n&&l0(n,t,"default")),El=(e,t,n)=>(n=e!=null?Jm(Xm(e)):{},l0(t||!e||!e.__esModule?c0(n,"default",{value:e,enumerable:!0}):n,e)),yl=Qm({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var u={exports:{}};a(u),n.browser=u.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",u=r=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(k,L=void 0){super(L),this.createItem=k}get(k){return this.has(k)||this.set(k,this.createItem(k)),super.get(k)}}let l=y=>y&&typeof y=="object"&&typeof y.then=="function",s=(y,k)=>(...L)=>{r.runtime.lastError?y.reject(new Error(r.runtime.lastError.message)):k.singleCallbackArg||L.length<=1&&k.singleCallbackArg!==!1?y.resolve(L[0]):y.resolve(L)},c=y=>y==1?"argument":"arguments",d=(y,k)=>function(x,...P){if(P.lengthk.maxArgs)throw new Error(`Expected at most ${k.maxArgs} ${c(k.maxArgs)} for ${y}(), got ${P.length}`);return new Promise((O,v)=>{if(k.fallbackToNoCallback)try{x[y](...P,s({resolve:O,reject:v},k))}catch{x[y](...P),k.fallbackToNoCallback=!1,k.noCallback=!0,O()}else k.noCallback?(x[y](...P),O()):x[y](...P,s({resolve:O,reject:v},k))})},g=(y,k,L)=>new Proxy(k,{apply(x,P,O){return L.call(P,y,...O)}}),m=Function.call.bind(Object.prototype.hasOwnProperty),f=(y,k={},L={})=>{let x=Object.create(null),P={has(v,R){return R in y||R in x},get(v,R,J){if(R in x)return x[R];if(!(R in y))return;let N=y[R];if(typeof N=="function")if(typeof k[R]=="function")N=g(y,y[R],k[R]);else if(m(L,R)){let pe=d(R,L[R]);N=g(y,y[R],pe)}else N=N.bind(y);else if(typeof N=="object"&&N!==null&&(m(k,R)||m(L,R)))N=f(N,k[R],L[R]);else if(m(L,"*"))N=f(N,k[R],L["*"]);else return Object.defineProperty(x,R,{configurable:!0,enumerable:!0,get(){return y[R]},set(pe){y[R]=pe}}),N;return x[R]=N,N},set(v,R,J,N){return R in x?x[R]=J:y[R]=J,!0},defineProperty(v,R,J){return Reflect.defineProperty(x,R,J)},deleteProperty(v,R){return Reflect.deleteProperty(x,R)}},O=Object.create(y);return new Proxy(O,P)},C=y=>({addListener(k,L,...x){k.addListener(y.get(L),...x)},hasListener(k,L){return k.hasListener(y.get(L))},removeListener(k,L){k.removeListener(y.get(L))}}),T=new i(y=>typeof y!="function"?y:function(L){let x=f(L,{},{getContent:{minArgs:0,maxArgs:0}});y(x)}),p=new i(y=>typeof y!="function"?y:function(L,x,P){let O=!1,v,R=new Promise(fe=>{v=function(_e){O=!0,fe(_e)}}),J;try{J=y(L,x,v)}catch(fe){J=Promise.reject(fe)}let N=J!==!0&&l(J);if(J!==!0&&!N&&!O)return!1;let pe=fe=>{fe.then(_e=>{P(_e)},_e=>{let z;_e&&(_e instanceof Error||typeof _e.message=="string")?z=_e.message:z="An unexpected error occurred",P({__mozWebExtensionPolyfillReject__:!0,message:z})}).catch(_e=>{})};return pe(N?J:R),!0}),w=({reject:y,resolve:k},L)=>{r.runtime.lastError?r.runtime.lastError.message===a?k():y(new Error(r.runtime.lastError.message)):L&&L.__mozWebExtensionPolyfillReject__?y(new Error(L.message)):k(L)},F=(y,k,L,...x)=>{if(x.lengthk.maxArgs)throw new Error(`Expected at most ${k.maxArgs} ${c(k.maxArgs)} for ${y}(), got ${x.length}`);return new Promise((P,O)=>{let v=w.bind(null,{resolve:P,reject:O});x.push(v),L.sendMessage(...x)})},S={devtools:{network:{onRequestFinished:C(T)}},runtime:{onMessage:C(p),onMessageExternal:C(p),sendMessage:F.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:F.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},A={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":A},services:{"*":A},websites:{"*":A}},f(r,S,o)};n.exports=u(chrome)}else n.exports=globalThis.browser})}}),Tl={};ep(Tl,{default:()=>Iu});var np=El(yl());tp(Tl,El(yl()));var{default:hl,...ap}=np,Iu=hl!==void 0?hl:ap;globalThis.immersiveTranslateBrowserAPI=Iu;var qu,he,kl,up,Qa,xl,Al,Uu={},Sl=[],rp=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function wn(e,t){for(var n in t)e[n]=t[n];return e}function Dl(e){var t=e.parentNode;t&&t.removeChild(e)}function Ll(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?qu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return ju(e,o,a,u,null)}function ju(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++kl};return u==null&&he.vnode!=null&&he.vnode(r),r}function tn(e){return e.children}function zu(e,t){this.props=e,this.context=t}function ma(e,t){if(t==null)return e.__?ma(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?ju(m.type,m.props,m.key,m.ref?m.ref:null,m.__v):m)!=null){if(m.__=n,m.__b=n.__b+1,(g=p[c])===null||g&&m.key==g.key&&m.type===g.type)p[c]=void 0;else for(d=0;d=n.__.length&&n.__.push({__V:$u}),n.__[e]}function ye(e){return eu=1,lp(Gl,e)}function lp(e,t,n){var a=Gu(tu++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):Gl(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=We,!We.u)){We.u=!0;var u=We.shouldComponentUpdate;We.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var l=a.__c.__H.__.filter(function(c){return c.__c});if(l.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var s=!1;return l.forEach(function(c){if(c.__N){var d=c.__[0];c.__=c.__N,c.__N=void 0,d!==c.__[0]&&(s=!0)}}),!!s&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function Ze(e,t){var n=Gu(tu++,3);!he.__s&&Kl(n.__H,t)&&(n.__=e,n.i=t,We.__H.__h.push(n))}function h0(e){return eu=5,$l(function(){return{current:e}},[])}function $l(e,t){var n=Gu(tu++,7);return Kl(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function qn(e,t){return eu=8,$l(function(){return e},t)}function b0(e){var t=We.context[e.__c],n=Gu(tu++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(We)),t.props.value):e.__}function cp(){for(var e;e=ql.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Ku),e.__H.__h.forEach(f0),e.__H.__h=[]}catch(t){e.__H.__h=[],he.__e(t,e.__v)}}he.__b=function(e){typeof e.type!="function"||e.o||e.type===tn?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),We=null,Il&&Il(e)},he.__r=function(e){jl&&jl(e),tu=0;var t=(We=e.__c).__H;t&&(p0===We?(t.__h=[],We.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=$u,n.__N=n.i=void 0})):(t.__h.forEach(Ku),t.__h.forEach(f0),t.__h=[])),p0=We},he.diffed=function(e){zl&&zl(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(ql.push(t)!==1&&Nl===he.requestAnimationFrame||((Nl=he.requestAnimationFrame)||dp)(cp)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==$u&&(n.__=n.__V),n.i=void 0,n.__V=$u})),p0=We=null},he.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Ku),n.__h=n.__h.filter(function(a){return!a.__||f0(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],he.__e(a,n.__v)}}),Ul&&Ul(e,t)},he.unmount=function(e){Hl&&Hl(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Ku(a)}catch(u){t=u}}),n.__H=void 0,t&&he.__e(t,n.__v))};var Wl=typeof requestAnimationFrame=="function";function dp(e){var t,n=function(){clearTimeout(a),Wl&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);Wl&&(t=requestAnimationFrame(n))}function Ku(e){var t=We,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),We=t}function f0(e){var t=We;e.__c=e.__(),We=t}function Kl(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function Gl(e,t){return typeof t=="function"?t(e):t}function Vu(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let s of r){let d=n[s].matches;for(let g of d)u[g]||(u[g]=[]),u[g].push(s)}let o=u[e];if(o&&o.length>0)for(let s of o)n[s].matches.indexOf(e)>-1&&(n[s]={...n[s],matches:n[s].matches.filter(d=>d!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let l=Array.from(i);return{...n,[t]:{...n[t],matches:l}}}var E0=/iPhone/i,Vl=/iPod/i,Jl=/iPad/i,Yl=/\biOS-universal(?:.+)Mac\b/i,y0=/\bAndroid(?:.+)Mobile\b/i,Xl=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ju=/Silk/i,gn=/Windows Phone/i,Zl=/\bWindows(?:.+)ARM\b/i,Ql=/BlackBerry/i,e4=/BB10/i,t4=/Opera Mini/i,n4=/\b(CriOS|Chrome)(?:.+)Mobile/i,a4=/Mobile(?:.+)Firefox\b/i,u4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function gp(e){return t=>t.test(e)}function nu(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=gp(n),r={apple:{phone:u(E0)&&!u(gn),ipod:u(Vl),tablet:!u(E0)&&(u(Jl)||u4(t))&&!u(gn),universal:u(Yl),device:(u(E0)||u(Vl)||u(Jl)||u(Yl)||u4(t))&&!u(gn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(Ju),device:u(fa)||u(Ju)},android:{phone:!u(gn)&&u(fa)||!u(gn)&&u(y0),tablet:!u(gn)&&!u(fa)&&!u(y0)&&(u(Ju)||u(Xl)),device:!u(gn)&&(u(fa)||u(Ju)||u(y0)||u(Xl))||u(/\bokhttp\b/i)},windows:{phone:u(gn),tablet:u(Zl),device:u(gn)||u(Zl)},other:{blackberry:u(Ql),blackberry10:u(e4),opera:u(t4),firefox:u(a4),chrome:u(n4),device:u(Ql)||u(e4)||u(t4)||u(a4)||u(n4)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var T0="DENO",Yu="CHROME",Xu="FIREFOX";function r4(e){let t=Yu;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Xu:/deno/i.test(n)&&(t=T0)}catch{}return e===Yu&&t===Yu||e===Xu&&t===Xu||e===T0&&t===T0}function o4(){return r4(Yu)}function i4(){return typeof Deno<"u"}function ha(){return r4(Xu)}function s4(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function au(){return!!globalThis.matchMedia("(pointer:fine)").matches}var l4={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},c4={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:l4,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:l4,query:()=>{},sendMessage:()=>{}}};var j;i4()?j=c4:j=globalThis.immersiveTranslateBrowserAPI;var d4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var g4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var m4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var hp=[{code:"zh-CN",messages:d4},{code:"zh-TW",messages:g4},{code:"en",messages:m4}],mn="immersiveTranslateDeeplGlobalState",Zu="immersiveTranslateBingGlobalState",Rt={};for(let e of hp)Rt[e.code]=e.messages;var $n="Immersive Translate",W="immersive-translate",Qu="pdf/index.html",f4="html/index.html",h4="subtitle/index.html";var se="immersiveTranslate";var _b=se+"GoogleAccessToken",Bb=se+"AuthFlow";var Rb=se+"AuthState",er=se+"IframeMessage",Ob=se+"WaitForRateLimit",b4=se+"DocumentMessageAsk",Et=se+"DocumentMessageTellThirdParty",E4=se+"DocumentMessageThirdPartyTell",bp=se+"DocumentMessageHandler",Ep=`${se}Container`,y4=`${se}SpecifiedContainer`,vn="buildinConfig",uu="localConfig",x0="openOptionsPage",C0="openAboutPage";var w0="openEbookViewer",v0="openEbookBuilder";var tr=`${se}PageTranslatedStatus`,Nb=`${se}PageUrlChanged`,kn=`${se}ReceiveCommand`,T4=se+"LastUseMouseHoverTime",x4=se+"LastUseInputTime",pn=se+"LastUseManualTranslatePageTime",ru=`${se}PopupReceiveMessage`,yp="immersivetranslate.com",Tp="config.immersivetranslate.com",Ib=`https://${yp}/`,ou=`https://${Tp}/default_config.json`,jb=`${se}Mark`,iu="immersiveTranslateEffect",St=`${se}Root`,zb=`data-${W}-effect`,nn=`data-${W}-translation-element-mark`,C4=`${se}TranslationElementMark`,Ub=`${se}TranslatedMark`,Hb=`${se}ParagraphId`,w4=`${se}LoadingId`,k0=`data-${W}-loading-id`,v4=`${se}ErrorId`,nr=`data-${W}-error-id`,xp=`${se}AtomicBlockMark`,k4=`${se}ExcludeMark`,Wb=`data-${W}-exclude-mark`,Cp=`${se}StayOriginalMark`,qb=`${se}PreWhitespaceMark`,ar=`${se}InlineMark`,A4=`${se}BlockMark`,$b=`${se}Left`,Kb=`${se}Right`,Gb=`${se}Width`,Vb=`${se}Height`,Jb=`${se}Top`,Yb=`${se}FontSize`,S4="lastRunTime",Xb=`${se}GlobalStyleMark`,ur=["@","#"],rr=" --- ",D4=` +`,Ot=`${W}-target-wrapper`,Zb=`${W}-pdf-target-container`,L4=`${W}-target-inner`,Qb=`${W}-source-wrapper`,A0=`${W}-target-translation-block-wrapper`,eE=`${W}-root-translation-theme`,ba=`${se}RootTranslationTheme`,P4=`${W}-target-translation-vertical-block-wrapper`,F4=`${W}-target-translation-pdf-block-wrapper`,M4=`${W}-target-translation-pre-whitespace`,S0=`${W}-target-translation-inline-wrapper`;var _4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Nt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],B4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},R4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},O4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var N4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var or="zh-CN";var p4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...c4,{type:"password",name:"apikey",required:!0}],props:c4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},S0={type:se+"ChildFrameToRootFrameIdentifier"},ir=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var B4='';function R4(e){let t=j.runtime.getURL(Qu),n=new URL(t);return(e.startsWith("http")||!ha())&&n.searchParams.set("file",e),n.href}function Ea(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var D0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function sr(e,t){let n=Ea(),a=setTimeout(()=>n.reject(new D0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function su(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(s),r(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var O4=class{#e=0;#t=[];#n=[];#a=Ea();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tWp,bgBlue:()=>Gp,bgBrightBlack:()=>Xp,bgBrightBlue:()=>tf,bgBrightCyan:()=>af,bgBrightGreen:()=>Qp,bgBrightMagenta:()=>nf,bgBrightRed:()=>Zp,bgBrightWhite:()=>uf,bgBrightYellow:()=>ef,bgCyan:()=>Jp,bgGreen:()=>$p,bgMagenta:()=>Vp,bgRed:()=>qp,bgRgb24:()=>lf,bgRgb8:()=>of,bgWhite:()=>Yp,bgYellow:()=>Kp,black:()=>Sp,blue:()=>Fp,bold:()=>Tp,brightBlack:()=>j4,brightBlue:()=>jp,brightCyan:()=>Up,brightGreen:()=>Np,brightMagenta:()=>zp,brightRed:()=>Op,brightWhite:()=>Hp,brightYellow:()=>Ip,cyan:()=>_p,dim:()=>xp,getColorEnabled:()=>Ep,gray:()=>Rp,green:()=>Lp,hidden:()=>kp,inverse:()=>vp,italic:()=>Cp,magenta:()=>Mp,red:()=>Dp,reset:()=>yp,rgb24:()=>sf,rgb8:()=>rf,setColorEnabled:()=>bp,strikethrough:()=>Ap,stripColor:()=>df,underline:()=>wp,white:()=>Bp,yellow:()=>Pp});var{Deno:N4}=globalThis,I4=typeof N4?.noColor=="boolean"?N4.noColor:!0,L0=!I4;function bp(e){I4||(L0=e)}function Ep(){return L0}function le(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function ce(e,t){return L0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function yp(e){return ce(e,le([0],0))}function Tp(e){return ce(e,le([1],22))}function xp(e){return ce(e,le([2],22))}function Cp(e){return ce(e,le([3],23))}function wp(e){return ce(e,le([4],24))}function vp(e){return ce(e,le([7],27))}function kp(e){return ce(e,le([8],28))}function Ap(e){return ce(e,le([9],29))}function Sp(e){return ce(e,le([30],39))}function Dp(e){return ce(e,le([31],39))}function Lp(e){return ce(e,le([32],39))}function Pp(e){return ce(e,le([33],39))}function Fp(e){return ce(e,le([34],39))}function Mp(e){return ce(e,le([35],39))}function _p(e){return ce(e,le([36],39))}function Bp(e){return ce(e,le([37],39))}function Rp(e){return j4(e)}function j4(e){return ce(e,le([90],39))}function Op(e){return ce(e,le([91],39))}function Np(e){return ce(e,le([92],39))}function Ip(e){return ce(e,le([93],39))}function jp(e){return ce(e,le([94],39))}function zp(e){return ce(e,le([95],39))}function Up(e){return ce(e,le([96],39))}function Hp(e){return ce(e,le([97],39))}function Wp(e){return ce(e,le([40],49))}function qp(e){return ce(e,le([41],49))}function $p(e){return ce(e,le([42],49))}function Kp(e){return ce(e,le([43],49))}function Gp(e){return ce(e,le([44],49))}function Vp(e){return ce(e,le([45],49))}function Jp(e){return ce(e,le([46],49))}function Yp(e){return ce(e,le([47],49))}function Xp(e){return ce(e,le([100],49))}function Zp(e){return ce(e,le([101],49))}function Qp(e){return ce(e,le([102],49))}function ef(e){return ce(e,le([103],49))}function tf(e){return ce(e,le([104],49))}function nf(e){return ce(e,le([105],49))}function af(e){return ce(e,le([106],49))}function uf(e){return ce(e,le([107],49))}function An(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function rf(e,t){return ce(e,le([38,5,An(t)],39))}function of(e,t){return ce(e,le([48,5,An(t)],49))}function sf(e,t){return typeof t=="number"?ce(e,le([38,2,t>>16&255,t>>8&255,t&255],39)):ce(e,le([38,2,An(t.r),An(t.g),An(t.b)],39))}function lf(e,t){return typeof t=="number"?ce(e,le([48,2,t>>16&255,t>>8&255,t&255],49)):ce(e,le([48,2,An(t.r),An(t.g),An(t.b)],49))}var cf=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function df(e){return e.replace(cf,"")}var P0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},gf={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function F0(e,t){let n={...gf,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new P0(u,n.maxAttempts)}var HE=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var lr=globalThis||(typeof window<"u"?window:self),pf=Object.create,_0=Object.defineProperty,ff=Object.getOwnPropertyDescriptor,hf=Object.getOwnPropertyNames,bf=Object.getPrototypeOf,Ef=Object.prototype.hasOwnProperty,yf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Tf=(e,t)=>{for(var n in t)_0(e,n,{get:t[n],enumerable:!0})},M0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of hf(t))!Ef.call(e,u)&&u!==n&&_0(e,u,{get:()=>t[u],enumerable:!(a=ff(t,u))||a.enumerable});return e},xf=(e,t,n)=>(M0(e,t,"default"),n&&M0(n,t,"default")),U4=(e,t,n)=>(n=e!=null?pf(bf(e)):{},M0(t||!e||!e.__esModule?_0(n,"default",{value:e,enumerable:!0}):n,e)),H4=yf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof lr=="object"&&lr&&lr.Object===Object&&lr,d=typeof self=="object"&&self&&self.Object===Object&&self,g=c||d||Function("return this")(),m=Object.prototype,f=m.toString,v=Math.max,T=Math.min,p=function(){return g.Date.now()};function C(D,x,L){var O,w,R,J,N,pe,fe=0,_e=!1,z=!1,Te=!0;if(typeof D!="function")throw new TypeError(n);x=k(x)||0,S(L)&&(_e=!!L.leading,z="maxWait"in L,R=z?v(k(L.maxWait)||0,x):R,Te="trailing"in L?!!L.trailing:Te);function Z(ee){var oe=O,ge=w;return O=w=void 0,fe=ee,J=D.apply(ge,oe),J}function b(ee){return fe=ee,N=setTimeout(ae,x),_e?Z(ee):J}function _(ee){var oe=ee-pe,ge=ee-fe,X=x-oe;return z?T(X,R-ge):X}function K(ee){var oe=ee-pe,ge=ee-fe;return pe===void 0||oe>=x||oe<0||z&&ge>=R}function ae(){var ee=p();if(K(ee))return Y(ee);N=setTimeout(ae,_(ee))}function Y(ee){return N=void 0,Te&&O?Z(ee):(O=w=void 0,J)}function Se(){N!==void 0&&clearTimeout(N),fe=0,O=pe=w=N=void 0}function te(){return N===void 0?J:Y(p())}function Ce(){var ee=p(),oe=K(ee);if(O=arguments,w=this,pe=ee,oe){if(N===void 0)return b(pe);if(z)return N=setTimeout(ae,x),Z(pe)}return N===void 0&&(N=setTimeout(ae,x)),J}return Ce.cancel=Se,Ce.flush=te,Ce}function F(D,x,L){var O=!0,w=!0;if(typeof D!="function")throw new TypeError(n);return S(L)&&(O="leading"in L?!!L.leading:O,w="trailing"in L?!!L.trailing:w),C(D,x,{leading:O,maxWait:x,trailing:w})}function S(D){var x=typeof D;return!!D&&(x=="object"||x=="function")}function A(D){return!!D&&typeof D=="object"}function y(D){return typeof D=="symbol"||A(D)&&f.call(D)==u}function k(D){if(typeof D=="number")return D;if(y(D))return a;if(S(D)){var x=typeof D.valueOf=="function"?D.valueOf():D;D=S(x)?x+"":x}if(typeof D!="string")return D===0?D:+D;D=D.replace(r,"");var L=i.test(D);return L||s.test(D)?l(D.slice(2),L?2:8):o.test(D)?a:+D}t.exports=F}),W4={};Tf(W4,{default:()=>gt});var Cf=U4(H4());xf(W4,U4(H4()));var{default:z4,...wf}=Cf,gt=z4!==void 0?z4:wf;var vf=Object.create,R0=Object.defineProperty,kf=Object.getOwnPropertyDescriptor,Af=Object.getOwnPropertyNames,Sf=Object.getPrototypeOf,Df=Object.prototype.hasOwnProperty,Lf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Pf=(e,t)=>{for(var n in t)R0(e,n,{get:t[n],enumerable:!0})},B0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Af(t))!Df.call(e,u)&&u!==n&&R0(e,u,{get:()=>t[u],enumerable:!(a=kf(t,u))||a.enumerable});return e},Ff=(e,t,n)=>(B0(e,t,"default"),n&&B0(n,t,"default")),$4=(e,t,n)=>(n=e!=null?vf(Sf(e)):{},B0(t||!e||!e.__esModule?R0(n,"default",{value:e,enumerable:!0}):n,e)),K4=Lf((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){l(a)==="object"&&l(r)==="object"?r.exports=d():(i=[],o=d,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(r.exports=s))})(void 0,function(){return function(c){function d(m){if(g[m])return g[m].exports;var f=g[m]={i:m,l:!1,exports:{}};return c[m].call(f.exports,f,f.exports,d),f.l=!0,f.exports}var g={};return d.m=c,d.c=g,d.i=function(m){return m},d.d=function(m,f,v){d.o(m,f)||Object.defineProperty(m,f,{configurable:!1,enumerable:!0,get:v})},d.n=function(m){var f=m&&m.__esModule?function(){return m.default}:function(){return m};return d.d(f,"a",f),f},d.o=function(m,f){return Object.prototype.hasOwnProperty.call(m,f)},d.p="",d(d.s=0)}([function(c,d,g){function m(b,_){var K={};for(var ae in b)_.indexOf(ae)>=0||Object.prototype.hasOwnProperty.call(b,ae)&&(K[ae]=b[ae]);return K}Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},v=Object.assign||function(b){for(var _=1;_'+ae+"",ge.onclick=function(){return w(X,oe)},ge.listener=function(W){(x(W)||L(W))&&N()},O(ge,oe),Se&&Se<1&&(Se=1),!Ce&&Se&&S(Se).then(function(){return w(X,oe)})},fe=d.force=function(b,_){var K=b.type,ae=K===void 0?5:K,Y=b.text,Se=b.buttonText,te=Se===void 0?"OK":Se,Ce=b.callback,ee=b.position,oe=ee===void 0?p.positions.force||oe.top:ee;A(),N();var ge=document.createElement("div"),X=y();ge.id=X;var W=document.createElement("div");W.classList.add(p.classes.textbox),W.classList.add(p.classes.backgroundInfo),W.innerHTML='
'+Y+"
";var ne=document.createElement("div");ne.classList.add(p.classes.button),ne.classList.add(k[ae]),ne.innerHTML=te,ne.onclick=function(){w(X,oe),J(),Ce?Ce():_&&_()},ge.appendChild(W),ge.appendChild(ne),ge.listener=function(Pe){x(Pe)&&ne.click()},O(ge,oe),R()},_e=d.confirm=function(b,_,K){var ae=b.text,Y=b.submitText,Se=Y===void 0?"Yes":Y,te=b.cancelText,Ce=te===void 0?"Cancel":te,ee=b.submitCallback,oe=b.cancelCallback,ge=b.position,X=ge===void 0?p.positions.confirm||X.top:ge;A(),N();var W=document.createElement("div"),ne=y();W.id=ne;var Pe=document.createElement("div");Pe.classList.add(p.classes.textbox),Pe.classList.add(p.classes.backgroundInfo),Pe.innerHTML='
'+ae+"
";var De=document.createElement("div");De.classList.add(p.classes.button),De.classList.add(p.classes.elementHalf),De.classList.add(p.classes.backgroundSuccess),De.innerHTML=Se,De.onclick=function(){w(ne,X),J(),ee?ee():_&&_()};var ue=document.createElement("div");ue.classList.add(p.classes.button),ue.classList.add(p.classes.elementHalf),ue.classList.add(p.classes.backgroundError),ue.innerHTML=Ce,ue.onclick=function(){w(ne,X),J(),oe?oe():K&&K()},W.appendChild(Pe),W.appendChild(De),W.appendChild(ue),W.listener=function(Ue){x(Ue)?De.click():L(Ue)&&ue.click()},O(W,X),R(W,X)},z=function(b,_,K){var ae=b.text,Y=b.submitText,Se=Y===void 0?"Submit":Y,te=b.cancelText,Ce=te===void 0?"Cancel":te,ee=b.submitCallback,oe=b.cancelCallback,ge=b.position,X=ge===void 0?p.positions.input||X.top:ge,W=m(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);A(),N();var ne=document.createElement("div"),Pe=y();ne.id=Pe;var De=document.createElement("div");De.classList.add(p.classes.textbox),De.classList.add(p.classes.backgroundInfo),De.innerHTML='
'+ae+"
";var ue=document.createElement("input");ue.classList.add(p.classes.inputField),ue.setAttribute("autocapitalize",W.autocapitalize||"none"),ue.setAttribute("autocomplete",W.autocomplete||"off"),ue.setAttribute("autocorrect",W.autocorrect||"off"),ue.setAttribute("autofocus",W.autofocus||"true"),ue.setAttribute("inputmode",W.inputmode||"verbatim"),ue.setAttribute("max",W.max||""),ue.setAttribute("maxlength",W.maxlength||""),ue.setAttribute("min",W.min||""),ue.setAttribute("minlength",W.minlength||""),ue.setAttribute("placeholder",W.placeholder||""),ue.setAttribute("spellcheck",W.spellcheck||"default"),ue.setAttribute("step",W.step||"any"),ue.setAttribute("type",W.type||"text"),ue.value=W.value||"",W.allowed&&(ue.oninput=function(){var Be=void 0;if(Array.isArray(W.allowed)){for(var Re="",Oe=W.allowed,kt=0;kt'+K+"",oe.appendChild(X),te.forEach(function(ne,Pe){var De=ne.type,ue=De===void 0?1:De,Ue=ne.text,nt=ne.handler,Be=document.createElement("div");Be.classList.add(k[ue]),Be.classList.add(p.classes.button),Be.classList.add(p.classes.selectChoice);var Re=te[Pe+1];Re&&!Re.type&&(Re.type=1),Re&&Re.type===ue&&Be.classList.add(p.classes.selectChoiceRepeated),Be.innerHTML=Ue,Be.onclick=function(){w(ge,ee),J(),nt()},oe.appendChild(Be)});var W=document.createElement("div");W.classList.add(p.classes.backgroundNeutral),W.classList.add(p.classes.button),W.innerHTML=Y,W.onclick=function(){w(ge,ee),J(),Se?Se():_&&_()},oe.appendChild(W),oe.listener=function(ne){L(ne)&&W.click()},O(oe,ee),R(oe,ee)},Z=d.date=function(b,_,K){var ae=b.value,Y=ae===void 0?new Date:ae,Se=b.submitText,te=Se===void 0?"OK":Se,Ce=b.cancelText,ee=Ce===void 0?"Cancel":Ce,oe=b.submitCallback,ge=b.cancelCallback,X=b.position,W=X===void 0?p.positions.date||W.top:X;A(),N();var ne="▾",Pe=document.createElement("div"),De=document.createElement("div"),ue=document.createElement("div"),Ue=function(we){Pe.innerHTML=p.dateMonths[we.getMonth()],De.innerHTML=we.getDate(),ue.innerHTML=we.getFullYear()},nt=function(we){var ke=new Date(Y.getFullYear(),Y.getMonth()+1,0).getDate(),Ft=we.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Ft)>ke&&(Ft=ke.toString()),we.target.textContent=Ft,Number(Ft)<1&&(Ft="1"),Y.setDate(Number(Ft))},Be=function(we){var ke=we.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);we.target.textContent=ke,Y.setFullYear(Number(ke))},Re=function(we){Ue(Y)},Oe=function(we){var ke=new Date(Y.getFullYear(),Y.getMonth()+we+1,0).getDate();Y.getDate()>ke&&Y.setDate(ke),Y.setMonth(Y.getMonth()+we),Ue(Y)},kt=function(we){Y.setDate(Y.getDate()+we),Ue(Y)},Cn=function(we){var ke=Y.getFullYear()+we;ke<0?Y.setFullYear(0):Y.setFullYear(Y.getFullYear()+we),Ue(Y)},He=document.createElement("div"),Qt=y();He.id=Qt;var qt=document.createElement("div");qt.classList.add(p.classes.backgroundInfo);var at=document.createElement("div");at.classList.add(p.classes.dateSelectorInner);var Pt=document.createElement("div");Pt.classList.add(p.classes.button),Pt.classList.add(p.classes.elementThird),Pt.classList.add(p.classes.dateSelectorUp),Pt.innerHTML=ne;var B=document.createElement("div");B.classList.add(p.classes.button),B.classList.add(p.classes.elementThird),B.classList.add(p.classes.dateSelectorUp),B.innerHTML=ne;var Q=document.createElement("div");Q.classList.add(p.classes.button),Q.classList.add(p.classes.elementThird),Q.classList.add(p.classes.dateSelectorUp),Q.innerHTML=ne,Pe.classList.add(p.classes.element),Pe.classList.add(p.classes.elementThird),Pe.innerHTML=p.dateMonths[Y.getMonth()],De.classList.add(p.classes.element),De.classList.add(p.classes.elementThird),De.setAttribute("contentEditable",!0),De.addEventListener("input",nt),De.addEventListener("blur",Re),De.innerHTML=Y.getDate(),ue.classList.add(p.classes.element),ue.classList.add(p.classes.elementThird),ue.setAttribute("contentEditable",!0),ue.addEventListener("input",Be),ue.addEventListener("blur",Re),ue.innerHTML=Y.getFullYear();var ve=document.createElement("div");ve.classList.add(p.classes.button),ve.classList.add(p.classes.elementThird),ve.innerHTML=ne;var be=document.createElement("div");be.classList.add(p.classes.button),be.classList.add(p.classes.elementThird),be.innerHTML=ne;var xe=document.createElement("div");xe.classList.add(p.classes.button),xe.classList.add(p.classes.elementThird),xe.innerHTML=ne,Pt.onclick=function(){return Oe(1)},B.onclick=function(){return kt(1)},Q.onclick=function(){return Cn(1)},ve.onclick=function(){return Oe(-1)},be.onclick=function(){return kt(-1)},xe.onclick=function(){return Cn(-1)};var je=document.createElement("div");je.classList.add(p.classes.button),je.classList.add(p.classes.elementHalf),je.classList.add(p.classes.backgroundSuccess),je.innerHTML=te,je.onclick=function(){w(Qt,W),J(),oe?oe(Y):_&&_(Y)};var it=document.createElement("div");it.classList.add(p.classes.button),it.classList.add(p.classes.elementHalf),it.classList.add(p.classes.backgroundError),it.innerHTML=ee,it.onclick=function(){w(Qt,W),J(),ge?ge(Y):K&&K(Y)},at.appendChild(Pt),at.appendChild(B),at.appendChild(Q),at.appendChild(Pe),at.appendChild(De),at.appendChild(ue),at.appendChild(ve),at.appendChild(be),at.appendChild(xe),qt.appendChild(at),He.appendChild(qt),He.appendChild(je),He.appendChild(it),He.listener=function(we){x(we)?je.click():L(we)&&it.click()},O(He,W),R(He,W)};d.default={alert:pe,force:fe,confirm:_e,input:z,select:Te,date:Z,setOptions:C,hideAlerts:N}}])})}).call(a,u(0)(n))}])})}),G4={};Pf(G4,{default:()=>cr});var Mf=$4(K4());Ff(G4,$4(K4()));var{default:q4,..._f}=Mf,cr=q4!==void 0?q4:_f;var O0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function N0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Z4(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function Bf(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Me.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Me.splice(0,Me.length),(t===93||t===224)&&(t=91),t in st){st[t]=!1;for(var a in nn)nn[a]===t&&(ze[a]=!1)}}function Wf(e){if(typeof e>"u")Object.keys(Ge).forEach(function(o){return delete Ge[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&I0(o)});else if(typeof e=="object")e.key&&I0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Z4(nn,s):[];Ge[d]=Ge[d].filter(function(m){var f=a?m.method===a:!0;return!(f&&m.scope===n&&Bf(m.mods,g))})}})};function J4(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in st)Object.prototype.hasOwnProperty.call(st,r)&&(!st[r]&&t.mods.indexOf(+r)>-1||st[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!st[16]&&!st[18]&&!st[17]&&!st[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Y4(e,t){var n=Ge["*"],a=e.keyCode||e.which||e.charCode;if(ze.filter.call(this,e)){if((a===93||a===224)&&(a=91),Me.indexOf(a)===-1&&a!==229&&Me.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var v=z0[f];e[f]&&Me.indexOf(v)===-1?Me.push(v):!e[f]&&Me.indexOf(v)>-1?Me.splice(Me.indexOf(v),1):f==="metaKey"&&e[f]&&Me.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Me=Me.slice(Me.indexOf(v))))}),a in st){st[a]=!0;for(var u in nn)nn[u]===a&&(ze[u]=!0);if(!n)return}for(var r in st)Object.prototype.hasOwnProperty.call(st,r)&&(st[r]=e[z0[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Me.indexOf(17)===-1&&Me.push(17),Me.indexOf(18)===-1&&Me.push(18),st[17]=!0,st[18]=!0);var o=du();if(n)for(var i=0;i-1}function ze(e,t,n){Me=[];var a=Q4(e),u=[],r="all",o=document,i=0,s=!1,l=!0,c="+",d=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(d=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=Z4(nn,e)),e=e[e.length-1],e=e==="*"?"*":gr(e),e in Ge||(Ge[e]=[]),Ge[e].push({keyup:s,keydown:l,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!qf(o)&&window&&(tc.push(o),N0(o,"keydown",function(g){Y4(g,o)},d),V4||(V4=!0,N0(window,"focus",function(){Me=[]},d)),N0(o,"keyup",function(g){Y4(g,o),Hf(g)},d))}function $f(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ge).forEach(function(n){var a=Ge[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var j0={getPressedKeyString:If,setScope:nc,getScope:du,deleteScope:Uf,getPressedKeyCodes:Nf,isPressed:zf,filter:jf,trigger:$f,unbind:Wf,keyMap:cu,modifier:nn,modifierMap:z0};for(dr in j0)Object.prototype.hasOwnProperty.call(j0,dr)&&(ze[dr]=j0[dr]);var dr;typeof document<"u"&&(X4=window.hotkeys,ze.noConflict=function(e){return e&&window.hotkeys===ze&&(window.hotkeys=X4),ze},window.hotkeys=ze);var X4;var Kf=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Gf=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Kf:{reset:()=>{},stop:()=>{}}}},U0=new Gf,Vf="poegempjloogba",Jf="ension://",Yf="me-";function gu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function sc(e){return e?e.PROD==="1":!0}function lc(e){return e?e.MOCK==="1":!1}function cc(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var Xf="rome-ext";function Zf(e,t){return t?e+(t-e%t):e}function Qf(e,t){return e.split(t).length-1}function e2(e){let t=Date.now(),n=1;for(let a of e)n+=Qf(a,"i");return Zf(t,n)}function t2(e,t){return Math.floor(Math.random()*(t-e+1))+e}var n2="extension",a2="chro";function u2(){return t2(1e6,1e8)}var ac="BrowserExt";function r2(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var uc="DeepL",rc="ension",o2="ch"+Xf+Jf+"cofdb"+Vf+"gkncekinflcnj";function dc(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",o2),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${uc}${ac}${rc}/${r||"1.1.1"} ${l}`)}else i.append("user-agent",`${uc}${ac}${rc}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function i2(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:e2(n)},id:u2()},o=dc({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${a2+Yf+n2},${t}`,headers:o,body:r2(r),method:"POST"}}function s2(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Kn={},Gn={};async function oc(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=gu(u);i||(i=gu(r)[1]);let s={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(s=await mr(e,t));let[l,c]=gu(s.refreshTokenExpiresAt);i=c,i||(i=gu(s.refreshTokenChecksAt)[1]);let d=s.refreshToken;if(Kn[d])return new Promise((g,m)=>{Kn[d].push((f,v)=>{f?m(f):g(v)})});Kn[d]=[];try{let g=await l2(d,t.onFetch),m={state:{...n,...s,...g},shouldUpdateRefreshToken:i};return Kn[d].forEach(f=>{f(null,m)}),delete Kn[d],m}catch(g){throw Kn[d].forEach(m=>{m(g)}),delete Kn[d],g}}async function mr(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Gn[e])return new Promise((u,r)=>{Gn[e].push((o,i)=>{o?r(o):u(i)})});try{Gn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return Gn[e].forEach(d=>{d(null,c)}),delete Gn[e],c}catch(u){throw Gn[e].forEach(r=>{r(u)}),delete Gn[e],u}}async function l2(e,t){if(!e)throw new Error("refreshToken is required");let n=sc(),a=lc();if(!n&&!a){await cc(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:dc({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=s2(r.access_token);if(r.expires_in){let i=new Date,s=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function ic(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(c2(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...i2({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},s=sc(),l=lc();if(!s&&!l)return await cc(50),{translations:u.map(m=>({text:"mock: "+m,detected_source_language:"EN"}))};let c=await n(i.url,i),d=JSON.parse(c.body),g=[];if(d.result&&d.result.texts)g=d.result.texts.map(m=>({text:m.text,detected_source_language:d.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function c2(e){let t=0;for(let n of e)t+=n.length;return t}async function d2(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await g2(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return U0.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){U0.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function g2(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var pr=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>d2({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await ic(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await ic(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw U0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=gu(e);if(t)n&&oc(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await oc(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var m2={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},mc={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},qe={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},yt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},Sn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},M=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=M.getVersionPrecision(e),u=M.getVersionPrecision(t),r=Math.max(a,u),o=0,i=M.map([e,t],s=>{let l=r-M.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return M.map(c.split("."),d=>new Array(20-d.length).join("0")+d).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return m2[e]}static getBrowserTypeByAlias(e){return mc[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,p2=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=M.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=M.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=M.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=M.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=M.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=M.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=M.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=M.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=M.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=M.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=M.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=M.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=M.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=M.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=M.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=M.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=M.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=M.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=M.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=M.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=M.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=M.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=M.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=M.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=M.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=M.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=M.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:M.getFirstMatch(a,e),version:M.getSecondMatch(a,e)}}}],f2=p2,h2=[{test:[/Roku\/DVP/],describe(e){let t=M.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:yt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=M.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:yt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=M.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=M.getWindowsVersionName(t);return{name:yt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:yt.iOS},n=M.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=M.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=M.getMacOSVersionName(t),a={name:yt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=M.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:yt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=M.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=M.getAndroidVersionName(t),a={name:yt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=M.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:yt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=M.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||M.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||M.getFirstMatch(/\bbb(\d+)/i,e);return{name:yt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=M.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:yt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=M.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:yt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:yt.Linux}}},{test:[/CrOS/],describe(){return{name:yt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=M.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:yt.PlayStation4,version:t}}}],b2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=M.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:qe.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:qe.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:qe.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:qe.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:qe.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:qe.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:qe.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=M.getFirstMatch(/(ipod|iphone)/i,e);return{type:qe.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:qe.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:qe.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:qe.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:qe.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:qe.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:qe.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:qe.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:qe.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:qe.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:qe.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:qe.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:qe.tv}}}],E2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:Sn.Blink};let t=M.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:Sn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:Sn.Trident},n=M.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:Sn.Presto},n=M.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:Sn.Gecko},n=M.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:Sn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:Sn.WebKit},n=M.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],y2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=M.find(f2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=M.find(h2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=M.find(b2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=M.find(E2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return M.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=M.find(r,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=M.find(r,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(u>0){let r=Object.keys(a),o=M.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=M.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(M.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},gc=y2,T2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new gc(e,t)}static parse(e){return new gc(e).getResult()}static get BROWSER_MAP(){return mc}static get ENGINE_MAP(){return Sn}static get OS_MAP(){return yt}static get PLATFORMS_MAP(){return qe}},fr=T2;var{entries:xc,setPrototypeOf:pc,isFrozen:x2,getPrototypeOf:C2,getOwnPropertyDescriptor:w2}=Object,{freeze:Tt,seal:Kt,create:v2}=Object,{apply:G0,construct:V0}=typeof Reflect<"u"&&Reflect;G0||(G0=function(e,t,n){return e.apply(t,n)});Tt||(Tt=function(e){return e});Kt||(Kt=function(e){return e});V0||(V0=function(e,t){return new e(...t)});var k2=jt(Array.prototype.forEach),fc=jt(Array.prototype.pop),mu=jt(Array.prototype.push),Er=jt(String.prototype.toLowerCase),H0=jt(String.prototype.toString),A2=jt(String.prototype.match),$t=jt(String.prototype.replace),S2=jt(String.prototype.indexOf),D2=jt(String.prototype.trim),Mt=jt(RegExp.prototype.test),pu=L2(TypeError);function jt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),B2=Kt(/\${[\w\W]*}/gm),R2=Kt(/^data-[\-\w.\u00B7-\uFFFF]/),O2=Kt(/^aria-[\-\w]+$/),Cc=Kt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),N2=Kt(/^(?:\w+script|data):/i),I2=Kt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),wc=Kt(/^html$/i),Tc=Object.freeze({__proto__:null,MUSTACHE_EXPR:M2,ERB_EXPR:_2,TMPLIT_EXPR:B2,DATA_ATTR:R2,ARIA_ATTR:O2,IS_ALLOWED_URI:Cc,IS_SCRIPT_OR_DATA:N2,ATTR_WHITESPACE:I2,DOCTYPE_NAME:wc}),j2=()=>typeof window>"u"?null:window,z2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function vc(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:j2(),t=h=>vc(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:g,trustedTypes:m}=e,f=s.prototype,v=hr(f,"cloneNode"),T=hr(f,"nextSibling"),p=hr(f,"childNodes"),C=hr(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let F,S="",{implementation:A,createNodeIterator:y,createDocumentFragment:k,getElementsByTagName:D}=u,{importNode:x}=n,L={};t.isSupported=typeof xc=="function"&&typeof C=="function"&&A&&A.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:O,ERB_EXPR:w,TMPLIT_EXPR:R,DATA_ATTR:J,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:pe,ATTR_WHITESPACE:fe}=Tc,{IS_ALLOWED_URI:_e}=Tc,z=null,Te=Ee({},[...hc,...W0,...q0,...$0,...bc]),Z=null,b=Ee({},[...Ec,...K0,...yc,...br]),_=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),K=null,ae=null,Y=!0,Se=!0,te=!1,Ce=!0,ee=!1,oe=!1,ge=!1,X=!1,W=!1,ne=!1,Pe=!1,De=!0,ue=!1,Ue="user-content-",nt=!0,Be=!1,Re={},Oe=null,kt=Ee({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Cn=null,He=Ee({},["audio","video","img","source","image","track"]),Qt=null,qt=Ee({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),at="http://www.w3.org/1998/Math/MathML",Pt="http://www.w3.org/2000/svg",B="http://www.w3.org/1999/xhtml",Q=B,ve=!1,be=null,xe=Ee({},[at,Pt,B],H0),je,it=["application/xhtml+xml","text/html"],we="text/html",ke,Ft=null,Rm=u.createElement("form"),Qs=function(h){return h instanceof RegExp||h instanceof Function},u0=function(h){if(!(Ft&&Ft===h)){if((!h||typeof h!="object")&&(h={}),h=ya(h),je=it.indexOf(h.PARSER_MEDIA_TYPE)===-1?je=we:je=h.PARSER_MEDIA_TYPE,ke=je==="application/xhtml+xml"?H0:Er,z="ALLOWED_TAGS"in h?Ee({},h.ALLOWED_TAGS,ke):Te,Z="ALLOWED_ATTR"in h?Ee({},h.ALLOWED_ATTR,ke):b,be="ALLOWED_NAMESPACES"in h?Ee({},h.ALLOWED_NAMESPACES,H0):xe,Qt="ADD_URI_SAFE_ATTR"in h?Ee(ya(qt),h.ADD_URI_SAFE_ATTR,ke):qt,Cn="ADD_DATA_URI_TAGS"in h?Ee(ya(He),h.ADD_DATA_URI_TAGS,ke):He,Oe="FORBID_CONTENTS"in h?Ee({},h.FORBID_CONTENTS,ke):kt,K="FORBID_TAGS"in h?Ee({},h.FORBID_TAGS,ke):{},ae="FORBID_ATTR"in h?Ee({},h.FORBID_ATTR,ke):{},Re="USE_PROFILES"in h?h.USE_PROFILES:!1,Y=h.ALLOW_ARIA_ATTR!==!1,Se=h.ALLOW_DATA_ATTR!==!1,te=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Ce=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ee=h.SAFE_FOR_TEMPLATES||!1,oe=h.WHOLE_DOCUMENT||!1,W=h.RETURN_DOM||!1,ne=h.RETURN_DOM_FRAGMENT||!1,Pe=h.RETURN_TRUSTED_TYPE||!1,X=h.FORCE_BODY||!1,De=h.SANITIZE_DOM!==!1,ue=h.SANITIZE_NAMED_PROPS||!1,nt=h.KEEP_CONTENT!==!1,Be=h.IN_PLACE||!1,_e=h.ALLOWED_URI_REGEXP||Cc,Q=h.NAMESPACE||B,_=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&Qs(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(_.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&Qs(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(_.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(_.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ee&&(Se=!1),ne&&(W=!0),Re&&(z=Ee({},[...bc]),Z=[],Re.html===!0&&(Ee(z,hc),Ee(Z,Ec)),Re.svg===!0&&(Ee(z,W0),Ee(Z,K0),Ee(Z,br)),Re.svgFilters===!0&&(Ee(z,q0),Ee(Z,K0),Ee(Z,br)),Re.mathMl===!0&&(Ee(z,$0),Ee(Z,yc),Ee(Z,br))),h.ADD_TAGS&&(z===Te&&(z=ya(z)),Ee(z,h.ADD_TAGS,ke)),h.ADD_ATTR&&(Z===b&&(Z=ya(Z)),Ee(Z,h.ADD_ATTR,ke)),h.ADD_URI_SAFE_ATTR&&Ee(Qt,h.ADD_URI_SAFE_ATTR,ke),h.FORBID_CONTENTS&&(Oe===kt&&(Oe=ya(Oe)),Ee(Oe,h.FORBID_CONTENTS,ke)),nt&&(z["#text"]=!0),oe&&Ee(z,["html","head","body"]),z.table&&(Ee(z,["tbody"]),delete K.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw pu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw pu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');F=h.TRUSTED_TYPES_POLICY,S=F.createHTML("")}else F===void 0&&(F=z2(m,a)),F!==null&&typeof S=="string"&&(S=F.createHTML(""));Tt&&Tt(h),Ft=h}},el=Ee({},["mi","mo","mn","ms","mtext"]),tl=Ee({},["foreignobject","desc","title","annotation-xml"]),Om=Ee({},["title","style","font","a","script"]),Ou=Ee({},W0);Ee(Ou,q0),Ee(Ou,P2);let r0=Ee({},$0);Ee(r0,F2);let Nm=function(h){let $=C(h);(!$||!$.tagName)&&($={namespaceURI:Q,tagName:"template"});let I=Er(h.tagName),Ae=Er($.tagName);return be[h.namespaceURI]?h.namespaceURI===Pt?$.namespaceURI===B?I==="svg":$.namespaceURI===at?I==="svg"&&(Ae==="annotation-xml"||el[Ae]):!!Ou[I]:h.namespaceURI===at?$.namespaceURI===B?I==="math":$.namespaceURI===Pt?I==="math"&&tl[Ae]:!!r0[I]:h.namespaceURI===B?$.namespaceURI===Pt&&!tl[Ae]||$.namespaceURI===at&&!el[Ae]?!1:!r0[I]&&(Om[I]||!Ou[I]):!!(je==="application/xhtml+xml"&&be[h.namespaceURI]):!1},da=function(h){mu(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},o0=function(h,$){try{mu(t.removed,{attribute:$.getAttributeNode(h),from:$})}catch{mu(t.removed,{attribute:null,from:$})}if($.removeAttribute(h),h==="is"&&!Z[h])if(W||ne)try{da($)}catch{}else try{$.setAttribute(h,"")}catch{}},nl=function(h){let $,I;if(X)h=""+h;else{let bt=A2(h,/^[\r\n\t ]+/);I=bt&&bt[0]}je==="application/xhtml+xml"&&Q===B&&(h=''+h+"");let Ae=F?F.createHTML(h):h;if(Q===B)try{$=new g().parseFromString(Ae,je)}catch{}if(!$||!$.documentElement){$=A.createDocument(Q,"template",null);try{$.documentElement.innerHTML=ve?S:Ae}catch{}}let Xe=$.body||$.documentElement;return h&&I&&Xe.insertBefore(u.createTextNode(I),Xe.childNodes[0]||null),Q===B?D.call($,oe?"html":"body")[0]:oe?$.documentElement:Xe},al=function(h){return y.call(h.ownerDocument||h,h,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Im=function(h){return h instanceof d&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Nu=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},dn=function(h,$,I){L[h]&&k2(L[h],Ae=>{Ae.call(t,$,I,Ft)})},ul=function(h){let $;if(dn("beforeSanitizeElements",h,null),Im(h))return da(h),!0;let I=ke(h.nodeName);if(dn("uponSanitizeElement",h,{tagName:I,allowedTags:z}),h.hasChildNodes()&&!Nu(h.firstElementChild)&&(!Nu(h.content)||!Nu(h.content.firstElementChild))&&Mt(/<[/\w]/g,h.innerHTML)&&Mt(/<[/\w]/g,h.textContent))return da(h),!0;if(!z[I]||K[I]){if(!K[I]&&ol(I)&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,I)||_.tagNameCheck instanceof Function&&_.tagNameCheck(I)))return!1;if(nt&&!Oe[I]){let Ae=C(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&Ae){let bt=Xe.length;for(let At=bt-1;At>=0;--At)Ae.insertBefore(v(Xe[At],!0),T(h))}}return da(h),!0}return h instanceof s&&!Nm(h)||(I==="noscript"||I==="noembed")&&Mt(/<\/no(script|embed)/i,h.innerHTML)?(da(h),!0):(ee&&h.nodeType===3&&($=h.textContent,$=$t($,O," "),$=$t($,w," "),$=$t($,R," "),h.textContent!==$&&(mu(t.removed,{element:h.cloneNode()}),h.textContent=$)),dn("afterSanitizeElements",h,null),!1)},rl=function(h,$,I){if(De&&($==="id"||$==="name")&&(I in u||I in Rm))return!1;if(!(Se&&!ae[$]&&Mt(J,$))&&!(Y&&Mt(N,$))){if(!Z[$]||ae[$]){if(!(ol(h)&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,h)||_.tagNameCheck instanceof Function&&_.tagNameCheck(h))&&(_.attributeNameCheck instanceof RegExp&&Mt(_.attributeNameCheck,$)||_.attributeNameCheck instanceof Function&&_.attributeNameCheck($))||$==="is"&&_.allowCustomizedBuiltInElements&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,I)||_.tagNameCheck instanceof Function&&_.tagNameCheck(I))))return!1}else if(!Qt[$]&&!Mt(_e,$t(I,fe,""))&&!(($==="src"||$==="xlink:href"||$==="href")&&h!=="script"&&S2(I,"data:")===0&&Cn[h])&&!(te&&!Mt(pe,$t(I,fe,"")))&&I)return!1}return!0},ol=function(h){return h.indexOf("-")>0},il=function(h){let $,I,Ae,Xe;dn("beforeSanitizeAttributes",h,null);let{attributes:bt}=h;if(!bt)return;let At={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Z};for(Xe=bt.length;Xe--;){$=bt[Xe];let{name:ut,namespaceURI:ga}=$;if(I=ut==="value"?$.value:D2($.value),Ae=ke(ut),At.attrName=Ae,At.attrValue=I,At.keepAttr=!0,At.forceKeepAttr=void 0,dn("uponSanitizeAttribute",h,At),I=At.attrValue,At.forceKeepAttr||(o0(ut,h),!At.keepAttr))continue;if(!Ce&&Mt(/\/>/i,I)){o0(ut,h);continue}ee&&(I=$t(I,O," "),I=$t(I,w," "),I=$t(I,R," "));let sl=ke(h.nodeName);if(rl(sl,Ae,I)){if(ue&&(Ae==="id"||Ae==="name")&&(o0(ut,h),I=Ue+I),F&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!ga)switch(m.getAttributeType(sl,Ae)){case"TrustedHTML":{I=F.createHTML(I);break}case"TrustedScriptURL":{I=F.createScriptURL(I);break}}try{ga?h.setAttributeNS(ga,ut,I):h.setAttribute(ut,I),fc(t.removed)}catch{}}}dn("afterSanitizeAttributes",h,null)},jm=function h($){let I,Ae=al($);for(dn("beforeSanitizeShadowDOM",$,null);I=Ae.nextNode();)dn("uponSanitizeShadowNode",I,null),!ul(I)&&(I.content instanceof r&&h(I.content),il(I));dn("afterSanitizeShadowDOM",$,null)};return t.sanitize=function(h){let $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},I,Ae,Xe,bt;if(ve=!h,ve&&(h=""),typeof h!="string"&&!Nu(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw pu("dirty is not a string, aborting")}else throw pu("toString is not a function");if(!t.isSupported)return h;if(ge||u0($),t.removed=[],typeof h=="string"&&(Be=!1),Be){if(h.nodeName){let ga=ke(h.nodeName);if(!z[ga]||K[ga])throw pu("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)I=nl(""),Ae=I.ownerDocument.importNode(h,!0),Ae.nodeType===1&&Ae.nodeName==="BODY"||Ae.nodeName==="HTML"?I=Ae:I.appendChild(Ae);else{if(!W&&!ee&&!oe&&h.indexOf("<")===-1)return F&&Pe?F.createHTML(h):h;if(I=nl(h),!I)return W?null:Pe?S:""}I&&X&&da(I.firstChild);let At=al(Be?h:I);for(;Xe=At.nextNode();)ul(Xe)||(Xe.content instanceof r&&jm(Xe.content),il(Xe));if(Be)return h;if(W){if(ne)for(bt=k.call(I.ownerDocument);I.firstChild;)bt.appendChild(I.firstChild);else bt=I;return(Z.shadowroot||Z.shadowrootmod)&&(bt=x.call(n,bt,!0)),bt}let ut=oe?I.outerHTML:I.innerHTML;return oe&&z["!doctype"]&&I.ownerDocument&&I.ownerDocument.doctype&&I.ownerDocument.doctype.name&&Mt(wc,I.ownerDocument.doctype.name)&&(ut=" -`+ut),ee&&(ut=$t(ut,O," "),ut=$t(ut,w," "),ut=$t(ut,R," ")),F&&Pe?F.createHTML(ut):ut},t.setConfig=function(h){u0(h),ge=!0},t.clearConfig=function(){Ft=null,ge=!1},t.isValidAttribute=function(h,$,I){Ft||u0({});let Ae=ke(h),Xe=ke($);return rl(Ae,Xe,I)},t.addHook=function(h,$){typeof $=="function"&&(L[h]=L[h]||[],mu(L[h],$))},t.removeHook=function(h){if(L[h])return fc(L[h])},t.removeHooks=function(h){L[h]&&(L[h]=[])},t.removeAllHooks=function(){L={}},t}var Le=vc();var Iy=cr.alert;var Ta=console,J0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=It.green;a>1e4?u=It.red:a>1e3&&(u=It.yellow),Ta.debug(It.dim($n+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},fu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&Ta.log(It.dim($n+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&Ta.log(It.green($n+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&Ta.warn(It.yellow($n+" WARN:"),...t)}error(...t){this.#e<=3&&Ta.error(It.red($n+" ERROR:"),...t)}fatal(...t){this.#e<=4&&Ta.error(It.red($n+" FATAL:"),...t)}timing(){return this.level===0?new J0:{reset:()=>{},stop:()=>{}}}},P=new fu;var kc=["*://*/*","*","*://*"],Sc="immersive-translate-wildcard-placeholder.com";function Y0(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>kc.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===r)return!0;if(kc.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===r:H2(u,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let T=i.split("://");l=T[0],l==="*"&&T.length>1&&(l="*",i="https://"+T[1])}else l="*",i="https://"+i;let d=i.replace(/\*/g,Sc),g;try{g=new URL(d)}catch{return P.debug("invalid match pattern",d,"raw match value:",c),!1}let m=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let v=U2(l+":",Ac(m),Ac(f));if(v){let T=new URL(u);return T.port="",v.test(T.href)}else return!1}});if(o)return o}return null}function Ac(e){return e.replaceAll(Sc,"*")}function U2(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function hn(e,t){return Y0(e,t)!==null}function H2(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}function X0(e){return Array.isArray(e)?e:e?[e]:[]}function Z0(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Dn(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function yr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let s=X0(i);u[o]=Array.from(new Set([...u[o],...s]))}else u[o]=X0(i)}),u}var xa="input is invalid type",Q0=typeof window=="object",Ln=Q0?window:{};Ln.JS_SHA256_NO_WINDOW&&(Q0=!1);var W2=!Q0&&typeof self=="object",q2=!Ln.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;q2?Ln=global:W2&&(Ln=self);var mT=!Ln.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,pT=typeof define=="function"&&define.amd,hu=!Ln.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",V="0123456789abcdef".split(""),$2=[-2147483648,8388608,32768,128],Gt=[24,16,8,0],Tr=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],xr=["hex","array","digest","arrayBuffer"],rt=[];(Ln.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});hu&&(Ln.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var Dc=function(e,t){return function(n){return new ot(t,!0).update(n)[e]()}},Pc=function(e){var t=Dc("hex",e);t.create=function(){return new ot(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};ot.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=$2[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};ot.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,d,g,m,f,v,T,p,C,F;for(l=16;l<64;++l)m=s[l-15],c=(m>>>7|m<<25)^(m>>>18|m<<14)^m>>>3,m=s[l-2],d=(m>>>17|m<<15)^(m>>>19|m<<13)^m>>>10,s[l]=s[l-16]+c+s[l-7]+d<<0;for(F=t&n,l=0;l<64;l+=4)this.first?(this.is224?(T=300032,m=s[0]-1413257819,i=m-150054599<<0,a=m+24177077<<0):(T=704751109,m=s[0]-210244248,i=m-1521486534<<0,a=m+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),d=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),T=e&t,g=T^e&n^F,v=u&r^~u&o,m=i+d+v+Tr[l]+s[l],f=c+g,i=a+m<<0,a=m+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),d=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,g=p^a&t^T,v=i&u^~i&r,m=o+d+v+Tr[l+1]+s[l+1],f=c+g,o=n+m<<0,n=m+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),d=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),C=n&a,g=C^n&e^p,v=o&i^~o&u,m=r+d+v+Tr[l+2]+s[l+2],f=c+g,r=t+m<<0,t=m+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),d=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),F=t&n,g=F^t&a^C,v=r&o^~r&i,m=u+d+v+Tr[l+3]+s[l+3],f=c+g,u=e+m<<0,e=m+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};ot.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=V[e>>28&15]+V[e>>24&15]+V[e>>20&15]+V[e>>16&15]+V[e>>12&15]+V[e>>8&15]+V[e>>4&15]+V[e&15]+V[t>>28&15]+V[t>>24&15]+V[t>>20&15]+V[t>>16&15]+V[t>>12&15]+V[t>>8&15]+V[t>>4&15]+V[t&15]+V[n>>28&15]+V[n>>24&15]+V[n>>20&15]+V[n>>16&15]+V[n>>12&15]+V[n>>8&15]+V[n>>4&15]+V[n&15]+V[a>>28&15]+V[a>>24&15]+V[a>>20&15]+V[a>>16&15]+V[a>>12&15]+V[a>>8&15]+V[a>>4&15]+V[a&15]+V[u>>28&15]+V[u>>24&15]+V[u>>20&15]+V[u>>16&15]+V[u>>12&15]+V[u>>8&15]+V[u>>4&15]+V[u&15]+V[r>>28&15]+V[r>>24&15]+V[r>>20&15]+V[r>>16&15]+V[r>>12&15]+V[r>>8&15]+V[r>>4&15]+V[r&15]+V[o>>28&15]+V[o>>24&15]+V[o>>20&15]+V[o>>16&15]+V[o>>12&15]+V[o>>8&15]+V[o>>4&15]+V[o&15];return this.is224||(s+=V[i>>28&15]+V[i>>24&15]+V[i>>20&15]+V[i>>16&15]+V[i>>12&15]+V[i>>8&15]+V[i>>4&15]+V[i&15]),s};ot.prototype.toString=ot.prototype.hex;ot.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};ot.prototype.array=ot.prototype.digest;ot.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function Cr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,s;for(a=0;a>6,r[i++]=128|s&63):s<55296||s>=57344?(r[i++]=224|s>>12,r[i++]=128|s>>6&63,r[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|s>>18,r[i++]=128|s>>12&63,r[i++]=128|s>>6&63,r[i++]=128|s&63);e=r}else if(u==="object"){if(e===null)throw new Error(xa);if(hu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!hu||!ArrayBuffer.isView(e)))throw new Error(xa)}else throw new Error(xa);e.length>64&&(e=new ot(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var d=e[a]||0;l[a]=92^d,c[a]=54^d}ot.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}Cr.prototype=new ot;Cr.prototype.finalize=function(){if(ot.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();ot.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),ot.prototype.finalize.call(this)}};var Ca=Pc();Ca.sha256=Ca;Ca.sha224=Pc(!0);Ca.sha256.hmac=Fc();Ca.sha224.hmac=Fc(!0);var Mc=Ca;var _c=Mc.sha256;function Vt(e){return Promise.resolve(_c(e))}function wr(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function Pn(e,t){let n=_c.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function Bc(e,t){let n=await Pn(e,t);return wr(n)}async function vr(e,t){let n=K2(t),a=await Pn(e,n);return wr(a)}function K2(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}function Ve(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var me=Ve();function ie(){return me.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function Rc(){return me.HAS_CSP_ERROR=="1"}function xt(){if(me.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function Oc(){return typeof Deno<"u"}var TT=Ve().PROD==="1",wa=Ve().PROD!=="1";function Nc(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function lt(){try{return globalThis.self!==globalThis.top}catch{return!0}}var kr=!1,G2=ie();function Ic(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function V2(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&jc(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Fn(r,ar)){if(u===!0)return!0;continue}if(bu(r.nodeName,t.inlineTags))return!0;if(!ei(r,t))return!1}}return!0}function ti(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(bu(e.nodeName,n)||ei(e,t)){if(Fn(e,C4)||bu(e.nodeName,["BR"]))return!1;if(Fn(e,ar))return!0;if(ei(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return V2(e,t)}else return Fn(e,ar);return!1}function jc(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Fn(e,x4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Fn(e,f4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||bu(e.nodeName,r))}function Ar(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!Uc(a)&&a.length>=n}function zc(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(Uc(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function Uc(e){for(let t=0;t127)return!1;return!0}function Hc(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function Wc(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function qc(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function $c(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Fn(e,t,n=!1){return ni(e,t,"1",n)}function ni(e,t,n,a=!1){return kr&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function va(e){return(e.innerText||e.textContent||"").trim()}function ai(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function Sr(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Je(e,t,n,a=!1){e.isContentEditable||(kr&&!a?(e.dataset[iu]||(e.dataset[iu]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[iu]||(e.dataset[iu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Dr(e,t,n=!1){if(kr&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function ka(e,t,n=!1){return kr&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function ei(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!bu(e.nodeName,n)}function Aa(e){let{config:t}=e,n=ur;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ct(){if(!globalThis||!globalThis.location)return"https://example.com";if(!lt())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Vn(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){P.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else P.warn("injectCSS failed, rootDocument does not have head node",e)}function Sa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(G2){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function bu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Kc(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function Gc(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||jc(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return P.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function Vc(e,t,n){let a=0,u=(r,o,i,s)=>{if(++a>100||s===r)return r;let l=r.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return r;let c=l.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}function Jn(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Nt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":Nt[u]}else return"auto";else return Nt[a]}var Lr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...p4,{type:"password",name:"apikey",required:!0}],props:p4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},D0={type:se+"ChildFrameToRootFrameIdentifier"},ir=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var I4='';function j4(e){let t=j.runtime.getURL(Qu),n=new URL(t);return(e.startsWith("http")||!ha())&&n.searchParams.set("file",e),n.href}function Ea(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var L0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function sr(e,t){let n=Ea(),a=setTimeout(()=>n.reject(new L0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function su(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(l),r(new DOMException("Delay was aborted.","AbortError"))},l=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(l)}catch(s){if(!(s instanceof ReferenceError))throw s}})}var z4=class{#e=0;#t=[];#n=[];#a=Ea();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tJp,bgBlue:()=>Qp,bgBrightBlack:()=>af,bgBrightBlue:()=>sf,bgBrightCyan:()=>cf,bgBrightGreen:()=>rf,bgBrightMagenta:()=>lf,bgBrightRed:()=>uf,bgBrightWhite:()=>df,bgBrightYellow:()=>of,bgCyan:()=>tf,bgGreen:()=>Xp,bgMagenta:()=>ef,bgRed:()=>Yp,bgRgb24:()=>ff,bgRgb8:()=>mf,bgWhite:()=>nf,bgYellow:()=>Zp,black:()=>_p,blue:()=>Np,bold:()=>Ap,brightBlack:()=>W4,brightBlue:()=>$p,brightCyan:()=>Gp,brightGreen:()=>Wp,brightMagenta:()=>Kp,brightRed:()=>Hp,brightWhite:()=>Vp,brightYellow:()=>qp,cyan:()=>jp,dim:()=>Sp,getColorEnabled:()=>vp,gray:()=>Up,green:()=>Rp,hidden:()=>Fp,inverse:()=>Pp,italic:()=>Dp,magenta:()=>Ip,red:()=>Bp,reset:()=>kp,rgb24:()=>pf,rgb8:()=>gf,setColorEnabled:()=>wp,strikethrough:()=>Mp,stripColor:()=>bf,underline:()=>Lp,white:()=>zp,yellow:()=>Op});var{Deno:U4}=globalThis,H4=typeof U4?.noColor=="boolean"?U4.noColor:!0,P0=!H4;function wp(e){H4||(P0=e)}function vp(){return P0}function le(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function ce(e,t){return P0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function kp(e){return ce(e,le([0],0))}function Ap(e){return ce(e,le([1],22))}function Sp(e){return ce(e,le([2],22))}function Dp(e){return ce(e,le([3],23))}function Lp(e){return ce(e,le([4],24))}function Pp(e){return ce(e,le([7],27))}function Fp(e){return ce(e,le([8],28))}function Mp(e){return ce(e,le([9],29))}function _p(e){return ce(e,le([30],39))}function Bp(e){return ce(e,le([31],39))}function Rp(e){return ce(e,le([32],39))}function Op(e){return ce(e,le([33],39))}function Np(e){return ce(e,le([34],39))}function Ip(e){return ce(e,le([35],39))}function jp(e){return ce(e,le([36],39))}function zp(e){return ce(e,le([37],39))}function Up(e){return W4(e)}function W4(e){return ce(e,le([90],39))}function Hp(e){return ce(e,le([91],39))}function Wp(e){return ce(e,le([92],39))}function qp(e){return ce(e,le([93],39))}function $p(e){return ce(e,le([94],39))}function Kp(e){return ce(e,le([95],39))}function Gp(e){return ce(e,le([96],39))}function Vp(e){return ce(e,le([97],39))}function Jp(e){return ce(e,le([40],49))}function Yp(e){return ce(e,le([41],49))}function Xp(e){return ce(e,le([42],49))}function Zp(e){return ce(e,le([43],49))}function Qp(e){return ce(e,le([44],49))}function ef(e){return ce(e,le([45],49))}function tf(e){return ce(e,le([46],49))}function nf(e){return ce(e,le([47],49))}function af(e){return ce(e,le([100],49))}function uf(e){return ce(e,le([101],49))}function rf(e){return ce(e,le([102],49))}function of(e){return ce(e,le([103],49))}function sf(e){return ce(e,le([104],49))}function lf(e){return ce(e,le([105],49))}function cf(e){return ce(e,le([106],49))}function df(e){return ce(e,le([107],49))}function An(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function gf(e,t){return ce(e,le([38,5,An(t)],39))}function mf(e,t){return ce(e,le([48,5,An(t)],49))}function pf(e,t){return typeof t=="number"?ce(e,le([38,2,t>>16&255,t>>8&255,t&255],39)):ce(e,le([38,2,An(t.r),An(t.g),An(t.b)],39))}function ff(e,t){return typeof t=="number"?ce(e,le([48,2,t>>16&255,t>>8&255,t&255],49)):ce(e,le([48,2,An(t.r),An(t.g),An(t.b)],49))}var hf=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function bf(e){return e.replace(hf,"")}var F0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},Ef={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function M0(e,t){let n={...Ef,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new F0(u,n.maxAttempts)}var KE=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var lr=globalThis||(typeof window<"u"?window:self),Tf=Object.create,B0=Object.defineProperty,xf=Object.getOwnPropertyDescriptor,Cf=Object.getOwnPropertyNames,wf=Object.getPrototypeOf,vf=Object.prototype.hasOwnProperty,kf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Af=(e,t)=>{for(var n in t)B0(e,n,{get:t[n],enumerable:!0})},_0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Cf(t))!vf.call(e,u)&&u!==n&&B0(e,u,{get:()=>t[u],enumerable:!(a=xf(t,u))||a.enumerable});return e},Sf=(e,t,n)=>(_0(e,t,"default"),n&&_0(n,t,"default")),$4=(e,t,n)=>(n=e!=null?Tf(wf(e)):{},_0(t||!e||!e.__esModule?B0(n,"default",{value:e,enumerable:!0}):n,e)),K4=kf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,l=/^0o[0-7]+$/i,s=parseInt,c=typeof lr=="object"&&lr&&lr.Object===Object&&lr,d=typeof self=="object"&&self&&self.Object===Object&&self,g=c||d||Function("return this")(),m=Object.prototype,f=m.toString,C=Math.max,T=Math.min,p=function(){return g.Date.now()};function w(L,x,P){var O,v,R,J,N,pe,fe=0,_e=!1,z=!1,Te=!0;if(typeof L!="function")throw new TypeError(n);x=k(x)||0,S(P)&&(_e=!!P.leading,z="maxWait"in P,R=z?C(k(P.maxWait)||0,x):R,Te="trailing"in P?!!P.trailing:Te);function Z(ee){var oe=O,ge=v;return O=v=void 0,fe=ee,J=L.apply(ge,oe),J}function b(ee){return fe=ee,N=setTimeout(ae,x),_e?Z(ee):J}function _(ee){var oe=ee-pe,ge=ee-fe,X=x-oe;return z?T(X,R-ge):X}function K(ee){var oe=ee-pe,ge=ee-fe;return pe===void 0||oe>=x||oe<0||z&&ge>=R}function ae(){var ee=p();if(K(ee))return Y(ee);N=setTimeout(ae,_(ee))}function Y(ee){return N=void 0,Te&&O?Z(ee):(O=v=void 0,J)}function De(){N!==void 0&&clearTimeout(N),fe=0,O=pe=v=N=void 0}function te(){return N===void 0?J:Y(p())}function Ce(){var ee=p(),oe=K(ee);if(O=arguments,v=this,pe=ee,oe){if(N===void 0)return b(pe);if(z)return N=setTimeout(ae,x),Z(pe)}return N===void 0&&(N=setTimeout(ae,x)),J}return Ce.cancel=De,Ce.flush=te,Ce}function F(L,x,P){var O=!0,v=!0;if(typeof L!="function")throw new TypeError(n);return S(P)&&(O="leading"in P?!!P.leading:O,v="trailing"in P?!!P.trailing:v),w(L,x,{leading:O,maxWait:x,trailing:v})}function S(L){var x=typeof L;return!!L&&(x=="object"||x=="function")}function A(L){return!!L&&typeof L=="object"}function y(L){return typeof L=="symbol"||A(L)&&f.call(L)==u}function k(L){if(typeof L=="number")return L;if(y(L))return a;if(S(L)){var x=typeof L.valueOf=="function"?L.valueOf():L;L=S(x)?x+"":x}if(typeof L!="string")return L===0?L:+L;L=L.replace(r,"");var P=i.test(L);return P||l.test(L)?s(L.slice(2),P?2:8):o.test(L)?a:+L}t.exports=F}),G4={};Af(G4,{default:()=>gt});var Df=$4(K4());Sf(G4,$4(K4()));var{default:q4,...Lf}=Df,gt=q4!==void 0?q4:Lf;var Pf=Object.create,O0=Object.defineProperty,Ff=Object.getOwnPropertyDescriptor,Mf=Object.getOwnPropertyNames,_f=Object.getPrototypeOf,Bf=Object.prototype.hasOwnProperty,Rf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Of=(e,t)=>{for(var n in t)O0(e,n,{get:t[n],enumerable:!0})},R0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Mf(t))!Bf.call(e,u)&&u!==n&&O0(e,u,{get:()=>t[u],enumerable:!(a=Ff(t,u))||a.enumerable});return e},Nf=(e,t,n)=>(R0(e,t,"default"),n&&R0(n,t,"default")),J4=(e,t,n)=>(n=e!=null?Pf(_f(e)):{},R0(t||!e||!e.__esModule?O0(n,"default",{value:e,enumerable:!0}):n,e)),Y4=Rf((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,l,s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){s(a)==="object"&&s(r)==="object"?r.exports=d():(i=[],o=d,l=typeof o=="function"?o.apply(a,i):o,l!==void 0&&(r.exports=l))})(void 0,function(){return function(c){function d(m){if(g[m])return g[m].exports;var f=g[m]={i:m,l:!1,exports:{}};return c[m].call(f.exports,f,f.exports,d),f.l=!0,f.exports}var g={};return d.m=c,d.c=g,d.i=function(m){return m},d.d=function(m,f,C){d.o(m,f)||Object.defineProperty(m,f,{configurable:!1,enumerable:!0,get:C})},d.n=function(m){var f=m&&m.__esModule?function(){return m.default}:function(){return m};return d.d(f,"a",f),f},d.o=function(m,f){return Object.prototype.hasOwnProperty.call(m,f)},d.p="",d(d.s=0)}([function(c,d,g){function m(b,_){var K={};for(var ae in b)_.indexOf(ae)>=0||Object.prototype.hasOwnProperty.call(b,ae)&&(K[ae]=b[ae]);return K}Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&s(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":s(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":s(b)},C=Object.assign||function(b){for(var _=1;_'+ae+"",ge.onclick=function(){return v(X,oe)},ge.listener=function(q){(x(q)||P(q))&&N()},O(ge,oe),De&&De<1&&(De=1),!Ce&&De&&S(De).then(function(){return v(X,oe)})},fe=d.force=function(b,_){var K=b.type,ae=K===void 0?5:K,Y=b.text,De=b.buttonText,te=De===void 0?"OK":De,Ce=b.callback,ee=b.position,oe=ee===void 0?p.positions.force||oe.top:ee;A(),N();var ge=document.createElement("div"),X=y();ge.id=X;var q=document.createElement("div");q.classList.add(p.classes.textbox),q.classList.add(p.classes.backgroundInfo),q.innerHTML='
'+Y+"
";var ne=document.createElement("div");ne.classList.add(p.classes.button),ne.classList.add(k[ae]),ne.innerHTML=te,ne.onclick=function(){v(X,oe),J(),Ce?Ce():_&&_()},ge.appendChild(q),ge.appendChild(ne),ge.listener=function(Pe){x(Pe)&&ne.click()},O(ge,oe),R()},_e=d.confirm=function(b,_,K){var ae=b.text,Y=b.submitText,De=Y===void 0?"Yes":Y,te=b.cancelText,Ce=te===void 0?"Cancel":te,ee=b.submitCallback,oe=b.cancelCallback,ge=b.position,X=ge===void 0?p.positions.confirm||X.top:ge;A(),N();var q=document.createElement("div"),ne=y();q.id=ne;var Pe=document.createElement("div");Pe.classList.add(p.classes.textbox),Pe.classList.add(p.classes.backgroundInfo),Pe.innerHTML='
'+ae+"
";var Le=document.createElement("div");Le.classList.add(p.classes.button),Le.classList.add(p.classes.elementHalf),Le.classList.add(p.classes.backgroundSuccess),Le.innerHTML=De,Le.onclick=function(){v(ne,X),J(),ee?ee():_&&_()};var ue=document.createElement("div");ue.classList.add(p.classes.button),ue.classList.add(p.classes.elementHalf),ue.classList.add(p.classes.backgroundError),ue.innerHTML=Ce,ue.onclick=function(){v(ne,X),J(),oe?oe():K&&K()},q.appendChild(Pe),q.appendChild(Le),q.appendChild(ue),q.listener=function(Ue){x(Ue)?Le.click():P(Ue)&&ue.click()},O(q,X),R(q,X)},z=function(b,_,K){var ae=b.text,Y=b.submitText,De=Y===void 0?"Submit":Y,te=b.cancelText,Ce=te===void 0?"Cancel":te,ee=b.submitCallback,oe=b.cancelCallback,ge=b.position,X=ge===void 0?p.positions.input||X.top:ge,q=m(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);A(),N();var ne=document.createElement("div"),Pe=y();ne.id=Pe;var Le=document.createElement("div");Le.classList.add(p.classes.textbox),Le.classList.add(p.classes.backgroundInfo),Le.innerHTML='
'+ae+"
";var ue=document.createElement("input");ue.classList.add(p.classes.inputField),ue.setAttribute("autocapitalize",q.autocapitalize||"none"),ue.setAttribute("autocomplete",q.autocomplete||"off"),ue.setAttribute("autocorrect",q.autocorrect||"off"),ue.setAttribute("autofocus",q.autofocus||"true"),ue.setAttribute("inputmode",q.inputmode||"verbatim"),ue.setAttribute("max",q.max||""),ue.setAttribute("maxlength",q.maxlength||""),ue.setAttribute("min",q.min||""),ue.setAttribute("minlength",q.minlength||""),ue.setAttribute("placeholder",q.placeholder||""),ue.setAttribute("spellcheck",q.spellcheck||"default"),ue.setAttribute("step",q.step||"any"),ue.setAttribute("type",q.type||"text"),ue.value=q.value||"",q.allowed&&(ue.oninput=function(){var Be=void 0;if(Array.isArray(q.allowed)){for(var Re="",Oe=q.allowed,kt=0;kt'+K+"",oe.appendChild(X),te.forEach(function(ne,Pe){var Le=ne.type,ue=Le===void 0?1:Le,Ue=ne.text,tt=ne.handler,Be=document.createElement("div");Be.classList.add(k[ue]),Be.classList.add(p.classes.button),Be.classList.add(p.classes.selectChoice);var Re=te[Pe+1];Re&&!Re.type&&(Re.type=1),Re&&Re.type===ue&&Be.classList.add(p.classes.selectChoiceRepeated),Be.innerHTML=Ue,Be.onclick=function(){v(ge,ee),J(),tt()},oe.appendChild(Be)});var q=document.createElement("div");q.classList.add(p.classes.backgroundNeutral),q.classList.add(p.classes.button),q.innerHTML=Y,q.onclick=function(){v(ge,ee),J(),De?De():_&&_()},oe.appendChild(q),oe.listener=function(ne){P(ne)&&q.click()},O(oe,ee),R(oe,ee)},Z=d.date=function(b,_,K){var ae=b.value,Y=ae===void 0?new Date:ae,De=b.submitText,te=De===void 0?"OK":De,Ce=b.cancelText,ee=Ce===void 0?"Cancel":Ce,oe=b.submitCallback,ge=b.cancelCallback,X=b.position,q=X===void 0?p.positions.date||q.top:X;A(),N();var ne="▾",Pe=document.createElement("div"),Le=document.createElement("div"),ue=document.createElement("div"),Ue=function(we){Pe.innerHTML=p.dateMonths[we.getMonth()],Le.innerHTML=we.getDate(),ue.innerHTML=we.getFullYear()},tt=function(we){var Ae=new Date(Y.getFullYear(),Y.getMonth()+1,0).getDate(),Ft=we.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Ft)>Ae&&(Ft=Ae.toString()),we.target.textContent=Ft,Number(Ft)<1&&(Ft="1"),Y.setDate(Number(Ft))},Be=function(we){var Ae=we.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);we.target.textContent=Ae,Y.setFullYear(Number(Ae))},Re=function(we){Ue(Y)},Oe=function(we){var Ae=new Date(Y.getFullYear(),Y.getMonth()+we+1,0).getDate();Y.getDate()>Ae&&Y.setDate(Ae),Y.setMonth(Y.getMonth()+we),Ue(Y)},kt=function(we){Y.setDate(Y.getDate()+we),Ue(Y)},Cn=function(we){var Ae=Y.getFullYear()+we;Ae<0?Y.setFullYear(0):Y.setFullYear(Y.getFullYear()+we),Ue(Y)},He=document.createElement("div"),en=y();He.id=en;var qt=document.createElement("div");qt.classList.add(p.classes.backgroundInfo);var nt=document.createElement("div");nt.classList.add(p.classes.dateSelectorInner);var Pt=document.createElement("div");Pt.classList.add(p.classes.button),Pt.classList.add(p.classes.elementThird),Pt.classList.add(p.classes.dateSelectorUp),Pt.innerHTML=ne;var B=document.createElement("div");B.classList.add(p.classes.button),B.classList.add(p.classes.elementThird),B.classList.add(p.classes.dateSelectorUp),B.innerHTML=ne;var Q=document.createElement("div");Q.classList.add(p.classes.button),Q.classList.add(p.classes.elementThird),Q.classList.add(p.classes.dateSelectorUp),Q.innerHTML=ne,Pe.classList.add(p.classes.element),Pe.classList.add(p.classes.elementThird),Pe.innerHTML=p.dateMonths[Y.getMonth()],Le.classList.add(p.classes.element),Le.classList.add(p.classes.elementThird),Le.setAttribute("contentEditable",!0),Le.addEventListener("input",tt),Le.addEventListener("blur",Re),Le.innerHTML=Y.getDate(),ue.classList.add(p.classes.element),ue.classList.add(p.classes.elementThird),ue.setAttribute("contentEditable",!0),ue.addEventListener("input",Be),ue.addEventListener("blur",Re),ue.innerHTML=Y.getFullYear();var ke=document.createElement("div");ke.classList.add(p.classes.button),ke.classList.add(p.classes.elementThird),ke.innerHTML=ne;var be=document.createElement("div");be.classList.add(p.classes.button),be.classList.add(p.classes.elementThird),be.innerHTML=ne;var xe=document.createElement("div");xe.classList.add(p.classes.button),xe.classList.add(p.classes.elementThird),xe.innerHTML=ne,Pt.onclick=function(){return Oe(1)},B.onclick=function(){return kt(1)},Q.onclick=function(){return Cn(1)},ke.onclick=function(){return Oe(-1)},be.onclick=function(){return kt(-1)},xe.onclick=function(){return Cn(-1)};var je=document.createElement("div");je.classList.add(p.classes.button),je.classList.add(p.classes.elementHalf),je.classList.add(p.classes.backgroundSuccess),je.innerHTML=te,je.onclick=function(){v(en,q),J(),oe?oe(Y):_&&_(Y)};var it=document.createElement("div");it.classList.add(p.classes.button),it.classList.add(p.classes.elementHalf),it.classList.add(p.classes.backgroundError),it.innerHTML=ee,it.onclick=function(){v(en,q),J(),ge?ge(Y):K&&K(Y)},nt.appendChild(Pt),nt.appendChild(B),nt.appendChild(Q),nt.appendChild(Pe),nt.appendChild(Le),nt.appendChild(ue),nt.appendChild(ke),nt.appendChild(be),nt.appendChild(xe),qt.appendChild(nt),He.appendChild(qt),He.appendChild(je),He.appendChild(it),He.listener=function(we){x(we)?je.click():P(we)&&it.click()},O(He,q),R(He,q)};d.default={alert:pe,force:fe,confirm:_e,input:z,select:Te,date:Z,setOptions:w,hideAlerts:N}}])})}).call(a,u(0)(n))}])})}),X4={};Of(X4,{default:()=>cr});var If=J4(Y4());Nf(X4,J4(Y4()));var{default:V4,...jf}=If,cr=V4!==void 0?V4:jf;var N0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function I0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function nc(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function zf(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Me.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Me.splice(0,Me.length),(t===93||t===224)&&(t=91),t in st){st[t]=!1;for(var a in an)an[a]===t&&(ze[a]=!1)}}function Jf(e){if(typeof e>"u")Object.keys(Ge).forEach(function(o){return delete Ge[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&j0(o)});else if(typeof e=="object")e.key&&j0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?nc(an,l):[];Ge[d]=Ge[d].filter(function(m){var f=a?m.method===a:!0;return!(f&&m.scope===n&&zf(m.mods,g))})}})};function Q4(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in st)Object.prototype.hasOwnProperty.call(st,r)&&(!st[r]&&t.mods.indexOf(+r)>-1||st[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!st[16]&&!st[18]&&!st[17]&&!st[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function ec(e,t){var n=Ge["*"],a=e.keyCode||e.which||e.charCode;if(ze.filter.call(this,e)){if((a===93||a===224)&&(a=91),Me.indexOf(a)===-1&&a!==229&&Me.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var C=U0[f];e[f]&&Me.indexOf(C)===-1?Me.push(C):!e[f]&&Me.indexOf(C)>-1?Me.splice(Me.indexOf(C),1):f==="metaKey"&&e[f]&&Me.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Me=Me.slice(Me.indexOf(C))))}),a in st){st[a]=!0;for(var u in an)an[u]===a&&(ze[u]=!0);if(!n)return}for(var r in st)Object.prototype.hasOwnProperty.call(st,r)&&(st[r]=e[U0[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Me.indexOf(17)===-1&&Me.push(17),Me.indexOf(18)===-1&&Me.push(18),st[17]=!0,st[18]=!0);var o=du();if(n)for(var i=0;i-1}function ze(e,t,n){Me=[];var a=ac(e),u=[],r="all",o=document,i=0,l=!1,s=!0,c="+",d=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(l=t.keyup),t.keydown!==void 0&&(s=t.keydown),t.capture!==void 0&&(d=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=nc(an,e)),e=e[e.length-1],e=e==="*"?"*":gr(e),e in Ge||(Ge[e]=[]),Ge[e].push({keyup:l,keydown:s,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!Yf(o)&&window&&(rc.push(o),I0(o,"keydown",function(g){ec(g,o)},d),Z4||(Z4=!0,I0(window,"focus",function(){Me=[]},d)),I0(o,"keyup",function(g){ec(g,o),Vf(g)},d))}function Xf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ge).forEach(function(n){var a=Ge[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var z0={getPressedKeyString:qf,setScope:oc,getScope:du,deleteScope:Gf,getPressedKeyCodes:Wf,isPressed:Kf,filter:$f,trigger:Xf,unbind:Jf,keyMap:cu,modifier:an,modifierMap:U0};for(dr in z0)Object.prototype.hasOwnProperty.call(z0,dr)&&(ze[dr]=z0[dr]);var dr;typeof document<"u"&&(tc=window.hotkeys,ze.noConflict=function(e){return e&&window.hotkeys===ze&&(window.hotkeys=tc),ze},window.hotkeys=ze);var tc;var Zf=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Qf=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Zf:{reset:()=>{},stop:()=>{}}}},H0=new Qf,e2="poegempjloogba",t2="ension://",n2="me-";function gu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function gc(e){return e?e.PROD==="1":!0}function mc(e){return e?e.MOCK==="1":!1}function pc(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var a2="rome-ext";function u2(e,t){return t?e+(t-e%t):e}function r2(e,t){return e.split(t).length-1}function o2(e){let t=Date.now(),n=1;for(let a of e)n+=r2(a,"i");return u2(t,n)}function i2(e,t){return Math.floor(Math.random()*(t-e+1))+e}var s2="extension",l2="chro";function c2(){return i2(1e6,1e8)}var ic="BrowserExt";function d2(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var sc="DeepL",lc="ension",g2="ch"+a2+t2+"cofdb"+e2+"gkncekinflcnj";function fc(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",g2),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let s=globalThis.navigator.userAgent;i.append("user-agent",`${sc}${ic}${lc}/${r||"1.1.1"} ${s}`)}else i.append("user-agent",`${sc}${ic}${lc}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let l={};for(let[s,c]of i.entries())l[s]=c;return l}function m2(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:o2(n)},id:c2()},o=fc({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${l2+n2+s2},${t}`,headers:o,body:d2(r),method:"POST"}}function p2(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Kn={},Gn={};async function cc(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=gu(u);i||(i=gu(r)[1]);let l={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(l=await mr(e,t));let[s,c]=gu(l.refreshTokenExpiresAt);i=c,i||(i=gu(l.refreshTokenChecksAt)[1]);let d=l.refreshToken;if(Kn[d])return new Promise((g,m)=>{Kn[d].push((f,C)=>{f?m(f):g(C)})});Kn[d]=[];try{let g=await f2(d,t.onFetch),m={state:{...n,...l,...g},shouldUpdateRefreshToken:i};return Kn[d].forEach(f=>{f(null,m)}),delete Kn[d],m}catch(g){throw Kn[d].forEach(m=>{m(g)}),delete Kn[d],g}}async function mr(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Gn[e])return new Promise((u,r)=>{Gn[e].push((o,i)=>{o?r(o):u(i)})});try{Gn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),l=i+o.refresh_token_expires_in*1e3,s=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(l).toISOString(),refreshTokenChecksAt:new Date(s).toISOString()};return Gn[e].forEach(d=>{d(null,c)}),delete Gn[e],c}catch(u){throw Gn[e].forEach(r=>{r(u)}),delete Gn[e],u}}async function f2(e,t){if(!e)throw new Error("refreshToken is required");let n=gc(),a=mc();if(!n&&!a){await pc(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:fc({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=p2(r.access_token);if(r.expires_in){let i=new Date,l=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=l.toISOString()}return o}async function dc(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(h2(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...m2({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},l=gc(),s=mc();if(!l&&!s)return await pc(50),{translations:u.map(m=>({text:"mock: "+m,detected_source_language:"EN"}))};let c=await n(i.url,i),d=JSON.parse(c.body),g=[];if(d.result&&d.result.texts)g=d.result.texts.map(m=>({text:m.text,detected_source_language:d.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function h2(e){let t=0;for(let n of e)t+=n.length;return t}async function b2(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await E2(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return H0.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){H0.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function E2(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var pr=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>b2({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await dc(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await dc(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw H0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=gu(e);if(t)n&&cc(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await cc(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var y2={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},bc={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},qe={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},yt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},Sn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},M=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=M.getVersionPrecision(e),u=M.getVersionPrecision(t),r=Math.max(a,u),o=0,i=M.map([e,t],l=>{let s=r-M.getVersionPrecision(l),c=l+new Array(s+1).join(".0");return M.map(c.split("."),d=>new Array(20-d.length).join("0")+d).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return y2[e]}static getBrowserTypeByAlias(e){return bc[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,T2=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=M.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=M.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=M.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=M.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=M.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=M.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=M.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=M.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=M.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=M.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=M.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=M.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=M.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=M.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=M.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=M.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=M.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=M.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=M.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=M.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=M.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=M.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=M.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=M.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=M.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=M.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=M.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:M.getFirstMatch(a,e),version:M.getSecondMatch(a,e)}}}],x2=T2,C2=[{test:[/Roku\/DVP/],describe(e){let t=M.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:yt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=M.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:yt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=M.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=M.getWindowsVersionName(t);return{name:yt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:yt.iOS},n=M.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=M.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=M.getMacOSVersionName(t),a={name:yt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=M.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:yt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=M.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=M.getAndroidVersionName(t),a={name:yt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=M.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:yt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=M.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||M.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||M.getFirstMatch(/\bbb(\d+)/i,e);return{name:yt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=M.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:yt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=M.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:yt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:yt.Linux}}},{test:[/CrOS/],describe(){return{name:yt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=M.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:yt.PlayStation4,version:t}}}],w2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=M.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:qe.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:qe.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:qe.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:qe.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:qe.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:qe.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:qe.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=M.getFirstMatch(/(ipod|iphone)/i,e);return{type:qe.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:qe.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:qe.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:qe.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:qe.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:qe.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:qe.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:qe.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:qe.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:qe.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:qe.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:qe.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:qe.tv}}}],v2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:Sn.Blink};let t=M.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:Sn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:Sn.Trident},n=M.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:Sn.Presto},n=M.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:Sn.Gecko},n=M.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:Sn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:Sn.WebKit},n=M.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],k2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=M.find(x2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=M.find(C2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=M.find(w2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=M.find(v2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return M.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=M.find(r,l=>this.isOS(l));if(o){let l=this.satisfies(t[o]);if(l!==void 0)return l}let i=M.find(r,l=>this.isPlatform(l));if(i){let l=this.satisfies(t[i]);if(l!==void 0)return l}}if(u>0){let r=Object.keys(a),o=M.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=M.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(M.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},hc=k2,A2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new hc(e,t)}static parse(e){return new hc(e).getResult()}static get BROWSER_MAP(){return bc}static get ENGINE_MAP(){return Sn}static get OS_MAP(){return yt}static get PLATFORMS_MAP(){return qe}},fr=A2;var{entries:kc,setPrototypeOf:Ec,isFrozen:S2,getPrototypeOf:D2,getOwnPropertyDescriptor:L2}=Object,{freeze:Tt,seal:Kt,create:P2}=Object,{apply:V0,construct:J0}=typeof Reflect<"u"&&Reflect;V0||(V0=function(e,t,n){return e.apply(t,n)});Tt||(Tt=function(e){return e});Kt||(Kt=function(e){return e});J0||(J0=function(e,t){return new e(...t)});var F2=jt(Array.prototype.forEach),yc=jt(Array.prototype.pop),mu=jt(Array.prototype.push),Er=jt(String.prototype.toLowerCase),W0=jt(String.prototype.toString),M2=jt(String.prototype.match),$t=jt(String.prototype.replace),_2=jt(String.prototype.indexOf),B2=jt(String.prototype.trim),Mt=jt(RegExp.prototype.test),pu=R2(TypeError);function jt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),z2=Kt(/\${[\w\W]*}/gm),U2=Kt(/^data-[\-\w.\u00B7-\uFFFF]/),H2=Kt(/^aria-[\-\w]+$/),Ac=Kt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),W2=Kt(/^(?:\w+script|data):/i),q2=Kt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Sc=Kt(/^html$/i),vc=Object.freeze({__proto__:null,MUSTACHE_EXPR:I2,ERB_EXPR:j2,TMPLIT_EXPR:z2,DATA_ATTR:U2,ARIA_ATTR:H2,IS_ALLOWED_URI:Ac,IS_SCRIPT_OR_DATA:W2,ATTR_WHITESPACE:q2,DOCTYPE_NAME:Sc}),$2=()=>typeof window>"u"?null:window,K2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function Dc(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:$2(),t=h=>Dc(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:l,NodeFilter:s,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:g,trustedTypes:m}=e,f=l.prototype,C=hr(f,"cloneNode"),T=hr(f,"nextSibling"),p=hr(f,"childNodes"),w=hr(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let F,S="",{implementation:A,createNodeIterator:y,createDocumentFragment:k,getElementsByTagName:L}=u,{importNode:x}=n,P={};t.isSupported=typeof kc=="function"&&typeof w=="function"&&A&&A.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:O,ERB_EXPR:v,TMPLIT_EXPR:R,DATA_ATTR:J,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:pe,ATTR_WHITESPACE:fe}=vc,{IS_ALLOWED_URI:_e}=vc,z=null,Te=Ee({},[...Tc,...q0,...$0,...K0,...xc]),Z=null,b=Ee({},[...Cc,...G0,...wc,...br]),_=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),K=null,ae=null,Y=!0,De=!0,te=!1,Ce=!0,ee=!1,oe=!1,ge=!1,X=!1,q=!1,ne=!1,Pe=!1,Le=!0,ue=!1,Ue="user-content-",tt=!0,Be=!1,Re={},Oe=null,kt=Ee({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Cn=null,He=Ee({},["audio","video","img","source","image","track"]),en=null,qt=Ee({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),nt="http://www.w3.org/1998/Math/MathML",Pt="http://www.w3.org/2000/svg",B="http://www.w3.org/1999/xhtml",Q=B,ke=!1,be=null,xe=Ee({},[nt,Pt,B],W0),je,it=["application/xhtml+xml","text/html"],we="text/html",Ae,Ft=null,Um=u.createElement("form"),al=function(h){return h instanceof RegExp||h instanceof Function},r0=function(h){if(!(Ft&&Ft===h)){if((!h||typeof h!="object")&&(h={}),h=ya(h),je=it.indexOf(h.PARSER_MEDIA_TYPE)===-1?je=we:je=h.PARSER_MEDIA_TYPE,Ae=je==="application/xhtml+xml"?W0:Er,z="ALLOWED_TAGS"in h?Ee({},h.ALLOWED_TAGS,Ae):Te,Z="ALLOWED_ATTR"in h?Ee({},h.ALLOWED_ATTR,Ae):b,be="ALLOWED_NAMESPACES"in h?Ee({},h.ALLOWED_NAMESPACES,W0):xe,en="ADD_URI_SAFE_ATTR"in h?Ee(ya(qt),h.ADD_URI_SAFE_ATTR,Ae):qt,Cn="ADD_DATA_URI_TAGS"in h?Ee(ya(He),h.ADD_DATA_URI_TAGS,Ae):He,Oe="FORBID_CONTENTS"in h?Ee({},h.FORBID_CONTENTS,Ae):kt,K="FORBID_TAGS"in h?Ee({},h.FORBID_TAGS,Ae):{},ae="FORBID_ATTR"in h?Ee({},h.FORBID_ATTR,Ae):{},Re="USE_PROFILES"in h?h.USE_PROFILES:!1,Y=h.ALLOW_ARIA_ATTR!==!1,De=h.ALLOW_DATA_ATTR!==!1,te=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Ce=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ee=h.SAFE_FOR_TEMPLATES||!1,oe=h.WHOLE_DOCUMENT||!1,q=h.RETURN_DOM||!1,ne=h.RETURN_DOM_FRAGMENT||!1,Pe=h.RETURN_TRUSTED_TYPE||!1,X=h.FORCE_BODY||!1,Le=h.SANITIZE_DOM!==!1,ue=h.SANITIZE_NAMED_PROPS||!1,tt=h.KEEP_CONTENT!==!1,Be=h.IN_PLACE||!1,_e=h.ALLOWED_URI_REGEXP||Ac,Q=h.NAMESPACE||B,_=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&al(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(_.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&al(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(_.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(_.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ee&&(De=!1),ne&&(q=!0),Re&&(z=Ee({},[...xc]),Z=[],Re.html===!0&&(Ee(z,Tc),Ee(Z,Cc)),Re.svg===!0&&(Ee(z,q0),Ee(Z,G0),Ee(Z,br)),Re.svgFilters===!0&&(Ee(z,$0),Ee(Z,G0),Ee(Z,br)),Re.mathMl===!0&&(Ee(z,K0),Ee(Z,wc),Ee(Z,br))),h.ADD_TAGS&&(z===Te&&(z=ya(z)),Ee(z,h.ADD_TAGS,Ae)),h.ADD_ATTR&&(Z===b&&(Z=ya(Z)),Ee(Z,h.ADD_ATTR,Ae)),h.ADD_URI_SAFE_ATTR&&Ee(en,h.ADD_URI_SAFE_ATTR,Ae),h.FORBID_CONTENTS&&(Oe===kt&&(Oe=ya(Oe)),Ee(Oe,h.FORBID_CONTENTS,Ae)),tt&&(z["#text"]=!0),oe&&Ee(z,["html","head","body"]),z.table&&(Ee(z,["tbody"]),delete K.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw pu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw pu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');F=h.TRUSTED_TYPES_POLICY,S=F.createHTML("")}else F===void 0&&(F=K2(m,a)),F!==null&&typeof S=="string"&&(S=F.createHTML(""));Tt&&Tt(h),Ft=h}},ul=Ee({},["mi","mo","mn","ms","mtext"]),rl=Ee({},["foreignobject","desc","title","annotation-xml"]),Hm=Ee({},["title","style","font","a","script"]),Ou=Ee({},q0);Ee(Ou,$0),Ee(Ou,O2);let o0=Ee({},K0);Ee(o0,N2);let Wm=function(h){let $=w(h);(!$||!$.tagName)&&($={namespaceURI:Q,tagName:"template"});let I=Er(h.tagName),Se=Er($.tagName);return be[h.namespaceURI]?h.namespaceURI===Pt?$.namespaceURI===B?I==="svg":$.namespaceURI===nt?I==="svg"&&(Se==="annotation-xml"||ul[Se]):!!Ou[I]:h.namespaceURI===nt?$.namespaceURI===B?I==="math":$.namespaceURI===Pt?I==="math"&&rl[Se]:!!o0[I]:h.namespaceURI===B?$.namespaceURI===Pt&&!rl[Se]||$.namespaceURI===nt&&!ul[Se]?!1:!o0[I]&&(Hm[I]||!Ou[I]):!!(je==="application/xhtml+xml"&&be[h.namespaceURI]):!1},da=function(h){mu(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},i0=function(h,$){try{mu(t.removed,{attribute:$.getAttributeNode(h),from:$})}catch{mu(t.removed,{attribute:null,from:$})}if($.removeAttribute(h),h==="is"&&!Z[h])if(q||ne)try{da($)}catch{}else try{$.setAttribute(h,"")}catch{}},ol=function(h){let $,I;if(X)h=""+h;else{let bt=M2(h,/^[\r\n\t ]+/);I=bt&&bt[0]}je==="application/xhtml+xml"&&Q===B&&(h=''+h+"");let Se=F?F.createHTML(h):h;if(Q===B)try{$=new g().parseFromString(Se,je)}catch{}if(!$||!$.documentElement){$=A.createDocument(Q,"template",null);try{$.documentElement.innerHTML=ke?S:Se}catch{}}let Xe=$.body||$.documentElement;return h&&I&&Xe.insertBefore(u.createTextNode(I),Xe.childNodes[0]||null),Q===B?L.call($,oe?"html":"body")[0]:oe?$.documentElement:Xe},il=function(h){return y.call(h.ownerDocument||h,h,s.SHOW_ELEMENT|s.SHOW_COMMENT|s.SHOW_TEXT,null,!1)},qm=function(h){return h instanceof d&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Nu=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},dn=function(h,$,I){P[h]&&F2(P[h],Se=>{Se.call(t,$,I,Ft)})},sl=function(h){let $;if(dn("beforeSanitizeElements",h,null),qm(h))return da(h),!0;let I=Ae(h.nodeName);if(dn("uponSanitizeElement",h,{tagName:I,allowedTags:z}),h.hasChildNodes()&&!Nu(h.firstElementChild)&&(!Nu(h.content)||!Nu(h.content.firstElementChild))&&Mt(/<[/\w]/g,h.innerHTML)&&Mt(/<[/\w]/g,h.textContent))return da(h),!0;if(!z[I]||K[I]){if(!K[I]&&cl(I)&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,I)||_.tagNameCheck instanceof Function&&_.tagNameCheck(I)))return!1;if(tt&&!Oe[I]){let Se=w(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&Se){let bt=Xe.length;for(let At=bt-1;At>=0;--At)Se.insertBefore(C(Xe[At],!0),T(h))}}return da(h),!0}return h instanceof l&&!Wm(h)||(I==="noscript"||I==="noembed")&&Mt(/<\/no(script|embed)/i,h.innerHTML)?(da(h),!0):(ee&&h.nodeType===3&&($=h.textContent,$=$t($,O," "),$=$t($,v," "),$=$t($,R," "),h.textContent!==$&&(mu(t.removed,{element:h.cloneNode()}),h.textContent=$)),dn("afterSanitizeElements",h,null),!1)},ll=function(h,$,I){if(Le&&($==="id"||$==="name")&&(I in u||I in Um))return!1;if(!(De&&!ae[$]&&Mt(J,$))&&!(Y&&Mt(N,$))){if(!Z[$]||ae[$]){if(!(cl(h)&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,h)||_.tagNameCheck instanceof Function&&_.tagNameCheck(h))&&(_.attributeNameCheck instanceof RegExp&&Mt(_.attributeNameCheck,$)||_.attributeNameCheck instanceof Function&&_.attributeNameCheck($))||$==="is"&&_.allowCustomizedBuiltInElements&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,I)||_.tagNameCheck instanceof Function&&_.tagNameCheck(I))))return!1}else if(!en[$]&&!Mt(_e,$t(I,fe,""))&&!(($==="src"||$==="xlink:href"||$==="href")&&h!=="script"&&_2(I,"data:")===0&&Cn[h])&&!(te&&!Mt(pe,$t(I,fe,"")))&&I)return!1}return!0},cl=function(h){return h.indexOf("-")>0},dl=function(h){let $,I,Se,Xe;dn("beforeSanitizeAttributes",h,null);let{attributes:bt}=h;if(!bt)return;let At={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Z};for(Xe=bt.length;Xe--;){$=bt[Xe];let{name:at,namespaceURI:ga}=$;if(I=at==="value"?$.value:B2($.value),Se=Ae(at),At.attrName=Se,At.attrValue=I,At.keepAttr=!0,At.forceKeepAttr=void 0,dn("uponSanitizeAttribute",h,At),I=At.attrValue,At.forceKeepAttr||(i0(at,h),!At.keepAttr))continue;if(!Ce&&Mt(/\/>/i,I)){i0(at,h);continue}ee&&(I=$t(I,O," "),I=$t(I,v," "),I=$t(I,R," "));let gl=Ae(h.nodeName);if(ll(gl,Se,I)){if(ue&&(Se==="id"||Se==="name")&&(i0(at,h),I=Ue+I),F&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!ga)switch(m.getAttributeType(gl,Se)){case"TrustedHTML":{I=F.createHTML(I);break}case"TrustedScriptURL":{I=F.createScriptURL(I);break}}try{ga?h.setAttributeNS(ga,at,I):h.setAttribute(at,I),yc(t.removed)}catch{}}}dn("afterSanitizeAttributes",h,null)},$m=function h($){let I,Se=il($);for(dn("beforeSanitizeShadowDOM",$,null);I=Se.nextNode();)dn("uponSanitizeShadowNode",I,null),!sl(I)&&(I.content instanceof r&&h(I.content),dl(I));dn("afterSanitizeShadowDOM",$,null)};return t.sanitize=function(h){let $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},I,Se,Xe,bt;if(ke=!h,ke&&(h=""),typeof h!="string"&&!Nu(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw pu("dirty is not a string, aborting")}else throw pu("toString is not a function");if(!t.isSupported)return h;if(ge||r0($),t.removed=[],typeof h=="string"&&(Be=!1),Be){if(h.nodeName){let ga=Ae(h.nodeName);if(!z[ga]||K[ga])throw pu("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)I=ol(""),Se=I.ownerDocument.importNode(h,!0),Se.nodeType===1&&Se.nodeName==="BODY"||Se.nodeName==="HTML"?I=Se:I.appendChild(Se);else{if(!q&&!ee&&!oe&&h.indexOf("<")===-1)return F&&Pe?F.createHTML(h):h;if(I=ol(h),!I)return q?null:Pe?S:""}I&&X&&da(I.firstChild);let At=il(Be?h:I);for(;Xe=At.nextNode();)sl(Xe)||(Xe.content instanceof r&&$m(Xe.content),dl(Xe));if(Be)return h;if(q){if(ne)for(bt=k.call(I.ownerDocument);I.firstChild;)bt.appendChild(I.firstChild);else bt=I;return(Z.shadowroot||Z.shadowrootmod)&&(bt=x.call(n,bt,!0)),bt}let at=oe?I.outerHTML:I.innerHTML;return oe&&z["!doctype"]&&I.ownerDocument&&I.ownerDocument.doctype&&I.ownerDocument.doctype.name&&Mt(Sc,I.ownerDocument.doctype.name)&&(at=" +`+at),ee&&(at=$t(at,O," "),at=$t(at,v," "),at=$t(at,R," ")),F&&Pe?F.createHTML(at):at},t.setConfig=function(h){r0(h),ge=!0},t.clearConfig=function(){Ft=null,ge=!1},t.isValidAttribute=function(h,$,I){Ft||r0({});let Se=Ae(h),Xe=Ae($);return ll(Se,Xe,I)},t.addHook=function(h,$){typeof $=="function"&&(P[h]=P[h]||[],mu(P[h],$))},t.removeHook=function(h){if(P[h])return yc(P[h])},t.removeHooks=function(h){P[h]&&(P[h]=[])},t.removeAllHooks=function(){P={}},t}var ve=Dc();var Hy=cr.alert;var Ta=console,Y0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=It.green;a>1e4?u=It.red:a>1e3&&(u=It.yellow),Ta.debug(It.dim($n+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},fu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&Ta.log(It.dim($n+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&Ta.log(It.green($n+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&Ta.warn(It.yellow($n+" WARN:"),...t)}error(...t){this.#e<=3&&Ta.error(It.red($n+" ERROR:"),...t)}fatal(...t){this.#e<=4&&Ta.error(It.red($n+" FATAL:"),...t)}timing(){return this.level===0?new Y0:{reset:()=>{},stop:()=>{}}}},D=new fu;var Lc=["*://*/*","*","*://*"],Fc="immersive-translate-wildcard-placeholder.com";function X0(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>Lc.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let l=i;if(i===r)return!0;if(Lc.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let s=new URL(i);return s.pathname==="/"&&!i.endsWith("/")?s.hostname===r:V2(u,i)}catch{}return!1}else{let s,c=i;if(i.includes("://")){let T=i.split("://");s=T[0],s==="*"&&T.length>1&&(s="*",i="https://"+T[1])}else s="*",i="https://"+i;let d=i.replace(/\*/g,Fc),g;try{g=new URL(d)}catch{return D.debug("invalid match pattern",d,"raw match value:",c),!1}let m=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let C=G2(s+":",Pc(m),Pc(f));if(C){let T=new URL(u);return T.port="",C.test(T.href)}else return!1}});if(o)return o}return null}function Pc(e){return e.replaceAll(Fc,"*")}function G2(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function hn(e,t){return X0(e,t)!==null}function V2(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}function Z0(e){return Array.isArray(e)?e:e?[e]:[]}function Q0(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Dn(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function yr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let l=Z0(i);u[o]=Array.from(new Set([...u[o],...l]))}else u[o]=Z0(i)}),u}var xa="input is invalid type",ei=typeof window=="object",Ln=ei?window:{};Ln.JS_SHA256_NO_WINDOW&&(ei=!1);var J2=!ei&&typeof self=="object",Y2=!Ln.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Y2?Ln=global:J2&&(Ln=self);var bT=!Ln.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,ET=typeof define=="function"&&define.amd,hu=!Ln.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",V="0123456789abcdef".split(""),X2=[-2147483648,8388608,32768,128],Gt=[24,16,8,0],Tr=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],xr=["hex","array","digest","arrayBuffer"],ut=[];(Ln.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});hu&&(Ln.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var Mc=function(e,t){return function(n){return new rt(t,!0).update(n)[e]()}},Bc=function(e){var t=Mc("hex",e);t.create=function(){return new rt(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};rt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=X2[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};rt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,l=this.blocks,s,c,d,g,m,f,C,T,p,w,F;for(s=16;s<64;++s)m=l[s-15],c=(m>>>7|m<<25)^(m>>>18|m<<14)^m>>>3,m=l[s-2],d=(m>>>17|m<<15)^(m>>>19|m<<13)^m>>>10,l[s]=l[s-16]+c+l[s-7]+d<<0;for(F=t&n,s=0;s<64;s+=4)this.first?(this.is224?(T=300032,m=l[0]-1413257819,i=m-150054599<<0,a=m+24177077<<0):(T=704751109,m=l[0]-210244248,i=m-1521486534<<0,a=m+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),d=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),T=e&t,g=T^e&n^F,C=u&r^~u&o,m=i+d+C+Tr[s]+l[s],f=c+g,i=a+m<<0,a=m+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),d=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,g=p^a&t^T,C=i&u^~i&r,m=o+d+C+Tr[s+1]+l[s+1],f=c+g,o=n+m<<0,n=m+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),d=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),w=n&a,g=w^n&e^p,C=o&i^~o&u,m=r+d+C+Tr[s+2]+l[s+2],f=c+g,r=t+m<<0,t=m+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),d=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),F=t&n,g=F^t&a^w,C=r&o^~r&i,m=u+d+C+Tr[s+3]+l[s+3],f=c+g,u=e+m<<0,e=m+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};rt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,l=V[e>>28&15]+V[e>>24&15]+V[e>>20&15]+V[e>>16&15]+V[e>>12&15]+V[e>>8&15]+V[e>>4&15]+V[e&15]+V[t>>28&15]+V[t>>24&15]+V[t>>20&15]+V[t>>16&15]+V[t>>12&15]+V[t>>8&15]+V[t>>4&15]+V[t&15]+V[n>>28&15]+V[n>>24&15]+V[n>>20&15]+V[n>>16&15]+V[n>>12&15]+V[n>>8&15]+V[n>>4&15]+V[n&15]+V[a>>28&15]+V[a>>24&15]+V[a>>20&15]+V[a>>16&15]+V[a>>12&15]+V[a>>8&15]+V[a>>4&15]+V[a&15]+V[u>>28&15]+V[u>>24&15]+V[u>>20&15]+V[u>>16&15]+V[u>>12&15]+V[u>>8&15]+V[u>>4&15]+V[u&15]+V[r>>28&15]+V[r>>24&15]+V[r>>20&15]+V[r>>16&15]+V[r>>12&15]+V[r>>8&15]+V[r>>4&15]+V[r&15]+V[o>>28&15]+V[o>>24&15]+V[o>>20&15]+V[o>>16&15]+V[o>>12&15]+V[o>>8&15]+V[o>>4&15]+V[o&15];return this.is224||(l+=V[i>>28&15]+V[i>>24&15]+V[i>>20&15]+V[i>>16&15]+V[i>>12&15]+V[i>>8&15]+V[i>>4&15]+V[i&15]),l};rt.prototype.toString=rt.prototype.hex;rt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,l=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||l.push(i>>24&255,i>>16&255,i>>8&255,i&255),l};rt.prototype.array=rt.prototype.digest;rt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function Cr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,l;for(a=0;a>6,r[i++]=128|l&63):l<55296||l>=57344?(r[i++]=224|l>>12,r[i++]=128|l>>6&63,r[i++]=128|l&63):(l=65536+((l&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|l>>18,r[i++]=128|l>>12&63,r[i++]=128|l>>6&63,r[i++]=128|l&63);e=r}else if(u==="object"){if(e===null)throw new Error(xa);if(hu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!hu||!ArrayBuffer.isView(e)))throw new Error(xa)}else throw new Error(xa);e.length>64&&(e=new rt(t,!0).update(e).array());var s=[],c=[];for(a=0;a<64;++a){var d=e[a]||0;s[a]=92^d,c[a]=54^d}rt.call(this,t,n),this.update(c),this.oKeyPad=s,this.inner=!0,this.sharedMemory=n}Cr.prototype=new rt;Cr.prototype.finalize=function(){if(rt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();rt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),rt.prototype.finalize.call(this)}};var Ca=Bc();Ca.sha256=Ca;Ca.sha224=Bc(!0);Ca.sha256.hmac=Rc();Ca.sha224.hmac=Rc(!0);var Oc=Ca;var Nc=Oc.sha256;function Vt(e){return Promise.resolve(Nc(e))}function wr(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function Pn(e,t){let n=Nc.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function Ic(e,t){let n=await Pn(e,t);return wr(n)}async function vr(e,t){let n=Z2(t),a=await Pn(e,n);return wr(a)}function Z2(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}function Ve(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var me=Ve();function ie(){return me.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function jc(){return me.HAS_CSP_ERROR=="1"}function xt(){if(me.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function zc(){return typeof Deno<"u"}var vT=Ve().PROD==="1",wa=Ve().PROD!=="1";function Uc(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function lt(){try{return globalThis.self!==globalThis.top}catch{return!0}}var kr=!1,Q2=ie();function Hc(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function eh(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&Wc(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Fn(r,ar)){if(u===!0)return!0;continue}if(bu(r.nodeName,t.inlineTags))return!0;if(!ti(r,t))return!1}}return!0}function ni(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(bu(e.nodeName,n)||ti(e,t)){if(Fn(e,A4)||bu(e.nodeName,["BR"]))return!1;if(Fn(e,ar))return!0;if(ti(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return eh(e,t)}else return Fn(e,ar);return!1}function Wc(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Fn(e,k4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Fn(e,y4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||bu(e.nodeName,r))}function Ar(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!$c(a)&&a.length>=n}function qc(e,t,n){let a=e.trim();if(a.length<=t)return!0;if($c(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function $c(e){for(let t=0;t127)return!1;return!0}function Kc(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function Gc(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function Vc(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function Jc(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Fn(e,t,n=!1){return ai(e,t,"1",n)}function ai(e,t,n,a=!1){return kr&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function va(e){return(e.innerText||e.textContent||"").trim()}function ui(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function Sr(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Je(e,t,n,a=!1){e.isContentEditable||(kr&&!a?(e.dataset[iu]||(e.dataset[iu]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[iu]||(e.dataset[iu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Dr(e,t,n=!1){if(kr&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function ka(e,t,n=!1){return kr&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function ti(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!bu(e.nodeName,n)}function Aa(e){let{config:t}=e,n=ur;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ct(){if(!globalThis||!globalThis.location)return"https://example.com";if(!lt())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Vn(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){D.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else D.warn("injectCSS failed, rootDocument does not have head node",e)}function Sa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(Q2){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function bu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Yc(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function Xc(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||Wc(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return D.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function Zc(e,t,n){let a=0,u=(r,o,i,l)=>{if(++a>100||l===r)return r;let s=r.shadowRoot;if(!s||typeof s.elementFromPoint!="function")return r;let c=s.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}function Jn(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Nt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":Nt[u]}else return"auto";else return Nt[a]}var Lr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4083,68 +4091,79 @@ body { ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};function Y2(){if(me.PROD==="1")return{};let e={};if(me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(me.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:me.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(me.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:me.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(me.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&me.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:me.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:me.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(me.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:me.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(me.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=me.DEEPL_PROXY_ENDPOINT),me.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=me.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),me.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:me.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return me.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),me.MOCK==="1"&&(e.translationService="mock"),me.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=me.IMMERSIVE_TRANSLATE_SERVICE),e}async function Eu(){let e=await j.storage.local.get(uu);if(e[uu]){let t=e[uu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await Yn(r),r}else return{}}async function Yn(e){await j.storage.local.set({[uu]:e})}async function Pr(e){await j.storage.local.set({[vn]:e})}async function Jc(){let e=await j.storage.local.get(vn),n={...Xc(),...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function an(){let e=await j.storage.local.get(vn),t={...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let C=new Date(p.buildinConfigUpdatedAt),F=new Date(t.buildinConfigUpdatedAt);C>F&&(t=p)}}let n={};if(!ie()&&j.commands&&j.commands.getAll){let p=await j.commands.getAll();for(let C of p)C.name&&C.shortcut&&(n[C.name]=C.shortcut)}let a=Xc(),u=Y2(),r=await ui(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Eu(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(C=>new Date(C.expiredAt)>s);if(p.length>0){let C=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],F=Array.isArray(C)?C:[C],S=Array.from(new Set(F.concat(p.map(A=>A.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:S}}}let l=Object.assign({},o,u,r);if(!l.interfaceLanguage){let p=await X2();l.interfaceLanguage=p}let c=l.interfaceLanguage==="en",d=l.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,m=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!d&&!g&&m?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),v=Object.keys(f),T=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of v){let C=p;if(C==="generalRule")typeof l[C]=="object"&&(f[C]=yr(a[C],l[C]));else if(C==="translationServices"){let F=l[C]||{},S=t[C]||{},A=Object.keys(S),y=Object.keys(F),k=[...new Set([...A,...y])],D={};for(let x of k)D[x]={...S[x],...F[x]};f[C]=D}else if(typeof l[C]!="string"&&typeof l[C]!="boolean"&&typeof l[C]!="number"&&T.includes(C))l[C]&&(f[C]=Object.assign(f[C],l[C])),C==="shortcuts"&&(ie()||xt()?f[C]={...f[C],...n}:f[C]={...n});else if(C==="rules"){if(Array.isArray(l[C])&&(f[C]=[...l[C],...f[C]]),me.PROD==="0"&&me.DEV_RULES){let F=JSON.parse(me.DEV_RULES);f[C]=[...F,...f[C]]}}else l[C]!==void 0&&(f[C]=l[C])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function ui(){return(await j.storage.sync.get("userConfig")||{}).userConfig||{}}async function Yc(e){await j.storage.sync.set({userConfig:e})}var X2=async()=>{let e=["zh-CN"];try{e=await j.i18n.getAcceptLanguages()}catch(a){P.warn("get browser language error:",a)}let n=e.map(a=>Jn(a)).find(a=>Rt[a]);return n||"en"},Xc=()=>{let e={...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};return{...e,targetLanguage:or,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var Qc="auto",Fr="auto",Zc="auto";function Mr(e){Qc=e}function zt(e){Fr=e}function un(){return Fr!=="auto"?Fr:Zc!=="auto"?Zc:Qc}function Da(){return Fr}async function bn(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:d,targetLanguage:g,sourceLanguageUrlPattern:m,immediateTranslationPattern:f}=n,v=La(t,o),T=La(t,f),p=i,C=Object.keys(s);for(let te of C){let Ce=s[te];if(La(t,Ce)){p=te;break}}let F=l,S=Object.keys(c);for(let te of S){let Ce=c[te];if(Ce&&La(t,Ce)){F=te;break}}let A=La(t,d),y=e3(t,d);y||(y=hn(t,_4)),y||(y=hn(t,n.blockUrls));let k=e3(t,n.inputTranslationUrlPattern);k||(k=hn(t,n.inputTranslationBlockUrls));let D=hn(t,n.mutationBlockUrls),x=Object.keys(m),L={};for(let te of x){let Ce=m[te];if(Ce&&Ce.matches)for(let ee of Ce.matches)L[ee]=te}let O=Object.keys(L),w=Y0(t,O);w&&(r=L[w]??"auto",L[w]&&L[w]!=="auto"&&zt(L[w]));let R=g||"zh-CN",J=u.hostname,N=await Vt(J),pe=u.pathname+u.search+u.hash,fe=await Vt(pe),_e=`https://${N}.com/${fe}`,z=await Eu(),Te=await Jc(),Z=n.translationStartMode;Z==="dynamic"&&T&&(Z="immediate");let b={targetLanguage:R,config:n,translationService:p,isTranslateUrl:A,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:y,isMutationTranslationExcludeUrl:D,isInputTranslationExcludeUrl:k,rule:n.generalRule,url:t,encryptedUrl:_e,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:Z,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:v,cache:n.cache,translationTheme:F},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:Z,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:v,cache:n.cache,translationTheme:F},localConfig:z};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(te=>!b.config.generalRule.bodyTranslateTags.includes(te)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(te=>te!==".btn"));let _=n.translationServices[b.translationService]||{};_.immediateTranslationTextCount!==void 0&&Z2(_.immediateTranslationTextCount)&&_.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=_.immediateTranslationTextCount),b.translationService==="deepl"&&_&&_.authKey&&_.authKey.startsWith("immersive_")&&_.immediateTranslationTextCountForImmersiveDeepl!==void 0&&_.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=_.immediateTranslationTextCountForImmersiveDeepl),_&&_.translationDebounce&&typeof _.translationDebounce=="number"&&(b.state.translationDebounce=_.translationDebounce);let K=Te.immediateTranslationTextCount;n.immediateTranslationTextCount!==K&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let ae=n.rules,Y;globalThis.PDFViewerApplication?Y=ae.find(te=>te.isPdf):globalThis.immersiveTranslateEbookViewer?Y=ae.find(te=>te.isEbook):globalThis.immersiveTranslateEbookBuilder?Y=ae.find(te=>te.isEbookBuilder):Y=ae.find(te=>La(t,te)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),Y&&Y.isEbookBuilder&&(b.state.translationStartMode="immediate");let Se=n.generalRule;if(Y&&(b.rule=yr(Se,Y)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(te=>!b.rule.bodyTranslateTags.includes(te)&&!b.rule.forceTranslateTags.includes(te))),b.rule.mainFrameSelector){let te=document.querySelector(b.rule.mainFrameSelector);te&&(b.mainFrame=te)}return b}function La(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&hn(e,a)?!1:n&&n.length>0&&hn(e,n)?!0:r&&r.length>0&&Sr(r)?!1:!!(u&&u.length>0&&Sr(u))}function e3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&hn(e,n)||a&&a.length>0&&Sr(a))}function Z2(e){return typeof e=="number"}var nx=n3(2),t3=n3(3);function n3(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var Q2=/\s+/g,eh=/[\t\n\v\f\r ]+/g;function a3(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?th:nh;return String(e).replace(t.style==="html"?eh:Q2,t.trim?ah(n):n)}function th(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function nh(){return" "}function ah(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var u3={}.hasOwnProperty;function uh(e){return e==null?"":a3(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function rh(e){return t3(" "+uh(e)+" ")}function oh(e){let t=rh(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function mh(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function ph(e,t,n,a){t=hh(t,n,a);let u=[],r;if(t)for(r in t)_r.call(t,r)&&u.push([r,fh(e,t[r])]);return u.length===0?oi():u.sort(bh)}function fh(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of Sh){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/r>.5?t==="zh-CN"?g3(e)?"zh-TW":"zh-CN":t:"auto"}var p3=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function f3(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Rr(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...p3.keys()]},u=i3(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=p3.get(r);if(o)return o}return"auto"}var Qe=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function Or(e){let t;if(e&&e.retry&&e.retry>0)try{t=await F0(h3.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await h3(e);return t}async function h3(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await r(t,a)}catch(s){P.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of Dh(i.body)){let d=new TextDecoder().decode(c);s+=d;let g;for(;(g=s.indexOf(` -`))>=0;){let m=s.slice(0,g).trim();if(s=s.slice(g+1),m.startsWith("event:")||m==="")continue;let f="";if(m.startsWith("data:")&&(f=m.slice(5).trim()),f==="[DONE]")break;let v;try{v=JSON.parse(f??"")}catch(T){P.debug("json error",T);continue}l=v}}return l}}else{let s;try{s=await i.text()}catch(d){P.error("parse response failed",d)}s&&P.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new Qe("fetchError",c,s)}}async function*Dh(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Mn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function Lh(e,t){return e<>>32-t}function Ir(e,t,n,a,u,r){return Mn(Lh(Mn(Mn(t,e),Mn(a,r)),u),n)}function mt(e,t,n,a,u,r,o){return Ir(t&n|~t&a,e,t,u,r,o)}function pt(e,t,n,a,u,r,o){return Ir(t&a|n&~a,e,t,u,r,o)}function ft(e,t,n,a,u,r,o){return Ir(t^n^a,e,t,u,r,o)}function ht(e,t,n,a,u,r,o){return Ir(n^(t|~a),e,t,u,r,o)}function Nr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function ii(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Nr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=Nr(u.concat(ii(t)),512+t.length*8),b3(Nr(r.concat(o),512+128))}function E3(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function si(e){return unescape(encodeURIComponent(e))}function y3(e){return Ph(si(e))}function Mh(e){return E3(y3(e))}function T3(e,t){return Fh(si(e),si(t))}function _h(e,t){return E3(T3(e,t))}function _n(e,t,n){return t?n?T3(t,e):_h(t,e):n?y3(e):Mh(e)}function x3(e,t,n){let a=Bh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((s,l)=>s+l.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function Bh(e,t){let n=[],a=[];for(let u=0;u0?f"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};function nh(){if(me.PROD==="1")return{};let e={};if(me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(me.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:me.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(me.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:me.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(me.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&me.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:me.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:me.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(me.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:me.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(me.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=me.DEEPL_PROXY_ENDPOINT),me.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=me.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),me.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:me.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return me.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),me.MOCK==="1"&&(e.translationService="mock"),me.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=me.IMMERSIVE_TRANSLATE_SERVICE),e}async function Eu(){let e=await j.storage.local.get(uu);if(e[uu]){let t=e[uu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await Yn(r),r}else return{}}async function Yn(e){await j.storage.local.set({[uu]:e})}async function Pr(e){await j.storage.local.set({[vn]:e})}async function Qc(){let e=await j.storage.local.get(vn),n={...t3(),...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function un(){let e=await j.storage.local.get(vn),t={...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let w=new Date(p.buildinConfigUpdatedAt),F=new Date(t.buildinConfigUpdatedAt);w>F&&(t=p)}}let n={};if(!ie()&&j.commands&&j.commands.getAll){let p=await j.commands.getAll();for(let w of p)w.name&&w.shortcut&&(n[w.name]=w.shortcut)}let a=t3(),u=nh(),r=await ri(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Eu(),l=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(w=>new Date(w.expiredAt)>l);if(p.length>0){let w=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],F=Array.isArray(w)?w:[w],S=Array.from(new Set(F.concat(p.map(A=>A.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:S}}}let s=Object.assign({},o,u,r);if(!s.interfaceLanguage){let p=await ah();s.interfaceLanguage=p}let c=s.interfaceLanguage==="en",d=s.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,m=["bing","google","transmart","mock"].includes(s.translationService)||!s.translationService;!c&&!d&&!g&&m?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),C=Object.keys(f),T=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of C){let w=p;if(w==="generalRule")typeof s[w]=="object"&&(f[w]=yr(a[w],s[w]));else if(w==="translationServices"){let F=s[w]||{},S=t[w]||{},A=Object.keys(S),y=Object.keys(F),k=[...new Set([...A,...y])],L={};for(let x of k)L[x]={...S[x],...F[x]};f[w]=L}else if(typeof s[w]!="string"&&typeof s[w]!="boolean"&&typeof s[w]!="number"&&T.includes(w))s[w]&&(f[w]=Object.assign(f[w],s[w])),w==="shortcuts"&&(ie()||xt()?f[w]={...f[w],...n}:f[w]={...n});else if(w==="rules"){if(Array.isArray(s[w])&&(f[w]=[...s[w],...f[w]]),me.PROD==="0"&&me.DEV_RULES){let F=JSON.parse(me.DEV_RULES);f[w]=[...F,...f[w]]}}else s[w]!==void 0&&(f[w]=s[w])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function ri(){return(await j.storage.sync.get("userConfig")||{}).userConfig||{}}async function e3(e){await j.storage.sync.set({userConfig:e})}var ah=async()=>{let e=["zh-CN"];try{e=await j.i18n.getAcceptLanguages()}catch(a){D.warn("get browser language error:",a)}let n=e.map(a=>Jn(a)).find(a=>Rt[a]);return n||"en"},t3=()=>{let e={...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};return{...e,targetLanguage:or,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var a3="auto",Fr="auto",n3="auto";function Mr(e){a3=e}function zt(e){Fr=e}function rn(){return Fr!=="auto"?Fr:n3!=="auto"?n3:a3}function Da(){return Fr}async function bn(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:l,translationTheme:s,translationThemePatterns:c,translationUrlPattern:d,targetLanguage:g,sourceLanguageUrlPattern:m,immediateTranslationPattern:f}=n,C=La(t,o),T=La(t,f),p=i,w=Object.keys(l);for(let te of w){let Ce=l[te];if(La(t,Ce)){p=te;break}}let F=s,S=Object.keys(c);for(let te of S){let Ce=c[te];if(Ce&&La(t,Ce)){F=te;break}}let A=La(t,d),y=u3(t,d);y||(y=hn(t,N4)),y||(y=hn(t,n.blockUrls));let k=u3(t,n.inputTranslationUrlPattern);k||(k=hn(t,n.inputTranslationBlockUrls));let L=hn(t,n.mutationBlockUrls),x=Object.keys(m),P={};for(let te of x){let Ce=m[te];if(Ce&&Ce.matches)for(let ee of Ce.matches)P[ee]=te}let O=Object.keys(P),v=X0(t,O);v&&(r=P[v]??"auto",P[v]&&P[v]!=="auto"&&zt(P[v]));let R=g||"zh-CN",J=u.hostname,N=await Vt(J),pe=u.pathname+u.search+u.hash,fe=await Vt(pe),_e=`https://${N}.com/${fe}`,z=await Eu(),Te=await Qc(),Z=n.translationStartMode;Z==="dynamic"&&T&&(Z="immediate");let b={targetLanguage:R,config:n,translationService:p,isTranslateUrl:A,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:y,isMutationTranslationExcludeUrl:L,isInputTranslationExcludeUrl:k,rule:n.generalRule,url:t,encryptedUrl:_e,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:Z,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:C,cache:n.cache,translationTheme:F},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:Z,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:C,cache:n.cache,translationTheme:F},localConfig:z};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(te=>!b.config.generalRule.bodyTranslateTags.includes(te)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(te=>te!==".btn"));let _=n.translationServices[b.translationService]||{};_.immediateTranslationTextCount!==void 0&&uh(_.immediateTranslationTextCount)&&_.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=_.immediateTranslationTextCount),b.translationService==="deepl"&&_&&_.authKey&&_.authKey.startsWith("immersive_")&&_.immediateTranslationTextCountForImmersiveDeepl!==void 0&&_.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=_.immediateTranslationTextCountForImmersiveDeepl),_&&_.translationDebounce&&typeof _.translationDebounce=="number"&&(b.state.translationDebounce=_.translationDebounce);let K=Te.immediateTranslationTextCount;n.immediateTranslationTextCount!==K&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let ae=n.rules,Y;globalThis.PDFViewerApplication?Y=ae.find(te=>te.isPdf):globalThis.immersiveTranslateEbookViewer?Y=ae.find(te=>te.isEbook):globalThis.immersiveTranslateEbookBuilder?Y=ae.find(te=>te.isEbookBuilder):Y=ae.find(te=>La(t,te)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),Y&&Y.isEbookBuilder&&(b.state.translationStartMode="immediate");let De=n.generalRule;if(Y&&(b.rule=yr(De,Y)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(te=>!b.rule.bodyTranslateTags.includes(te)&&!b.rule.forceTranslateTags.includes(te))),b.rule.mainFrameSelector){let te=document.querySelector(b.rule.mainFrameSelector);te&&(b.mainFrame=te)}return b}function La(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&hn(e,a)?!1:n&&n.length>0&&hn(e,n)?!0:r&&r.length>0&&Sr(r)?!1:!!(u&&u.length>0&&Sr(u))}function u3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&hn(e,n)||a&&a.length>0&&Sr(a))}function uh(e){return typeof e=="number"}var ox=o3(2),r3=o3(3);function o3(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var rh=/\s+/g,oh=/[\t\n\v\f\r ]+/g;function i3(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?ih:sh;return String(e).replace(t.style==="html"?oh:rh,t.trim?lh(n):n)}function ih(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function sh(){return" "}function lh(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var s3={}.hasOwnProperty;function ch(e){return e==null?"":i3(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function dh(e){return r3(" "+ch(e)+" ")}function gh(e){let t=dh(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function yh(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function Th(e,t,n,a){t=Ch(t,n,a);let u=[],r;if(t)for(r in t)_r.call(t,r)&&u.push([r,xh(e,t[r])]);return u.length===0?ii():u.sort(wh)}function xh(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of _h){let i=o[1],l=o[0],s=e.match(i),c=s?s.length:0;c>n&&(n=c,t=l)}return n*2.5/r>.5?t==="zh-CN"?h3(e)?"zh-TW":"zh-CN":t:"auto"}var E3=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function y3(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Rr(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...E3.keys()]},u=d3(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=E3.get(r);if(o)return o}return"auto"}var Qe=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function Or(e){let t;if(e&&e.retry&&e.retry>0)try{t=await M0(T3.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await T3(e);return t}async function T3(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let l=new AbortController,s=l.signal;setTimeout(()=>{l.abort()},o),a.signal=s}let i;try{i=await r(t,a)}catch(l){D.error("fetch error",l);let s=l.message||"";throw l.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+s,l}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let l=await i.text(),s=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:l,headers:s,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let l="",s;if(i.body&&i.body instanceof ReadableStream)for await(let c of Bh(i.body)){let d=new TextDecoder().decode(c);l+=d;let g;for(;(g=l.indexOf(` +`))>=0;){let m=l.slice(0,g).trim();if(l=l.slice(g+1),m.startsWith("event:")||m==="")continue;let f="";if(m.startsWith("data:")&&(f=m.slice(5).trim()),f==="[DONE]")break;let C;try{C=JSON.parse(f??"")}catch(T){D.debug("json error",T);continue}s=C}}return s}}else{let l;try{l=await i.text()}catch(d){D.error("parse response failed",d)}l&&D.error("fail response",l);let s="";l&&(s=l.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+s;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${s}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${s}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${s}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${s}`),new Qe("fetchError",c,l)}}async function*Bh(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Mn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function Rh(e,t){return e<>>32-t}function Ir(e,t,n,a,u,r){return Mn(Rh(Mn(Mn(t,e),Mn(a,r)),u),n)}function mt(e,t,n,a,u,r,o){return Ir(t&n|~t&a,e,t,u,r,o)}function pt(e,t,n,a,u,r,o){return Ir(t&a|n&~a,e,t,u,r,o)}function ft(e,t,n,a,u,r,o){return Ir(t^n^a,e,t,u,r,o)}function ht(e,t,n,a,u,r,o){return Ir(n^(t|~a),e,t,u,r,o)}function Nr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,l=-271733879,s=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function si(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Nr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=Nr(u.concat(si(t)),512+t.length*8),x3(Nr(r.concat(o),512+128))}function C3(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function li(e){return unescape(encodeURIComponent(e))}function w3(e){return Oh(li(e))}function Ih(e){return C3(w3(e))}function v3(e,t){return Nh(li(e),li(t))}function jh(e,t){return C3(v3(e,t))}function _n(e,t,n){return t?n?v3(t,e):jh(t,e):n?w3(e):Ih(e)}function k3(e,t,n){let a=zh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((l,s)=>l+s.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function zh(e,t){let n=[],a=[];for(let u=0;u0?ft){let p=[];li(v,t,p);for(let C=0;C0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&li(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let s=r.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){u=!1;break}}r.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var C3=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let s=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,d=!!s.beta;return i===e.translationService||l&&u||c&&(n||u)||d&&(a||n||u)?!0:!c&&!d&&!l}).map(i=>ci(i,e))};function _t(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var Pa=[];async function jr(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function w3(e){let t=`${q}-${e.service}@${e.from}->${e.to}`;return await Oh(t,e)}async function v3(e){let t=_n(e.originalText),n=`${q}-${e.service}@${e.from}->${e.to}`;return await Rh(n,t)}async function Rh(e,t){let n=await jr(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),u()}})}async function Oh(e,t){let n=await jr(e);return(await Ih()).includes(e)||await Nh(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=s=>{n.close(),u(!0)},i.onerror=s=>{n.close(),u(!1)}})}async function Nh(e){let t="cache_list",n=await jr(q+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),Pa.push(e)},u.onerror=r=>{n.close()}}async function Ih(){if(Pa&&Pa.length>0)return Pa;let e=await jr(q+"-cacheList","cache_list");return Pa=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),Pa}var k3=se+"StoreKey_";function zr(e,t){let n=k3+e;return j.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function A3(e,t){let n=k3+e;return j.storage.local.set({[n]:t})}var S3=se+"SyncStoreKey_";function di(e,t){let n=S3+e;return j.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=S3+e;return j.storage.sync.set({[n]:t})}var Ur={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.1",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Rn(){return Ur.version}var D3="G-MKMD9LWFTR";async function tt(e,t,n){try{let a=Ve();if(a.INSTALL_FROM==="firefox_store")return;let r=ie(),o=lt(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let D=await zr(s,0),x=Hr(new Date(D)),L=Date.now(),O=Hr(new Date(L));if(x===O)return;await A3(s,L)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",d=await di("fakeUserId","");d||(d=await zr("fakeUserId",""),d&&await et("fakeUserId",d));let g=Rn(),m=new Date,f=await di("installedAt","");f||(f=await zr("installedAt",""),f&&await et("installedAt",f)),d?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(d=zh(32),await et("fakeUserId",d)),f||(f=m.toISOString(),await et("installedAt",f));let v=new Date(f),T=Hr(v),p=Hr(m),C=T===p,F=m.getTime()-v.getTime()<7*24*60*60*1e3,S=`https://www.google-analytics.com/mp/collect?measurement_id=${D3}&api_secret=${c}`;i||(S=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${D3}&api_secret=${c}`);let A=fr.parse(window.navigator.userAgent),y=t.map(D=>{let x=D.params||{};A.os&&(x.os_name=A.os.name||"unknown",x.os_version=A.os.version||"unknown",x.os_version_name=A.os.versionName||"unknown"),A.browser&&(x.browser_name=A.browser.name||"unknown",x.browser_version=A.browser.version||"unknown"),A.platform&&(x.platform_type=A.platform.type||"unknown"),A.engine&&(x.engine_name=A.engine.name||"unknown",x.engine_version=A.engine.version||"unknown"),n.translationService&&(x.translation_service=n.translationService),n.targetLanguage&&(x.target_language=n.targetLanguage),n.config.interfaceLanguage&&(x.interface_language=n.config.interfaceLanguage),g&&(x.version=g),n.config.translationTheme&&(x.translation_theme=n.config.translationTheme),n.config.alpha&&(x.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?x.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):x.always_translate_languages="none",a.INSTALL_FROM&&(x.install_from=a.INSTALL_FROM),n.config.beta&&(x.beta=n.config.alpha.toString()),n.config.translationArea&&(x.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(x.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),T&&(x.install_day=Uh(v)),n.config.translationMode&&(x.translation_mode=n.config.translationMode),x.userscript=r.toString(),C?x.is_new_user_today="1":x.is_new_user_today="0",F?x.is_new_user_this_week="1":x.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?x.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():x.temp_translate_domain_minutes="0";let L="html";if(n.rule.isEbook?L="ebookReader":n.rule.isPdf?L="pdfReader":n.rule.isEbookBuilder?L="ebookBuilder":n.rule.isSubtitleBuilder&&(L="subtitleBuilder"),x.page_type=L,o?x.main_frame=0:x.main_frame=1,!l){let O=n.url;try{let w=new URL(O);x.site_host=w.hostname}catch{x.site_host="unknown"}n.sourceLanguage&&(x.source_language=n.sourceLanguage)}return{...D,params:x}}),k=await G({responseType:"text",url:S,method:"POST",body:JSON.stringify({client_id:d,user_id:d,events:y})})}catch{}}function zh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var dt=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function On(e){return e!=null}function M3(e,t,n){return`${e.type}#${t}#${n}`}function _3(e,t,n,a,u){return{body:u,id:a,type:M3(e,t,n)}}function Hh(e,t,n,a){return{id:n,response:a,type:M3(e,"ask",t)}}function B3(e,t,n,a){if(On(a)){let u=a.type;if(On(u)&&On(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Wh(e,t,n){if(On(n)){let a=n.type;if(On(a)&&On(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function qh(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function $h(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Wh(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Kh(e,t,n,a){let u=r=>{let o=r.data;B3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function P3(e,t,n,a,u,r){let o=async i=>{let s=i.data;if(B3(n,"ask",a,s)){let l=await r(s.body);t=i.source,t.postMessage(Hh(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function Gh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(_3(t,"tell",n,r,a),u)}async function F3(e,t,n,a,u,r,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let d=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await $h(e,n,a,i);clearTimeout(d),l(g)});return t.postMessage(_3(n,"ask",a,i,u),r),s}var rn=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];P3(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(On(r))return new rn(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new rn(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new rn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await F3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Kh(this.thisWindow,this.protocol,t,n))}tell(t,n){Gh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(P3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return F3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){qh(this.listeners)}};var Vh;function Wr(){return Vh}var Jh=new dt({limit:7,interval:1250}),Yh={tencent:new dt({limit:3,interval:1350}),baidu:new dt({limit:1,interval:1550}),strict:new dt({limit:1,interval:1050}),d:new dt({limit:1,interval:1050}),youdao:new dt({limit:5,interval:1050}),you:new dt({limit:5,interval:1050}),cai:new dt({limit:5,interval:1050}),google:new dt({limit:10,interval:1050}),deepl:new dt({limit:10,interval:1050}),transmart:new dt({limit:30,interval:1050}),papago:new dt({limit:3,interval:1150}),openai:new dt({limit:10,interval:1300}),chatgpt:new dt({limit:1,interval:1350})};function Tu(e){return Yh[e]||Jh}async function R3(e){if(lt()){let n=Wr();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return P.error("can not comunicate with root frame, use strict limiter",a),Tu("strict").getDelay()}else return Tu("strict").getDelay()}else return Tu(e).getDelay()}async function O3(e,t){if(!lt()){let a=Tu(e);t&&a.setOptions(t)}}async function N3(e){let t=e.key;return{value:Tu(t).getDelay()}}var re=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let T of u)T.from&&T.from!=="auto"&&i.add(T.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=x3(u,l,c)}catch(T){if(a)for(let p=0;pT));let d=[],g=[],m=(T,p,C)=>{let F=p.translatedTexts[0];g[T]||(g[T]=p,g[T].translatedTexts=Array(p.sentenceTotalParts).fill(null)),g[T].translatedTexts[p.partIndex]=F;let S=g[T],A=0;for(let y=0;y{let S=await R3(this.translationOptions.translationService);await su(S||0);let A=p.from;if(s&&(A="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(A=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(k=>k.text),from:A,to:p.to,url:C,options:n}),sourceTempSentences:p.tempSentences};{let y=v4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(y=this.serviceConfig.translationTextSeparator);let k=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(k=this.serviceConfig.newlinePlaceholderDelimiters);let D="";k&&k.length>=2?D=p.tempSentences.map((R,J)=>J===p.tempSentences.length-1?R.text:R.text+k[0]+(J+1)+k[1]).join(""):D=p.tempSentences.map(R=>R.text).join(y);let x=await this.translate({text:D,from:A,to:p.to,url:C,options:n}),{text:L}=x,O=[];if(k&&k.length>=2){let R=`${k[0]}\\d+${k[1]}`;k&&k.length>=3&&(R=k[2]);let J=new RegExp(R,"g");O=L.split(J)}else O=L.split(y);let w=[];if(O.length>p.tempSentences.length){for(let R=0;R{let{text:A,sourceTempSentences:y}=S;for(let k=0;k{if(a){for(let A=0;A({...T.sentence,text:T.translatedTexts.join("")}))}}detectLanguageLocally(t){return Ye({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};re.langMap=new Map;var I3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Jt=class extends re{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Jt.langMap.get(u)||"auto",SourceText:a,Target:Jt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Jt.langMapReverse.get(i.Response.Source)||u,to:Jt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Jt.langMap.get(u)||"auto",SourceTextList:a,Target:Jt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Jt.langMapReverse.get(i.Response.Source)||u,to:Jt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),d=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Vt(r)].join(` -`),g=Jt.getUTCDate(l),m=["TC3-HMAC-SHA256",c,`${g}/${o}/tc3_request`,await Vt(d)].join(` -`),f=await Bc(g,`TC3${a}`),v=await vr(o,f),T=await vr("tc3_request",v),p=await vr(m,T),C=await G({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(C instanceof Error)throw C;if(C.Response&&C.Response.Error&&C.Response.Error.Message)throw new Error(C.Response.Error.Message);return C}},Xn=Jt;Xn.langMap=new Map(I3),Xn.langMapReverse=new Map(I3.map(([n,a])=>[a,n]));var j3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Xh={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},qr=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await G({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:Xh});return{text:i.targetText,from:qr.langMapReverse.get(i.source)||u,to:qr.langMapReverse.get(i.target)||r}}},Zn=qr;Zn.langMap=new Map(j3),Zn.langMapReverse=new Map(j3.map(([n,a])=>[a,n]));var z3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Nn=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ut(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Nn.langMap.get(u)||"auto",i=Nn.langMap.get(r)||r,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Nn.langMapReverse.get(s.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Nn.langMap.get(u)||"auto",i=Nn.langMap.get(r)||r,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Nn.langMapReverse.get(s.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await G({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await G({retry:2,url:o})}}},En=Nn;En.langMap=new Map(z3),En.langMapReverse=new Map(z3.map(([n,a])=>[a,n]));function Zh(e,t){return t?e+(t-e%t):e}function Qh(e,t){return e.split(t).length-1}function gi(e){let t=Date.now(),n=1;for(let a of e)n+=Qh(a,"i");return Zh(t,n)}function e9(e,t){return Math.floor(Math.random()*(t-e+1))+e}function mi(){return e9(1e6,1e8)}var pi="https://www2.deepl.com/jsonrpc",fi="auto",U3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function t9(e=U3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function hi(e){return t9()[e.toLowerCase()]}var n9={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function a9(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function u9(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function r9(e,t,n,a,u,r,o){let i=mi(),s=u9(a,n),l=[];t.forEach(g=>{l.push({text:g,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=gi(t);let c=await G({retry:2,method:"POST",url:e,body:a9(s),headers:n9}),d={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{d.text.push(g.text)}),d}async function H3(e,t,n,a=fi,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:r9(e,t,hi(n),hi(a)??"auto",u,r,o):{text:[],from:a,to:n}}var W3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Fa=class extends re{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=pi;n&&n.apiUrl&&(this.API_URL=Ut(pi,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await H3(this.API_URL,a,Fa.langMap.get(u)||u,Fa.langMap.get(r)||"auto");return{text:o.text,from:Fa.langMapReverse.get(o.from),to:Fa.langMapReverse.get(o.to)}}},In=Fa;In.langMap=new Map(W3),In.langMapReverse=new Map(W3.map(([n,a])=>[a,n]));var q3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],bi="https://transmart.qq.com/api/imt",Qn=class extends re{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Qn.langMap.get(r)||r,i=Qn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let s=Ve(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=$3());let d=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),g=await G({url:bi,body:d,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=Ve(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=$3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(u.join(` -`));if(l===r)return{text:u,from:l,to:r};let c=Qn.langMap.get(l)||l,d=Qn.langMap.get(r)||r,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:d},type:"plain"}),m=await G({url:bi,body:g,method:"POST"});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:l||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await G({url:bi,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Qn.langMapReverse.get(r);return o||r}},ea=Qn;ea.langMap=new Map(q3),ea.langMapReverse=new Map(q3.map(([n,a])=>[a,n]));function $3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function K3(){return Math.random()>=0}var Ma=class extends re{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await G3(),!K3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var J3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],Ei=new Map(J3),V3=new Map(J3.map(([e,t])=>[t,e])),yi=class extends re{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=yi.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await G({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:Ei.get(u)||"auto",target_lang:Ei.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:V3.get(i.source_lang),to:V3.get(i.target_lang)}}else throw new Error(o.msg)}},xu=yi;xu.langMap=Ei,xu.DEFAULT_CODENAME="deepl";var $r=xu;var Kr=new Map;async function Ti(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=_n(e.body)),Kr.has(t))return Kr.get(t);let n=G(e);Kr.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Kr.delete(t)},3e4)}}async function Y3(e){return Ti(e)}async function Cu(e){if(lt()){let n=Wr();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw P.error("can not comunicate with root frame, use strict limiter",a),a}else return Ti(e)}else return Ti(e)}var Dt=null,X3=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],xi=new Map(X3),o9=new Map(X3.map(([e,t])=>[t,e])),Gr=class extends re{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ut(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ut(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ut(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ut(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await j.storage.local.remove(mn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await j.storage.local.get(mn);a&&a[mn]&&(Dt=a[mn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new pr(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?Cu({url:u,...r}):G({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,j.storage.local.set({[mn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await j.storage.local.set({[mn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:xi.get(a)||"",target_lang:xi.get(u)||u},i=this.getRandomKey(),s=new URLSearchParams(o);r.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let d;if(i.startsWith("immersive_")){let f=new pr(i,{state:Dt,onFetch:(v,T)=>{let C=new URL(v).pathname;return C==="/refresh_token"||C==="/oidc/token"?Cu({url:v,...T}):G({url:v,...T})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:v=>{Dt=v,j.storage.local.set({[mn]:Dt})}});d=await f.translateApi(l),f.getIsStateChanged()&&(Dt=f.getState(),await j.storage.local.set({[mn]:Dt}))}else d=await G({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=d,m=g.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let T=await new En(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(p=>p.text).join(` +`;continue}else if(C.length>t){let p=[];ci(C,t,p);for(let w=0;w0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&ci(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let l=r.filter(s=>s.required);if(l.length>0){for(let s of l)if(!a[s.name]&&!s.default){u=!1;break}}r.forEach(s=>{s.optional?i.push(s):o.push(s)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var A3=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let l=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let s=!!l.canary,c=!!l.alpha,d=!!l.beta;return i===e.translationService||s&&u||c&&(n||u)||d&&(a||n||u)?!0:!c&&!d&&!s}).map(i=>di(i,e))};function _t(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var Pa=[];async function jr(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let l=o.result,s=t||"cache";l.createObjectStore(s,{keyPath:"key"})}})}async function S3(e){let t=`${W}-${e.service}@${e.from}->${e.to}`;return await Hh(t,e)}async function D3(e){let t=_n(e.originalText),n=`${W}-${e.service}@${e.from}->${e.to}`;return await Uh(n,t)}async function Uh(e,t){let n=await jr(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=l=>{n.close();let s=i.result;a(s)},i.onerror=l=>{n.close(),u()}})}async function Hh(e,t){let n=await jr(e);return(await qh()).includes(e)||await Wh(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=l=>{n.close(),u(!0)},i.onerror=l=>{n.close(),u(!1)}})}async function Wh(e){let t="cache_list",n=await jr(W+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),Pa.push(e)},u.onerror=r=>{n.close()}}async function qh(){if(Pa&&Pa.length>0)return Pa;let e=await jr(W+"-cacheList","cache_list");return Pa=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),Pa}var L3=se+"StoreKey_";function zr(e,t){let n=L3+e;return j.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function P3(e,t){let n=L3+e;return j.storage.local.set({[n]:t})}var F3=se+"SyncStoreKey_";function gi(e,t){let n=F3+e;return j.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=F3+e;return j.storage.sync.set({[n]:t})}var Ur={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.2",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Rn(){return Ur.version}var M3="G-MKMD9LWFTR";async function ot(e,t,n){try{let a=Ve();if(a.INSTALL_FROM==="firefox_store")return;let r=ie(),o=lt(),i=a.PROD==="1",l=`report_${e}`,s=e.endsWith("_daily");if(s){if(o)return;let L=await zr(l,0),x=Hr(new Date(L)),P=Date.now(),O=Hr(new Date(P));if(x===O)return;await P3(l,P)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",d=await gi("fakeUserId","");d||(d=await zr("fakeUserId",""),d&&await et("fakeUserId",d));let g=Rn(),m=new Date,f=await gi("installedAt","");f||(f=await zr("installedAt",""),f&&await et("installedAt",f)),d?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(d=Kh(32),await et("fakeUserId",d)),f||(f=m.toISOString(),await et("installedAt",f));let C=new Date(f),T=Hr(C),p=Hr(m),w=T===p,F=m.getTime()-C.getTime()<7*24*60*60*1e3,S=`https://www.google-analytics.com/mp/collect?measurement_id=${M3}&api_secret=${c}`;i||(S=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${M3}&api_secret=${c}`);let A=fr.parse(window.navigator.userAgent),y=t.map(L=>{let x=L.params||{};A.os&&(x.os_name=A.os.name||"unknown",x.os_version=A.os.version||"unknown",x.os_version_name=A.os.versionName||"unknown"),A.browser&&(x.browser_name=A.browser.name||"unknown",x.browser_version=A.browser.version||"unknown"),A.platform&&(x.platform_type=A.platform.type||"unknown"),A.engine&&(x.engine_name=A.engine.name||"unknown",x.engine_version=A.engine.version||"unknown"),n.translationService&&(x.translation_service=n.translationService),n.targetLanguage&&(x.target_language=n.targetLanguage),n.config.interfaceLanguage&&(x.interface_language=n.config.interfaceLanguage),g&&(x.version=g),n.config.translationTheme&&(x.translation_theme=n.config.translationTheme),n.config.alpha&&(x.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?x.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):x.always_translate_languages="none",a.INSTALL_FROM&&(x.install_from=a.INSTALL_FROM),n.config.beta&&(x.beta=n.config.alpha.toString()),n.config.translationArea&&(x.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(x.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),T&&(x.install_day=Gh(C)),n.config.translationMode&&(x.translation_mode=n.config.translationMode),x.userscript=r.toString(),w?x.is_new_user_today="1":x.is_new_user_today="0",F?x.is_new_user_this_week="1":x.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?x.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():x.temp_translate_domain_minutes="0";let P="html";if(n.rule.isEbook?P="ebookReader":n.rule.isPdf?P="pdfReader":n.rule.isEbookBuilder?P="ebookBuilder":n.rule.isSubtitleBuilder&&(P="subtitleBuilder"),x.page_type=P,o?x.main_frame=0:x.main_frame=1,!s){let O=n.url;try{let v=new URL(O);x.site_host=v.hostname}catch{x.site_host="unknown"}n.sourceLanguage&&(x.source_language=n.sourceLanguage)}return{...L,params:x}}),k=await G({responseType:"text",url:S,method:"POST",body:JSON.stringify({client_id:d,user_id:d,events:y})})}catch{}}function Kh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var dt=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function On(e){return e!=null}function O3(e,t,n){return`${e.type}#${t}#${n}`}function N3(e,t,n,a,u){return{body:u,id:a,type:O3(e,t,n)}}function Vh(e,t,n,a){return{id:n,response:a,type:O3(e,"ask",t)}}function I3(e,t,n,a){if(On(a)){let u=a.type;if(On(u)&&On(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Jh(e,t,n){if(On(n)){let a=n.type;if(On(a)&&On(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function Yh(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function Xh(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Jh(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Zh(e,t,n,a){let u=r=>{let o=r.data;I3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function B3(e,t,n,a,u,r){let o=async i=>{let l=i.data;if(I3(n,"ask",a,l)){let s=await r(l.body);t=i.source,t.postMessage(Vh(n,a,l.id,s),i.origin)}};return e.addEventListener("message",o),[e,o]}function Qh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(N3(t,"tell",n,r,a),u)}async function R3(e,t,n,a,u,r,o){let i=Math.random().toString(),l=new Promise(async(s,c)=>{let d=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await Xh(e,n,a,i);clearTimeout(d),s(g)});return t.postMessage(N3(n,"ask",a,i,u),r),l}var on=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];B3(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(On(r))return new on(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new on(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new on(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await R3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Zh(this.thisWindow,this.protocol,t,n))}tell(t,n){Qh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(B3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return R3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){Yh(this.listeners)}};var e9;function Wr(){return e9}var t9=new dt({limit:7,interval:1250}),n9={tencent:new dt({limit:3,interval:1350}),baidu:new dt({limit:1,interval:1550}),strict:new dt({limit:1,interval:1050}),d:new dt({limit:1,interval:1050}),youdao:new dt({limit:5,interval:1050}),you:new dt({limit:5,interval:1050}),cai:new dt({limit:5,interval:1050}),google:new dt({limit:10,interval:1050}),deepl:new dt({limit:10,interval:1050}),transmart:new dt({limit:30,interval:1050}),papago:new dt({limit:3,interval:1150}),openai:new dt({limit:10,interval:1300}),chatgpt:new dt({limit:1,interval:1350})};function Tu(e){return n9[e]||t9}async function j3(e){if(lt()){let n=Wr();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return D.error("can not comunicate with root frame, use strict limiter",a),Tu("strict").getDelay()}else return Tu("strict").getDelay()}else return Tu(e).getDelay()}async function z3(e,t){if(!lt()){let a=Tu(e);t&&a.setOptions(t)}}async function U3(e){let t=e.key;return{value:Tu(t).getDelay()}}var re=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let T of u)T.from&&T.from!=="auto"&&i.add(T.from);let l=!1;i.size>1&&(l=!0);let s=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(s=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=k3(u,s,c)}catch(T){if(a)for(let p=0;pT));let d=[],g=[],m=(T,p,w)=>{let F=p.translatedTexts[0];g[T]||(g[T]=p,g[T].translatedTexts=Array(p.sentenceTotalParts).fill(null)),g[T].translatedTexts[p.partIndex]=F;let S=g[T],A=0;for(let y=0;y{let S=await j3(this.translationOptions.translationService);await su(S||0);let A=p.from;if(l&&(A="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(A=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(k=>k.text),from:A,to:p.to,url:w,options:n}),sourceTempSentences:p.tempSentences};{let y=D4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(y=this.serviceConfig.translationTextSeparator);let k=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(k=this.serviceConfig.newlinePlaceholderDelimiters);let L="";k&&k.length>=2?L=p.tempSentences.map((R,J)=>J===p.tempSentences.length-1?R.text:R.text+k[0]+(J+1)+k[1]).join(""):L=p.tempSentences.map(R=>R.text).join(y);let x=await this.translate({text:L,from:A,to:p.to,url:w,options:n}),{text:P}=x,O=[];if(k&&k.length>=2){let R=`${k[0]}\\d+${k[1]}`;k&&k.length>=3&&(R=k[2]);let J=new RegExp(R,"g");O=P.split(J)}else O=P.split(y);let v=[];if(O.length>p.tempSentences.length){for(let R=0;R{let{text:A,sourceTempSentences:y}=S;for(let k=0;k{if(a){for(let A=0;A({...T.sentence,text:T.translatedTexts.join("")}))}}detectLanguageLocally(t){return Ye({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};re.langMap=new Map;var H3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Jt=class extends re{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Jt.langMap.get(u)||"auto",SourceText:a,Target:Jt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Jt.langMapReverse.get(i.Response.Source)||u,to:Jt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Jt.langMap.get(u)||"auto",SourceTextList:a,Target:Jt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Jt.langMapReverse.get(i.Response.Source)||u,to:Jt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let l=`${o}.tencentcloudapi.com`,s=new Date,c=`${new Date().valueOf()}`.slice(0,10),d=["POST","/","","content-type:application/json; charset=utf-8",`host:${l}`,"","content-type;host",await Vt(r)].join(` +`),g=Jt.getUTCDate(s),m=["TC3-HMAC-SHA256",c,`${g}/${o}/tc3_request`,await Vt(d)].join(` +`),f=await Ic(g,`TC3${a}`),C=await vr(o,f),T=await vr("tc3_request",C),p=await vr(m,T),w=await G({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:l,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(w instanceof Error)throw w;if(w.Response&&w.Response.Error&&w.Response.Error.Message)throw new Error(w.Response.Error.Message);return w}},Xn=Jt;Xn.langMap=new Map(H3),Xn.langMapReverse=new Map(H3.map(([n,a])=>[a,n]));var W3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],a9={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},qr=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await G({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:a9});return{text:i.targetText,from:qr.langMapReverse.get(i.source)||u,to:qr.langMapReverse.get(i.target)||r}}},Zn=qr;Zn.langMap=new Map(W3),Zn.langMapReverse=new Map(W3.map(([n,a])=>[a,n]));var q3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Nn=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ut(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Nn.langMap.get(u)||"auto",i=Nn.langMap.get(r)||r,l=await this.fetchWithoutToken(a,o,i);if(!l)throw new Error("google translate NETWORK_ERROR");if(!l.data[0]||l.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:l.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Nn.langMapReverse.get(l.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Nn.langMap.get(u)||"auto",i=Nn.langMap.get(r)||r,l=await this.fetchXmlWithoutToken(a,o,i);if(!l)throw new Error("google translate NETWORK_ERROR");if(!l.data[0]||l.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:l.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Nn.langMapReverse.get(l.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await G({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await G({retry:2,url:o})}}},En=Nn;En.langMap=new Map(q3),En.langMapReverse=new Map(q3.map(([n,a])=>[a,n]));function u9(e,t){return t?e+(t-e%t):e}function r9(e,t){return e.split(t).length-1}function mi(e){let t=Date.now(),n=1;for(let a of e)n+=r9(a,"i");return u9(t,n)}function o9(e,t){return Math.floor(Math.random()*(t-e+1))+e}function pi(){return o9(1e6,1e8)}var fi="https://www2.deepl.com/jsonrpc",hi="auto",$3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function i9(e=$3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function bi(e){return i9()[e.toLowerCase()]}var s9={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function l9(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function c9(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function d9(e,t,n,a,u,r,o){let i=pi(),l=c9(a,n),s=[];t.forEach(g=>{s.push({text:g,requestAlternatives:3})}),l.id=i,l.params.texts=s,l.params.timestamp=mi(t);let c=await G({retry:2,method:"POST",url:e,body:l9(l),headers:s9}),d={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{d.text.push(g.text)}),d}async function K3(e,t,n,a=hi,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:d9(e,t,bi(n),bi(a)??"auto",u,r,o):{text:[],from:a,to:n}}var G3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Fa=class extends re{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=fi;n&&n.apiUrl&&(this.API_URL=Ut(fi,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await K3(this.API_URL,a,Fa.langMap.get(u)||u,Fa.langMap.get(r)||"auto");return{text:o.text,from:Fa.langMapReverse.get(o.from),to:Fa.langMapReverse.get(o.to)}}},In=Fa;In.langMap=new Map(G3),In.langMapReverse=new Map(G3.map(([n,a])=>[a,n]));var V3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Ei="https://transmart.qq.com/api/imt",Qn=class extends re{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Qn.langMap.get(r)||r,i=Qn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let l=Ve(),s=n.url;l.INSTALL_FROM==="firefox_store"&&(s=J3());let d=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:s},target:{lang:i}}),g=await G({url:Ei,body:d,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=Ve(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=J3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let s=await this.detectLanguage(u.join(` +`));if(s===r)return{text:u,from:s,to:r};let c=Qn.langMap.get(s)||s,d=Qn.langMap.get(r)||r,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:d},type:"plain"}),m=await G({url:Ei,body:g,method:"POST"});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:s||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await G({url:Ei,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Qn.langMapReverse.get(r);return o||r}},ea=Qn;ea.langMap=new Map(V3),ea.langMapReverse=new Map(V3.map(([n,a])=>[a,n]));function J3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function Y3(){return Math.random()>=0}var Ma=class extends re{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await X3(),!Y3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var Q3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],yi=new Map(Q3),Z3=new Map(Q3.map(([e,t])=>[t,e])),Ti=class extends re{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=Ti.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await G({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:yi.get(u)||"auto",target_lang:yi.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:Z3.get(i.source_lang),to:Z3.get(i.target_lang)}}else throw new Error(o.msg)}},xu=Ti;xu.langMap=yi,xu.DEFAULT_CODENAME="deepl";var $r=xu;var Kr=new Map;async function xi(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=_n(e.body)),Kr.has(t))return Kr.get(t);let n=G(e);Kr.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Kr.delete(t)},3e4)}}async function ed(e){return xi(e)}async function Cu(e){if(lt()){let n=Wr();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw D.error("can not comunicate with root frame, use strict limiter",a),a}else return xi(e)}else return xi(e)}var Dt=null,td=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Ci=new Map(td),g9=new Map(td.map(([e,t])=>[t,e])),Gr=class extends re{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ut(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ut(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ut(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ut(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await j.storage.local.remove(mn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await j.storage.local.get(mn);a&&a[mn]&&(Dt=a[mn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new pr(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?Cu({url:u,...r}):G({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,j.storage.local.set({[mn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await j.storage.local.set({[mn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:Ci.get(a)||"",target_lang:Ci.get(u)||u},i=this.getRandomKey(),l=new URLSearchParams(o);r.forEach(f=>{l.append("text",f)});let s=l.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let d;if(i.startsWith("immersive_")){let f=new pr(i,{state:Dt,onFetch:(C,T)=>{let w=new URL(C).pathname;return w==="/refresh_token"||w==="/oidc/token"?Cu({url:C,...T}):G({url:C,...T})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:C=>{Dt=C,j.storage.local.set({[mn]:Dt})}});d=await f.translateApi(s),f.getIsStateChanged()&&(Dt=f.getState(),await j.storage.local.set({[mn]:Dt}))}else d=await G({retry:2,url:c,method:"POST",body:s,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=d,m=g.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let T=await new En(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(p=>p.text).join(` `),url:"",options:{}});T&&T.text&&(m=T.text.split(` -`))}return{text:m,from:g[0]&&o9.get(g[0].detected_source_language)||a,to:u}}};Gr.langMap=xi;var Z3=Gr;var i9=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],Ci=new Map(i9),Vr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:Ci.get(u)||u,to:Ci.get(r)||r,apikey:this.APIKEY})},s=await G(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` -`)&&(l=l.slice(0,-1)),{text:l,from:u,to:r}}else throw new Error(JSON.stringify(s))}};Vr.langMap=Ci;var Q3=Vr;var s9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],wi=new Map(s9),Jr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:wi.get(r)||r};u!=="auto"&&(o.from=wi.get(u)||u);let i=new URLSearchParams(o),s=JSON.stringify(a.map(d=>({text:d}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await G(l);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(d=>d.translations.map(m=>m.text).join(" "))}}};Jr.langMap=wi;var ed=Jr;var l9=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],wu=new Map(l9),vi=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=` +`))}return{text:m,from:g[0]&&g9.get(g[0].detected_source_language)||a,to:u}}};Gr.langMap=Ci;var nd=Gr;var m9=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],wi=new Map(m9),Vr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:wi.get(u)||u,to:wi.get(r)||r,apikey:this.APIKEY})},l=await G(i);if(l.tgt_text){let s=l.tgt_text;return s.endsWith(` +`)&&(s=s.slice(0,-1)),{text:s,from:u,to:r}}else throw new Error(JSON.stringify(l))}};Vr.langMap=wi;var ad=Vr;var p9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],vi=new Map(p9),Jr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:vi.get(r)||r};u!=="auto"&&(o.from=vi.get(u)||u);let i=new URLSearchParams(o),l=JSON.stringify(a.map(d=>({text:d}))),s={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:l},c=await G(s);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(d=>d.translations.map(m=>m.text).join(" "))}}};Jr.langMap=vi;var ud=Jr;var f9=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],wu=new Map(f9),ki=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=`
-`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!wu.get(u)?(o=(await G({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||wu.get(u)||u,target:wu.get(r)||r})):l.body=JSON.stringify({text:s,source:wu.get(u),target:wu.get(r)||r});let c=await G(l);if(c.translatedText==="")throw new Error("server response invalid");let d=c.translatedText.split("
").map(g=>g.trim());return{from:u,to:r,text:d}}},td=vi;var c9=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],vu=new Map(c9),Yr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,l=a.join(i),s={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!wu.get(u)?(o=(await G({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:l})).langCode,s.body=JSON.stringify({text:l,source:o||wu.get(u)||u,target:wu.get(r)||r})):s.body=JSON.stringify({text:l,source:wu.get(u),target:wu.get(r)||r});let c=await G(s);if(c.translatedText==="")throw new Error("server response invalid");let d=c.translatedText.split("
").map(g=>g.trim());return{from:u,to:r,text:d}}},rd=ki;var h9=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],vu=new Map(h9),Yr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ut(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ut(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=vu.get(u)||u,i=vu.get(r)||r,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let m=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:m})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},d=this.getRandomKey();d&&(c.headers.Authorization="Bearer "+d,c.headers["api-key"]=d,d.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await G(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let m=g.choices[0].message.content.trim();return m.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(m=""),!a.includes(".")&&(m.endsWith("\u3002")||m.endsWith("."))&&(m=m.slice(0,-1)),{from:u,to:r,text:m}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,vu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,vu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await G(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:u,to:r,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};Yr.langMap=vu;var nd=Yr;var ki=se+"CacheKey_";function Xr(e,t){let n=ki+e;return j.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),i0(this,_a)}},Si=to;_a=new WeakMap;var Di=new Si;Object.freeze(Di);var ku=class extends re{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: +{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ut(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ut(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=vu.get(u)||u,i=vu.get(r)||r,l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),s=[];if(this.systemPrompt){let m=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);s.push({role:"system",content:m})}this.prompt&&s.push({role:"user",content:l}),this.prompt.indexOf("{{text}}")===-1&&s.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:s})},d=this.getRandomKey();d&&(c.headers.Authorization="Bearer "+d,c.headers["api-key"]=d,d.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await G(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let m=g.choices[0].message.content.trim();return m.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(m=""),!a.includes(".")&&(m.endsWith("\u3002")||m.endsWith("."))&&(m=m.slice(0,-1)),{from:u,to:r,text:m}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,vu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,vu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},l=await G(i);if(l&&l.choices&&l.choices.length>0&&l.choices[0].text){let s=l.choices[0].text.trim();return{from:u,to:r,text:s}}else throw new Error("server response invalid: "+JSON.stringify(l))}};Yr.langMap=vu;var od=Yr;var Ai=se+"CacheKey_";function Xr(e,t){let n=Ai+e;return j.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),s0(this,_a)}},Di=to;_a=new WeakMap;var Li=new Di;Object.freeze(Li);var ku=class extends re{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: -{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{r=s,n.apply(l,i)};s-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return P.debug("delete conversation res:",a),a}}async translate(n){return await Di.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=eo.get(u)||u,i=eo.get(r)||r;if(this.accessToken=await ad(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:_t()})});return P.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw P.debug("post chatgpt error:",c),await Qr(Ai),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:d}=s;a(null,{from:l,to:c,text:d})},300,200);await Di.enqueue(async()=>{let s="chatgpt"+_t(),l=j.runtime.connect({name:s}),c,d;l.onMessage.addListener(T=>{if(!(!T||T==="")){if(T==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{d=JSON.parse(T)}catch(p){P.debug("chatgpt json error",p,T);return}c=d?.conversation_id,d?.message?.author?.role==="assistant"&&i({from:r,to:o,text:d?.message?.content?.parts?.[0]})}});let g=eo.get(r)||r,m=eo.get(o)||o;if(this.accessToken=await ad(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let v=this.prompt.replace(/{{to}}/g,m).replace(/{{text}}/g,u).replace(/{{from}}/g,g);G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[v]}}],model:f,parent_message_id:_t()})}).catch(T=>{P.debug("chatgpt error",T),l.disconnect(),this.deleteConversation(c),a(T,{from:r,to:o,text:""})})})}};var g9=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],$e={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Li=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Pi=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Li(t);if(a)return Array.isArray(n)?`${a}=${n.map(Li).sort().join(`&${a}=`)}`:`${a}=${Li(n)}`}).filter(t=>t).join("&"),Ba=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${$e.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[$e.tokenHeader]=t.sessionToken),u[$e.dateHeader]=a,u[$e.notSignBody]="",u[$e.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[$e.algorithmKey]=$e.algorithm,u[$e.signHeadersKey]="",u[$e.signQueriesKey]=void 0,u[$e.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[$e.signQueriesKey]=Object.keys(u).sort().join(";"),u[$e.signatureKey]=i,Pi(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[$e.dateHeader]=n,t.sessionToken&&(this.request.headers[$e.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[$e.contentSha256Header]=await Vt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return wr(await Pn(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push($e.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` -`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Pi(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} +{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let l=Date.now(),s=this,c=()=>{r=l,n.apply(s,i)};l-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return D.debug("delete conversation res:",a),a}}async translate(n){return await Li.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=eo.get(u)||u,i=eo.get(r)||r;if(this.accessToken=await id(),!this.accessToken||this.accessToken==="")throw new Error("token error");let l="text-davinci-002-render-sha-mobile";if(!l)throw new Error("No available model");let s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[s]}}],model:l,parent_message_id:_t()})});return D.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw D.debug("post chatgpt error:",c),await Qr(Si),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(l){let{from:s,to:c,text:d}=l;a(null,{from:s,to:c,text:d})},300,200);await Li.enqueue(async()=>{let l="chatgpt"+_t(),s=j.runtime.connect({name:l}),c,d;s.onMessage.addListener(T=>{if(!(!T||T==="")){if(T==="[DONE]"){s.disconnect(),this.deleteConversation(c);return}try{d=JSON.parse(T)}catch(p){D.debug("chatgpt json error",p,T);return}c=d?.conversation_id,d?.message?.author?.role==="assistant"&&i({from:r,to:o,text:d?.message?.content?.parts?.[0]})}});let g=eo.get(r)||r,m=eo.get(o)||o;if(this.accessToken=await id(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let C=this.prompt.replace(/{{to}}/g,m).replace(/{{text}}/g,u).replace(/{{from}}/g,g);G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:l},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[C]}}],model:f,parent_message_id:_t()})}).catch(T=>{D.debug("chatgpt error",T),s.disconnect(),this.deleteConversation(c),a(T,{from:r,to:o,text:""})})})}};var E9=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],$e={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Pi=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Fi=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Pi(t);if(a)return Array.isArray(n)?`${a}=${n.map(Pi).sort().join(`&${a}=`)}`:`${a}=${Pi(n)}`}).filter(t=>t).join("&"),Ba=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${$e.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[$e.tokenHeader]=t.sessionToken),u[$e.dateHeader]=a,u[$e.notSignBody]="",u[$e.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[$e.algorithmKey]=$e.algorithm,u[$e.signHeadersKey]="",u[$e.signQueriesKey]=void 0,u[$e.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[$e.signQueriesKey]=Object.keys(u).sort().join(";"),u[$e.signatureKey]=i,Fi(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[$e.dateHeader]=n,t.sessionToken&&(this.request.headers[$e.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[$e.contentSha256Header]=await Vt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return wr(await Pn(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push($e.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` +`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Fi(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} `),t.push(this.signedHeaders()),t.push(await this.hexEncodedBodyHash()),t.join(` `)}canonicalHeaders(){let t=[];Object.keys(this.request.headers).forEach(a=>{t.push([a,this.request.headers[a]])}),t.sort((a,u)=>a[0].toLowerCase(){let u=a[0].toLowerCase();if(this.isSignableHeader(u)){let r=a[1];if(typeof r>"u"||r===null||typeof r.toString!="function")throw new Error(`Header ${u} contains invalid value`);n.push(`${u}:${this.canonicalHeaderValues(r.toString())}`)}}),n.join(` -`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Vt(t)}async hexEncodedBodyHash(){return this.request.headers[$e.contentSha256Header]?this.request.headers[$e.contentSha256Header]:this.request.body?await this.hexEncodedHash(Pi(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return g9.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await Pn(n,`${$e.kDatePrefix}${t.secretKey}`),o=await Pn(a,r),i=await Pn(u,o);return Pn($e.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,$e.v4Identifier].join("/")}};var ud=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Fi=new Map(ud),m9=new Map(ud.map(([e,t])=>[t,e])),no=class extends re{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Ba(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await G({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new Qe(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new Qe(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=Fi.get(u),i={TargetLanguage:Fi.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` -`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new Ba(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),d=await G({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(d.TranslationList){let g=d.TranslationList.map(f=>f.Translation),m=u;return d.TranslationList.length>0&&d.TranslationList[0].DetectedSourceLanguage&&(m=m9.get(d.TranslationList[0].DetectedSourceLanguage)||u),{text:g,from:m,to:r}}else if(d.ResponseMetadata&&d.ResponseMetadata.Error){let g=d.ResponseMetadata.Error;throw new Qe(g.Code,g.Message)}else if(d.ResponseMetaData&&d.ResponseMetaData.Error){let g=d.ResponseMetaData.Error;throw new Qe(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(d))}};no.langMap=Fi;var rd=no;var od=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Mi=new Map(od),p9=new Map(od.map(([e,t])=>[t,e])),Ra=class extends re{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=Mi.get(u)||"detect",i=Mi.get(r)||r,l=await G({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,d=u;return l.detected_language&&(d=p9.get(l.detected_language)||u),{text:c,from:d,to:r}}else{let c=l.base_resp;throw new Qe(c.status_code.toString(),c.status_message)}}};Ra.langMap=Mi;var f9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],_i=new Map(f9),Oa=class extends re{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await G({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:_i.get(u)||u,target_lang:_i.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Oa.langMap=_i;var Bi="https://{s}bing.com",dd=Bi+"/translator",h9=Bi+"/ttranslatev3",b9=Bi+"/tspellcheckv3",ao="bingGlobalConfig",gd=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],id=new Map(gd),sd=new Map(gd.map(([e,t])=>[t,e])),ld=1e3,Yt,Na;function Ri(e,t){return e.replace("{s}",t?t+".":"")}async function E9(){if(!Yt){let n=await j.storage.local.get(ao);return n&&(Yt=n[ao]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Yt;return Date.now()-e>t}async function cd(){let e,t,n,a,u,r,o,i,s,l;try{let c=Ri(dd,e),d=await G({retry:2,url:c,responseType:"raw"}),{body:g,headers:m,url:f}=d;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=m["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,s]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Yt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await j.storage.local.set({[ao]:Yt}),Yt}function y9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Yt;return Ri(e?b9:h9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Yt.count++:"")}function T9(e,t,n,a){let{token:u,key:r}=Yt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function md(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>ld)throw new Error(`The supported maximum length of text is ${ld}. Please shorten the text.`);Na||(Na=cd()),await Na,await E9()&&(Na=cd(),await Na),t=t||"auto",n=n||"zh-CN",t=id.get(t)||t,n=id.get(n)||n;let u=y9(!1),r=T9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Ri(dd,Yt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),s=u,l=i.toString(),c=await G({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Yt=null,Na=null,await j.storage.local.remove(ao),c.ShowCaptcha)throw new Error(` +`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Vt(t)}async hexEncodedBodyHash(){return this.request.headers[$e.contentSha256Header]?this.request.headers[$e.contentSha256Header]:this.request.body?await this.hexEncodedHash(Fi(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return E9.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await Pn(n,`${$e.kDatePrefix}${t.secretKey}`),o=await Pn(a,r),i=await Pn(u,o);return Pn($e.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,$e.v4Identifier].join("/")}};var sd=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Mi=new Map(sd),y9=new Map(sd.map(([e,t])=>[t,e])),no=class extends re{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Ba(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await G({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let l=i.ResponseMetadata.Error;throw new Qe(l.Code,l.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let l=i.ResponseMetaData.Error;throw new Qe(l.Code,l.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=Mi.get(u),i={TargetLanguage:Mi.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` +`).slice(0,1e3));let l={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},s=new Ba(l,"translate");await s.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(l.params),d=await G({retry:2,url:"https://open.volcengineapi.com"+l.pathname+"?"+c.toString(),headers:s.request.headers,method:l.method,body:l.body});if(d.TranslationList){let g=d.TranslationList.map(f=>f.Translation),m=u;return d.TranslationList.length>0&&d.TranslationList[0].DetectedSourceLanguage&&(m=y9.get(d.TranslationList[0].DetectedSourceLanguage)||u),{text:g,from:m,to:r}}else if(d.ResponseMetadata&&d.ResponseMetadata.Error){let g=d.ResponseMetadata.Error;throw new Qe(g.Code,g.Message)}else if(d.ResponseMetaData&&d.ResponseMetaData.Error){let g=d.ResponseMetaData.Error;throw new Qe(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(d))}};no.langMap=Mi;var ld=no;var cd=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],_i=new Map(cd),T9=new Map(cd.map(([e,t])=>[t,e])),Ra=class extends re{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=_i.get(u)||"detect",i=_i.get(r)||r,s=await G({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(s.base_resp&&s.base_resp.status_code===0){let c=s.translation,d=u;return s.detected_language&&(d=T9.get(s.detected_language)||u),{text:c,from:d,to:r}}else{let c=s.base_resp;throw new Qe(c.status_code.toString(),c.status_message)}}};Ra.langMap=_i;var x9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Bi=new Map(x9),Oa=class extends re{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await G({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:Bi.get(u)||u,target_lang:Bi.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Oa.langMap=Bi;var Ri="https://{s}bing.com",fd=Ri+"/translator",C9=Ri+"/ttranslatev3",w9=Ri+"/tspellcheckv3",ao="bingGlobalConfig",hd=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],dd=new Map(hd),gd=new Map(hd.map(([e,t])=>[t,e])),md=1e3,Yt,Na;function Oi(e,t){return e.replace("{s}",t?t+".":"")}async function v9(){if(!Yt){let n=await j.storage.local.get(ao);return n&&(Yt=n[ao]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Yt;return Date.now()-e>t}async function pd(){let e,t,n,a,u,r,o,i,l,s;try{let c=Oi(fd,e),d=await G({retry:2,url:c,responseType:"raw"}),{body:g,headers:m,url:f}=d;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],s=m["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,l]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Yt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:l,cookie:s,count:0},await j.storage.local.set({[ao]:Yt}),Yt}function k9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Yt;return Oi(e?w9:C9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Yt.count++:"")}function A9(e,t,n,a){let{token:u,key:r}=Yt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function bd(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>md)throw new Error(`The supported maximum length of text is ${md}. Please shorten the text.`);Na||(Na=pd()),await Na,await v9()&&(Na=pd(),await Na),t=t||"auto",n=n||"zh-CN",t=dd.get(t)||t,n=dd.get(n)||n;let u=k9(!1),r=A9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Oi(fd,Yt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),l=u,s=i.toString(),c=await G({retry:2,url:l,headers:o,method:"POST",body:s});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Yt=null,Na=null,await j.storage.local.remove(ao),c.ShowCaptcha)throw new Error(` Sorry that bing translator seems to be asking for the captcha, Please take care not to request too frequently. The response code is ${c.StatusCode}. `);if(c.StatusCode===401)throw new Error(` Max count of translation exceeded. Please try it again later. The response code is 401. - `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let d=c[0].translations[0],g=c[0].detectedLanguage;return{text:d.text,from:sd.get(g.language),to:sd.get(d.to)}}function pd(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var ta=null,x9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Oi=new Map(x9),Ia=class extends re{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){ta=null,await Qr(Zu)}async translate(n){let{text:a,from:u,to:r}=n;return a?await md(a,u,r):{...n}}async init(){if(!ta){ta={};let n=await Xr(Zu);n&&(ta=n)}await fd(ta)}async translateList(n){let{from:a,to:u,text:r}=n,o=Oi.get(a)||"auto",i=Oi.get(u)||u;o==="auto"&&(o="");let s=await fd(ta),l=[];for(let m of r)l.push({Text:m});let c=JSON.stringify(l),d=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await G({url:d,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(m=>m.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(g))}};Ia.langMap=Oi;async function fd(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return hd().catch(u=>{P.error(u)}),e}return hd()}async function hd(){let e=await Cu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=pd(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return ta=t,await Zr(Zu,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var bd=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Ni=new Map(bd),C9=new Map(bd.map(([e,t])=>[t,e])),uo=class extends re{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Ni.get(s)||"auto",to:Ni.get(l)||l,q:i,salt:a,appid:r,sign:_n(r+i+a+o)}),d=new URL(u);d.search=c.toString();let g=await G({url:d.toString()});if(g.error_code)throw new Qe("API_SERVER_ERROR",g.error_msg);let{trans_result:m,from:f}=g,v=m.map(({dst:p})=>p);return{from:C9.get(f)||f,to:l,text:v.join(` -`)}}};uo.langMap=Ni;var Ed=uo;var w9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ro=new Map(w9),oo=class extends re{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!ro.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ye({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await G({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${ro.get(u)||"auto"}2${ro.get(r)}`})})).target,from:u,to:r}}};oo.langMap=ro;var yd=oo;var v9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],io=new Map(v9),so=class extends re{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!io.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ye({text:a.join(" "),minLength:10}));let i=a;return{text:(await G({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${io.get(u)||"auto"}2${io.get(r)}`})})).target,from:u,to:r}}};so.langMap=io;var Td=so;var xd=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Ii=new Map(xd),k9=new Map(xd.map(([e,t])=>[t,e]));function A9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var lo=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=S9(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+A9(a)+o+i+this.appSecret,l=await Vt(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Ii.get(u)||"auto",to:Ii.get(r)||r,sign:l,signType:"v3",curtime:i.toString()},d=new URLSearchParams(c),m=await G({url:"https://openapi.youdao.com/api",method:"POST",body:d.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!m.translation)throw new Error(JSON.stringify(m));let f=m.l,[v,T]=f.split("2");return{text:m.translation.join(` -`),from:k9.get(v),to:r}}};lo.langMap=Ii;function S9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var co=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:ji.get(u)||"auto",to:ji.get(r)||r},i=new URLSearchParams(o),s=await G({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` -`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};co.langMap=ji;var vd=co;var D9={mock:Ma,mock2:Ma,google:En,transmart:ea,deepl:Z3,volc:rd,volcAlpha:Ra,bing:Ia,tencent:Xn,tenAlpha:Zn,baidu:Ed,caiyun:yd,cai:Td,openl:$r,youdao:Cd,you:vd,d:In,dpro:In,deeplx:Oa,niu:Q3,azure:ed,openai:nd,chatgpt:ku,papago:td},jn={};Object.keys(fn).forEach(e=>{jn[e]={...fn[e],class:D9[e]}});function kd(e,t){let n=Nt;if(jn[e]&&jn[e].class&&jn[e].class.langMap&&jn[e].class.langMap.size>0){let a=jn[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return Nt}async function ja(e,t){if(!e.text)return e;let n=await on({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Qe("translateFailed","translate failed")}async function zi(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new jn[r].class(o,a,{translationService:r}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await O3(r,o),await i.init()}async function on(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,s=u,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],d={sentences:Array(e.sentences.length)},g=e.sentences.length,m=-1;if(r.cache)for(let p of e.sentences){m++;let C=s;s==="openl"&&(C=s+"-"+l.codename||$r.DEFAULT_CODENAME);let F=null;try{F=await sr(Ad({originalText:p.text,from:p.from,to:p.to,service:C}),1e3)}catch(S){P.warn("query cache DB error, but it's ok",S)}if(F){let S={...p,text:F.translatedText};d.sentences[m]=S,n&&n(null,S,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&P.debug(`use ${g-f} sentences from cache`),!c.length)return d;let v;try{v=new jn[s].class(l,o,{translationService:s}),await v.init()}catch(p){if(n)for(let C of c)n(p,null,C);throw p}let T=await v.multipleTranslate({sentences:c},l,(p,C,F)=>{if(n&&n(p,C,F),!p&&C&&!s.startsWith("mock")&&r.cache){let S=s;s==="openl"&&(S=s+"-"+l.codename||$r.DEFAULT_CODENAME),r.cache&&sr(Sd({translatedText:C.text,from:F.from,to:F.to,detectedFrom:C.from,key:_n(F.text),service:S}),3e3).catch(A=>{P.warn("set cache DB error",A)})}});for(let p of T.sentences){let C=d.sentences.findIndex(F=>!F);if(C===-1)throw new Qe("translateFailed","can not match the result");d.sentences[C]=p}return d}var L9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function yn(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function Ui(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(yn(e,r))return!1;if(yn(e,u)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!L9.includes(n.display):yn(e,a)}var Bt=yn;function na(e){return!!e.shadowRoot}function zn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function Au(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function go(e){let t=ur;return e&&(t=e),t}async function sn(e,t="",n=100){let a="auto";return t?await Ye({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Da()),a)}function mo(e,t){return Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function P9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${q}-loading-${n} notranslate">`}function Su(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",Ot),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Je(a,y4,t.toString());let u=P9(e);return a.innerHTML=Le.sanitize(u),a}function za(e,t){return e.querySelector(`[${v0}='${t}']`)}function Dd(){document.querySelectorAll(`[${v0}]`).forEach(t=>{t.remove()})}function Ld(){document.querySelectorAll(`.${Ot}-error`).forEach(t=>{t.remove()})}function Pd(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Sa(n)&&t.push(n)}),t}function Fd(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let s=u[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||$c(i)||Hc(i)||qc(i)||Wc(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ar(r,n,a)}function ln(e){return e.nodeType===Node.ELEMENT_NODE}function Md(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function _d(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var F9=1e5;function Un(e){let{onParagraph:t,filterRule:n,id:a}=e;n=M9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,d={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,m=null;function f(S){let{container:A,onFrame:y,onIgnoreElement:k,id:D}=S,x=document.createTreeWalker(A,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,w=>{let R=O(w);return R==NodeFilter.FILTER_ACCEPT?Lt.mark(w,D):R==NodeFilter.FILTER_REJECT,R}),L=A;if(O(L)===NodeFilter.FILTER_REJECT)return;for(Lt.mark(L,D);L;){if(o&&o.length>0){let{currentNode:w,isMatchedSelection:R}=v(x,L,o);if(w)L=w;else break;if(!R)continue}if(L.nodeType===Node.ELEMENT_NODE||L.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let w=L;if(w.nodeName==="IFRAME"){y&&y(w);break}w.nodeType===Node.ELEMENT_NODE&&(r&&Wi(w,r),l&&$i(w,l));let R=Ui(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(Bt(w,u)&&!R){p(w);let pe=null;for(;!(pe=x.nextSibling())&&x.parentNode(););L=pe;continue}let J=na(w);(!Bd(d,w)||R)&&(T(),w.childNodes.length>0&&C(d,w,w.immersiveTranslateComputedStyle||null)),J&&w.shadowRoot?.mode==="open"&&(R?y?.(w.shadowRoot):f({...S,container:w.shadowRoot})),w.nodeType===Node.ELEMENT_NODE&&w.nodeName==="PRE"&&i&&O9(w)}else if(L.nodeType===Node.TEXT_NODE)p(L);else throw new Error("should not be here");L=x.nextNode(),d.commonAncestorContainer&&L&&L.parentNode===d.commonAncestorContainer&&(d._currentStacks=[]),d.commonAncestorContainer&&L&&L.nodeType===Node.ELEMENT_NODE&&d._currentStacks.push(L)}function O(w){if(w.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(ln(w)){if(l){let N=Object.keys(l);if(N.length>0&&Bt(w,N))for(let fe of N){let _e=l[fe];if(w.matches(fe)){let z=l[fe],Te=Object.keys(z);for(let Z of Te){let b=z[Z];w.getAttribute(Z)!==b&&(b===null?w.removeAttribute(Z):w.setAttribute(Z,b))}break}}}if(!S.force&&Lt.isMarked(w,D)||Md(w,D)||Ki(w,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||w.nodeName==="IFRAME"&&!Sa(w))return NodeFilter.FILTER_REJECT;if(w.nodeType===Node.ELEMENT_NODE){let N=window.getComputedStyle(w);if(w.immersiveTranslateComputedStyle={display:N.display,whiteSpace:N.whiteSpace},qi(w.immersiveTranslateComputedStyle))return k&&k(w),NodeFilter.FILTER_REJECT;let pe=Ui(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(Bt(w,u)&&pe)return NodeFilter.FILTER_REJECT}let{width:R,height:J}=w.getBoundingClientRect();return w.nodeName==="IMG"&&(R>48&&J>48?w.immersiveTranslateComputedStyle={display:"block"}:R>0&&J>0&&c!==!1&&(w.setAttribute("width",R),w.setAttribute("height",J))),!w.childNodes||w.childNodes&&w.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!d.isPreWhitespace&&(R>0&&R<4||J>0&&J<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(w.nodeType===Node.TEXT_NODE){let R=w.textContent?.trim();if(!R)return d.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let J=w.parentNode;if(J.getBoundingClientRect){let{width:N,height:pe}=J.getBoundingClientRect();if(N>0&&N<4||pe>0&&pe<4)return NodeFilter.FILTER_REJECT}return s>0&&R.length>=s&&Hi(w,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),d&&d.commonAncestorContainer&&d.flatNodes.length>0&&T();function v(S,A,y){let k=A.immersiveTranslateComputedStyle||null;if(m){if(!m.contains(A))if(g=!1,A&&A.nodeType===Node.ELEMENT_NODE)if(po(A,y))g=!0,m=A,T(),C(d,m,k);else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g}}else if(A&&A.nodeType===Node.ELEMENT_NODE)if(po(A,y))g=!0,m=A,T(),C(d,m,k);else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};return{currentNode:A,isMatchedSelection:!0}}function T(){let S=R9(d,a);S&&t&&t(S),Rd(d)}function p(S){if(!Bd(d,S)){T(),Rd(d);let A=S.parentNode;A&&C(d,A,A.computedStyle)}d.flatNodes.push(S)}function C(S,A,y){S.commonAncestorContainer=A;let k=F(y);S.isPreWhitespace=k}function F(S){return S&&S.whiteSpace&&S.whiteSpace.startsWith("pre")||S&&S.whiteSpace==="break-spaces"||!1}}function Bd(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=na(t));let a=B9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function M9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function _9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function Wi(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function B9(e){return e&&e._currentStacks?e._currentStacks.some(t=>na(t)):!1}function R9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=N9(n,a);r||(r=a);let o=[];for(let g of n){let m=_9(e,r,g);m&&(o.includes(m)||o.push(m))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,d=0;for(;c&&(l.push(c),c!==s);){if(d++,d>F9){P.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function Rd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function qi(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var Lt={_marked_key:"immersive_translate_walked",isMarked(e,t){return ni(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||na(e)))return Dr(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||na(e)))return Je(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=ka(e,"markWalk")||"";return Je(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||na(e)):!1}};function O9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=Le.sanitize(n)}function N9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function Hi(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",s=n[r+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&Hi(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),s=document.createElement("br");i.parentNode?.insertBefore(s,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=Ic(e,[a]);for(let i of o)for(let s of r){let l=u[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function Nd(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let d of l){let g=s[d];if(d==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||I9(c,u,r)||!zc(f,n,a))continue}c.getAttribute(d)!==g&&(g===null?c.removeAttribute(d):c.setAttribute(d,g))}}}function $i(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function Ki(e,t){return Bt(e,t.excludeSelectors||[])?Bt(e,t.selectors||[])?!1:!Bt(e,t.stayOriginalSelectors||[]):!1}function po(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Bt(e,t.concat(n))}function I9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ar(r,t,n))return!0}}return!1}function Id(e,t,n,a){let u=t,r=L4[u]||[],o="";e&&r&&r.length>0&&r.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let d=n[c];if(["borderRadius"].includes(c)&&(d+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${d}; -`,t==="marker"&&c==="backgroundColor"&&typeof d=="string"){let{r:g,g:m,b:f}=Kc(d);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${g}, ${m}, ${f}; -`}}});let i="";if(n&&n.textColor){let l=n.textColor;i+=` -.immersive-translate-target-translation-theme-${u}-inner{color: ${l};} -`}if(n&&n.zoom){let l=n.zoom;i+=` -.immersive-translate-target-translation-theme-${u}-inner{font-size: max(13px, ${l}%);} -`}let s="";o&&(s=`:root { + `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let d=c[0].translations[0],g=c[0].detectedLanguage;return{text:d.text,from:gd.get(g.language),to:gd.get(d.to)}}function Ed(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var ta=null,S9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Ni=new Map(S9),Ia=class extends re{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){ta=null,await Qr(Zu)}async translate(n){let{text:a,from:u,to:r}=n;return a?await bd(a,u,r):{...n}}async init(){if(!ta){ta={};let n=await Xr(Zu);n&&(ta=n)}await yd(ta)}async translateList(n){let{from:a,to:u,text:r}=n,o=Ni.get(a)||"auto",i=Ni.get(u)||u;o==="auto"&&(o="");let l=await yd(ta),s=[];for(let m of r)s.push({Text:m});let c=JSON.stringify(s),d=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await G({url:d,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+l.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(m=>m.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(g))}};Ia.langMap=Ni;async function yd(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return Td().catch(u=>{D.error(u)}),e}return Td()}async function Td(){let e=await Cu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=Ed(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return ta=t,await Zr(Zu,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var xd=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Ii=new Map(xd),D9=new Map(xd.map(([e,t])=>[t,e])),uo=class extends re{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:l,to:s}=n,c=new URLSearchParams({from:Ii.get(l)||"auto",to:Ii.get(s)||s,q:i,salt:a,appid:r,sign:_n(r+i+a+o)}),d=new URL(u);d.search=c.toString();let g=await G({url:d.toString()});if(g.error_code)throw new Qe("API_SERVER_ERROR",g.error_msg);let{trans_result:m,from:f}=g,C=m.map(({dst:p})=>p);return{from:D9.get(f)||f,to:s,text:C.join(` +`)}}};uo.langMap=Ii;var Cd=uo;var L9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ro=new Map(L9),oo=class extends re{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!ro.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ye({text:a.join(" "),minLength:10}));let i=a,l=this.getRandomKey();return{text:(await G({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+l},method:"POST",body:JSON.stringify({source:i,trans_type:`${ro.get(u)||"auto"}2${ro.get(r)}`})})).target,from:u,to:r}}};oo.langMap=ro;var wd=oo;var P9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],io=new Map(P9),so=class extends re{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!io.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ye({text:a.join(" "),minLength:10}));let i=a;return{text:(await G({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${io.get(u)||"auto"}2${io.get(r)}`})})).target,from:u,to:r}}};so.langMap=io;var vd=so;var kd=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],ji=new Map(kd),F9=new Map(kd.map(([e,t])=>[t,e]));function M9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var lo=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=_9(32),i=Math.round(new Date().getTime()/1e3),l=this.appId+M9(a)+o+i+this.appSecret,s=await Vt(l),c={q:a,appKey:this.appId,salt:o.toString(),from:ji.get(u)||"auto",to:ji.get(r)||r,sign:s,signType:"v3",curtime:i.toString()},d=new URLSearchParams(c),m=await G({url:"https://openapi.youdao.com/api",method:"POST",body:d.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!m.translation)throw new Error(JSON.stringify(m));let f=m.l,[C,T]=f.split("2");return{text:m.translation.join(` +`),from:F9.get(C),to:r}}};lo.langMap=ji;function _9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var co=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:zi.get(u)||"auto",to:zi.get(r)||r},i=new URLSearchParams(o),l=await G({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(l&&l.translation)return{text:l.translation.join(` +`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(l))}};co.langMap=zi;var Dd=co;var B9={mock:Ma,mock2:Ma,google:En,transmart:ea,deepl:nd,volc:ld,volcAlpha:Ra,bing:Ia,tencent:Xn,tenAlpha:Zn,baidu:Cd,caiyun:wd,cai:vd,openl:$r,youdao:Ad,you:Dd,d:In,dpro:In,deeplx:Oa,niu:ad,azure:ud,openai:od,chatgpt:ku,papago:rd},jn={};Object.keys(fn).forEach(e=>{jn[e]={...fn[e],class:B9[e]}});function Ld(e,t){let n=Nt;if(jn[e]&&jn[e].class&&jn[e].class.langMap&&jn[e].class.langMap.size>0){let a=jn[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return Nt}async function ja(e,t){if(!e.text)return e;let n=await sn({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Qe("translateFailed","translate failed")}async function Ui(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new jn[r].class(o,a,{translationService:r}),l=i.getDefaultRateLimit();l&&(o&&!o.limit&&(o.limit=l.limit),o&&!o.interval&&(o.interval=l.interval)),await z3(r,o),await i.init()}async function sn(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,l=u,s=i[l]||{};l==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],d={sentences:Array(e.sentences.length)},g=e.sentences.length,m=-1;if(r.cache)for(let p of e.sentences){m++;let w=l;l==="openl"&&(w=l+"-"+s.codename||$r.DEFAULT_CODENAME);let F=null;try{F=await sr(Pd({originalText:p.text,from:p.from,to:p.to,service:w}),1e3)}catch(S){D.warn("query cache DB error, but it's ok",S)}if(F){let S={...p,text:F.translatedText};d.sentences[m]=S,n&&n(null,S,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&D.debug(`use ${g-f} sentences from cache`),!c.length)return d;let C;try{C=new jn[l].class(s,o,{translationService:l}),await C.init()}catch(p){if(n)for(let w of c)n(p,null,w);throw p}let T=await C.multipleTranslate({sentences:c},s,(p,w,F)=>{if(n&&n(p,w,F),!p&&w&&!l.startsWith("mock")&&r.cache){let S=l;l==="openl"&&(S=l+"-"+s.codename||$r.DEFAULT_CODENAME),r.cache&&sr(Fd({translatedText:w.text,from:F.from,to:F.to,detectedFrom:w.from,key:_n(F.text),service:S}),3e3).catch(A=>{D.warn("set cache DB error",A)})}});for(let p of T.sentences){let w=d.sentences.findIndex(F=>!F);if(w===-1)throw new Qe("translateFailed","can not match the result");d.sentences[w]=p}return d}var R9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function yn(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function Hi(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(yn(e,r))return!1;if(yn(e,u)||e.nodeName.toLowerCase()==="br")return!0;let l=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(l=e.parentNode.immersiveTranslateComputedStyle),l&&l.display&&l.display==="inline-flex"?!1:n&&n.display?!!R9.includes(n.display):yn(e,a)}var Bt=yn;function na(e){return!!e.shadowRoot}function zn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function Au(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function go(e){let t=ur;return e&&(t=e),t}async function Xt(e,t="",n=100){let a="auto";return t?await Ye({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Da()),a)}function mo(e,t){return Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function O9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${W}-loading-${n} notranslate">`}function Su(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",Ot),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Je(a,w4,t.toString());let u=O9(e);return a.innerHTML=ve.sanitize(u),a}function za(e,t){return e.querySelector(`[${k0}='${t}']`)}function Md(){document.querySelectorAll(`[${k0}]`).forEach(t=>{t.remove()})}function _d(){document.querySelectorAll(`.${Ot}-error`).forEach(t=>{t.remove()})}function Bd(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Sa(n)&&t.push(n)}),t}function Rd(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let l=u[2];o=new RegExp(`<${l}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||Jc(i)||Kc(i)||Vc(i)||Gc(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ar(r,n,a)}function ln(e){return e.nodeType===Node.ELEMENT_NODE}function Od(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function Nd(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var N9=1e5;function Un(e){let{onParagraph:t,filterRule:n,id:a}=e;n=I9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:l,globalAttributes:s,isModifyImage:c}=n,d={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,m=null;function f(S){let{container:A,onFrame:y,onIgnoreElement:k,id:L}=S,x=document.createTreeWalker(A,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,v=>{let R=O(v);return R==NodeFilter.FILTER_ACCEPT?Lt.mark(v,L):R==NodeFilter.FILTER_REJECT,R}),P=A;if(O(P)===NodeFilter.FILTER_REJECT)return;for(Lt.mark(P,L);P;){if(o&&o.length>0){let{currentNode:v,isMatchedSelection:R}=C(x,P,o);if(v)P=v;else break;if(!R)continue}if(P.nodeType===Node.ELEMENT_NODE||P.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let v=P;if(v.nodeName==="IFRAME"){y&&y(v);break}v.nodeType===Node.ELEMENT_NODE&&(r&&qi(v,r),s&&Ki(v,s));let R=Hi(v,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},v.immersiveTranslateComputedStyle||null);if(Bt(v,u)&&!R){p(v);let pe=null;for(;!(pe=x.nextSibling())&&x.parentNode(););P=pe;continue}let J=na(v);(!Id(d,v)||R)&&(T(),v.childNodes.length>0&&w(d,v,v.immersiveTranslateComputedStyle||null)),J&&v.shadowRoot?.mode==="open"&&(R?y?.(v.shadowRoot):f({...S,container:v.shadowRoot})),v.nodeType===Node.ELEMENT_NODE&&v.nodeName==="PRE"&&i&&H9(v)}else if(P.nodeType===Node.TEXT_NODE)p(P);else throw new Error("should not be here");P=x.nextNode(),d.commonAncestorContainer&&P&&P.parentNode===d.commonAncestorContainer&&(d._currentStacks=[]),d.commonAncestorContainer&&P&&P.nodeType===Node.ELEMENT_NODE&&d._currentStacks.push(P)}function O(v){if(v.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(ln(v)){if(s){let N=Object.keys(s);if(N.length>0&&Bt(v,N))for(let fe of N){let _e=s[fe];if(v.matches(fe)){let z=s[fe],Te=Object.keys(z);for(let Z of Te){let b=z[Z];v.getAttribute(Z)!==b&&(b===null?v.removeAttribute(Z):v.setAttribute(Z,b))}break}}}if(!S.force&&Lt.isMarked(v,L)||Od(v,L)||Gi(v,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||v.nodeName==="IFRAME"&&!Sa(v))return NodeFilter.FILTER_REJECT;if(v.nodeType===Node.ELEMENT_NODE){let N=window.getComputedStyle(v);if(v.immersiveTranslateComputedStyle={display:N.display,whiteSpace:N.whiteSpace},$i(v.immersiveTranslateComputedStyle))return k&&k(v),NodeFilter.FILTER_REJECT;let pe=Hi(v,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},v.immersiveTranslateComputedStyle||null);if(Bt(v,u)&&pe)return NodeFilter.FILTER_REJECT}let{width:R,height:J}=v.getBoundingClientRect();return v.nodeName==="IMG"&&(R>48&&J>48?v.immersiveTranslateComputedStyle={display:"block"}:R>0&&J>0&&c!==!1&&(v.setAttribute("width",R),v.setAttribute("height",J))),!v.childNodes||v.childNodes&&v.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!d.isPreWhitespace&&(R>0&&R<4||J>0&&J<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(v.nodeType===Node.TEXT_NODE){let R=v.textContent?.trim();if(!R)return d.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let J=v.parentNode;if(J.getBoundingClientRect){let{width:N,height:pe}=J.getBoundingClientRect();if(N>0&&N<4||pe>0&&pe<4)return NodeFilter.FILTER_REJECT}return l>0&&R.length>=l&&Wi(v,l),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),d&&d.commonAncestorContainer&&d.flatNodes.length>0&&T();function C(S,A,y){let k=A.immersiveTranslateComputedStyle||null;if(m){if(!m.contains(A))if(g=!1,A&&A.nodeType===Node.ELEMENT_NODE)if(po(A,y))g=!0,m=A,T(),w(d,m,k);else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g}}else if(A&&A.nodeType===Node.ELEMENT_NODE)if(po(A,y))g=!0,m=A,T(),w(d,m,k);else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};return{currentNode:A,isMatchedSelection:!0}}function T(){let S=U9(d,a);S&&t&&t(S),jd(d)}function p(S){if(!Id(d,S)){T(),jd(d);let A=S.parentNode;A&&w(d,A,A.computedStyle)}d.flatNodes.push(S)}function w(S,A,y){S.commonAncestorContainer=A;let k=F(y);S.isPreWhitespace=k}function F(S){return S&&S.whiteSpace&&S.whiteSpace.startsWith("pre")||S&&S.whiteSpace==="break-spaces"||!1}}function Id(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=na(t));let a=z9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function I9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function j9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function qi(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function z9(e){return e&&e._currentStacks?e._currentStacks.some(t=>na(t)):!1}function U9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=W9(n,a);r||(r=a);let o=[];for(let g of n){let m=j9(e,r,g);m&&(o.includes(m)||o.push(m))}if(o.length<1)return null;let i=o[0],l=o[o.length-1],s=[],c=i,d=0;for(;c&&(s.push(c),c!==l);){if(d++,d>N9){D.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:s,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function jd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function $i(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var Lt={_marked_key:"immersive_translate_walked",isMarked(e,t){return ai(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||na(e)))return Dr(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||na(e)))return Je(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=ka(e,"markWalk")||"";return Je(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||na(e)):!1}};function H9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=ve.sanitize(n)}function W9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function Wi(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let l=n.lastIndexOf(i,t);return l>o?l:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",l=n[r+1]||"";o==="."||l==="."||l===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&Wi(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),l=document.createElement("br");i.parentNode?.insertBefore(l,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=Hc(e,[a]);for(let i of o)for(let l of r){let s=u[l];i.getAttribute(l)!==s&&(s===null?i.removeAttribute(l):i.setAttribute(l,s))}}}function Ud(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let l=t[i],s=Object.keys(l),c=e.querySelector(i);if(c)for(let d of s){let g=l[d];if(d==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||q9(c,u,r)||!qc(f,n,a))continue}c.getAttribute(d)!==g&&(g===null?c.removeAttribute(d):c.setAttribute(d,g))}}}function Ki(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let l of i){let s=o[l];e.getAttribute(l)!==s&&(s===null?e.removeAttribute(l):e.setAttribute(l,s))}break}}}}function Gi(e,t){return Bt(e,t.excludeSelectors||[])?Bt(e,t.selectors||[])?!1:!Bt(e,t.stayOriginalSelectors||[]):!1}function po(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Bt(e,t.concat(n))}function q9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ar(r,t,n))return!0}}return!1}function Hd(e,t,n,a){let u=t,r=_4[u]||[],o="";e&&r&&r.length>0&&r.forEach(s=>{let{name:c}=s;if(e&&n&&n[c]){let d=n[c];if(["borderRadius"].includes(c)&&(d+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${d}; +`,t==="marker"&&c==="backgroundColor"&&typeof d=="string"){let{r:g,g:m,b:f}=Yc(d);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${g}, ${m}, ${f}; +`}}});let i="";if(n&&n.textColor){let s=n.textColor;i+=` +.immersive-translate-target-translation-theme-${u}-inner{color: ${s};} +`}if(n&&n.zoom){let s=n.zoom;i+=` +.immersive-translate-target-translation-theme-${u}-inner{font-size: max(13px, ${s}%);} +`}let l="";o&&(l=`:root { ${o}} -`),i&&(s+=i),s?Vn(e,s,"immersive-translate-user-custom-style"):a&&Vn(e,"","immersive-translate-user-custom-style")}function Ua(e,t){let a=Ve().IMMERSIVE_TRANSLATE_INJECTED_CSS;Vn(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};Id(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` +`),i&&(l+=i),l?Vn(e,l,"immersive-translate-user-custom-style"):a&&Vn(e,"","immersive-translate-user-custom-style")}function Ua(e,t){let a=Ve().IMMERSIVE_TRANSLATE_INJECTED_CSS;Vn(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};Hd(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` `)),t.rule.additionalInjectedCss&&t.rule.additionalInjectedCss.length>0&&(i+=` `+t.rule.additionalInjectedCss.join(` -`))),i&&Vn(e,i,"immersive-translate-dynamic-injected-css")}async function jd(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Ye({text:va(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=Jn(document.documentElement.lang)),e}function zd(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function Gi(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=j9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let d=n.substring(s+i.length,c),g=Object.keys(o).filter(m=>m!=="tag").map(m=>`${m}="${o[m]}"`).join(" ");n=n.replace(`${i}${d}`,`<${l} ${g}>${d}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function Du(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function aa(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=Du(e,n,t);return r===t&&n!==a&&(r=Du(e,a,t)),Gi(r,u)}function j9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function fo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function Vi(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(D4),e&&(r.push(`${q}-target-translation-theme-${e}`),t?r.push(`${A0}-theme-${e}`):r.push(`${k0}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(A0):(r.push(k0),u&&r.push(S4)),r}function Ji(e){let t=["notranslate",k4];return e&&t.push(`${q}-target-translation-theme-${e}-inner`),t}function Ud(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,d=Aa(n),g="afterend",m=d[0].replace(/\//g,"/");m=m.replace(/"/g,'\\"'),m=m.replace(//g,">");let f=d[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let v=`${m}(\\d+)${f}`,T=new RegExp(v,"g"),p=fo(s);p=Le.sanitize(p),o.length>0&&(p=p.replace(T,A=>{let y=p.indexOf(A),k=p[y-1]===" ",D=p[y+A.length]===" ",x=A.slice(d[0].length,-d[1].length),L=Number(x);if(isNaN(L))return A;let O=o[Number(L)];if(O&&O.type==="element"){let w=O.value.outerHTML;return k||(w=" "+w),D||(w=w+" "),w}else P.error("variable type not supported",O,A);return A}));let C=Vi(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&C.push(A4);let F=Ji(r),S="";return a.translationBlockStyle&&(S=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${S} class="${C.join(" ")}" ${tn}="1"><${a.targetWrapperTag} class="${F.join(" ")}" ${tn}="1">${p}`,e.inline||(l==="smart"?p=`
${p}`:p=`${l}${p}`),e.inline&&(l!=="smart"?p=`${l}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${tn}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:g}}function ho(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let s=0;s2&&(T=`<${u[2]}${v}>`),i[v]=l,o.push({text:T,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";d&&(f=zn(Yi(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Bt(l,a)){let v=Object.keys(i).length,T=`${u[0]}${v}${u[1]}`;u.length>2&&(T=`<${u[2]}${v}>`),i[v]=l;let p=Xi(o).endsWith(" ")?" ":"",C=zn(l.innerText||l.textContent),F=zn(l.nextSibling).startsWith(" ")?" ":"",S=Au(p+C+F),A=S[0]+T+S[1];if(p===" ")A=A.trimStart();else if(!A.startsWith(" ")){let y=Au(l.previousSibling)[1];y===""&&(y=" "),A=y+A}o.push({text:A,type:"variable"})}else{let f=Xi(o).endsWith(" ")?" ":"",v=zn(l.innerText||l.textContent);d&&(v=zn(Yi(l)));let T=zn(l.nextSibling).startsWith(" ")?" ":"",p=Au(f+v+T),C=p[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+p[1];if(f===" ")C=C.trimStart();else{let F=Au(l.previousSibling)[1];F===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(F=" "),C=F+C}o.push({text:C,type:"text"})}else{let f=Xi(o).endsWith(" ")?" ":"",v="";l.textContent&&(v=zn(Yi(l))),f===" "&&(v=v.trimStart()),o.push({text:v,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(d=o[l-1].text),l2){let c=l[2];return z9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=Ud(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function Yi(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function z9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:d}=e;o=o||[];let g=fo(e.targetText);g=Le.sanitize(g);let m=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),v=new RegExp(`<${t}(\\d+)>`);o.length>0&&(m=m.replace(f,F=>{let S=m.indexOf(F),A=m[S-1]===" ",y=m[S+F.length]===" ",k=F.match(v);if(!k)return F;let D=k[1],x=Number(D);if(isNaN(x))return F;let L=o[Number(x)];if(L&&L.type==="element"){let O=L.value.outerHTML;return A||(O=" "+O),y||(O=O+" "),O}else if(L&&L.type==="text"){let O=L.value;return A||(O=" "+O),y||(O=O+" "),O}else P.error("variable type not supported",L,F);return F}));let T=Vi(l,n,a||[],i,c),p=Ji(l),C="";return d&&(C=`style="${d}"`),m=`<${u} ${C} class="${T.join(" ")}" ${tn}="1"><${u} class="${p.join(" ")}" ${tn}="1">${m}`,n||(r==="smart"?m=`
${m}`:m=`${r}${m}`),n&&(r!=="smart"?m=`${r}${m}`:m=`<${u} class="notranslate" ${tn}="1"> ${m}`),s==="smart"?m=`${m}`:m=`${m}${s}`,{html:m,position:"afterend"}}function Xi(e){let t=e[e.length-1];return t?t.text:""}function Ht(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var U9={sanitize:e=>e};function Eo(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:Ht(e.ctx),onParagraph:Lu.bind(null,e),onFrame:n=>{Qi(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),wa&&Je(t,"consumeContainer",e.id))}function Qi(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Sa(t))return;P.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Wa(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else P.debug("onFrame shadowRoot",t.host),Wa(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Wa(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=Ht(t.ctx),r=0;if(s(t,e,n))return;if(ln(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(ln(c)&&(a&&Wi(c,a),u&&$i(c,u)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(Lt.mark(l.currentNode,t.id);l.nextNode();){Lt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let d=l.currentNode;if(Lt.mark(l.currentNode,t.id),i(d)){o(d);continue}else break}if(!l.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){Lt.clearMark(l),r++,t.immediateTranslateCapacity>=0?Eo(t,l):(wa&&Je(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return Qi(t,l.shadowRoot,n),!1;if(c==="iframe")return Qi(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let d=t.containerRule;if(d.selectors&&d.selectors?.length>0)return po(l,d.selectors);if(d.pageHeight){let g=l.scrollHeight;if(g>0&&g0)return!0}return!1}function s(l,c,d){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||d&&Lt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let m=Ht(l.ctx);return!!Ki(c,{excludeSelectors:m.excludeSelectors,selectors:m.selectors,stayOriginalSelectors:m.stayOriginalSelectors})}}function es(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!Lt.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(bo(e.rootNodes),Wd(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=Zi(e.rootNodes);bo(e.rootNodes),Ha(o,a,e.targetNodes||[]),Wd(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];Ha(o,a,e.rootNodes||[]),qd(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=Zi(e.rootNodes);Ha(o,a,e.targetNodes||[]),qd(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=Zi(e.targetNodes);bo(e.targetNodes),Ha(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&bo(e.targetNodes)}catch(o){P.error(o)}}}function Wd(e){if(!ln(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Je(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function qd(e){if(!ln(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=ka(a,"immersiveTranslateClassBak");Dr(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function Zi(e){return e?e[e.length-1].nextSibling:null}function bo(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function Ha(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var H9=gt(ns,300);async function Lu(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||W9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,wa&&Je(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Aa(u),i=ho(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await as(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:go(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(s){if(P.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(q9(e,t.text),ts(e,t)):(wa&&Je(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function W9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?ln(t)&&t.classList.contains(Ot):!1}function q9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function ts(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),wa&&Je(t.commonAncestorContainer,"consumeParagraph",e.id),H9.call(e,e.ctx)}async function ns(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await on(a,t,(u,r,o)=>{let i=o.id,s=$9(e,i.toString());s&&K9.call(null,u,r,o,s,t,n)})}catch(u){P.error("translateCurrentQueue error",u);return}}function $9(e,t){return e.find(n=>n.id===t)}function K9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${q}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(za(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(P.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=u,l=n.id,c=document.createElement(s.targetWrapperTag);Je(c,T4,l.toString()),c.classList.add("notranslate",Ot,Ot+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let d=a.rootNodes[a.rootNodes.length-1].nextSibling;Ha(d,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` -`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let m=aa(Rt,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=aa(Rt,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),v=`<${s.targetWrapperTag} class="${q}-error notranslate"><${s.targetWrapperTag} class="${q}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=Le.sanitize(v)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=Hd(a,u),l=document.createElement(u.rule.targetWrapperTag);l.classList.add("notranslate",Ot),l.setAttribute("lang",u.targetLanguage),l.setAttribute(tn,"1");let c=U9.sanitize(s);l.innerHTML=c,a.targetNodes=[l],es(a,r),o=!0}else P.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function as(e,t){let{text:n}=e,a=await Ye({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!Fd({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Da());let s=un(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return Bn(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(m=>Bn(c,m,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var G9=[];function $d(e){G9.push(e)}function Kd(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(rr)||us(e).catch(r=>{P.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var To="";async function us(e){let t=document.title;if(!t||t.includes(rr))return;To!==t&&(To=t);let n=await sn(e,t);if(!mo(e,n))try{let a=await ja({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=To+rr+a.text)}catch(a){throw a}}function Gd(e){e.rule.isTranslateTitle&&(document.title=To)}var rs="Original";function Ne(){return rs}function Ct(e){rs=e,Vd(rs)}var os;function Jd(e){let t=e.ctx.rule.aiRule;if(P.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=Ht(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{xo(e,l,a)}),os=new MutationObserver(l=>{l.forEach(function(c){if(ln(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(d=>{d===r&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,P.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),xo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(d=>{let g=d.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(P.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),xo(e,g,a))},100))})}})}),os.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){yn(l,[t.streamingSelector])&&(r=l,P.debug("streamingNode",r)),yn(l,[t.messageWrapperSelector])&&(o=l,P.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),P.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),xo(e,o,a),r=void 0,o=null}}function xo(e,t,n){Un({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Lu(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function Yd(){os?.disconnect()}var U=null;function wo(){return U||null}function vo(e){V9(e),t6(e),Z9(e),e6(e),Ua(document,e),Ct("Translated"),Q9(U),X9(U),$d(Hn),J9(U)}function V9(e){e.rule.initialSelectorGlobalAttributes&&Nd(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function J9(e){Jd(e)}function Y9(){Yd()}function X9(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Wa(n,e)})}async function Z9(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Yn({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function Q9(e){e.ctx.rule.isTranslateTitle&&(us(e.ctx),e.titleDynamicObserver=Kd(e.ctx))}function e6(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function t6(e){let t=_t();U&&(t=U.id),U=U||{},U.ctx=e,U.id=t,U.paragraphQueue=U.paragraphQueue||[],U.rule={excludeSelectors:Ht(e).excludeSelectors,selectors:e.rule.selectors},U.currentUrl=window.location.href,U.containerRule={pageHeight:screen.availHeight,selectors:U.rule.selectors},U.paragraphEntities=U.paragraphEntities||{},U.autoIncreaseParagraphId=U.autoIncreaseParagraphId||1,U.interruptEffectDOM=!1,U.urlChangeDelay=e.rule.urlChangeDelay,U.immediateTranslateCapacity=e.state.immediateTranslationTextCount,U.observeContainers=U.observeContainers||[],U.observeParagraphs=U.observeParagraphs||[],U.dynamicContainerObserver=U.dynamicContainerObserver||o6(U),U.ignoreResizeObserver=U.ignoreResizeObserver||i6(U),U.containerVisibleObserver=U.containerVisibleObserver||a6(U),U.paragraphVisibleObserver=U.paragraphVisibleObserver||u6(U),U.injectCssToDocument=Co,U.walkContainer=Un,U.translateState=e.state.translationMode||e.config.translationMode||"dual",U.allInlineWindows=[window],window.onerror=n6(U,e),window.immersiveTranslateSwitchTranslateState=ss.bind(U)}function Zd(e,t){t.getRootNode()instanceof ShadowRoot?Co(t.getRootNode(),e):Co(t.ownerDocument,e),is(e)}function is(e){U||(U={},U.ctx=e,U.id=_t(),U.paragraphQueue=[],U.injectCssToDocument=Co,U.rule={excludeSelectors:Ht(e).excludeSelectors,selectors:e.rule.selectors},U.currentUrl=window.location.href,U.paragraphEntities={},U.autoIncreaseParagraphId=1,U.interruptEffectDOM=!1,U.urlChangeDelay=e.rule.urlChangeDelay,U.translateState=e.config.translationMode||"dual",U.observeContainers=[],U.observeParagraphs=[],U.allInlineWindows=[window],window.switchTranslateState=ss.bind(U))}function Hn(e=!0){U&&(Ct("Original"),Y9(),U.interruptEffectDOM=!0,U.ignoreResizeObserver?.disconnect(),U.dynamicContainerObserver?.disconnect(),U.containerVisibleObserver?.disconnect(),U.paragraphVisibleObserver?.disconnect(),U.titleDynamicObserver?.disconnect(),Gd(U.ctx),Dd(),Ld(),e&&ss.call(U,"original"),Object.values(U.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),U=null)}function n6(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{vo(t)},e.urlChangeDelay||2e3)),!0}}function a6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(Eo(e,a.target),n.unobserve(a.target))})})}function u6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{ts(e,o)}),n.unobserve(u)}})})}var Xd;function r6(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(Xd),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),Xd=setTimeout(()=>{let u=e.ctx;vo(u)},e.urlChangeDelay),!0)):!1}function o6(e){return new MutationObserver(t=>{if(!r6(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!Lt.isSkipMarkEle(n.target)&&!Lt.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...r,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&yn(n.target,e.ctx.rule.mutationObserverContainerSelectors)){Lt.clearMark(n.target),n.target.paragraphs=void 0,Eo(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Wa(r,e))})}})}function i6(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);qi(r)||(n.unobserve(a.target),Wa(u,e))}})}function ss(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{es(t,e)}),e=="original"&&document.querySelectorAll(`.${Ot}`).forEach(t=>t.remove())}function Co(e,t){if(e instanceof HTMLIFrameElement){Ua(e.contentDocument,t);return}Ua(e,t)}async function Qd(e){let t=lt(),n="auto";if(ie()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=ai(e.mainFrame):a=va(e.mainFrame).slice(0,1e3),n=await Ye({text:a})}else if(t)n=await Ye({text:va(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=ai(e.mainFrame),n=await Ye({text:a})}else n=await tg();return n==="auto"&&(n=await jd()),Mr(n),n}async function eg(){if(!U)return;document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=U.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){U.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${nr}='${n}']`);r&&r.remove()}}ns.call(U,U.ctx)}var ng={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},ag={...Rt,"zh-CN":{...ng["zh-CN"],...Rt["zh-CN"]},"zh-TW":{...ng["zh-TW"],...Rt["zh-TW"]}},ko=ag;function qa(e,t,n){return aa(ag,e,t,or,n)}var Ao=(e,t,n,a)=>{let u=P4[e]||e,r=F4[e],o=M4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${u})`}else return u};function $a(e){Ka(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{P.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:er,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function ls(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&ze(o,i=>{i.preventDefault(),$a({method:a[r]})})}}var Ga={},s6={root:"",lang:"en",fallbackLang:"en"};function cs(e,t){let n=Object.assign({},s6,e);Ga=t||Ga;let[a,u]=ye(n.lang),[r,o]=ye(Ga),[i,s]=ye(!1),l=d=>{if(r.hasOwnProperty(d))return;s(!1);let g=zd(n.root||"",d);n.getUrl&&(g=n.getUrl(n.root||"",d),fetch(g).then(m=>m.json()).then(m=>{Ga[d]=m,o({...Ga}),s(!0)}).catch(m=>{o({...Ga}),s(!0)}))};return Ze(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:u,t:(d,g)=>{if(!r.hasOwnProperty(a))return d;let m=Du(r,a,d);return m===d&&a!==n.fallbackLang&&(m=Du(r,n.fallbackLang,d)),Gi(m,g)},isReady:i}}var l6=0;function H(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--l6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return he.vnode&&he.vnode(s),s}var gs=g0(null),ds={root:"assets",lang:"en",fallbackLang:"en"},So=e=>{let{t,setLang:n,lang:a,isReady:u}=cs({root:e.root||ds.root,lang:e.lang||ds.lang,fallbackLang:e.fallbackLang||ds.fallbackLang,getUrl:e.getUrl},e.translations);return H(gs.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function ug(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function rg(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function og(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function Tn(e){let{items:t,maxWidth:n}=e;return n=n||128,H("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>H("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var Do="DROP_DOWN_DEFAULT_VALUE";function ms(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=f0(null);return H("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:Do,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==Do){o.current.value=Do,o.current?.dispatchEvent(new Event("change"));let l=u.find(c=>c.value===s);l&&n(l)}},children:[{value:Do,label:e.label}].concat(u).map((i,s)=>H("option",{value:i.value,children:i.label},"option-"+s))})}function Wt(){return h0(gs)}function ps(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=Wt(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[r,"\uFF1A"]}),H(Tn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Pu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var c6=({date:e})=>{let{t}=Wt(),[n,a]=ye(!1);return Ze(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:H("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},d6=({minVersion:e})=>{let{t}=Wt();return H("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},g6=()=>{let{t:e}=Wt();return H("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},m6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=Wt();return H("p",{class:"text-sm",children:[a("failToSyncRules")," ",H("a",{onClick:t,children:a("retry")}),H("br",{}),a("failedReason"),"\uFF1A",e,H("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function fs(e){let{isShowError:t,request:n}=e,[a,u]=ye(null),{t:r}=Wt(),[o,i]=ye(null),[s,l]=ye(null),[c,d]=ye(""),[g,m]=ye(!1),[f,v]=ye(!1),[T,p]=ye(!1),[C,F]=ye(null),[S,A]=ye(null),y=Rn(),k=async()=>{d("");let D=o;if(o===null)try{let x=await n({url:ou});x?(i(x),D=x,m(!0)):(d(r("unknownError")),l(null))}catch(x){l(null),d(x.message);return}D!==null?(e.setStorageBuildinConfig(D),l(!1),u(D.buildinConfigUpdatedAt)):(d(r("canNotFetchRemoteRule")),l(null))};return Ze(()=>{an().then(D=>{let x=D.buildinConfigUpdatedAt;F(D);let L=new Date(x);if(u(x),y==="0.0.0"){p(!0);return}n({url:ou}).then(O=>{let w=O,R=w.minVersion,J=y;i(w);let N=w.latestVersion;if(N&&(Pu(J,N)?A(!0):A(!1)),Pu(J,R)){let pe=w.buildinConfigUpdatedAt;new Date(pe)>L?(l(!0),k()):l(!1)}else v(!0),l(null)}).catch(O=>{l(null),d(O.message)})})},[]),Ze(()=>{an().then(D=>{F(D)})},[a]),C?H("div",{class:"text-sm mt-2",style:{maxWidth:218},children:T?H(g6,{}):c?t===!1?null:H(m6,{handleSyncing:k,message:c,date:a||""}):f?t===!1?null:H(d6,{minVersion:o.minVersion}):s===null||s===!0?null:g?H(c6,{date:a}):null}):null}function Fu(e){let t=Rn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:d,config:g,openAboutPage:m,onTranslateTheWholePage:f,onToggleEnabled:v,openOptionsPage:T,ontranslateToThePageEndImmediately:p,onSetPageLanguage:C,onToggleTranslate:F,onTranslateLocalPdfFile:S,onTranslatePdf:A,onRestorePage:y,ctx:k,currentUrl:D,currentLang:x,onClose:L,onTranslatePage:O,onSetLocalConfig:w,onMouseTriggerChanged:R,errorMsg:J,disabledButton:N,noPermissionPDF:pe}=e,fe=a,[_e,z]=ye(""),[Te,Z]=ye(J),{t:b,lang:_}=Wt(),K=60;_.startsWith("zh")||(K=65);let ae=null,Y=null,Se=null,te=null,Ce=null,ee=null,oe=null,ge=null,X=null,W=null,ne=null,Pe=null,De=!0;if(g){xt()&&g&&(De=g.generalRule.showSponsorOnSafari);let{translationService:B,translationServices:Q,translationUrlPattern:ve}=g;fn[B]&&(ge=ci(B,k)),Q&&Q[B]?Pe=Q[B]||{}:Pe={};try{X=new URL(D||"")}catch{}if(D&&Lo(D)){W=rg(X.hostname),ne=og(D);let{matches:be,excludeMatches:xe}=ve;Y=be.includes(W),ae=be.includes(X.hostname),te=xe.includes(W),Se=xe.includes(X.hostname),ee=be.includes(ne),oe=xe.includes(ne)}}if(g&&x&&x!=="auto"){let{translationLanguagePattern:B}=g,{matches:Q}=B;Q.includes(x)?Ce=!0:Ce=!1}let ue=B=>{B.preventDefault(),T()},Ue=B=>{fe(Q=>(Q.alpha?z("Success disable alpha!"):z("Success enable alpha!"),{...Q,alpha:!Q.alpha}))},nt=B=>{fe(Q=>({...Q,translationMode:B})),o(B)},Be=()=>{fe(B=>({...B,translationArea:"body"})),f()},Re=()=>{fe(B=>({...B,translationArea:"main"})),n()},Oe=(B,Q,ve,be)=>{if(B==="default"){fe(it=>{let we={...it.translationUrlPattern};return{...it,translationUrlPattern:{...it.translationUrlPattern,matches:Dn([X?.hostname,W,D],we.matches),excludeMatches:Dn([X?.hostname,W,D],we.excludeMatches)}}});return}let xe=B,je=xe==="matches"?"excludeMatches":"matches";X&&fe(it=>{let we={...it.translationUrlPattern};return we[xe]=Z0(Q,we[xe]),be.length>0&&(we[xe]=Dn(be,we[xe])),we[je]=Dn(ve,we[je]),{...it,translationUrlPattern:{...it.translationUrlPattern,...we}}}),xe==="matches"&&l==="Original"?setTimeout(()=>{O(),L()},100):xe==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{y(),L()},100)},kt=B=>{if(!B){fe(be=>{let xe={...be.translationLanguagePattern};return{...be,translationLanguagePattern:{...be.translationLanguagePattern,matches:Dn(x,xe.matches),excludeMatches:Dn(x,xe.excludeMatches)}}});return}let Q=B,ve=Q==="matches"?"excludeMatches":"matches";x&&fe(be=>{let xe={...be.translationLanguagePattern};return xe[Q]=Z0(x,xe[Q]),xe[ve]=Dn(x,xe[ve]),{...be,translationLanguagePattern:{...be.translationLanguagePattern,...xe}}}),Q==="matches"&&l==="Original"&&setTimeout(()=>{O(),L()},100)},Cn=X?.pathname.toLowerCase().endsWith(".pdf"),He=b("translate");l==="Translated"||l==="Error"?He=b("show-original"):l==="Original"?Cn?ha()&&X.protocol==="file:"||pe?He=b("translate-firefox-local-pdf"):ie()?He=b("noSupportTranslate-pdf"):He=b("translate-pdf"):He=b("translate"):He=b(l);let Qt=b("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(g.shortcuts.toggleTranslatePage&&(u4()&&k.rule.fingerCountToToggleTranslagePageWhenTouching>=2?He+=` (${b(`fingers.${k.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:He+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(Qt+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let qt=[];k&&(qt=C3(k));let at=B=>{B.preventDefault(),L()},Pt=kd(k.config.translationService,k.config.targetLanguage);return H("div",{class:"p-3",children:[H("div",{class:"text-sm",children:[H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),H(Tn,{items:Nt.map(B=>({label:Ao(B,g.interfaceLanguage),value:B,selected:B===k.sourceLanguage,onSelected:Q=>{C(Q.value)}}))})]}),g&&g.targetLanguage&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),H(Tn,{items:Pt.filter(B=>B!=="auto").map(B=>({label:Ao(B,g.interfaceLanguage),value:B,selected:B===g.targetLanguage,onSelected:Q=>{fe(ve=>({...ve,targetLanguage:Q.value}))}}))})]}),ge&&qt.length>0&&H(en,{children:[H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),H(Tn,{items:qt.map(B=>({label:`${b("translationServices."+B.id)}${B.ok?"":" "+b("needAction")}`,value:B.id,selected:B.selected,onSelected:Q=>{let ve=qt.find(be=>be.id===Q.value);ve.ok?(fe(be=>({...be,translationService:ve.id})),ve.props.length===0?setTimeout(()=>{O()},1):setTimeout(()=>{y()},1)):(fe(be=>({...be,translationService:ve.id})),setTimeout(()=>{T()},100))}}))})]}),Pe&&ge.props.length>0&&ge.props.map((B,Q)=>H("div",{class:"pl-4 text-sm",children:H(ps,{field:B,value:Pe[B.name],onChange:ve=>{fe(be=>{let xe=be.translationServices||{},je=xe[ge.id]||{};return setTimeout(()=>{y()},1),{...be,translationServices:{...xe,[ge.id]:{...je,[B.name]:ve}}}})}},"field-"+Q)},"service"+Q))]}),X&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:b("forThisSite")}),H(Tn,{items:[{label:b("default"),value:"default",selected:ae===!1&&Se===!1&&!Y&&!te&&!ee&&!oe,onSelected:()=>{Oe("default",X.hostname,[],[]);let B=X.hostname,Q=k.localConfig.tempTranslationUrlMatches||[],ve=Q.filter(xe=>xe.match!==B),be=!1;ve.length!==Q.length&&(be=!0),be&&w({...k.localConfig,tempTranslationUrlMatches:[...ve]})}},ne&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:ee,onSelected:()=>{Oe("matches",ne,[ne],[])}},{label:b("alwaysTranslateSomeSite",{hostname:X.hostname}),value:"matches",selected:ae,onSelected:B=>{Oe(B.value,X.hostname,[X.hostname,W,ne],[W])}},W&&{label:b("alwaysTranslateSomeSite",{hostname:W}),value:"matchesWild",selected:Y,onSelected:()=>{Oe("matches",W,[ne,X.hostname,W],[X.hostname])}},ne&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:oe,onSelected:()=>{Oe("excludeMatches",ne,[ne],[])}},{label:b("neverTranslateSomeSite",{hostname:X.hostname}),value:"excludeMatches",selected:Se,onSelected:B=>{Oe(B.value,X.hostname,[X.hostname,W,ne],[W])}},W&&{label:b("neverTranslateSomeSite",{hostname:W}),value:"excludeMatchesWild",selected:te,onSelected:()=>{Oe("excludeMatches",W,[X.hostname,ne,W],[X.hostname])}}].filter(Boolean)})]}),R&&au()&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),H(Tn,{items:ir.filter(B=>!(ir.includes(g.generalRule.mouseHoverHoldKey)&&B==="OtherCustom")).map(B=>{let Q=b("mouseHoldKey",{key:B}),ve=ir.includes(g.generalRule.mouseHoverHoldKey),be=B===g.generalRule.mouseHoverHoldKey;return B==="Auto"?Q=b("mouseHoldKeyAuto"):B==="Off"?Q=b("mouseHoldKeyOff"):B==="OtherCustom"?Q=ve?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):B==="Other"&&(Q=b("mouseHoldKeyOther")),ve||B==="OtherCustom"&&(be=!0),{label:Q,value:B,selected:be,onSelected:xe=>{xe.value==="Other"?T("#interface"):R(xe.value)}}})})]})]}),H("div",{class:"",children:H("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Cn?A&&A():F()},"aria-busy":l==="Translating",disabled:N||l==="Translating",children:He})}),H("div",{class:"text-sm",children:_e}),H("div",{class:"text-sm",children:Te}),H("div",{class:"flex justify-between flex-wrap",children:[x&&x!=="auto"?H("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[H("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Ce,onChange:B=>{let Q=B.target.checked;kt(Q?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:Ao(x,g.interfaceLanguage,!1,!0)})]}):H("span",{}),H("div",{class:"flex flex-end flex-grow",children:H(ms,{label:b("more"),showArrow:!0,maxWidth:K,onSelected:B=>{B.value==="changeToOnlyTranslationMode"?nt("translation"):B.value==="changeToDualTranslationMode"?nt("dual"):B.value==="translateTheWholePage"?f():B.value==="translateToThePageEndImmediately"?p():B.value==="translateTheMainPage"?n():B.value==="showTranslationOnly"||(B.value==="translateLocalPdfFile"?S&&S():B.value==="translateLocalHtmlFile"?r&&r():B.value==="translateLocalSubtitleFile"?i&&i():B.value==="donate"?(globalThis.open(g.donateUrl),L()):B.value==="feedback"?(globalThis.open(g.feedbackUrl),L()):B.value==="options"?(T(),L()):B.value==="changeToTranslateTheWholePage"?Be():B.value==="changeToTranslateTheMainPage"?Re():B.value==="about"?m():B.value==="toggleEnabled"?v():B.value==="openEbookViewer"?d():B.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+Qt,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!ie()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!ie()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(De?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),H("footer",{children:[H(fs,{isShowError:!1,request:u,setStorageBuildinConfig:s}),H("div",{class:"mt-3 text-sm flex justify-between",children:[H("a",{href:"#",class:"secondary",onClick:ue,children:b("options")}),ie()&&H("a",{href:"#",class:"secondary",onClick:at,children:b("close")}),H("span",{class:"immersive-translate-no-select muted",onClick:ug(7)(Ue),children:["V",t,g.enabled?null:H("a",{href:"#",onClick:v,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var hs={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return j.storage[n].get(a)},set:(e,t,n)=>j.storage[n].set({[e]:t})};function Po(e,t,n){let[a]=ye(()=>typeof t=="function"?t():t),[u]=ye(n),[r,o]=ye(a),[i,s]=ye(!1),[l,c]=ye("");Ze(()=>{hs.get(e,a,u).then(g=>{g[e]&&o(g[e]),s(!0),c("")}).catch(g=>{s(!1),c(g)})},[e,a,u]);let d=qn(g=>{let m=typeof g=="function"?g(r):g;P.debug("new settings",m),hs.set(e,m,u).then(()=>{o(m),s(!0),c("")}).catch(f=>{o(m),s(!1),c(f)})},[u,e,r]);return[r,d,i,l]}function bs(e,t,n){let a=[];return function(){let[r,o,i,s]=Po(e,t,n),l=qn(c=>{for(let d of a)d(c)},[]);return Ze(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,l,i,s]}}function ig(e,t){return bs(e,t,"sync")}var p6="userConfig",f6={},h6=ig(p6,f6);function Fo(e){let[t,n,a,u]=h6(),r=qn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function sg(e){try{let t=new Date;P.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await j.storage.local.set({[w4]:t.toISOString()}),await b6(),ie()||await lg()}catch(t){P.error("run cron task failed",t)}}async function b6(){try{let e=await Xt(),t=await G({url:ou}),n=e.buildinConfigUpdatedAt,a=new Date(n),u=t.buildinConfigUpdatedAt,r=new Date(u),o=t.minVersion,i=j.runtime.getManifest().version;Pu(i,o)?r>a?(await j.storage.local.set({buildinConfig:t}),P.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):P.debug(`no need to sync rules, latest: ${a}`):P.info(`local version is too old, please update to ${o} or later`)}catch(e){P.error("sync rules error: ",e)}}function ys(e){let{onClose:t}=e,[n,a]=ye("Original"),[u,r,o,i]=Fo(()=>{setTimeout(()=>{F("updateGlobalContext",!1)()},250)}),[s,l]=ye(null),[c,d]=ye(globalThis.location.href),[g,m]=ye("auto"),[f,v]=ye(null),T=N=>{a(N.detail)},p=N=>{m(N);let pe=Vu(c,N,s.sourceLanguageUrlPattern);r(fe=>({...fe,sourceLanguageUrlPattern:pe})),zt(N)},C=()=>{d(globalThis.location.href)};Ze(()=>(document.addEventListener(tr,T,!1),Xt().then(N=>{l(N);let pe=un();m(pe);let fe=Ne();a(fe),sg(N.interval)}),document.addEventListener("urlChange",C),()=>{document.removeEventListener("pageTranslatedStatus",T),document.removeEventListener("urlChange",C)}),[]),Ze(()=>{Xt().then(N=>{l(N)})},[u]),Ze(()=>{c&&s&&bn({url:c,config:s}).then(N=>{v(N)})},[c,s]);let F=(N,pe,fe={})=>()=>{$a({method:N,data:fe||{}}),pe&&t()},S=()=>{t()},A=()=>{r(N=>({...N,enabled:!N.enabled})),setTimeout(()=>{S()},50)},y=()=>{Es(),setTimeout(()=>{S()},50)},k=()=>{Es(),setTimeout(()=>{S()},50)},D=(N="")=>{_o(!0,N),setTimeout(()=>{t()},50)},x=()=>{Bo(),setTimeout(()=>{t()},50)},L=()=>{Ro(),setTimeout(()=>{t()},50)},O=()=>{dg(),setTimeout(()=>{t()},50)},w=()=>{Oo(),setTimeout(()=>{t()},50)},R=()=>{gg(),setTimeout(()=>{t()},50)},J=N=>{r(pe=>({...pe,generalRule:{...pe.generalRule,mouseHoverHoldKey:N}}))};return!s||!f?null:H(Fu,{openEbookViewerPage:L,openEbookBuilderPage:w,onSwitchTranslationMode:N=>{F("switchTranslationMode",!0,{mode:N})()},onTranslateLocalHtmlFile:O,onTranslateLocalSubtitleFile:R,request:G,onClose:S,onToggleEnabled:A,onTranslateTheWholePage:F("translateTheWholePage",!0),openOptionsPage:D,onToggleTranslate:F("toggleTranslatePage",!0),onTranslateTheMainPage:F("translateTheMainPage",!0),ontranslateToThePageEndImmediately:F("translateToThePageEndImmediately",!0),onTranslatePage:F("translatePage",!0),onRestorePage:F("restorePage",!1),onTranslatePdf:y,openAboutPage:x,onTranslateLocalPdfFile:k,onSetPageLanguage:p,onUserConfigChange:r,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:Mo,onSetBuildinConfig:cg,onMouseTriggerChanged:J})}function E6(e,t){for(let n of t){if(ie()&&!ha()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Ts={position:"right",right:0,top:335},wt={...Ts},jo=!1,ua=null,cn=null,zo=null,xs=null,Va=null,Cs=null,mg=6,No,Io,fg=null,hg=null;async function bg(){let e=Ve();Cs=await Tg(),wt=Cs.pagePopupConfig||wt;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});xs=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` -`);E6(n,[a]);let u=document.createElement("div");u.innerHTML=Le.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),ua=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");cn=o,zo=n.querySelector("#mount"),ua.setAttribute("style",ws(wt)),Ss(),o.addEventListener("mousedown",Eg),o.addEventListener("touchstart",x6),globalThis.addEventListener("resize",s=>{ua.setAttribute("style",ws(wt))})}function y6(){pa(null,zo),zo.style.display="none",cn.style.display="block",Va=setTimeout(()=>{Ss(!0)},2e3)}function pg(e){let t=e.querySelector("#mount"),n=()=>{y6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await Xt();pa(H(So,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:ko,children:H("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:H("div",{class:"immersive-translate-popup-wrapper",style:T6(),children:H(ys,{onClose:n})})})}),t)})().then(()=>{cn.style.display="none",zo.style.display="block"})}function T6(){let e=vs(),t=e.height,{position:n,top:a,left:u}=wt,r={position:"fixed"},o=300,i=300,s=100;return Rc()&&(n=Ts.position,a=Ts.top),n==="right"||n==="left"?(r.top=a-s,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-s,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function vs(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function Eg(e){hg=ua.getAttribute("style"),No=e.pageX,Io=e.pageY,Va&&clearTimeout(Va),jo=!1,cn.style.opacity="1",cn.style.transform="none",fg=cn.getAttribute("style"),globalThis.addEventListener("mousemove",ks),globalThis.addEventListener("mouseup",As),globalThis.addEventListener("touchmove",yg),globalThis.addEventListener("touchend",Uo),globalThis.addEventListener("touchcancel",Uo)}function x6(e){e.preventDefault&&e.preventDefault(),Eg(e.changedTouches[0])}function yg(e){ks(e.changedTouches[0])}function Uo(e){e.preventDefault&&e.preventDefault(),As(e.changedTouches[0])}function ks(e){e.preventDefault&&e.preventDefault(),jo=!0,ua.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function As(e){e.preventDefault&&e.preventDefault(),w6(),Va&&clearTimeout(Va),No=No||0,Io=Io||0;let t=Math.abs(e.pageX-No),n=Math.abs(e.pageY-Io);t{Ss(!0)},2e3)}function Ss(e=!1){cn.style.opacity="0.4";let t="";wt.position==="left"?t="translateX(-40%)":wt.position==="right"?t="translateX(40%)":wt.position==="top"?t="translateY(-40%)":wt.position==="bottom"&&(t="translateY(40%)"),cn.style.transform=t,e&&(cn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function w6(){globalThis.removeEventListener("mousemove",ks),globalThis.removeEventListener("mouseup",As),globalThis.removeEventListener("touchmove",yg),globalThis.removeEventListener("touchend",Uo),globalThis.removeEventListener("touchcancel",Uo)}function ws(e){let t=v6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function v6(e){let{position:t,...n}=e,a=vs(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var xg=!1;async function Cg(){xg||(xg=!0,bg().catch(e=>{P.error("init popup error",e)}))}var wg=!1,Ag=[()=>{ze.unbind()}],Ls=[...Ag],k6=gt(async()=>{await _o()},50),A6=gt(async()=>{await Bo()},50),S6=gt(async()=>{await Oo()},50),D6=gt(async()=>{await Ro()},50),Sg=gt(e=>{$a({method:e})},50),L6=gt(()=>{Ho();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),P6=gt(()=>{$o();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),F6=gt(()=>{qo();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function M6(e,t){let n=e.document;if(wg)return;if(wg=!0,ie()||Fg(),n.addEventListener("securitypolicyviolation",H6),n.addEventListener("immersiveTranslateEbookLoaded",U6),n.addEventListener(p4,z6),n.addEventListener("click",u=>{O6(u,t)}),ie()&&(globalThis.top!=globalThis.self?e.addEventListener("message",B6,!1):n.addEventListener(kn,_6)),globalThis.top===globalThis.self){let u=rn.rootIframe(S0);u.handleAsk("getRateLimitDelay",N3),u.handleAsk("throttleRequest",Y3)}}function Dg(e,t){W6(),M6(t,e);let n=t.document,a=R6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Ls.push(()=>{n.removeEventListener("touchstart",a)}),ie()&&globalThis.top===globalThis.self&&(ls(e.config),q6(e.config)),xt()&&ls(e.config)}function _6(e){Cg()}function B6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===er&&Ka(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function R6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?L6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?F6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&P6()}function O6(e,t){let n=e.target;if(!n||!n.getAttribute){Ds(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&tt(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${q}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Wo(),Ds(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${q}-tooltip-text`);kg(I6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),kg(N6.bind(null,t)));Ds(n)}async function vg(e=!1){let t=document.querySelector(`.${q}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await _g();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Mg(n)}function kg(e){let t=`${q}-modal`,n=`${q}-modal-title`,a=`${q}-modal-body`,u=`${q}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),s=r.querySelector(`.${a}`);e(r,o,s,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=q+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=q+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(d){d.target==r&&(r.style.display="none")},e(r,s,l,c)}setTimeout(()=>{j6()},100)}function N6(e,t,n,a,u){let r=Lg.bind(null,e);n.innerHTML=`
${B4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.createElement("p");o.innerHTML=`${r("searchEnhancementNotes")}`,a.appendChild(o);let i=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let g=0;g${r("option")}`})),a.appendChild(s);let l=a.querySelector(`.${q}-open-enhancement`);l&&(l.onclick=function(){Bg(!0)});let c=document.createElement("button");c.innerText=r("closeModal"),c.className=`${q}-btn ${q}-cancel-btn`;let d=document.createElement("button");d.className=`${q}-btn`,d.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(c),u.appendChild(d),c.onclick=function(){t.style.display="none"},d.onclick=function(){let g=a.getElementsByTagName("input"),m="";for(let f=0;f{Pg()},10)}function H6(e){me.HAS_CSP_ERROR="1"}function W6(){Ls.forEach(e=>{e()}),Ls=Ag}function q6(e){if(ie()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Ur.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=qa(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:C0,title:qa("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:w0,title:qa("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:T0,title:qa("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:x0,title:qa("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===T0?k6():r.id===x0?A6():r.id===w0?S6():r.id===C0?D6():Sg(r.id)},r.key)}}function $6(e){Ka(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{P.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function Og(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Ie(i.left,r)&&Ie(i.width,u.width));return{prevP:u,curP:o}}function Ps(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function Ng(e){return e?e==e[0].repeat(e.length):!0}function Ie(e,t,n=5){return Math.abs(e-t)<=n}var Fs=[",","\\.","\uFF0C","\u3002"];function Ig(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Ie(a.left,u.left,7)&&Ie(a.nextTop,u.top,10)&&Ko(a,u)}function jg({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Wg(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function qg({prevLineP:e,prevP:t},n){return Ie(e.left,n.left,1)&&Ie(e.right,t.right,1)&&t.mergedTimes>=1}function Ms(e,t){let{prevLineP:n}=e;return Wg(e,t)&&(Ie(n.bottom,t.bottom)||Ie(n.nextTop,t.top)&&Ie(n.left,t.left))}function $g(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return Wg(e,t)&&n.width0&&a/u<.1&&n.left!Ps(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Ye({text:n.map(r=>r.str).join(` -`).slice(0,1e3)});Mr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=n[s];r?(l.translatedStr=r.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),G6(l)})}var Bs={};async function K6(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Bs).filter(n=>!!n);await Go(Yg,t)}function G6(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Bs[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",K6)):e.translateStatus=="success"&&(Bs[e.id]=void 0,t.innerHTML=Le.sanitize(e.translatedStr)))}function Xg(e,t){let n=[],a=J6(e,t);return Y6(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){Jg(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{Jg(e,n,o,!1)}),n.push("
")}}),` +`))),i&&Vn(e,i,"immersive-translate-dynamic-injected-css")}async function Wd(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Ye({text:va(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=Jn(document.documentElement.lang)),e}function qd(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function Vi(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=$9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,l=n.indexOf(i);if(l!==-1){let s=o.tag||"a",c=n.indexOf(``);if(c!==-1){let d=n.substring(l+i.length,c),g=Object.keys(o).filter(m=>m!=="tag").map(m=>`${m}="${o[m]}"`).join(" ");n=n.replace(`${i}${d}`,`<${s} ${g}>${d}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function Du(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function aa(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=Du(e,n,t);return r===t&&n!==a&&(r=Du(e,a,t)),Vi(r,u)}function $9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function fo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function Ji(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(M4),e&&(r.push(`${W}-target-translation-theme-${e}`),t?r.push(`${S0}-theme-${e}`):r.push(`${A0}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(S0):(r.push(A0),u&&r.push(F4)),r}function Yi(e){let t=["notranslate",L4];return e&&t.push(`${W}-target-translation-theme-${e}-inner`),t}function $d(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:l}=t,{wrapperPrefix:s,wrapperSuffix:c}=a,d=Aa(n),g="afterend",m=d[0].replace(/\//g,"/");m=m.replace(/"/g,'\\"'),m=m.replace(//g,">");let f=d[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let C=`${m}(\\d+)${f}`,T=new RegExp(C,"g"),p=fo(l);p=ve.sanitize(p),o.length>0&&(p=p.replace(T,A=>{let y=p.indexOf(A),k=p[y-1]===" ",L=p[y+A.length]===" ",x=A.slice(d[0].length,-d[1].length),P=Number(x);if(isNaN(P))return A;let O=o[Number(P)];if(O&&O.type==="element"){let v=O.value.outerHTML;return k||(v=" "+v),L||(v=v+" "),v}else D.error("variable type not supported",O,A);return A}));let w=Ji(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&w.push(P4);let F=Yi(r),S="";return a.translationBlockStyle&&(S=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${S} class="${w.join(" ")}" ${nn}="1"><${a.targetWrapperTag} class="${F.join(" ")}" ${nn}="1">${p}`,e.inline||(s==="smart"?p=`
${p}`:p=`${s}${p}`),e.inline&&(s!=="smart"?p=`${s}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${nn}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:g}}function ho(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let l=0;l2&&(T=`<${u[2]}${C}>`),i[C]=s,o.push({text:T,type:"variable"})}else o.push({text:s.textContent||"",type:"text"});else{let f=s.textContent||"";d&&(f=zn(Xi(s))),o.push({text:f,type:"text"})}else if(s.nodeType===Node.ELEMENT_NODE)if(s&&Bt(s,a)){let C=Object.keys(i).length,T=`${u[0]}${C}${u[1]}`;u.length>2&&(T=`<${u[2]}${C}>`),i[C]=s;let p=Zi(o).endsWith(" ")?" ":"",w=zn(s.innerText||s.textContent),F=zn(s.nextSibling).startsWith(" ")?" ":"",S=Au(p+w+F),A=S[0]+T+S[1];if(p===" ")A=A.trimStart();else if(!A.startsWith(" ")){let y=Au(s.previousSibling)[1];y===""&&(y=" "),A=y+A}o.push({text:A,type:"variable"})}else{let f=Zi(o).endsWith(" ")?" ":"",C=zn(s.innerText||s.textContent);d&&(C=zn(Xi(s)));let T=zn(s.nextSibling).startsWith(" ")?" ":"",p=Au(f+C+T),w=p[0]+(s.innerText?.trim()||s.textContent?.trim()||"")+p[1];if(f===" ")w=w.trimStart();else{let F=Au(s.previousSibling)[1];F===""&&(s.nodeName==="A"||s.nodeName==="CODE")&&(F=" "),w=F+w}o.push({text:w,type:"text"})}else{let f=Zi(o).endsWith(" ")?" ":"",C="";s.textContent&&(C=zn(Xi(s))),f===" "&&(C=C.trimStart()),o.push({text:C,type:"text"})}}if(o&&o.length>0){let l="";for(let s=0;s0&&(d=o[s-1].text),s2){let c=s[2];return K9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=$d(l,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function Xi(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function K9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:l,translationTheme:s,isPdf:c,translationBlockStyle:d}=e;o=o||[];let g=fo(e.targetText);g=ve.sanitize(g);let m=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),C=new RegExp(`<${t}(\\d+)>`);o.length>0&&(m=m.replace(f,F=>{let S=m.indexOf(F),A=m[S-1]===" ",y=m[S+F.length]===" ",k=F.match(C);if(!k)return F;let L=k[1],x=Number(L);if(isNaN(x))return F;let P=o[Number(x)];if(P&&P.type==="element"){let O=P.value.outerHTML;return A||(O=" "+O),y||(O=O+" "),O}else if(P&&P.type==="text"){let O=P.value;return A||(O=" "+O),y||(O=O+" "),O}else D.error("variable type not supported",P,F);return F}));let T=Ji(s,n,a||[],i,c),p=Yi(s),w="";return d&&(w=`style="${d}"`),m=`<${u} ${w} class="${T.join(" ")}" ${nn}="1"><${u} class="${p.join(" ")}" ${nn}="1">${m}`,n||(r==="smart"?m=`
${m}`:m=`${r}${m}`),n&&(r!=="smart"?m=`${r}${m}`:m=`<${u} class="notranslate" ${nn}="1"> ${m}`),l==="smart"?m=`${m}`:m=`${m}${l}`,{html:m,position:"afterend"}}function Zi(e){let t=e[e.length-1];return t?t.text:""}function Ht(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var G9={sanitize:e=>e};function Eo(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:Ht(e.ctx),onParagraph:Lu.bind(null,e),onFrame:n=>{es(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),wa&&Je(t,"consumeContainer",e.id))}function es(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Sa(t))return;D.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Wa(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else D.debug("onFrame shadowRoot",t.host),Wa(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Wa(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=Ht(t.ctx),r=0;if(l(t,e,n))return;if(ln(e)&&i(e)){o(e);return}try{let s=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(ln(c)&&(a&&qi(c,a),u&&Ki(c,u)),l(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(Lt.mark(s.currentNode,t.id);s.nextNode();){Lt.mark(s.currentNode,t.id);let c=s.currentNode;if(i(c))for(o(c);;){if(s.nextSibling()){let d=s.currentNode;if(Lt.mark(s.currentNode,t.id),i(d)){o(d);continue}else break}if(!s.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(s){Lt.clearMark(s),r++,t.immediateTranslateCapacity>=0?Eo(t,s):(wa&&Je(s,"observeContainer",t.id),t.containerVisibleObserver?.observe(s))}function i(s){let c=s.nodeName.toLowerCase();if(s.shadowRoot)return es(t,s.shadowRoot,n),!1;if(c==="iframe")return es(t,s,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let d=t.containerRule;if(d.selectors&&d.selectors?.length>0)return po(s,d.selectors);if(d.pageHeight){let g=s.scrollHeight;if(g>0&&g0)return!0}return!1}function l(s,c,d){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||d&&Lt.isMarked(c,s.id))return!0;if(s.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let m=Ht(s.ctx);return!!Gi(c,{excludeSelectors:m.excludeSelectors,selectors:m.selectors,stayOriginalSelectors:m.stayOriginalSelectors})}}function ts(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!Lt.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(bo(e.rootNodes),Gd(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=Qi(e.rootNodes);bo(e.rootNodes),Ha(o,a,e.targetNodes||[]),Gd(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];Ha(o,a,e.rootNodes||[]),Vd(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=Qi(e.rootNodes);Ha(o,a,e.targetNodes||[]),Vd(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=Qi(e.targetNodes);bo(e.targetNodes),Ha(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&bo(e.targetNodes)}catch(o){D.error(o)}}}function Gd(e){if(!ln(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Je(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function Vd(e){if(!ln(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=ka(a,"immersiveTranslateClassBak");Dr(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function Qi(e){return e?e[e.length-1].nextSibling:null}function bo(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function Ha(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var V9=gt(as,300);async function Lu(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||J9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,wa&&Je(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Aa(u),i=ho(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(s=>s.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let l=await us(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:go(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(l){if(D.debug("on paragraph",l.text,l),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(l))return;a.paragraphs.push(l),e.immediateTranslateCapacity>0||n?(Y9(e,t.text),ns(e,t)):(wa&&Je(a,"observeParagraph",e.id),e.observeParagraphs.push(l),e.paragraphVisibleObserver?.observe(a))}return l}function J9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?ln(t)&&t.classList.contains(Ot):!1}function Y9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function ns(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),wa&&Je(t.commonAncestorContainer,"consumeParagraph",e.id),V9.call(e,e.ctx)}async function as(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await sn(a,t,(u,r,o)=>{let i=o.id,l=X9(e,i.toString());l&&Z9.call(null,u,r,o,l,t,n)})}catch(u){D.error("translateCurrentQueue error",u);return}}function X9(e,t){return e.find(n=>n.id===t)}function Z9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let l=document.querySelector(`.${W}-tooltip-content`);l&&(l.style="display:block")},500);let i=a;if(za(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(D.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:l}=u,s=n.id,c=document.createElement(l.targetWrapperTag);Je(c,v4,s.toString()),c.classList.add("notranslate",Ot,Ot+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let d=a.rootNodes[a.rootNodes.length-1].nextSibling;Ha(d,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` +`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let m=aa(Rt,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=aa(Rt,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),C=`<${l.targetWrapperTag} class="${W}-error notranslate"><${l.targetWrapperTag} class="${W}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=ve.sanitize(C)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let l=Kd(a,u),s=document.createElement(u.rule.targetWrapperTag);s.classList.add("notranslate",Ot),s.setAttribute("lang",u.targetLanguage),s.setAttribute(nn,"1");let c=G9.sanitize(l);s.innerHTML=c,a.targetNodes=[s],ts(a,r),o=!0}else D.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function us(e,t){let{text:n}=e,a=await Ye({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!Rd({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Da());let l=rn(),s=a;s==="auto"&&(s=l),e.languageByLocal=s,e.languageByClient=i;let c=i!=="auto"?i:s;return Bn(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(m=>Bn(c,m,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var Q9=[];function Jd(e){Q9.push(e)}function Yd(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(rr)||rs(e).catch(r=>{D.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var To="";async function rs(e){let t=document.title;if(!t||t.includes(rr))return;To!==t&&(To=t);let n=await Xt(e,t);if(!mo(e,n))try{let a=await ja({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=To+rr+a.text)}catch(a){throw a}}function Xd(e){e.rule.isTranslateTitle&&(document.title=To)}var os="Original";function Ne(){return os}function Ct(e){os=e,Zd(os)}var is;function Qd(e){let t=e.ctx.rule.aiRule;if(D.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=Ht(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(s=>{xo(e,s,a)}),is=new MutationObserver(s=>{s.forEach(function(c){if(ln(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){l();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(d=>{d===r&&l()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,D.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),xo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(d=>{let g=d.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(D.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),xo(e,g,a))},100))})}})}),is.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(s){yn(s,[t.streamingSelector])&&(r=s,D.debug("streamingNode",r)),yn(s,[t.messageWrapperSelector])&&(o=s,D.debug("markdownNode",o))}function l(){o.childNodes.forEach(s=>s.translated=!1),D.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),xo(e,o,a),r=void 0,o=null}}function xo(e,t,n){Un({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Lu(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function eg(){is?.disconnect()}var U=null;function wo(){return U||null}function vo(e){e6(e),i6(e),u6(e),o6(e),Ua(document,e),Ct("Translated"),r6(U),a6(U),Jd(Hn),t6(U)}function e6(e){e.rule.initialSelectorGlobalAttributes&&Ud(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function t6(e){Qd(e)}function n6(){eg()}function a6(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Wa(n,e)})}async function u6(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Yn({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function r6(e){e.ctx.rule.isTranslateTitle&&(rs(e.ctx),e.titleDynamicObserver=Yd(e.ctx))}function o6(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function i6(e){let t=_t();U&&(t=U.id),U=U||{},U.ctx=e,U.id=t,U.paragraphQueue=U.paragraphQueue||[],U.rule={excludeSelectors:Ht(e).excludeSelectors,selectors:e.rule.selectors},U.currentUrl=window.location.href,U.containerRule={pageHeight:screen.availHeight,selectors:U.rule.selectors},U.paragraphEntities=U.paragraphEntities||{},U.autoIncreaseParagraphId=U.autoIncreaseParagraphId||1,U.interruptEffectDOM=!1,U.urlChangeDelay=e.rule.urlChangeDelay,U.immediateTranslateCapacity=e.state.immediateTranslationTextCount,U.observeContainers=U.observeContainers||[],U.observeParagraphs=U.observeParagraphs||[],U.dynamicContainerObserver=U.dynamicContainerObserver||g6(U),U.ignoreResizeObserver=U.ignoreResizeObserver||m6(U),U.containerVisibleObserver=U.containerVisibleObserver||l6(U),U.paragraphVisibleObserver=U.paragraphVisibleObserver||c6(U),U.injectCssToDocument=Co,U.walkContainer=Un,U.translateState=e.state.translationMode||e.config.translationMode||"dual",U.allInlineWindows=[window],window.onerror=s6(U,e),window.immersiveTranslateSwitchTranslateState=ls.bind(U)}function ng(e,t){t.getRootNode()instanceof ShadowRoot?Co(t.getRootNode(),e):Co(t.ownerDocument,e),ss(e)}function ss(e){U||(U={},U.ctx=e,U.id=_t(),U.paragraphQueue=[],U.injectCssToDocument=Co,U.rule={excludeSelectors:Ht(e).excludeSelectors,selectors:e.rule.selectors},U.currentUrl=window.location.href,U.paragraphEntities={},U.autoIncreaseParagraphId=1,U.interruptEffectDOM=!1,U.urlChangeDelay=e.rule.urlChangeDelay,U.translateState=e.config.translationMode||"dual",U.observeContainers=[],U.observeParagraphs=[],U.allInlineWindows=[window],window.switchTranslateState=ls.bind(U))}function Hn(e=!0){U&&(Ct("Original"),n6(),U.interruptEffectDOM=!0,U.ignoreResizeObserver?.disconnect(),U.dynamicContainerObserver?.disconnect(),U.containerVisibleObserver?.disconnect(),U.paragraphVisibleObserver?.disconnect(),U.titleDynamicObserver?.disconnect(),Xd(U.ctx),Md(),_d(),e&&ls.call(U,"original"),Object.values(U.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),U=null)}function s6(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{vo(t)},e.urlChangeDelay||2e3)),!0}}function l6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(Eo(e,a.target),n.unobserve(a.target))})})}function c6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{ns(e,o)}),n.unobserve(u)}})})}var tg;function d6(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(tg),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),tg=setTimeout(()=>{let u=e.ctx;vo(u)},e.urlChangeDelay),!0)):!1}function g6(e){return new MutationObserver(t=>{if(!d6(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!Lt.isSkipMarkEle(n.target)&&!Lt.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],l=o.targetNodes||[];return[...r,...i,...l]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&yn(n.target,e.ctx.rule.mutationObserverContainerSelectors)){Lt.clearMark(n.target),n.target.paragraphs=void 0,Eo(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Wa(r,e))})}})}function m6(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);$i(r)||(n.unobserve(a.target),Wa(u,e))}})}function ls(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{ts(t,e)}),e=="original"&&document.querySelectorAll(`.${Ot}`).forEach(t=>t.remove())}function Co(e,t){if(e instanceof HTMLIFrameElement){Ua(e.contentDocument,t);return}Ua(e,t)}async function ag(e){let t=lt(),n="auto";if(ie()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=ui(e.mainFrame):a=va(e.mainFrame).slice(0,1e3),n=await Ye({text:a})}else if(t)n=await Ye({text:va(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=ui(e.mainFrame),n=await Ye({text:a})}else n=await rg();return n==="auto"&&(n=await Wd()),Mr(n),n}async function ug(){if(!U)return;document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=U.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){U.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${nr}='${n}']`);r&&r.remove()}}as.call(U,U.ctx)}var og={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},ig={...Rt,"zh-CN":{...og["zh-CN"],...Rt["zh-CN"]},"zh-TW":{...og["zh-TW"],...Rt["zh-TW"]}},ko=ig;function qa(e,t,n){return aa(ig,e,t,or,n)}var Ao=(e,t,n,a)=>{let u=B4[e]||e,r=R4[e],o=O4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let l=i[t];return a||e==="auto"||e==="placeholder"?l:`${l} (${u})`}else return u};function $a(e){Ka(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{D.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:er,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function cs(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&ze(o,i=>{i.preventDefault(),$a({method:a[r]})})}}var Ga={},p6={root:"",lang:"en",fallbackLang:"en"};function ds(e,t){let n=Object.assign({},p6,e);Ga=t||Ga;let[a,u]=ye(n.lang),[r,o]=ye(Ga),[i,l]=ye(!1),s=d=>{if(r.hasOwnProperty(d))return;l(!1);let g=qd(n.root||"",d);n.getUrl&&(g=n.getUrl(n.root||"",d),fetch(g).then(m=>m.json()).then(m=>{Ga[d]=m,o({...Ga}),l(!0)}).catch(m=>{o({...Ga}),l(!0)}))};return Ze(()=>{s(n.fallbackLang||"en"),s(a)},[a]),{lang:a,setLang:u,t:(d,g)=>{if(!r.hasOwnProperty(a))return d;let m=Du(r,a,d);return m===d&&a!==n.fallbackLang&&(m=Du(r,n.fallbackLang,d)),Vi(m,g)},isReady:i}}var f6=0;function H(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var l={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--f6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return he.vnode&&he.vnode(l),l}var ms=m0(null),gs={root:"assets",lang:"en",fallbackLang:"en"},So=e=>{let{t,setLang:n,lang:a,isReady:u}=ds({root:e.root||gs.root,lang:e.lang||gs.lang,fallbackLang:e.fallbackLang||gs.fallbackLang,getUrl:e.getUrl},e.translations);return H(ms.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function sg(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function lg(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function cg(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function Tn(e){let{items:t,maxWidth:n}=e;return n=n||128,H("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>H("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var Do="DROP_DOWN_DEFAULT_VALUE";function ps(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=h0(null);return H("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:Do,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let l=i.target.value;if(o.current&&l!==Do){o.current.value=Do,o.current?.dispatchEvent(new Event("change"));let s=u.find(c=>c.value===l);s&&n(s)}},children:[{value:Do,label:e.label}].concat(u).map((i,l)=>H("option",{value:i.value,children:i.label},"option-"+l))})}function Wt(){return b0(ms)}function fs(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=Wt(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[r,"\uFF1A"]}),H(Tn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Pu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var h6=({date:e})=>{let{t}=Wt(),[n,a]=ye(!1);return Ze(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:H("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},b6=({minVersion:e})=>{let{t}=Wt();return H("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},E6=()=>{let{t:e}=Wt();return H("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},y6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=Wt();return H("p",{class:"text-sm",children:[a("failToSyncRules")," ",H("a",{onClick:t,children:a("retry")}),H("br",{}),a("failedReason"),"\uFF1A",e,H("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function hs(e){let{isShowError:t,request:n}=e,[a,u]=ye(null),{t:r}=Wt(),[o,i]=ye(null),[l,s]=ye(null),[c,d]=ye(""),[g,m]=ye(!1),[f,C]=ye(!1),[T,p]=ye(!1),[w,F]=ye(null),[S,A]=ye(null),y=Rn(),k=async()=>{d("");let L=o;if(o===null)try{let x=await n({url:ou});x?(i(x),L=x,m(!0)):(d(r("unknownError")),s(null))}catch(x){s(null),d(x.message);return}L!==null?(e.setStorageBuildinConfig(L),s(!1),u(L.buildinConfigUpdatedAt)):(d(r("canNotFetchRemoteRule")),s(null))};return Ze(()=>{un().then(L=>{let x=L.buildinConfigUpdatedAt;F(L);let P=new Date(x);if(u(x),y==="0.0.0"){p(!0);return}n({url:ou}).then(O=>{let v=O,R=v.minVersion,J=y;i(v);let N=v.latestVersion;if(N&&(Pu(J,N)?A(!0):A(!1)),Pu(J,R)){let pe=v.buildinConfigUpdatedAt;new Date(pe)>P?(s(!0),k()):s(!1)}else C(!0),s(null)}).catch(O=>{s(null),d(O.message)})})},[]),Ze(()=>{un().then(L=>{F(L)})},[a]),w?H("div",{class:"text-sm mt-2",style:{maxWidth:218},children:T?H(E6,{}):c?t===!1?null:H(y6,{handleSyncing:k,message:c,date:a||""}):f?t===!1?null:H(b6,{minVersion:o.minVersion}):l===null||l===!0?null:g?H(h6,{date:a}):null}):null}function Fu(e){let t=Rn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:l,pageStatus:s,openEbookBuilderPage:c,openEbookViewerPage:d,config:g,openAboutPage:m,onTranslateTheWholePage:f,onToggleEnabled:C,openOptionsPage:T,ontranslateToThePageEndImmediately:p,onSetPageLanguage:w,onToggleTranslate:F,onTranslateLocalPdfFile:S,onTranslatePdf:A,onRestorePage:y,ctx:k,currentUrl:L,currentLang:x,onClose:P,onTranslatePage:O,onSetLocalConfig:v,onMouseTriggerChanged:R,errorMsg:J,disabledButton:N,noPermissionPDF:pe}=e,fe=a,[_e,z]=ye(""),[Te,Z]=ye(J),{t:b,lang:_}=Wt(),K=60;_.startsWith("zh")||(K=65);let ae=null,Y=null,De=null,te=null,Ce=null,ee=null,oe=null,ge=null,X=null,q=null,ne=null,Pe=null,Le=!0;if(g){xt()&&g&&(Le=g.generalRule.showSponsorOnSafari);let{translationService:B,translationServices:Q,translationUrlPattern:ke}=g;fn[B]&&(ge=di(B,k)),Q&&Q[B]?Pe=Q[B]||{}:Pe={};try{X=new URL(L||"")}catch{}if(L&&Lo(L)){q=lg(X.hostname),ne=cg(L);let{matches:be,excludeMatches:xe}=ke;Y=be.includes(q),ae=be.includes(X.hostname),te=xe.includes(q),De=xe.includes(X.hostname),ee=be.includes(ne),oe=xe.includes(ne)}}if(g&&x&&x!=="auto"){let{translationLanguagePattern:B}=g,{matches:Q}=B;Q.includes(x)?Ce=!0:Ce=!1}let ue=B=>{B.preventDefault(),T()},Ue=B=>{fe(Q=>(Q.alpha?z("Success disable alpha!"):z("Success enable alpha!"),{...Q,alpha:!Q.alpha}))},tt=B=>{fe(Q=>({...Q,translationMode:B})),o(B)},Be=()=>{fe(B=>({...B,translationArea:"body"})),f()},Re=()=>{fe(B=>({...B,translationArea:"main"})),n()},Oe=(B,Q,ke,be)=>{if(B==="default"){fe(it=>{let we={...it.translationUrlPattern};return{...it,translationUrlPattern:{...it.translationUrlPattern,matches:Dn([X?.hostname,q,L],we.matches),excludeMatches:Dn([X?.hostname,q,L],we.excludeMatches)}}});return}let xe=B,je=xe==="matches"?"excludeMatches":"matches";X&&fe(it=>{let we={...it.translationUrlPattern};return we[xe]=Q0(Q,we[xe]),be.length>0&&(we[xe]=Dn(be,we[xe])),we[je]=Dn(ke,we[je]),{...it,translationUrlPattern:{...it.translationUrlPattern,...we}}}),xe==="matches"&&s==="Original"?setTimeout(()=>{O(),P()},100):xe==="excludeMatches"&&s==="Translated"&&setTimeout(()=>{y(),P()},100)},kt=B=>{if(!B){fe(be=>{let xe={...be.translationLanguagePattern};return{...be,translationLanguagePattern:{...be.translationLanguagePattern,matches:Dn(x,xe.matches),excludeMatches:Dn(x,xe.excludeMatches)}}});return}let Q=B,ke=Q==="matches"?"excludeMatches":"matches";x&&fe(be=>{let xe={...be.translationLanguagePattern};return xe[Q]=Q0(x,xe[Q]),xe[ke]=Dn(x,xe[ke]),{...be,translationLanguagePattern:{...be.translationLanguagePattern,...xe}}}),Q==="matches"&&s==="Original"&&setTimeout(()=>{O(),P()},100)},Cn=X?.pathname.toLowerCase().endsWith(".pdf"),He=b("translate");s==="Translated"||s==="Error"?He=b("show-original"):s==="Original"?Cn?ha()&&X.protocol==="file:"||pe?He=b("translate-firefox-local-pdf"):ie()?He=b("noSupportTranslate-pdf"):He=b("translate-pdf"):He=b("translate"):He=b(s);let en=b("translateToThePageEndImmediately");(s==="Original"||s==="Translated")&&(g.shortcuts.toggleTranslatePage&&(s4()&&k.rule.fingerCountToToggleTranslagePageWhenTouching>=2?He+=` (${b(`fingers.${k.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:He+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(en+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let qt=[];k&&(qt=A3(k));let nt=B=>{B.preventDefault(),P()},Pt=Ld(k.config.translationService,k.config.targetLanguage);return H("div",{class:"p-3",children:[H("div",{class:"text-sm",children:[H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),H(Tn,{items:Nt.map(B=>({label:Ao(B,g.interfaceLanguage),value:B,selected:B===k.sourceLanguage,onSelected:Q=>{w(Q.value)}}))})]}),g&&g.targetLanguage&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),H(Tn,{items:Pt.filter(B=>B!=="auto").map(B=>({label:Ao(B,g.interfaceLanguage),value:B,selected:B===g.targetLanguage,onSelected:Q=>{fe(ke=>({...ke,targetLanguage:Q.value}))}}))})]}),ge&&qt.length>0&&H(tn,{children:[H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),H(Tn,{items:qt.map(B=>({label:`${b("translationServices."+B.id)}${B.ok?"":" "+b("needAction")}`,value:B.id,selected:B.selected,onSelected:Q=>{let ke=qt.find(be=>be.id===Q.value);ke.ok?(fe(be=>({...be,translationService:ke.id})),ke.props.length===0?setTimeout(()=>{O()},1):setTimeout(()=>{y()},1)):(fe(be=>({...be,translationService:ke.id})),setTimeout(()=>{T()},100))}}))})]}),Pe&&ge.props.length>0&&ge.props.map((B,Q)=>H("div",{class:"pl-4 text-sm",children:H(fs,{field:B,value:Pe[B.name],onChange:ke=>{fe(be=>{let xe=be.translationServices||{},je=xe[ge.id]||{};return setTimeout(()=>{y()},1),{...be,translationServices:{...xe,[ge.id]:{...je,[B.name]:ke}}}})}},"field-"+Q)},"service"+Q))]}),X&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:b("forThisSite")}),H(Tn,{items:[{label:b("default"),value:"default",selected:ae===!1&&De===!1&&!Y&&!te&&!ee&&!oe,onSelected:()=>{Oe("default",X.hostname,[],[]);let B=X.hostname,Q=k.localConfig.tempTranslationUrlMatches||[],ke=Q.filter(xe=>xe.match!==B),be=!1;ke.length!==Q.length&&(be=!0),be&&v({...k.localConfig,tempTranslationUrlMatches:[...ke]})}},ne&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:ee,onSelected:()=>{Oe("matches",ne,[ne],[])}},{label:b("alwaysTranslateSomeSite",{hostname:X.hostname}),value:"matches",selected:ae,onSelected:B=>{Oe(B.value,X.hostname,[X.hostname,q,ne],[q])}},q&&{label:b("alwaysTranslateSomeSite",{hostname:q}),value:"matchesWild",selected:Y,onSelected:()=>{Oe("matches",q,[ne,X.hostname,q],[X.hostname])}},ne&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:oe,onSelected:()=>{Oe("excludeMatches",ne,[ne],[])}},{label:b("neverTranslateSomeSite",{hostname:X.hostname}),value:"excludeMatches",selected:De,onSelected:B=>{Oe(B.value,X.hostname,[X.hostname,q,ne],[q])}},q&&{label:b("neverTranslateSomeSite",{hostname:q}),value:"excludeMatchesWild",selected:te,onSelected:()=>{Oe("excludeMatches",q,[X.hostname,ne,q],[X.hostname])}}].filter(Boolean)})]}),R&&au()&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),H(Tn,{items:ir.filter(B=>!(ir.includes(g.generalRule.mouseHoverHoldKey)&&B==="OtherCustom")).map(B=>{let Q=b("mouseHoldKey",{key:B}),ke=ir.includes(g.generalRule.mouseHoverHoldKey),be=B===g.generalRule.mouseHoverHoldKey;return B==="Auto"?Q=b("mouseHoldKeyAuto"):B==="Off"?Q=b("mouseHoldKeyOff"):B==="OtherCustom"?Q=ke?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):B==="Other"&&(Q=b("mouseHoldKeyOther")),ke||B==="OtherCustom"&&(be=!0),{label:Q,value:B,selected:be,onSelected:xe=>{xe.value==="Other"?T("#interface"):R(xe.value)}}})})]})]}),H("div",{class:"",children:H("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Cn?A&&A():F()},"aria-busy":s==="Translating",disabled:N||s==="Translating",children:He})}),H("div",{class:"text-sm",children:_e}),H("div",{class:"text-sm",children:Te}),H("div",{class:"flex justify-between flex-wrap",children:[x&&x!=="auto"?H("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[H("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Ce,onChange:B=>{let Q=B.target.checked;kt(Q?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:Ao(x,g.interfaceLanguage,!1,!0)})]}):H("span",{}),H("div",{class:"flex flex-end flex-grow",children:H(ps,{label:b("more"),showArrow:!0,maxWidth:K,onSelected:B=>{B.value==="changeToOnlyTranslationMode"?tt("translation"):B.value==="changeToDualTranslationMode"?tt("dual"):B.value==="translateTheWholePage"?f():B.value==="translateToThePageEndImmediately"?p():B.value==="translateTheMainPage"?n():B.value==="showTranslationOnly"||(B.value==="translateLocalPdfFile"?S&&S():B.value==="translateLocalHtmlFile"?r&&r():B.value==="translateLocalSubtitleFile"?i&&i():B.value==="donate"?(globalThis.open(g.donateUrl),P()):B.value==="feedback"?(globalThis.open(g.feedbackUrl),P()):B.value==="options"?(T(),P()):B.value==="changeToTranslateTheWholePage"?Be():B.value==="changeToTranslateTheMainPage"?Re():B.value==="about"?m():B.value==="toggleEnabled"?C():B.value==="openEbookViewer"?d():B.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+en,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!ie()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!ie()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(Le?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),H("footer",{children:[H(hs,{isShowError:!1,request:u,setStorageBuildinConfig:l}),H("div",{class:"mt-3 text-sm flex justify-between",children:[H("a",{href:"#",class:"secondary",onClick:ue,children:b("options")}),ie()&&H("a",{href:"#",class:"secondary",onClick:nt,children:b("close")}),H("span",{class:"immersive-translate-no-select muted",onClick:sg(7)(Ue),children:["V",t,g.enabled?null:H("a",{href:"#",onClick:C,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var bs={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return j.storage[n].get(a)},set:(e,t,n)=>j.storage[n].set({[e]:t})};function Po(e,t,n){let[a]=ye(()=>typeof t=="function"?t():t),[u]=ye(n),[r,o]=ye(a),[i,l]=ye(!1),[s,c]=ye("");Ze(()=>{bs.get(e,a,u).then(g=>{g[e]&&o(g[e]),l(!0),c("")}).catch(g=>{l(!1),c(g)})},[e,a,u]);let d=qn(g=>{let m=typeof g=="function"?g(r):g;D.debug("new settings",m),bs.set(e,m,u).then(()=>{o(m),l(!0),c("")}).catch(f=>{o(m),l(!1),c(f)})},[u,e,r]);return[r,d,i,s]}function Es(e,t,n){let a=[];return function(){let[r,o,i,l]=Po(e,t,n),s=qn(c=>{for(let d of a)d(c)},[]);return Ze(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,s,i,l]}}function dg(e,t){return Es(e,t,"sync")}var T6="userConfig",x6={},C6=dg(T6,x6);function Fo(e){let[t,n,a,u]=C6(),r=qn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function gg(e){try{let t=new Date;D.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await j.storage.local.set({[S4]:t.toISOString()}),await w6(),ie()||await mg()}catch(t){D.error("run cron task failed",t)}}async function w6(){try{let e=await Zt(),t=await G({url:ou}),n=e.buildinConfigUpdatedAt,a=new Date(n),u=t.buildinConfigUpdatedAt,r=new Date(u),o=t.minVersion,i=j.runtime.getManifest().version;Pu(i,o)?r>a?(await j.storage.local.set({buildinConfig:t}),D.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):D.debug(`no need to sync rules, latest: ${a}`):D.info(`local version is too old, please update to ${o} or later`)}catch(e){D.error("sync rules error: ",e)}}function Ts(e){let{onClose:t}=e,[n,a]=ye("Original"),[u,r,o,i]=Fo(()=>{setTimeout(()=>{F("updateGlobalContext",!1)()},250)}),[l,s]=ye(null),[c,d]=ye(globalThis.location.href),[g,m]=ye("auto"),[f,C]=ye(null),T=N=>{a(N.detail)},p=N=>{m(N);let pe=Vu(c,N,l.sourceLanguageUrlPattern);r(fe=>({...fe,sourceLanguageUrlPattern:pe})),zt(N)},w=()=>{d(globalThis.location.href)};Ze(()=>(document.addEventListener(tr,T,!1),Zt().then(N=>{s(N);let pe=rn();m(pe);let fe=Ne();a(fe),gg(N.interval)}),document.addEventListener("urlChange",w),()=>{document.removeEventListener("pageTranslatedStatus",T),document.removeEventListener("urlChange",w)}),[]),Ze(()=>{Zt().then(N=>{s(N)})},[u]),Ze(()=>{c&&l&&bn({url:c,config:l}).then(N=>{C(N)})},[c,l]);let F=(N,pe,fe={})=>()=>{$a({method:N,data:fe||{}}),pe&&t()},S=()=>{t()},A=()=>{r(N=>({...N,enabled:!N.enabled})),setTimeout(()=>{S()},50)},y=()=>{ys(),setTimeout(()=>{S()},50)},k=()=>{ys(),setTimeout(()=>{S()},50)},L=(N="")=>{_o(!0,N),setTimeout(()=>{t()},50)},x=()=>{Bo(),setTimeout(()=>{t()},50)},P=()=>{Ro(),setTimeout(()=>{t()},50)},O=()=>{fg(),setTimeout(()=>{t()},50)},v=()=>{Oo(),setTimeout(()=>{t()},50)},R=()=>{hg(),setTimeout(()=>{t()},50)},J=N=>{r(pe=>({...pe,generalRule:{...pe.generalRule,mouseHoverHoldKey:N}}))};return!l||!f?null:H(Fu,{openEbookViewerPage:P,openEbookBuilderPage:v,onSwitchTranslationMode:N=>{F("switchTranslationMode",!0,{mode:N})()},onTranslateLocalHtmlFile:O,onTranslateLocalSubtitleFile:R,request:G,onClose:S,onToggleEnabled:A,onTranslateTheWholePage:F("translateTheWholePage",!0),openOptionsPage:L,onToggleTranslate:F("toggleTranslatePage",!0),onTranslateTheMainPage:F("translateTheMainPage",!0),ontranslateToThePageEndImmediately:F("translateToThePageEndImmediately",!0),onTranslatePage:F("translatePage",!0),onRestorePage:F("restorePage",!1),onTranslatePdf:y,openAboutPage:x,onTranslateLocalPdfFile:k,onSetPageLanguage:p,onUserConfigChange:r,config:l,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:Mo,onSetBuildinConfig:pg,onMouseTriggerChanged:J})}function v6(e,t){for(let n of t){if(ie()&&!ha()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var xs={position:"right",right:0,top:335},wt={...xs},jo=!1,ua=null,cn=null,zo=null,Cs=null,Va=null,ws=null,bg=6,No,Io,yg=null,Tg=null;async function xg(){let e=Ve();ws=await vg(),wt=ws.pagePopupConfig||wt;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Cs=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` +`);v6(n,[a]);let u=document.createElement("div");u.innerHTML=ve.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),ua=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");cn=o,zo=n.querySelector("#mount"),ua.setAttribute("style",vs(wt)),Ds(),o.addEventListener("mousedown",Cg),o.addEventListener("touchstart",S6),globalThis.addEventListener("resize",l=>{ua.setAttribute("style",vs(wt))})}function k6(){pa(null,zo),zo.style.display="none",cn.style.display="block",Va=setTimeout(()=>{Ds(!0)},2e3)}function Eg(e){let t=e.querySelector("#mount"),n=()=>{k6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await Zt();pa(H(So,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:ko,children:H("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:H("div",{class:"immersive-translate-popup-wrapper",style:A6(),children:H(Ts,{onClose:n})})})}),t)})().then(()=>{cn.style.display="none",zo.style.display="block"})}function A6(){let e=ks(),t=e.height,{position:n,top:a,left:u}=wt,r={position:"fixed"},o=300,i=300,l=100;return jc()&&(n=xs.position,a=xs.top),n==="right"||n==="left"?(r.top=a-l,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-l,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function ks(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function Cg(e){Tg=ua.getAttribute("style"),No=e.pageX,Io=e.pageY,Va&&clearTimeout(Va),jo=!1,cn.style.opacity="1",cn.style.transform="none",yg=cn.getAttribute("style"),globalThis.addEventListener("mousemove",As),globalThis.addEventListener("mouseup",Ss),globalThis.addEventListener("touchmove",wg),globalThis.addEventListener("touchend",Uo),globalThis.addEventListener("touchcancel",Uo)}function S6(e){e.preventDefault&&e.preventDefault(),Cg(e.changedTouches[0])}function wg(e){As(e.changedTouches[0])}function Uo(e){e.preventDefault&&e.preventDefault(),Ss(e.changedTouches[0])}function As(e){e.preventDefault&&e.preventDefault(),jo=!0,ua.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Ss(e){e.preventDefault&&e.preventDefault(),L6(),Va&&clearTimeout(Va),No=No||0,Io=Io||0;let t=Math.abs(e.pageX-No),n=Math.abs(e.pageY-Io);t{Ds(!0)},2e3)}function Ds(e=!1){cn.style.opacity="0.4";let t="";wt.position==="left"?t="translateX(-40%)":wt.position==="right"?t="translateX(40%)":wt.position==="top"?t="translateY(-40%)":wt.position==="bottom"&&(t="translateY(40%)"),cn.style.transform=t,e&&(cn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function L6(){globalThis.removeEventListener("mousemove",As),globalThis.removeEventListener("mouseup",Ss),globalThis.removeEventListener("touchmove",wg),globalThis.removeEventListener("touchend",Uo),globalThis.removeEventListener("touchcancel",Uo)}function vs(e){let t=P6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function P6(e){let{position:t,...n}=e,a=ks(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var kg=!1;async function Ag(){kg||(kg=!0,xg().catch(e=>{D.error("init popup error",e)}))}var Sg=!1,Pg=[()=>{ze.unbind()}],Ps=[...Pg],F6=gt(async()=>{await _o()},50),M6=gt(async()=>{await Bo()},50),_6=gt(async()=>{await Oo()},50),B6=gt(async()=>{await Ro()},50),Fg=gt(e=>{$a({method:e})},50),R6=gt(()=>{Ho();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),O6=gt(()=>{$o();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),N6=gt(()=>{qo();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function I6(e,t){let n=e.document;if(Sg)return;if(Sg=!0,ie()||Rg(),n.addEventListener("securitypolicyviolation",V6),n.addEventListener("immersiveTranslateEbookLoaded",G6),n.addEventListener(E4,K6),n.addEventListener("click",u=>{H6(u,t)}),ie()&&(globalThis.top!=globalThis.self?e.addEventListener("message",z6,!1):n.addEventListener(kn,j6)),globalThis.top===globalThis.self){let u=on.rootIframe(D0);u.handleAsk("getRateLimitDelay",U3),u.handleAsk("throttleRequest",ed)}}function Mg(e,t){J6(),I6(t,e);let n=t.document,a=U6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Ps.push(()=>{n.removeEventListener("touchstart",a)}),ie()&&globalThis.top===globalThis.self&&(cs(e.config),Y6(e.config)),xt()&&cs(e.config)}function j6(e){Ag()}function z6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===er&&Ka(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function U6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?R6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?N6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&O6()}function H6(e,t){let n=e.target;if(!n||!n.getAttribute){Ls(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&ot(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${W}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Wo(),Ls(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${W}-tooltip-text`);Lg(q6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Lg(W6.bind(null,t)));Ls(n)}async function Dg(e=!1){let t=document.querySelector(`.${W}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await Ng();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Og(n)}function Lg(e){let t=`${W}-modal`,n=`${W}-modal-title`,a=`${W}-modal-body`,u=`${W}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),l=r.querySelector(`.${a}`);e(r,o,l,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=W+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=W+"-close",o.appendChild(i);let l=document.createElement("div");l.className=n+" notranslate",o.appendChild(l);let s=document.createElement("div");s.className=a+" notranslate",o.appendChild(s);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(d){d.target==r&&(r.style.display="none")},e(r,l,s,c)}setTimeout(()=>{$6()},100)}function W6(e,t,n,a,u){let r=_g.bind(null,e);n.innerHTML=`
${I4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.querySelector(`div[data-${W}-cancel-desc]`),i=document.createElement("p");i.innerHTML=o?ve.sanitize(o.textContent||""):ve.sanitize(r("searchEnhancementNotes")),i.style.cssText="margin-bottom:12px",a.appendChild(i);let l=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let m=0;m${r("option")}`})),a.appendChild(s);let c=a.querySelector(`.${W}-open-enhancement`);c&&(c.onclick=function(){Ig(!0)});let d=document.createElement("button");d.innerText=r("closeModal"),d.className=`${W}-btn ${W}-cancel-btn`;let g=document.createElement("button");g.className=`${W}-btn`,g.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(d),u.appendChild(g),d.onclick=function(){t.style.display="none"},g.onclick=function(){let m=a.getElementsByTagName("input"),f="";for(let C=0;C{Bg()},10)}function V6(e){me.HAS_CSP_ERROR="1"}function J6(){Ps.forEach(e=>{e()}),Ps=Pg}function Y6(e){if(ie()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Ur.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=qa(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:w0,title:qa("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:v0,title:qa("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:x0,title:qa("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:C0,title:qa("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===x0?F6():r.id===C0?M6():r.id===v0?_6():r.id===w0?B6():Fg(r.id)},r.key)}}function X6(e){Ka(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{D.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function zg(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Ie(i.left,r)&&Ie(i.width,u.width));return{prevP:u,curP:o}}function Fs(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function Ug(e){return e?e==e[0].repeat(e.length):!0}function Ie(e,t,n=5){return Math.abs(e-t)<=n}var Ms=[",","\\.","\uFF0C","\u3002"];function Hg(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Ie(a.left,u.left,7)&&Ie(a.nextTop,u.top,10)&&Ko(a,u)}function Wg({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Gg(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Vg({prevLineP:e,prevP:t},n){return Ie(e.left,n.left,1)&&Ie(e.right,t.right,1)&&t.mergedTimes>=1}function _s(e,t){let{prevLineP:n}=e;return Gg(e,t)&&(Ie(n.bottom,t.bottom)||Ie(n.nextTop,t.top)&&Ie(n.left,t.left))}function Jg(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return Gg(e,t)&&n.width0&&a/u<.1&&n.left!Fs(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Ye({text:n.map(r=>r.str).join(` +`).slice(0,1e3)});Mr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await sn({sentences:u},e,(r,o,i)=>{let l=i.id,s=n[l];r?(s.translatedStr=r.message,s.translateStatus="error"):o&&(s.translatedStr=o.text,s.translateStatus="success"),Q6(s)})}var Rs={};async function Z6(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Rs).filter(n=>!!n);await Go(em,t)}function Q6(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Rs[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",Z6)):e.translateStatus=="success"&&(Rs[e.id]=void 0,t.innerHTML=ve.sanitize(e.translatedStr)))}function tm(e,t){let n=[],a=t1(e,t);return n1(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){Qg(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{Qg(e,n,o,!1)}),n.push("
")}}),`
${n.join("")} -
`}function Jg(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(u*o)+1).toFixed(2)}%`:"auto",d=`${(l.left*100/(u*o)).toFixed(2)}%`,g=`${(l.top*100/(r*o)).toFixed(2)}%`,m=n4()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,v=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${d};top: ${g};width:${c};max-width:${s};`,!m&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let T=Ps(l.str)?"":"translate-pending",p=l.str;l.translateStatus=="success"&&(p=l.translatedStr,T=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function V6(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let l=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,d=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${d};height:${s-i}px;overflow:auto;`}function J6(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,_s(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function Y6(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],Ig(e,a)){r.push(a);return}n.push([a])}),n}var Zg="immersive-translate",Ja,xn=[];async function tm(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(tt("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await Qg(1);await Go(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{xn=[],Ja=void 0,t1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await Qg(a);await Go(e,u||[])})}}function X6(e){if(Ja)return{...Ja,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ja={...i},i}async function Qg(e){let t=X6(e);if(!t)return;xn[e]||(xn[e]=await Z6(t,e,xn[e-1]||[]));let n=xn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${Zg}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${Zg}-page`);let r=Xg(t,n);return u.innerHTML=Le.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function Z6(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,s]=a._pageInfo.view;Ja.pageWidth=i,Ja.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=e1(e,u);e.origLineParagraphs=l;let{prevP:c,curP:d}=Og(e,l);return d&&nm(c,void 0,d),Q6(e,l)}function Q6(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,Ug(e,o)){if(Hg(e,o)){r(l,o);return}if(qg(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},r(l,o);return}if($g(e,o)){r(l,o);return}if(Ms(e,o)){r(l,o);return}if(Kg(e,o)){r(l,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],s=r.transform[5],l=r.width*n,c=t.styles[r.fontName].fontFamily,d=r.transform[3],g=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+g)*d;isNaN(f)&&(f=d);let v=i*n,T=v+l,p=(a-s-f)*n,C=p+d*n,F=C+d*n*.2,S=T+d*n*.3,A={str:o,left:v,nextLeft:S,top:p,nextTop:F,id:`pageNum-${_t()}`,width:l,originFontName:r.fontName,fontName:c,fontSize:d,right:T,bottom:C,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(A);else{let y=u[u.length-1];if(e.prevLineP=y,Gg(e,A)){zg(e,A)?y.str+=o:y.str+=" "+o,y.right=T,y.fontName=c,y.width=Math.max(y.width+l,T-y.left),y.nextLeft=S;return}if(Vg(e,A)){y.width=Math.max(y.width+l,T-y.left),y.right=T,y.nextLeft=S,y.attachList.push(A);return}u.push(A)}}),u}function nm(e,t,n){if(!Ko(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function t1(e){setTimeout(()=>{let t="";for(let n=1;n<=xn.length;n++){let a=!1;if(xn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Ye({text:t}).then(n=>{tt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ra={};async function Rs(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await sn(e,n,1e3);return zt(a),a}async function am(e){Ct("Translating");let t=un(),n=Da(),a=[...document.querySelectorAll(".source-text")];if(mo(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Je(r,"id",o+""),i&&(za(i,o)?.remove(),i.appendChild(Su(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=za(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),r?(c.innerHTML=Le.sanitize(`${r.message}`),ra[s]={ok:!1,sentence:i}):o&&(c.innerHTML=Le.sanitize(o.text),ra[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Ct("Translated")}}async function um(e){Ct("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ra),n=[],a=[];for(let u of t){let r=ra[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let s=i.parentElement;i.remove(),s&&(delete ra[u],s.appendChild(Su(e,u)),a.push(r.sentence))}}}try{await on({sentences:a},e,(u,r,o)=>{let i=o.id,s=za(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),u?(l.innerHTML=Le.sanitize(`${u.message}`),ra[i]={ok:!1,sentence:o}):r&&(l.innerHTML=Le.sanitize(r.text),ra[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Ct("Translated")}}function Os(){Ct("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Ns={};async function rm(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await sn(e,n,1e3);return zt(a),a}async function om(e){Ct("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Ns),n=[];for(let a of t){let u=Ns[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${nr}='${a}']`);o&&o.remove(),n.push(u)}}try{await yo(n,e,e.config.translationMode)}catch{}finally{Ct("Translated")}}function im(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+Ot);for(let u of a)u.remove()}Ct("Original")}async function sm(e){Ct("Translating");let t=_t(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let s=i.contentDocument;if(!s)continue;Ua(s,e);let l=s.body;if(!l)continue;let c=Ht(e);c.isModifyImage=!1,Un({id:t,container:l,filterRule:c,onParagraph:d=>{a.push(d)}})}let r=go(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=ho(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await as(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(u.push(l),Ns[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await yo(u,e,e.config.translationMode)}catch{}finally{Ct("Translated")}}var n1=new AbortController,{signal:a1}=n1,Hs=0,Ws=0,Is=!1,js=0,Mu=!1,oa,lm=0,ia=[];function Vo(e,t){u1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=gt(d=>{if(Is==!1&&Math.abs(d.clientX-Hs)+Math.abs(d.clientY-Ws)>3&&(js<2?js+=1:Is=!0),Hs=d.clientX,Ws=d.clientY,o||Mu&&!oa){let g=pm(a.rule,t);if(g){if(qs(g))return;dm(a,g)}}},o?700:300),s=d=>{let g=d.target;qs(g)||dm(a)},l=d=>{let g=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=ze.getPressedKeyCodes();if(m.length>1&&ze[g]&&(lm=Date.now(),Mu=!1),m.length===1&&ze[g]){let f=Date.now();Mu=!0,oa&&clearTimeout(oa),oa=setTimeout(()=>{let v=lm-f;v>0&&v<=150?Mu=!1:s(d),oa=void 0},150)}};if(ia.push(()=>{oa&&clearTimeout(oa)}),r)return;zs("mousemove",i,t),ia.push(()=>{t.removeEventListener("mousemove",i)});function c(){Is=!1,js=0,i.cancel()}if(o)zs("blur",c,t),ia.push(()=>{t.removeEventListener("blur",c)});else{let d=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];zs("keyup",cm,t),ia.push(()=>{t.removeEventListener("keyup",cm)}),g.includes(d)?ze("*","mouseHover",l):ze(u.generalRule.mouseHoverHoldKey,"mouseHover",s),ze.setScope("mouseHover"),ia.push(()=>{ze.deleteScope("mouseHover")})}}function u1(){ia.forEach(e=>e()),ia=[]}function cm(e){Mu=!1}function zs(e,t,n=window){return n.addEventListener(e,t,{signal:a1})}function dm(e,t,n=window){if(t=t||pm(e.rule,n),!t){P.debug("can not find selection part!");return}if(qs(t)){P.debug("exclude dom");return}Zd(e,t);let a=wo();a?.currentUrl!==window.location.href&&(Hn(),is(e)),a&&(a.setupMouseHoverListener=Vo);let u=Ht(e);u.excludeSelectors=[],u.selectors=[];let r=!1;Un({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{Lu(a,o,!0).then(i=>{if(i&&!r){r=!0;let s=Date.now();et(h4,s),tt("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function pm(e,t){return r1(Hs,Ws,e,t)}function r1(e,t,n,a){let u=Gc(e,t,n,a);if(u==null)return;let r=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=Vc(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:mm(l,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(l){P.debug("get mouse over word fail",l)}let s=u.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Jo&&self.removeEventListener("keydown",Jo),Jo=i,self.addEventListener("keydown",Jo);function i(l){if(Ya)return;let c=l,d=c.target||c.srcElement,g=d?.tagName;(d?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(x1(l,u.triggerKey,u.codePrefixAlias)?s(l):r=0)}function s(l){Date.now()-o=u.triggerTimes&&(l1(e,u),r=0)}}function o1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let s=r+i;return u.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function fm(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Xa;function i1(e){let t=e.parentElement;if(!t)return;Xa=document.createElement("div"),Xa.className=q+"-input",Xa.innerHTML=`
`,t.appendChild(Xa);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function s1(){Xa&&Xa.remove()}async function l1(e,t){if(!Ya)try{let d=function(){o=e.config.inputTargetLanguage;let m=r.split(" ")[0];m&&m[0]&&(m=m[0].toLowerCase()+m.slice(1)),m.trim()&&t.flatAlias.includes(m)?(o=fm(m,t.codeAlias),u=r.slice(m.length+1)):u=r},g=function(){o="";let m=o1(t),f=r.split(m);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let T=r.lastIndexOf(u),p=r.slice(0,T).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let v=r.slice(a.length+1,r.indexOf(u)).trim();if(o=fm(v,t.codeAlias),!o){P.warn("not found alias",v);return}},n=document.activeElement;Ya=!0,i1(n);let a="",u="",r=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?d():(g(),o||d()),T1(e);let i=c1(u,t),s=await sn(e,i);P.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;et(b4,Date.now());let c=await ja(l,e);y1(n,a+c.text),Ya=!1}catch(n){throw Ya=!1,n}finally{Ya=!1,s1()}}function c1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function d1(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function hm(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function sa(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function g1(e,t,n){await sa(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await sa(10)}async function m1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await sa(10))}async function p1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await sa(20),(t.value||t.value==="")&&(t.value=e.text)}async function f1(e,t){Em(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await sa(20))}var h1=[g1.bind(null,["plain"])];function b1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function Em(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function E1(e){if(Em(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function y1(e,t){await E1(e),await sa(50);let n=d1(t,e);b1(e),P.debug("clearContnet",_u(e)),await sa(50);for(let a of[...h1,f1,p1,m1])if(await a(n,e),P.debug("setContent",a.name,hm(n,e),_u(e),n),hm(n,e))break}function T1(e){tt("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function x1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function Cm(e){if(nu().any||!e.rule.enableSearchEnhancement||!/https:\/\/www\.google\..+\/search/.test(e.url))return;let t=A1(e.url);if(!t)return;let n=await sn(e,t);if(tt("detect_search_action",[{name:"detect_search_action"}],{...e,sourceLanguage:n}),!["zh-CN","zh-TW"].includes(n))return;P.debug("use dual search");let a=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")a=!0;else if(!xm(document.body))return;let r=document.querySelector(e.rule.searchEnhancementSelector);if(!r){let o=document.querySelector("#rcnt");if(!o)return;let i=o.children;if(i&&i.length>1)r=i[1];else{let s=i[0];r=document.createElement("div"),r.id="rhs",r.style.maxWidth="372px",r.style.marginLeft="50px",o.insertBefore(r,s.nextSibling)}}if(a||xm(document.body)){P.debug("find story");let o=await S1(e,t,n);P.debug("enKeyword",o);let i=await w1(o);if(P.debug("news list",i),i&&i.length<=0)return;let s=await k1(i,t,o);if(!s)return;tt("show_search_enhancement",[{name:"show_search_enhancement"}],{...e,sourceLanguage:"search_enhancement"}),C1(e,s,n),r.insertBefore(s,r?.firstChild)}}async function C1(e,t,n){let a=t.querySelectorAll('[translate="true"]');return D1(e,[...a],n),t}async function w1(e){let n=(await G({url:v1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,u=new DOMParser().parseFromString(n,"text/xml"),r=[],o=u.querySelectorAll("item");for(let i=0;i\u82F1\u6587\u641C\u7D22 ${n} \u7684\u76F8\u5173\u65B0\u95FB:
-
${r}
`,{ADD_ATTR:["target"]});let i=a.querySelector(`.${q}-search-more`);return i&&(i.onclick=()=>{let s=a.querySelector(`.${q}-expand-items`);s.style.display=="none"?(s.style.display="block",i.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(ym(n))}),a}function Tm(e){return e.map((t,n)=>{let a=t.title||"",u=t.source||"",r=a.split("-");return r.length>1&&(u=r[r.length-1].trim(),r=r.slice(0,r.length-1)),a=r.join("-"),a=a.trim(),`
${u}
`}function Qg(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",l=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(s=>{if(!s.str)return;let c=s.mergedTimes>0?`${(s.width*100/(u*o)+1).toFixed(2)}%`:"auto",d=`${(s.left*100/(u*o)).toFixed(2)}%`,g=`${(s.top*100/(r*o)).toFixed(2)}%`,m=o4()&&s.fontSize<7?` transform: scale(${s.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(s.fontSize-1,24)}px)`,C=`${s.originFontName},${s.fontName},serif`;a&&(i=`position: absolute;left: ${d};top: ${g};width:${c};max-width:${l};`,!m&&s.mergedTimes>1&&(i+=`height:${(s.bottom-s.top)*1.05}px;overflow:auto;`));let T=Fs(s.str)?"":"translate-pending",p=s.str;s.translateStatus=="success"&&(p=s.translatedStr,T=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function e1(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,l=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let s=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,d=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${s};left:${c};top:${d};height:${l-i}px;overflow:auto;`}function t1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,Bs(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function n1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],Hg(e,a)){r.push(a);return}n.push([a])}),n}var nm="immersive-translate",Ja,xn=[];async function rm(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(ot("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await am(1);await Go(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{xn=[],Ja=void 0,i1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await am(a);await Go(e,u||[])})}}function a1(e){if(Ja)return{...Ja,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ja={...i},i}async function am(e){let t=a1(e);if(!t)return;xn[e]||(xn[e]=await u1(t,e,xn[e-1]||[]));let n=xn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${nm}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${nm}-page`);let r=tm(t,n);return u.innerHTML=ve.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function u1(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,l]=a._pageInfo.view;Ja.pageWidth=i,Ja.pageHeight=l,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:l});let s=o1(e,u);e.origLineParagraphs=s;let{prevP:c,curP:d}=zg(e,s);return d&&om(c,void 0,d),r1(e,s)}function r1(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let l=t[i-1],s=n[n.length-1];if(e.prevLineP=l,e.prevP=s,$g(e,o)){if(Kg(e,o)){r(s,o);return}if(Vg(e,o)){e.justify={left:l.left,right:l.right,width:l.width,top:l.top,str:l.str,fontSize:l.fontSize},r(s,o);return}if(Jg(e,o)){r(s,o);return}if(_s(e,o)){r(s,o);return}if(Yg(e,o)){r(s,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],l=r.transform[5],s=r.width*n,c=t.styles[r.fontName].fontFamily,d=r.transform[3]||r.height,g=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+g)*d;isNaN(f)&&(f=d);let C=i*n,T=C+s,p=(a-l-f)*n,w=p+d*n,F=w+d*n*.2,S=T+d*n*.3,A={str:o,left:C,nextLeft:S,top:p,nextTop:F,id:`pageNum-${_t()}`,width:s,originFontName:r.fontName,fontName:c,fontSize:d,right:T,bottom:w,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(A);else{let y=u[u.length-1];if(e.prevLineP=y,Xg(e,A)){qg(e,A)?y.str+=o:y.str+=" "+o,y.right=T,y.fontName=c,y.width=Math.max(y.width+s,T-y.left),y.nextLeft=S;return}if(Zg(e,A)){y.width=Math.max(y.width+s,T-y.left),y.right=T,y.nextLeft=S,y.attachList.push(A);return}u.push(A)}}),u}function om(e,t,n){if(!Ko(e,n)||e.width+1(o=l,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function i1(e){setTimeout(()=>{let t="";for(let n=1;n<=xn.length;n++){let a=!1;if(xn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Ye({text:t}).then(n=>{ot("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ra={};async function Os(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await Xt(e,n,1e3);return zt(a),a}async function im(e){Ct("Translating");let t=rn(),n=Da(),a=[...document.querySelectorAll(".source-text")];if(mo(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Je(r,"id",o+""),i&&(za(i,o)?.remove(),i.appendChild(Su(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await sn({sentences:u},e,(r,o,i)=>{let l=i.id,s=za(document.body,l);if(!s)return;let c=s.parentElement;c&&(s.remove(),r?(c.innerHTML=ve.sanitize(`${r.message}`),ra[l]={ok:!1,sentence:i}):o&&(c.innerHTML=ve.sanitize(o.text),ra[l]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Ct("Translated")}}async function sm(e){Ct("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ra),n=[],a=[];for(let u of t){let r=ra[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let l=i.parentElement;i.remove(),l&&(delete ra[u],l.appendChild(Su(e,u)),a.push(r.sentence))}}}try{await sn({sentences:a},e,(u,r,o)=>{let i=o.id,l=za(document.body,i);if(!l)return;let s=l.parentElement;s&&(l.remove(),u?(s.innerHTML=ve.sanitize(`${u.message}`),ra[i]={ok:!1,sentence:o}):r&&(s.innerHTML=ve.sanitize(r.text),ra[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Ct("Translated")}}function Ns(){Ct("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Is={};async function lm(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await Xt(e,n,1e3);return zt(a),a}async function cm(e){Ct("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Is),n=[];for(let a of t){let u=Is[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${nr}='${a}']`);o&&o.remove(),n.push(u)}}try{await yo(n,e,e.config.translationMode)}catch{}finally{Ct("Translated")}}function dm(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+Ot);for(let u of a)u.remove()}Ct("Original")}async function gm(e){Ct("Translating");let t=_t(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let l=i.contentDocument;if(!l)continue;Ua(l,e);let s=l.body;if(!s)continue;let c=Ht(e);c.isModifyImage=!1,Un({id:t,container:s,filterRule:c,onParagraph:d=>{a.push(d)}})}let r=go(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let l=ho(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!l)continue;i.variables=l?.variables||{},i.text=l?.text,i.id=(o++).toString();let s=await us(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});s&&(u.push(s),Is[s.id]=s)}a=[],document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await yo(u,e,e.config.translationMode)}catch{}finally{Ct("Translated")}}var s1=new AbortController,{signal:l1}=s1,Ws=0,qs=0,js=!1,zs=0,Mu=!1,oa,mm=0,ia=[];function Vo(e,t){c1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=gt(d=>{if(js==!1&&Math.abs(d.clientX-Ws)+Math.abs(d.clientY-qs)>3&&(zs<2?zs+=1:js=!0),Ws=d.clientX,qs=d.clientY,o||Mu&&!oa){let g=Em(a.rule,t);if(g){if($s(g))return;fm(a,g)}}},o?700:300),l=d=>{let g=d.target;$s(g)||fm(a)},s=d=>{let g=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=ze.getPressedKeyCodes();if(m.length>1&&ze[g]&&(mm=Date.now(),Mu=!1),m.length===1&&ze[g]){let f=Date.now();Mu=!0,oa&&clearTimeout(oa),oa=setTimeout(()=>{let C=mm-f;C>0&&C<=150?Mu=!1:l(d),oa=void 0},150)}};if(ia.push(()=>{oa&&clearTimeout(oa)}),r)return;Us("mousemove",i,t),ia.push(()=>{t.removeEventListener("mousemove",i)});function c(){js=!1,zs=0,i.cancel()}if(o)Us("blur",c,t),ia.push(()=>{t.removeEventListener("blur",c)});else{let d=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];Us("keyup",pm,t),ia.push(()=>{t.removeEventListener("keyup",pm)}),g.includes(d)?ze("*","mouseHover",s):ze(u.generalRule.mouseHoverHoldKey,"mouseHover",l),ze.setScope("mouseHover"),ia.push(()=>{ze.deleteScope("mouseHover")})}}function c1(){ia.forEach(e=>e()),ia=[]}function pm(e){Mu=!1}function Us(e,t,n=window){return n.addEventListener(e,t,{signal:l1})}function fm(e,t,n=window){if(t=t||Em(e.rule,n),!t){D.debug("can not find selection part!");return}if($s(t)){D.debug("exclude dom");return}ng(e,t);let a=wo();a?.currentUrl!==window.location.href&&(Hn(),ss(e)),a&&(a.setupMouseHoverListener=Vo);let u=Ht(e);u.excludeSelectors=[],u.selectors=[];let r=!1;Un({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{Lu(a,o,!0).then(i=>{if(i&&!r){r=!0;let l=Date.now();et(T4,l),ot("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function Em(e,t){return d1(Ws,qs,e,t)}function d1(e,t,n,a){let u=Xc(e,t,n,a);if(u==null)return;let r=()=>{let l=a.document.elementFromPoint(e,t);if(!l)return;let s=Zc(l,e,t);return s===l?l.nodeName==="BUTTON"?l:void 0:bm(s,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(s){D.debug("get mouse over word fail",s)}let l=u.getBoundingClientRect();if(!(l.left>e||l.rightt||l.bottomn[s]=[s,...n[s]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Jo&&self.removeEventListener("keydown",Jo),Jo=i,self.addEventListener("keydown",Jo);function i(s){if(Ya)return;let c=s,d=c.target||c.srcElement,g=d?.tagName;(d?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(S1(s,u.triggerKey,u.codePrefixAlias)?l(s):r=0)}function l(s){Date.now()-o=u.triggerTimes&&(f1(e,u),r=0)}}function g1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let l=r+i;return u.includes(i)||(l+=" "),l});a.push(...o)}return new RegExp(a.join("|"))}function ym(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Xa;function m1(e){let t=e.parentElement;if(!t)return;Xa=document.createElement("div"),Xa.className=W+"-input",Xa.innerHTML=`
`,t.appendChild(Xa);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function p1(){Xa&&Xa.remove()}async function f1(e,t){if(!Ya)try{let d=function(){o=e.config.inputTargetLanguage;let m=r.split(" ")[0];m&&m[0]&&(m=m[0].toLowerCase()+m.slice(1)),m.trim()&&t.flatAlias.includes(m)?(o=ym(m,t.codeAlias),u=r.slice(m.length+1)):u=r},g=function(){o="";let m=g1(t),f=r.split(m);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let T=r.lastIndexOf(u),p=r.slice(0,T).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let C=r.slice(a.length+1,r.indexOf(u)).trim();if(o=ym(C,t.codeAlias),!o){D.warn("not found alias",C);return}},n=document.activeElement;Ya=!0,m1(n);let a="",u="",r=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?d():(g(),o||d()),A1(e);let i=h1(u,t),l=await Xt(e,i);D.debug("translateContent",i,l);let s={text:i||"",id:0,from:l,to:o,url:"https://google.com",fromByClient:l};if(!s.text)return;et(x4,Date.now());let c=await ja(s,e);k1(n,a+c.text),Ya=!1}catch(n){throw Ya=!1,n}finally{Ya=!1,p1()}}function h1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function b1(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function Tm(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function sa(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function E1(e,t,n){await sa(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await sa(10)}async function y1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await sa(10))}async function T1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await sa(20),(t.value||t.value==="")&&(t.value=e.text)}async function x1(e,t){Cm(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await sa(20))}var C1=[E1.bind(null,["plain"])];function w1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function Cm(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function v1(e){if(Cm(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function k1(e,t){await v1(e),await sa(50);let n=b1(t,e);w1(e),D.debug("clearContnet",_u(e)),await sa(50);for(let a of[...C1,x1,T1,y1])if(await a(n,e),D.debug("setContent",a.name,Tm(n,e),_u(e),n),Tm(n,e))break}function A1(e){ot("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function S1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function km(e,t,n){return(await ja({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}function D1(e,t,n,a){let u=[],r="en";for(let o of n)u.push({text:o.textContent||"",id:u.length,from:r,to:a,url:"https://google.com",fromByClient:r});return new Promise((o,i)=>{sn({sentences:u},{...e,translationService:"google"},(l,s,c)=>{if(l)return o([]);let d=s?.id||0,g=n[d];g&&g.className==W+"-search-title-wrapper"&&(g.innerHTML+=ve.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}function Yo(e,t,n){t&&ot(t.key,[{name:t.key}],{...e,sourceLanguage:t.sourceLanguage||n})}function Ks(e,t,n,a){let u=n.querySelectorAll('[translate="true"]');return D1(e,t,[...u],a),n}async function Gs(e,t){let a=(await G({url:L1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,r=new DOMParser().parseFromString(a,"text/xml"),o=[],i=r.querySelectorAll("item");for(let l=0;l${e.cancelDescription}
`:""} +

\u82F1\u6587\u641C\u7D22 + ${n} \u7684\u76F8\u5173\u65B0\u95FB:
+

+
${o}
+ + `.replaceAll(` +`,""),{ADD_ATTR:["target"]});let s=u.querySelector(`.${W}-search-more`);return s&&(s.onclick=()=>{let c=u.querySelector(`.${W}-expand-items`);c.style.display=="none"?(c.style.display="block",s.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(wm(n))}),u}function vm(e,t){let n=e.style;return t.map((a,u)=>{let r=a.title||"",o=a.source||"",i=r.split("-");return i.length>1&&(o=i[i.length-1].trim(),i=i.slice(0,i.length-1)),r=i.join("-"),r=r.trim(),`
${o}
+
+ ${a}
${_d(t.pubDate||"")}
+ >${r} +
+
${Nd(a.pubDate||"")}
`}).join(` -`)}function xm(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}function A1(e){let n=new URL(e).searchParams.get("q");return n||""}async function S1(e,t,n){return(await ja({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}async function D1(e,t,n){let a=[],u="en";for(let r of t)a.push({text:r.textContent||"",id:a.length,from:u,to:n,url:"https://google.com",fromByClient:u});return new Promise((r,o)=>{on({sentences:a},{...e,translationService:"google"},(i,s,l)=>{if(i)return r([]);let c=s?.id||0,d=t[c];d&&d.className==q+"-search-title-wrapper"&&(d.innerHTML+=Le.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}var de=null,Yo={},Za,Xo;async function Ho(){if(Ne()==="Original"){let e={};Xo&&(e.translationMode=Xo),Za&&(e.translationTheme=Za),de&&(e={...de.state,...e}),await vt(ct(),e),await Zt(de)}else(Ne()==="Translated"||Ne()==="Error")&&la()}async function Wo(){if(de=await vt(ct(),{}),de.rule.isEbookBuilder)return om(de);if(de.rule.isSubtitleBuilder)return um(de);eg()}async function qo(){if(Ne()==="Original")de=await vt(ct(),{}),Za||(Za=de.state.translationTheme),de=await vt(ct(),{translationTheme:"mask"}),await Zt(de);else if(Ne()==="Translated"){let e=Pd().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[de.mainFrame,...e],n=de?.state.translationTheme;for(let a of t){let u=ka(a,ba,!0);n==="mask"?u!=="none"?Je(a,ba,"none",!0):Je(a,ba,"mask",!0):u!=="mask"?Je(a,ba,"mask",!0):Je(a,ba,"none",!0)}}}async function $s(){let e=await vt(ct(),{});return e.rule.isSubtitleBuilder?Rs(e):Qd(e)}function L1(e){Ne()==="Original"?am(e):Os()}function P1(e){Ne()==="Original"?vo(e):Hn()}async function la(){let e=await vt(ct(),{});if(e.rule.isSubtitleBuilder){Os();return}else e.rule.isEbookBuilder&&im();Hn()}async function Zt(e){if(Ne()!=="Original"&&await la(),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Yo[e.translationService]||(Yo[e.translationService]=!0,lt()||zi(e).catch(t=>{P.warn("init translation engine error",t)})),tt("translage_page_daily",[{name:"translage_page_daily"}],e),tt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:un()}),e.rule.isSubtitleBuilder)return L1(e);if(e.rule.isEbookBuilder)return sm(e);e.rule.isPdf||P1(e)}async function wm(){Ne()==="Original"?await Zo():(Ne()==="Translated"||Ne()==="Error")&&(de=await vt(ct(),{}),de.state.translationArea!=="main"?await Zo():la())}async function Zo(){de=await vt(ct(),{translationArea:"main"}),await Zt(de)}async function Ks(){de=await vt(ct(),{translationArea:"body"}),await Zt(de)}async function $o(){if(Ne()==="Original"){let e=await vt(ct(),{translationMode:"translation"});await Zt(e)}else(Ne()==="Translated"||Ne()==="Error")&&await la()}async function vm(e){if(de=await vt(ct(),{}),tt("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...de,sourceLanguage:"unknown"}),Ne()==="Original"){Zt(de);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function km(){if(Ne()==="Original")await Ks();else if(Ne()==="Translated"||Ne()==="Error"){let e={};de&&de.state&&(e=de.state),de=await vt(ct(),e),de.state.translationArea!=="body"?(de.state.translationArea="body",de=await vt(ct(),de.state),await Zt(de)):la()}}async function Am(){de=await vt(ct(),{translationStartMode:"immediate"}),await Zt(de)}async function Pg(){let e=await vt(ct(),{});if(P.debug("init page ctx",e),e.rule.isSubtitleBuilder){Rs(e);return}if(e.rule.isEbookBuilder){rm(e);return}if(e.rule.isPdf){await tm(e);return}if(Cm(e),Xo||(Xo=e.state.translationMode),Za||(Za=e.state.translationTheme),e.rule.urlChangeDelay&&await su(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await F1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=Dm(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){P.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Rn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){P.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&Od(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await $s():zt(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(P.debug(`detect page language: ${e.url} ${t}`),Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||L3(t,e.config.translationLanguagePattern)&&(n=!0,P.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&au()&&Vo(e,window),n)de.state.isAutoTranslate=!0,Zt(de);else if(P.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Yo[e.translationService]||(Yo[e.translationService]=!0,lt()||zi(e).catch(a=>{P.warn("init translation engine error",a)})))}}async function vt(e,t){let n=Object.keys(t);if(de){let a={url:e,config:de.config,state:{...de.state,...t}};de=await bn(a)}else{let a=await Xt(),u=t;n.length===0&&(u=void 0),de=await bn({url:e,config:a,state:u})}return de}async function Sm(){let e=await Xt(),t;de&&de.state&&(t=de.state);let n={url:ct(),config:e,state:t},a=await bn(n);de=a;let u=wo(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Dg(a,o),au()&&Vo(a,o),bm(a)}),a}function F1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}var Bu=new Map,Wn=class{constructor(t,n=!1){this.logger=new fu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),j.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,s,l,c;u.tab&&u.tab.id&&(s=u.tab.id,o=`${o}:${s}`,l=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let d=Vs(i),{type:g,name:m}=d;if(g!==t)return!1;let f=Vs(o),T=Bu.get(g).get(m);if(!T)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:p,sync:C}=T,F={type:t,name:f.name,id:s,url:l,active:c};if(C){try{let S=p(a.payload,F);r({ok:!0,data:S})}catch(S){r({ok:!1,errorName:S.name,errorMessage:S.message,errorDetails:S.details})}return!1}else return p(a.payload,F).then(S=>{r({ok:!0,data:S})}).catch(S=>{r({ok:!1,errorName:S.name,errorMessage:S.message,errorDetails:S.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=Bu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new Gs(`${r}:${t}`,this.logger);return Bu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},Gs=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=Vs(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await j.runtime.sendMessage(o);return Lm(o,i,this.logger)}catch(i){if(u==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await j.tabs.sendMessage(r,o);return Lm(o,i,this.logger)}}};function Lm(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Qe(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Qe("noResponse","Unknown error")}function Vs(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ka=async function(e,t){let{method:n,data:a}=e,u=await Sm(),r=Date.now();P.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await Ks(),et(pn,r)):n==="translateTheMainPage"?(await Zo(),et(pn,r)):n==="translateToThePageEndImmediately"?(await Am(),et(pn,r)):n==="toggleTranslatePage"?(await Ho(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await km(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await wm(),et(pn,r)):n==="toggleOnlyTransation"?(await $o(),et(pn,r)):n==="translatePage"?(await Zt(u),et(pn,r)):n==="toggleTranslationMask"?await qo():n==="restorePage"?la():n==="setCurrentPageLanguageByClient"?zt(a):n==="retryFailedParagraphs"?Wo():n==="switchTranslationMode"&&a&&a.mode&&vm(a.mode)},M1=function(e,t){let{method:n,data:a}=e;if(P.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ne();if(n==="getCurrentPageLanguage"){let u=un();return $s().catch(r=>{P.warn("detectCurrentPageLanguage failed",r)}),u}},Qo,e0;function Fg(){let e=t0();lt()||_1(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function t0(){return Qo||(Qo=new Wn("content_script",!1).getConnection("main",Ka),Qo)}function _1(){return e0||(e0=new Wn("content_script",!1).getConnection("main_sync",M1,{sync:!0}),e0)}var B1=new Map;function Pm(e){let t=R1(64),n=new CustomEvent(m4,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{B1.set(t,(r,o)=>{r?u(r):a(o)})})}function R1(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Ad(e){return ie()?v3(e):Ke({method:"queryParagraphCache",data:e})}async function Sd(e){if(ie()){await w3(e);return}return Ke({method:"setParagraphCache",data:e})}async function G3(){if(ie())return Promise.resolve();await Ke({method:"mockRequest"})}function _o(e=!1,t=""){return ie()?(j.runtime.openOptionsPage(e,t),Promise.resolve()):Ke({method:"openOptionsPage"})}function Dm(e=""){return ie()||xt()?Ve().OPTIONS_URL:j.runtime.getURL("options.html")}function Js(e=""){return j&&j.runtime&&j.runtime.getURL?j.runtime.getURL("options.html"):""}function Bo(e=!1){return ie()?(j.extra.openAboutPage(e),Promise.resolve()):Ke({method:"openAboutPage"})}function Bg(e=!1){return ie()?(j.extra.openSearchEnhancement(e),Promise.resolve()):Ke({method:"openSearchEnhancement"})}function Ro(e=!1){return ie()?(j.extra.openEbookViewerPage(e),Promise.resolve()):Ke({method:"openEbookViewerPage"})}function dg(e=!1){return ie()?Promise.resolve():Ke({method:"openHtmlViewerPage"})}function Oo(e=!1){return ie()?(j.extra.openEbookBuilderPage(e),Promise.resolve()):Ke({method:"openEbookBuilderPage"})}function Rg(e){xt()}function Es(e=!1){return ie()?(alert("it's not support in userscript"),Promise.resolve()):Ke({method:"openPdfViewerPage"})}function gg(e=!1){return ie()?(j.extra.openSubtitleBuilderPage(e),Promise.resolve()):Ke({method:"openSubtitleBuilderPage"})}function lg(){return ie()?(P.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):Ke({method:"autoSyncLatestConfig"})}function Fm(e){let t;try{t=new URL(e)}catch{return!1}let n=Js(),a="";try{a=new URL(n).hostname}catch{}return!!(a&&t.hostname===a)}function Lo(e){let t;try{t=new URL(e)}catch{return!1}let n=Js(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(Ys(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function Ys(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}var O1=function(e,t){let{method:n,data:a}=e;P.debug(`popup received message: ${n}`,a||" ");let u;t.active&&(u=t.id,globalThis.document.dispatchEvent(new CustomEvent(ru,{detail:{tabId:u,payload:e}})))},n0;function Mm(){Ru()}function Ru(){return n0||(n0=new Wn("popup",!1).getConnection("main_sync",O1),n0)}var ca={},Xs={};function a0(e,t){if(Xs[e])try{t()}catch(n){P.error("run callback failed",n)}else ca[e]||(ca[e]=[]),ca[e].push(t)}function _m(e){if(ca[e]&&ca[e].length){let t=[...ca[e]];ca[e]=[],t.forEach(n=>n())}}function Zs(){let[e,t]=ye("Original"),{t:n}=Wt(),[a,u,r,o]=Fo(()=>{setTimeout(()=>{k("updateGlobalContext")()},250)}),[i,s]=ye(null),[l,c]=ye(null),[d,g]=ye(null),[m,f]=ye("auto"),[v,T]=ye(null),[{errorMsg:p,disableButton:C,noPermissionPDF:F},S]=ye({errorMsg:"",disableButton:!1,noPermissionPDF:!1}),A=z=>{let{tabId:Te,payload:Z}=z.detail,{method:b,data:_}=Z;P.debug("popup received message",b,_||" "),b==="setPageStatus"?Te&&t(_):b==="ready"&&Te&&(S({disableButton:!1,errorMsg:"",noPermissionPDF:!1}),Xs[Te]=!0,_m(Te))},y=()=>{u(z=>({...z,enabled:!z.enabled})),setTimeout(()=>{R()},50)};Ze(()=>{let z=Ru();return j.tabs.query({currentWindow:!0,active:!0}).then(Te=>{let Z=Te[0].id;g(Z);let b=Te[0].url;j.tabs.onUpdated.addListener((_,K,ae)=>{_===_&&ae.url&&l&&ae.url!==l&&(c(ae.url),window.location.reload())}),globalThis.document.addEventListener(ru,A),b&&c(b),b&&Lo(b)?(c(b),z.sendMessage(`content_script:main_sync:${Z}`,{method:"ping"}).then(_=>{S({disableButton:!1,errorMsg:"",noPermissionPDF:!1}),Xs[Z]=!0,_m(Z)}).catch(_=>{Fm(b)||S({disableButton:!0,errorMsg:n("reloadCurrentPage"),noPermissionPDF:!1}),P.debug("ping failed, but it is ok. cause maybe content is not injected",_)}),a0(Z,async()=>{let _=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getPageStatus"});t(_)}),a0(Z,async()=>{let _=await an();s(_)}),a0(Z,async()=>{let _=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getCurrentPageLanguage"});f(_),_==="auto"&&setTimeout(async()=>{let K=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getCurrentPageLanguage"});f(K)},500)})):Ys(b||"")?I1(b||"")&&N1(b||"").then(_=>{_||S({disableButton:!1,noPermissionPDF:!0,errorMsg:n("noLocalFilePermissionForPDF")})}):S({disableButton:!0,errorMsg:n("noPermissionForThisPage"),noPermissionPDF:!1}),b===""&&c("about:newtab")}).catch(Te=>{}),()=>{globalThis.document.removeEventListener(ru,A)}},[]),Ze(()=>{an().then(z=>{s(z)})},[a]),Ze(()=>{l&&i&&bn({url:l,config:i}).then(z=>{T(z)})},[l,i]);let k=(z,Te=!0,Z={})=>async()=>{let b=Ru(),K=(await j.tabs.query({currentWindow:!0,active:!0}))[0].id;b.sendMessage(`content_script:main:${K}`,{method:z,data:Z||{}}),Te&&setTimeout(()=>{globalThis.close()},10)},D=()=>{let z=j.runtime.getURL(Qu);j.tabs.create({url:z}),globalThis.close()},x=()=>{let z=j.runtime.getURL(d4);j.tabs.create({url:z}),globalThis.close()},L=()=>{let z=j.runtime.getURL(g4);xt()&&(z=Ve().SUBTITLE_BUILDER_URL),j.tabs.create({url:z}),globalThis.close()},O=()=>{l&&d&&(j.tabs.update(d,{url:R4(l)}),globalThis.close())},w=z=>{let Te=Ru();if(f(z),d&&l){let Z=Vu(l,z,i.sourceLanguageUrlPattern);u(b=>({...b,sourceLanguageUrlPattern:Z})),a0(d,()=>{Te.sendMessage(`content_script:main:${d}`,{method:"setCurrentPageLanguageByClient",data:z})})}},R=()=>{globalThis.close()},J=(z="")=>{if(xt()){let Z=Ve().OPTIONS_URL;j.tabs.create({url:Z+z})}else{let Te=j.runtime.getURL("options.html");j.tabs.create({url:Te+z})}setTimeout(()=>{globalThis.close()},50)},N=()=>{if(xt()){let Te=Ve().OPTIONS_URL;j.tabs.create({url:Te+"#about"})}else j.tabs.create({url:j.runtime.getURL("options.html#about")});setTimeout(()=>{globalThis.close()},50)},pe=()=>{let z=j.runtime.getURL("ebook/make/index.html");xt()&&(z=Ve().EBOOK_BUILDER_URL),j.tabs.create({url:z}),setTimeout(()=>{globalThis.close()},50)},fe=()=>{j.tabs.create({url:j.runtime.getURL("ebook/index.html")}),setTimeout(()=>{globalThis.close()},50)},_e=z=>{u(Te=>({...Te,generalRule:{...Te.generalRule,mouseHoverHoldKey:z}}))};return!i||!v?null:H(Fu,{onClose:R,onToggleTranslate:k("toggleTranslatePage"),openEbookBuilderPage:pe,openEbookViewerPage:fe,onTranslateLocalSubtitleFile:L,onTranslateLocalHtmlFile:x,onToggleEnabled:y,openOptionsPage:J,openAboutPage:N,onTranslatePdf:O,onTranslateLocalPdfFile:D,onTranslateTheMainPage:k("translateTheMainPage"),onTranslateTheWholePage:k("translateTheWholePage"),ontranslateToThePageEndImmediately:k("translateToThePageEndImmediately"),onSwitchTranslationMode:z=>{k("switchTranslationMode",!0,{mode:z})()},onTranslatePage:k("translatePage"),onRestorePage:k("restorePage",!1),onSetPageLanguage:w,onUserConfigChange:z=>{u(z)},config:i,pageStatus:e,ctx:v,currentUrl:l,currentLang:m,onSetLocalConfig:Yn,onSetBuildinConfig:Pr,request:Or,onMouseTriggerChanged:_e,errorMsg:p,disabledButton:C,noPermissionPDF:F})}async function N1(e){try{let t=new URL(e),n=await fetch(t.href);return!0}catch{return!1}}function I1(e){try{return new URL(e).protocol==="file:"}catch{return!1}}var Bm=document.getElementById("mount");Mm();Bm&&(async()=>{let e=await an();e.debug&&P.setLevel("debug"),pa(H(So,{lang:e.interfaceLanguage,translations:ko,fallbackLang:"zh-CN",children:H(Zs,{})}),Bm)})();})(); +`)}function Am(e,t){if(!e.keyword)return;let n=e.keyword.value||"";for(let a=0;anew RegExp(a.urlMatch).test(t))}async function Dm(e){if(nu().any)return;if(!e.rule.enableSearchEnhancement){D.debug("enable is false");return}let t=P1(e.rule.searchEnhancementConfig||[],e.url);if(!t){D.debug("not found siteConfig",e.url);return}let n=Am(t,e.url);if(!n){D.debug("not found keyword",e.url);return}t.id=="google"?M1(e,t,n):F1(e,t,n)}async function F1(e,t,n){let a=await Xt(e,document.title);t.selector&&setTimeout(async()=>{let u=document.querySelector(t.selector);if(!u){D.debug("selector node not found",t.selector);return}let r=await Gs(n,t.showCount);if(r&&r.length<=0){D.debug("list not found");return}let o=await Vs(t,r,n,t.showCount);if(!o){D.debug("getInseredNode none");return}o.style.cssText=t.style.container||"";let i=t.selectorAction||"appendChild";i=="insertBefore"?u.parentElement?.insertBefore(o,u):i=="appendChild"?u.appendChild(o):i=="replace"&&u?.replaceWith(o),Ks(e,t,o,a),Yo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a)},t.delayTime||0)}async function M1(e,t,n){let a=await Xt(e,n);if(Yo(e,{key:"detect_search_action"},a),!["zh-CN","zh-TW"].includes(a))return;D.debug("use dual search");let u=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")u=!0;else if(!Sm(document.body))return;let o=document.querySelector("#rhs");if(!o){let i=document.querySelector("#rcnt");if(!i)return;let l=i.children;if(l&&l.length>1)o=l[1];else{let s=l[0];o=document.createElement("div"),o.id="rhs",o.style.maxWidth="372px",o.style.marginLeft="50px",i.insertBefore(o,s.nextSibling)}}if(u||Sm(document.body)){D.debug("find story");let i=await km(e,n,a);D.debug("enKeyword",i);let l=await Gs(i,t.showCount);if(D.debug("news list",l),l&&l.length<=0)return;let s=await Vs(t,l,i,t.showCount);if(!s)return;Yo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a),Ks(e,t,s,a),o.insertBefore(s,o?.firstChild)}}function Sm(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}var de=null,Xo={},Za,Zo;async function Ho(){if(Ne()==="Original"){let e={};Zo&&(e.translationMode=Zo),Za&&(e.translationTheme=Za),de&&(e={...de.state,...e}),await vt(ct(),e),await Qt(de)}else(Ne()==="Translated"||Ne()==="Error")&&la()}async function Wo(){if(de=await vt(ct(),{}),de.rule.isEbookBuilder)return cm(de);if(de.rule.isSubtitleBuilder)return sm(de);ug()}async function qo(){if(Ne()==="Original")de=await vt(ct(),{}),Za||(Za=de.state.translationTheme),de=await vt(ct(),{translationTheme:"mask"}),await Qt(de);else if(Ne()==="Translated"){let e=Bd().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[de.mainFrame,...e],n=de?.state.translationTheme;for(let a of t){let u=ka(a,ba,!0);n==="mask"?u!=="none"?Je(a,ba,"none",!0):Je(a,ba,"mask",!0):u!=="mask"?Je(a,ba,"mask",!0):Je(a,ba,"none",!0)}}}async function Js(){let e=await vt(ct(),{});return e.rule.isSubtitleBuilder?Os(e):ag(e)}function _1(e){Ne()==="Original"?im(e):Ns()}function B1(e){Ne()==="Original"?vo(e):Hn()}async function la(){let e=await vt(ct(),{});if(e.rule.isSubtitleBuilder){Ns();return}else e.rule.isEbookBuilder&&dm();Hn()}async function Qt(e){if(Ne()!=="Original"&&await la(),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Xo[e.translationService]||(Xo[e.translationService]=!0,lt()||Ui(e).catch(t=>{D.warn("init translation engine error",t)})),ot("translage_page_daily",[{name:"translage_page_daily"}],e),ot("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:rn()}),e.rule.isSubtitleBuilder)return _1(e);if(e.rule.isEbookBuilder)return gm(e);e.rule.isPdf||B1(e)}async function Lm(){Ne()==="Original"?await Qo():(Ne()==="Translated"||Ne()==="Error")&&(de=await vt(ct(),{}),de.state.translationArea!=="main"?await Qo():la())}async function Qo(){de=await vt(ct(),{translationArea:"main"}),await Qt(de)}async function Ys(){de=await vt(ct(),{translationArea:"body"}),await Qt(de)}async function $o(){if(Ne()==="Original"){let e=await vt(ct(),{translationMode:"translation"});await Qt(e)}else(Ne()==="Translated"||Ne()==="Error")&&await la()}async function Pm(e){if(de=await vt(ct(),{}),ot("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...de,sourceLanguage:"unknown"}),Ne()==="Original"){Qt(de);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function Fm(){if(Ne()==="Original")await Ys();else if(Ne()==="Translated"||Ne()==="Error"){let e={};de&&de.state&&(e=de.state),de=await vt(ct(),e),de.state.translationArea!=="body"?(de.state.translationArea="body",de=await vt(ct(),de.state),await Qt(de)):la()}}async function Mm(){de=await vt(ct(),{translationStartMode:"immediate"}),await Qt(de)}async function Bg(){let e=await vt(ct(),{});if(D.debug("init page ctx",e),e.rule.isSubtitleBuilder){Os(e);return}if(e.rule.isEbookBuilder){lm(e);return}if(e.rule.isPdf){await rm(e);return}if(Dm(e),Zo||(Zo=e.state.translationMode),Za||(Za=e.state.translationTheme),e.rule.urlChangeDelay&&await su(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await R1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=Bm(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){D.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Rn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){D.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&zd(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await Js():zt(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(D.debug(`detect page language: ${e.url} ${t}`),Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||_3(t,e.config.translationLanguagePattern)&&(n=!0,D.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&au()&&Vo(e,window),n)de.state.isAutoTranslate=!0,Qt(de);else if(D.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Xo[e.translationService]||(Xo[e.translationService]=!0,lt()||Ui(e).catch(a=>{D.warn("init translation engine error",a)})))}}async function vt(e,t){let n=Object.keys(t);if(de){let a={url:e,config:de.config,state:{...de.state,...t}};de=await bn(a)}else{let a=await Zt(),u=t;n.length===0&&(u=void 0),de=await bn({url:e,config:a,state:u})}return de}async function _m(){let e=await Zt(),t;de&&de.state&&(t=de.state);let n={url:ct(),config:e,state:t},a=await bn(n);de=a;let u=wo(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Mg(a,o),au()&&Vo(a,o),xm(a)}),a}function R1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}var Bu=new Map,Wn=class{constructor(t,n=!1){this.logger=new fu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),j.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,l,s,c;u.tab&&u.tab.id&&(l=u.tab.id,o=`${o}:${l}`,s=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let d=Zs(i),{type:g,name:m}=d;if(g!==t)return!1;let f=Zs(o),T=Bu.get(g).get(m);if(!T)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:p,sync:w}=T,F={type:t,name:f.name,id:l,url:s,active:c};if(w){try{let S=p(a.payload,F);r({ok:!0,data:S})}catch(S){r({ok:!1,errorName:S.name,errorMessage:S.message,errorDetails:S.details})}return!1}else return p(a.payload,F).then(S=>{r({ok:!0,data:S})}).catch(S=>{r({ok:!1,errorName:S.name,errorMessage:S.message,errorDetails:S.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=Bu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new Xs(`${r}:${t}`,this.logger);return Bu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},Xs=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=Zs(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await j.runtime.sendMessage(o);return Rm(o,i,this.logger)}catch(i){if(u==="popup"){let l=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(l,n,t,i),Promise.resolve({message:l})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await j.tabs.sendMessage(r,o);return Rm(o,i,this.logger)}}};function Rm(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Qe(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Qe("noResponse","Unknown error")}function Zs(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ka=async function(e,t){let{method:n,data:a}=e,u=await _m(),r=Date.now();D.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await Ys(),et(pn,r)):n==="translateTheMainPage"?(await Qo(),et(pn,r)):n==="translateToThePageEndImmediately"?(await Mm(),et(pn,r)):n==="toggleTranslatePage"?(await Ho(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await Fm(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await Lm(),et(pn,r)):n==="toggleOnlyTransation"?(await $o(),et(pn,r)):n==="translatePage"?(await Qt(u),et(pn,r)):n==="toggleTranslationMask"?await qo():n==="restorePage"?la():n==="setCurrentPageLanguageByClient"?zt(a):n==="retryFailedParagraphs"?Wo():n==="switchTranslationMode"&&a&&a.mode&&Pm(a.mode)},O1=function(e,t){let{method:n,data:a}=e;if(D.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ne();if(n==="getCurrentPageLanguage"){let u=rn();return Js().catch(r=>{D.warn("detectCurrentPageLanguage failed",r)}),u}},e0,t0;function Rg(){let e=n0();lt()||N1(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function n0(){return e0||(e0=new Wn("content_script",!1).getConnection("main",Ka),e0)}function N1(){return t0||(t0=new Wn("content_script",!1).getConnection("main_sync",O1,{sync:!0}),t0)}var I1=new Map;function Om(e){let t=j1(64),n=new CustomEvent(b4,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{I1.set(t,(r,o)=>{r?u(r):a(o)})})}function j1(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Pd(e){return ie()?D3(e):Ke({method:"queryParagraphCache",data:e})}async function Fd(e){if(ie()){await S3(e);return}return Ke({method:"setParagraphCache",data:e})}async function X3(){if(ie())return Promise.resolve();await Ke({method:"mockRequest"})}function _o(e=!1,t=""){return ie()?(j.runtime.openOptionsPage(e,t),Promise.resolve()):Ke({method:"openOptionsPage"})}function Bm(e=""){return ie()||xt()?Ve().OPTIONS_URL:j.runtime.getURL("options.html")}function Qs(e=""){return j&&j.runtime&&j.runtime.getURL?j.runtime.getURL("options.html"):""}function Bo(e=!1){return ie()?(j.extra.openAboutPage(e),Promise.resolve()):Ke({method:"openAboutPage"})}function Ig(e=!1){return ie()?(j.extra.openSearchEnhancement(e),Promise.resolve()):Ke({method:"openSearchEnhancement"})}function Ro(e=!1){return ie()?(j.extra.openEbookViewerPage(e),Promise.resolve()):Ke({method:"openEbookViewerPage"})}function fg(e=!1){return ie()?Promise.resolve():Ke({method:"openHtmlViewerPage"})}function Oo(e=!1){return ie()?(j.extra.openEbookBuilderPage(e),Promise.resolve()):Ke({method:"openEbookBuilderPage"})}function jg(e){xt()}function ys(e=!1){return ie()?(alert("it's not support in userscript"),Promise.resolve()):Ke({method:"openPdfViewerPage"})}function hg(e=!1){return ie()?(j.extra.openSubtitleBuilderPage(e),Promise.resolve()):Ke({method:"openSubtitleBuilderPage"})}function mg(){return ie()?(D.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):Ke({method:"autoSyncLatestConfig"})}function Nm(e){let t;try{t=new URL(e)}catch{return!1}let n=Qs(),a="";try{a=new URL(n).hostname}catch{}return!!(a&&t.hostname===a)}function Lo(e){let t;try{t=new URL(e)}catch{return!1}let n=Qs(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(el(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function el(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}var z1=function(e,t){let{method:n,data:a}=e;D.debug(`popup received message: ${n}`,a||" ");let u;t.active&&(u=t.id,globalThis.document.dispatchEvent(new CustomEvent(ru,{detail:{tabId:u,payload:e}})))},a0;function Im(){Ru()}function Ru(){return a0||(a0=new Wn("popup",!1).getConnection("main_sync",z1),a0)}var ca={},tl={};function u0(e,t){if(tl[e])try{t()}catch(n){D.error("run callback failed",n)}else ca[e]||(ca[e]=[]),ca[e].push(t)}function jm(e){if(ca[e]&&ca[e].length){let t=[...ca[e]];ca[e]=[],t.forEach(n=>n())}}function nl(){let[e,t]=ye("Original"),{t:n}=Wt(),[a,u,r,o]=Fo(()=>{setTimeout(()=>{k("updateGlobalContext")()},250)}),[i,l]=ye(null),[s,c]=ye(null),[d,g]=ye(null),[m,f]=ye("auto"),[C,T]=ye(null),[{errorMsg:p,disableButton:w,noPermissionPDF:F},S]=ye({errorMsg:"",disableButton:!1,noPermissionPDF:!1}),A=z=>{let{tabId:Te,payload:Z}=z.detail,{method:b,data:_}=Z;D.debug("popup received message",b,_||" "),b==="setPageStatus"?Te&&t(_):b==="ready"&&Te&&(S({disableButton:!1,errorMsg:"",noPermissionPDF:!1}),tl[Te]=!0,jm(Te))},y=()=>{u(z=>({...z,enabled:!z.enabled})),setTimeout(()=>{R()},50)};Ze(()=>{let z=Ru();return j.tabs.query({currentWindow:!0,active:!0}).then(Te=>{let Z=Te[0].id;g(Z);let b=Te[0].url;j.tabs.onUpdated.addListener((_,K,ae)=>{_===_&&ae.url&&s&&ae.url!==s&&(c(ae.url),window.location.reload())}),globalThis.document.addEventListener(ru,A),b&&c(b),b&&Lo(b)?(c(b),z.sendMessage(`content_script:main_sync:${Z}`,{method:"ping"}).then(_=>{S({disableButton:!1,errorMsg:"",noPermissionPDF:!1}),tl[Z]=!0,jm(Z)}).catch(_=>{Nm(b)||S({disableButton:!0,errorMsg:n("reloadCurrentPage"),noPermissionPDF:!1}),D.debug("ping failed, but it is ok. cause maybe content is not injected",_)}),u0(Z,async()=>{let _=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getPageStatus"});t(_)}),u0(Z,async()=>{let _=await un();l(_)}),u0(Z,async()=>{let _=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getCurrentPageLanguage"});f(_),_==="auto"&&setTimeout(async()=>{let K=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getCurrentPageLanguage"});f(K)},500)})):el(b||"")?H1(b||"")&&U1(b||"").then(_=>{_||S({disableButton:!1,noPermissionPDF:!0,errorMsg:n("noLocalFilePermissionForPDF")})}):S({disableButton:!0,errorMsg:n("noPermissionForThisPage"),noPermissionPDF:!1}),b===""&&c("about:newtab")}).catch(Te=>{}),()=>{globalThis.document.removeEventListener(ru,A)}},[]),Ze(()=>{un().then(z=>{l(z)})},[a]),Ze(()=>{s&&i&&bn({url:s,config:i}).then(z=>{T(z)})},[s,i]);let k=(z,Te=!0,Z={})=>async()=>{let b=Ru(),K=(await j.tabs.query({currentWindow:!0,active:!0}))[0].id;b.sendMessage(`content_script:main:${K}`,{method:z,data:Z||{}}),Te&&setTimeout(()=>{globalThis.close()},10)},L=()=>{let z=j.runtime.getURL(Qu);j.tabs.create({url:z}),globalThis.close()},x=()=>{let z=j.runtime.getURL(f4);j.tabs.create({url:z}),globalThis.close()},P=()=>{let z=j.runtime.getURL(h4);xt()&&(z=Ve().SUBTITLE_BUILDER_URL),j.tabs.create({url:z}),globalThis.close()},O=()=>{s&&d&&(j.tabs.update(d,{url:j4(s)}),globalThis.close())},v=z=>{let Te=Ru();if(f(z),d&&s){let Z=Vu(s,z,i.sourceLanguageUrlPattern);u(b=>({...b,sourceLanguageUrlPattern:Z})),u0(d,()=>{Te.sendMessage(`content_script:main:${d}`,{method:"setCurrentPageLanguageByClient",data:z})})}},R=()=>{globalThis.close()},J=(z="")=>{if(xt()){let Z=Ve().OPTIONS_URL;j.tabs.create({url:Z+z})}else{let Te=j.runtime.getURL("options.html");j.tabs.create({url:Te+z})}setTimeout(()=>{globalThis.close()},50)},N=()=>{if(xt()){let Te=Ve().OPTIONS_URL;j.tabs.create({url:Te+"#about"})}else j.tabs.create({url:j.runtime.getURL("options.html#about")});setTimeout(()=>{globalThis.close()},50)},pe=()=>{let z=j.runtime.getURL("ebook/make/index.html");xt()&&(z=Ve().EBOOK_BUILDER_URL),j.tabs.create({url:z}),setTimeout(()=>{globalThis.close()},50)},fe=()=>{j.tabs.create({url:j.runtime.getURL("ebook/index.html")}),setTimeout(()=>{globalThis.close()},50)},_e=z=>{u(Te=>({...Te,generalRule:{...Te.generalRule,mouseHoverHoldKey:z}}))};return!i||!C?null:H(Fu,{onClose:R,onToggleTranslate:k("toggleTranslatePage"),openEbookBuilderPage:pe,openEbookViewerPage:fe,onTranslateLocalSubtitleFile:P,onTranslateLocalHtmlFile:x,onToggleEnabled:y,openOptionsPage:J,openAboutPage:N,onTranslatePdf:O,onTranslateLocalPdfFile:L,onTranslateTheMainPage:k("translateTheMainPage"),onTranslateTheWholePage:k("translateTheWholePage"),ontranslateToThePageEndImmediately:k("translateToThePageEndImmediately"),onSwitchTranslationMode:z=>{k("switchTranslationMode",!0,{mode:z})()},onTranslatePage:k("translatePage"),onRestorePage:k("restorePage",!1),onSetPageLanguage:v,onUserConfigChange:z=>{u(z)},config:i,pageStatus:e,ctx:C,currentUrl:s,currentLang:m,onSetLocalConfig:Yn,onSetBuildinConfig:Pr,request:Or,onMouseTriggerChanged:_e,errorMsg:p,disabledButton:w,noPermissionPDF:F})}async function U1(e){try{let t=new URL(e),n=await fetch(t.href);return!0}catch{return!1}}function H1(e){try{return new URL(e).protocol==="file:"}catch{return!1}}var zm=document.getElementById("mount");Im();zm&&(async()=>{let e=await un();e.debug&&D.setLevel("debug"),pa(H(So,{lang:e.interfaceLanguage,translations:ko,fallbackLang:"zh-CN",children:H(nl,{})}),zm)})();})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/dist/chrome/styles/input.css b/dist/chrome/styles/input.css index b869b0c45..a1a775ac3 100644 --- a/dist/chrome/styles/input.css +++ b/dist/chrome/styles/input.css @@ -71,6 +71,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -79,6 +82,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -213,6 +220,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } diff --git a/dist/firefox/background.js b/dist/firefox/background.js index 306043dca..39778d256 100644 --- a/dist/firefox/background.js +++ b/dist/firefox/background.js @@ -1,4 +1,4 @@ -(()=>{var Ga=Object.defineProperty;var Va=(e,t)=>{for(var r in t)Ga(e,r,{get:t[r],enumerable:!0})};var w={BUILD_TIME:"2023-07-04T16:25:28.017Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Ga=Object.defineProperty;var Va=(e,t)=>{for(var r in t)Ga(e,r,{get:t[r],enumerable:!0})};var y={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,10 +4067,10 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var Ya=Object.create,ir=Object.defineProperty,Xa=Object.getOwnPropertyDescriptor,sn=Object.getOwnPropertyNames,Ja=Object.getPrototypeOf,Za=Object.prototype.hasOwnProperty,Qa=(e,t)=>function(){return t||(0,e[sn(e)[0]])((t={exports:{}}).exports,t),t.exports},eo=(e,t)=>{for(var r in t)ir(e,r,{get:t[r],enumerable:!0})},sr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of sn(t))!Za.call(e,a)&&a!==r&&ir(e,a,{get:()=>t[a],enumerable:!(n=Xa(t,a))||n.enumerable});return e},to=(e,t,r)=>(sr(e,t,"default"),r&&sr(r,t,"default")),ln=(e,t,r)=>(r=e!=null?Ya(Ja(e)):{},sr(t||!e||!e.__esModule?ir(r,"default",{value:e,enumerable:!0}):r,e)),cn=Qa({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/.pnpm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(r,n){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],n);else if(typeof e<"u")n(t);else{var a={exports:{}};n(a),r.browser=a.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(r){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let n="The message port closed before a response was received.",a=i=>{let c={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(c).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class o extends WeakMap{constructor(S,f=void 0){super(f),this.createItem=S}get(S){return this.has(S)||this.set(S,this.createItem(S)),super.get(S)}}let l=x=>x&&typeof x=="object"&&typeof x.then=="function",u=(x,S)=>(...f)=>{i.runtime.lastError?x.reject(new Error(i.runtime.lastError.message)):S.singleCallbackArg||f.length<=1&&S.singleCallbackArg!==!1?x.resolve(f[0]):x.resolve(f)},d=x=>x==1?"argument":"arguments",T=(x,S)=>function(A,..._){if(_.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${d(S.maxArgs)} for ${x}(), got ${_.length}`);return new Promise(($,W)=>{if(S.fallbackToNoCallback)try{A[x](..._,u({resolve:$,reject:W},S))}catch{A[x](..._),S.fallbackToNoCallback=!1,S.noCallback=!0,$()}else S.noCallback?(A[x](..._),$()):A[x](..._,u({resolve:$,reject:W},S))})},L=(x,S,f)=>new Proxy(S,{apply(A,_,$){return f.call(_,x,...$)}}),C=Function.call.bind(Object.prototype.hasOwnProperty),b=(x,S={},f={})=>{let A=Object.create(null),_={has(W,R){return R in x||R in A},get(W,R,J){if(R in A)return A[R];if(!(R in x))return;let F=x[R];if(typeof F=="function")if(typeof S[R]=="function")F=L(x,x[R],S[R]);else if(C(f,R)){let Te=T(R,f[R]);F=L(x,x[R],Te)}else F=F.bind(x);else if(typeof F=="object"&&F!==null&&(C(S,R)||C(f,R)))F=b(F,S[R],f[R]);else if(C(f,"*"))F=b(F,S[R],f["*"]);else return Object.defineProperty(A,R,{configurable:!0,enumerable:!0,get(){return x[R]},set(Te){x[R]=Te}}),F;return A[R]=F,F},set(W,R,J,F){return R in A?A[R]=J:x[R]=J,!0},defineProperty(W,R,J){return Reflect.defineProperty(A,R,J)},deleteProperty(W,R){return Reflect.deleteProperty(A,R)}},$=Object.create(x);return new Proxy($,_)},Z=x=>({addListener(S,f,...A){S.addListener(x.get(f),...A)},hasListener(S,f){return S.hasListener(x.get(f))},removeListener(S,f){S.removeListener(x.get(f))}}),te=new o(x=>typeof x!="function"?x:function(f){let A=b(f,{},{getContent:{minArgs:0,maxArgs:0}});x(A)}),m=new o(x=>typeof x!="function"?x:function(f,A,_){let $=!1,W,R=new Promise(ve=>{W=function(we){$=!0,ve(we)}}),J;try{J=x(f,A,W)}catch(ve){J=Promise.reject(ve)}let F=J!==!0&&l(J);if(J!==!0&&!F&&!$)return!1;let Te=ve=>{ve.then(we=>{_(we)},we=>{let Q;we&&(we instanceof Error||typeof we.message=="string")?Q=we.message:Q="An unexpected error occurred",_({__mozWebExtensionPolyfillReject__:!0,message:Q})}).catch(we=>{})};return Te(F?J:R),!0}),k=({reject:x,resolve:S},f)=>{i.runtime.lastError?i.runtime.lastError.message===n?S():x(new Error(i.runtime.lastError.message)):f&&f.__mozWebExtensionPolyfillReject__?x(new Error(f.message)):S(f)},G=(x,S,f,...A)=>{if(A.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${d(S.maxArgs)} for ${x}(), got ${A.length}`);return new Promise((_,$)=>{let W=k.bind(null,{resolve:_,reject:$});A.push(W),f.sendMessage(...A)})},Y={devtools:{network:{onRequestFinished:Z(te)}},runtime:{onMessage:Z(m),onMessageExternal:Z(m),sendMessage:G.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:G.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},me={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return c.privacy={network:{"*":me},services:{"*":me},websites:{"*":me}},b(i,Y,c)};r.exports=a(chrome)}else r.exports=globalThis.browser})}}),un={};eo(un,{default:()=>Bt});var ro=ln(cn());to(un,ln(cn()));var{default:on,...no}=ro,Bt=on!==void 0?on:no;globalThis.immersiveTranslateBrowserAPI=Bt;function wt(){let e,t="pending",r=new Promise((n,a)=>{e={async resolve(i){await i,t="fulfilled",n(i)},reject(i){t="rejected",a(i)}}});return Object.defineProperty(r,"state",{get:()=>t}),Object.assign(r,e)}function lr(e,t={}){let{signal:r,persistent:n}=t;return r?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((a,i)=>{let c=()=>{clearTimeout(l),i(new DOMException("Delay was aborted.","AbortError"))},l=setTimeout(()=>{r?.removeEventListener("abort",c),a()},e);if(r?.addEventListener("abort",c,{once:!0}),n===!1)try{Deno.unrefTimer(l)}catch(u){if(!(u instanceof ReferenceError))throw u}})}var dn=class{#e=0;#t=[];#r=[];#n=wt();add(t){++this.#e,this.#a(t[Symbol.asyncIterator]())}async#a(t){try{let{value:r,done:n}=await t.next();n?--this.#e:this.#t.push({iterator:t,value:r})}catch(r){this.#r.push(r)}this.#n.resolve()}async*iterate(){for(;this.#e>0;){await this.#n;for(let t=0;tPo,bgBlue:()=>Do,bgBrightBlack:()=>Fo,bgBrightBlue:()=>qo,bgBrightCyan:()=>zo,bgBrightGreen:()=>Wo,bgBrightMagenta:()=>Ko,bgBrightRed:()=>jo,bgBrightWhite:()=>Go,bgBrightYellow:()=>Ho,bgCyan:()=>Bo,bgGreen:()=>Io,bgMagenta:()=>No,bgRed:()=>Ro,bgRgb24:()=>Xo,bgRgb8:()=>$o,bgWhite:()=>Uo,bgYellow:()=>Oo,black:()=>ho,blue:()=>yo,bold:()=>io,brightBlack:()=>pn,brightBlue:()=>Eo,brightCyan:()=>Lo,brightGreen:()=>Ao,brightMagenta:()=>Mo,brightRed:()=>So,brightWhite:()=>_o,brightYellow:()=>ko,cyan:()=>xo,dim:()=>lo,getColorEnabled:()=>oo,gray:()=>Co,green:()=>bo,hidden:()=>go,inverse:()=>mo,italic:()=>co,magenta:()=>wo,red:()=>fo,reset:()=>so,rgb24:()=>Yo,rgb8:()=>Vo,setColorEnabled:()=>ao,strikethrough:()=>po,stripColor:()=>Zo,underline:()=>uo,white:()=>vo,yellow:()=>To});var{Deno:mn}=globalThis,gn=typeof mn?.noColor=="boolean"?mn.noColor:!0,cr=!gn;function ao(e){gn||(cr=e)}function oo(){return cr}function N(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function B(e,t){return cr?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function so(e){return B(e,N([0],0))}function io(e){return B(e,N([1],22))}function lo(e){return B(e,N([2],22))}function co(e){return B(e,N([3],23))}function uo(e){return B(e,N([4],24))}function mo(e){return B(e,N([7],27))}function go(e){return B(e,N([8],28))}function po(e){return B(e,N([9],29))}function ho(e){return B(e,N([30],39))}function fo(e){return B(e,N([31],39))}function bo(e){return B(e,N([32],39))}function To(e){return B(e,N([33],39))}function yo(e){return B(e,N([34],39))}function wo(e){return B(e,N([35],39))}function xo(e){return B(e,N([36],39))}function vo(e){return B(e,N([37],39))}function Co(e){return pn(e)}function pn(e){return B(e,N([90],39))}function So(e){return B(e,N([91],39))}function Ao(e){return B(e,N([92],39))}function ko(e){return B(e,N([93],39))}function Eo(e){return B(e,N([94],39))}function Mo(e){return B(e,N([95],39))}function Lo(e){return B(e,N([96],39))}function _o(e){return B(e,N([97],39))}function Po(e){return B(e,N([40],49))}function Ro(e){return B(e,N([41],49))}function Io(e){return B(e,N([42],49))}function Oo(e){return B(e,N([43],49))}function Do(e){return B(e,N([44],49))}function No(e){return B(e,N([45],49))}function Bo(e){return B(e,N([46],49))}function Uo(e){return B(e,N([47],49))}function Fo(e){return B(e,N([100],49))}function jo(e){return B(e,N([101],49))}function Wo(e){return B(e,N([102],49))}function Ho(e){return B(e,N([103],49))}function qo(e){return B(e,N([104],49))}function Ko(e){return B(e,N([105],49))}function zo(e){return B(e,N([106],49))}function Go(e){return B(e,N([107],49))}function et(e,t=255,r=0){return Math.trunc(Math.max(Math.min(e,t),r))}function Vo(e,t){return B(e,N([38,5,et(t)],39))}function $o(e,t){return B(e,N([48,5,et(t)],49))}function Yo(e,t){return typeof t=="number"?B(e,N([38,2,t>>16&255,t>>8&255,t&255],39)):B(e,N([38,2,et(t.r),et(t.g),et(t.b)],39))}function Xo(e,t){return typeof t=="number"?B(e,N([48,2,t>>16&255,t>>8&255,t&255],49)):B(e,N([48,2,et(t.r),et(t.g),et(t.b)],49))}var Jo=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function Zo(e){return e.replace(Jo,"")}var ur=class extends Error{constructor(t,r){super(`Exceeded max retry count (${r})`),this.name="RetryError",this.cause=t}},Qo={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function dr(e,t){let r={...Qo,...t};if(r.maxTimeout>=0&&r.minTimeout>r.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let n=r.minTimeout,a;for(let i=0;isetTimeout(o,n)),n*=r.multiplier,n=Math.max(n,r.minTimeout),r.maxTimeout>=0&&(n=Math.min(n,r.maxTimeout)),a=c}throw new ur(a,r.maxAttempts)}var Ol=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var Ut=globalThis||(typeof window<"u"?window:self),ts=Object.create,gr=Object.defineProperty,rs=Object.getOwnPropertyDescriptor,ns=Object.getOwnPropertyNames,as=Object.getPrototypeOf,os=Object.prototype.hasOwnProperty,ss=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),is=(e,t)=>{for(var r in t)gr(e,r,{get:t[r],enumerable:!0})},mr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of ns(t))!os.call(e,a)&&a!==r&&gr(e,a,{get:()=>t[a],enumerable:!(n=rs(t,a))||n.enumerable});return e},ls=(e,t,r)=>(mr(e,t,"default"),r&&mr(r,t,"default")),fn=(e,t,r)=>(r=e!=null?ts(as(e)):{},mr(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e)),bn=ss((e,t)=>{var r="Expected a function",n=NaN,a="[object Symbol]",i=/^\s+|\s+$/g,c=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt,d=typeof Ut=="object"&&Ut&&Ut.Object===Object&&Ut,T=typeof self=="object"&&self&&self.Object===Object&&self,L=d||T||Function("return this")(),C=Object.prototype,b=C.toString,Z=Math.max,te=Math.min,m=function(){return L.Date.now()};function k(f,A,_){var $,W,R,J,F,Te,ve=0,we=!1,Q=!1,Qe=!0;if(typeof f!="function")throw new TypeError(r);A=S(A)||0,Y(_)&&(we=!!_.leading,Q="maxWait"in _,R=Q?Z(S(_.maxWait)||0,A):R,Qe="trailing"in _?!!_.trailing:Qe);function oe(D){var U=$,K=W;return $=W=void 0,ve=D,J=f.apply(K,U),J}function g(D){return ve=D,F=setTimeout(V,A),we?oe(D):J}function v(D){var U=D-Te,K=D-ve,X=A-U;return Q?te(X,R-K):X}function E(D){var U=D-Te,K=D-ve;return Te===void 0||U>=A||U<0||Q&&K>=R}function V(){var D=m();if(E(D))return O(D);F=setTimeout(V,v(D))}function O(D){return F=void 0,Qe&&$?oe(D):($=W=void 0,J)}function se(){F!==void 0&&clearTimeout(F),ve=0,$=Te=W=F=void 0}function ge(){return F===void 0?J:O(m())}function ue(){var D=m(),U=E(D);if($=arguments,W=this,Te=D,U){if(F===void 0)return g(Te);if(Q)return F=setTimeout(V,A),oe(Te)}return F===void 0&&(F=setTimeout(V,A)),J}return ue.cancel=se,ue.flush=ge,ue}function G(f,A,_){var $=!0,W=!0;if(typeof f!="function")throw new TypeError(r);return Y(_)&&($="leading"in _?!!_.leading:$,W="trailing"in _?!!_.trailing:W),k(f,A,{leading:$,maxWait:A,trailing:W})}function Y(f){var A=typeof f;return!!f&&(A=="object"||A=="function")}function me(f){return!!f&&typeof f=="object"}function x(f){return typeof f=="symbol"||me(f)&&b.call(f)==a}function S(f){if(typeof f=="number")return f;if(x(f))return n;if(Y(f)){var A=typeof f.valueOf=="function"?f.valueOf():f;f=Y(A)?A+"":A}if(typeof f!="string")return f===0?f:+f;f=f.replace(i,"");var _=o.test(f);return _||l.test(f)?u(f.slice(2),_?2:8):c.test(f)?n:+f}t.exports=G}),Tn={};is(Tn,{default:()=>pr});var cs=fn(bn());ls(Tn,fn(bn()));var{default:hn,...us}=cs,pr=hn!==void 0?hn:us;var ds=Object.create,fr=Object.defineProperty,ms=Object.getOwnPropertyDescriptor,gs=Object.getOwnPropertyNames,ps=Object.getPrototypeOf,hs=Object.prototype.hasOwnProperty,fs=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),bs=(e,t)=>{for(var r in t)fr(e,r,{get:t[r],enumerable:!0})},hr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of gs(t))!hs.call(e,a)&&a!==r&&fr(e,a,{get:()=>t[a],enumerable:!(n=ms(t,a))||n.enumerable});return e},Ts=(e,t,r)=>(hr(e,t,"default"),r&&hr(r,t,"default")),wn=(e,t,r)=>(r=e!=null?ds(ps(e)):{},hr(t||!e||!e.__esModule?fr(r,"default",{value:e,enumerable:!0}):r,e)),xn=fs((e,t)=>{(function(r,n){typeof e=="object"&&typeof t=="object"?t.exports=n():typeof define=="function"&&define.amd?define([],n):typeof e=="object"?e.notie=n():r.notie=n()})(e,function(){return function(r){function n(i){if(a[i])return a[i].exports;var c=a[i]={i,l:!1,exports:{}};return r[i].call(c.exports,c,c.exports,n),c.l=!0,c.exports}var a={};return n.m=r,n.c=a,n.i=function(i){return i},n.d=function(i,c,o){n.o(i,c)||Object.defineProperty(i,c,{configurable:!1,enumerable:!0,get:o})},n.n=function(i){var c=i&&i.__esModule?function(){return i.default}:function(){return i};return n.d(c,"a",c),c},n.o=function(i,c){return Object.prototype.hasOwnProperty.call(i,c)},n.p="",n(n.s=1)}([function(r,n){r.exports=function(a){return a.webpackPolyfill||(a.deprecate=function(){},a.paths=[],a.children||(a.children=[]),Object.defineProperty(a,"loaded",{enumerable:!0,get:function(){return a.l}}),Object.defineProperty(a,"id",{enumerable:!0,get:function(){return a.i}}),a.webpackPolyfill=1),a}},function(r,n,a){"use strict";(function(i){var c,o,l,u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(d){return typeof d}:function(d){return d&&typeof Symbol=="function"&&d.constructor===Symbol&&d!==Symbol.prototype?"symbol":typeof d};(function(d,T){u(n)==="object"&&u(i)==="object"?i.exports=T():(o=[],c=T,l=typeof c=="function"?c.apply(n,o):c,l!==void 0&&(i.exports=l))})(void 0,function(){return function(d){function T(C){if(L[C])return L[C].exports;var b=L[C]={i:C,l:!1,exports:{}};return d[C].call(b.exports,b,b.exports,T),b.l=!0,b.exports}var L={};return T.m=d,T.c=L,T.i=function(C){return C},T.d=function(C,b,Z){T.o(C,b)||Object.defineProperty(C,b,{configurable:!1,enumerable:!0,get:Z})},T.n=function(C){var b=C&&C.__esModule?function(){return C.default}:function(){return C};return T.d(b,"a",b),b},T.o=function(C,b){return Object.prototype.hasOwnProperty.call(C,b)},T.p="",T(T.s=0)}([function(d,T,L){function C(g,v){var E={};for(var V in g)v.indexOf(V)>=0||Object.prototype.hasOwnProperty.call(g,V)&&(E[V]=g[V]);return E}Object.defineProperty(T,"__esModule",{value:!0});var b=typeof Symbol=="function"&&u(Symbol.iterator)==="symbol"?function(g){return typeof g>"u"?"undefined":u(g)}:function(g){return g&&typeof Symbol=="function"&&g.constructor===Symbol&&g!==Symbol.prototype?"symbol":typeof g>"u"?"undefined":u(g)},Z=Object.assign||function(g){for(var v=1;v'+V+"",K.onclick=function(){return W(X,U)},K.listener=function(M){(A(M)||_(M))&&F()},$(K,U),se&&se<1&&(se=1),!ue&&se&&Y(se).then(function(){return W(X,U)})},ve=T.force=function(g,v){var E=g.type,V=E===void 0?5:E,O=g.text,se=g.buttonText,ge=se===void 0?"OK":se,ue=g.callback,D=g.position,U=D===void 0?m.positions.force||U.top:D;me(),F();var K=document.createElement("div"),X=x();K.id=X;var M=document.createElement("div");M.classList.add(m.classes.textbox),M.classList.add(m.classes.backgroundInfo),M.innerHTML='
'+O+"
";var z=document.createElement("div");z.classList.add(m.classes.button),z.classList.add(S[V]),z.innerHTML=ge,z.onclick=function(){W(X,U),J(),ue?ue():v&&v()},K.appendChild(M),K.appendChild(z),K.listener=function(ie){A(ie)&&z.click()},$(K,U),R()},we=T.confirm=function(g,v,E){var V=g.text,O=g.submitText,se=O===void 0?"Yes":O,ge=g.cancelText,ue=ge===void 0?"Cancel":ge,D=g.submitCallback,U=g.cancelCallback,K=g.position,X=K===void 0?m.positions.confirm||X.top:K;me(),F();var M=document.createElement("div"),z=x();M.id=z;var ie=document.createElement("div");ie.classList.add(m.classes.textbox),ie.classList.add(m.classes.backgroundInfo),ie.innerHTML='
'+V+"
";var ne=document.createElement("div");ne.classList.add(m.classes.button),ne.classList.add(m.classes.elementHalf),ne.classList.add(m.classes.backgroundSuccess),ne.innerHTML=se,ne.onclick=function(){W(z,X),J(),D?D():v&&v()};var I=document.createElement("div");I.classList.add(m.classes.button),I.classList.add(m.classes.elementHalf),I.classList.add(m.classes.backgroundError),I.innerHTML=ue,I.onclick=function(){W(z,X),J(),U?U():E&&E()},M.appendChild(ie),M.appendChild(ne),M.appendChild(I),M.listener=function(fe){A(fe)?ne.click():_(fe)&&I.click()},$(M,X),R(M,X)},Q=function(g,v,E){var V=g.text,O=g.submitText,se=O===void 0?"Submit":O,ge=g.cancelText,ue=ge===void 0?"Cancel":ge,D=g.submitCallback,U=g.cancelCallback,K=g.position,X=K===void 0?m.positions.input||X.top:K,M=C(g,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);me(),F();var z=document.createElement("div"),ie=x();z.id=ie;var ne=document.createElement("div");ne.classList.add(m.classes.textbox),ne.classList.add(m.classes.backgroundInfo),ne.innerHTML='
'+V+"
";var I=document.createElement("input");I.classList.add(m.classes.inputField),I.setAttribute("autocapitalize",M.autocapitalize||"none"),I.setAttribute("autocomplete",M.autocomplete||"off"),I.setAttribute("autocorrect",M.autocorrect||"off"),I.setAttribute("autofocus",M.autofocus||"true"),I.setAttribute("inputmode",M.inputmode||"verbatim"),I.setAttribute("max",M.max||""),I.setAttribute("maxlength",M.maxlength||""),I.setAttribute("min",M.min||""),I.setAttribute("minlength",M.minlength||""),I.setAttribute("placeholder",M.placeholder||""),I.setAttribute("spellcheck",M.spellcheck||"default"),I.setAttribute("step",M.step||"any"),I.setAttribute("type",M.type||"text"),I.value=M.value||"",M.allowed&&(I.oninput=function(){var ce=void 0;if(Array.isArray(M.allowed)){for(var de="",_e=M.allowed,Fe=0;Fe<_e.length;Fe++)_e[Fe]==="an"?de+="0-9a-zA-Z":_e[Fe]==="a"?de+="a-zA-Z":_e[Fe]==="n"&&(de+="0-9"),_e[Fe]==="s"&&(de+=" ");ce=new RegExp("[^"+de+"]","g")}else b(M.allowed)==="object"&&(ce=M.allowed);I.value=I.value.replace(ce,"")});var fe=document.createElement("div");fe.classList.add(m.classes.button),fe.classList.add(m.classes.elementHalf),fe.classList.add(m.classes.backgroundSuccess),fe.innerHTML=se,fe.onclick=function(){W(ie,X),J(),D?D(I.value):v&&v(I.value)};var Le=document.createElement("div");Le.classList.add(m.classes.button),Le.classList.add(m.classes.elementHalf),Le.classList.add(m.classes.backgroundError),Le.innerHTML=ue,Le.onclick=function(){W(ie,X),J(),U?U(I.value):E&&E(I.value)},z.appendChild(ne),z.appendChild(I),z.appendChild(fe),z.appendChild(Le),z.listener=function(ce){A(ce)?fe.click():_(ce)&&Le.click()},$(z,X),I.focus(),R(z,X)};T.input=Q;var Qe=T.select=function(g,v){var E=g.text,V=g.cancelText,O=V===void 0?"Cancel":V,se=g.cancelCallback,ge=g.choices,ue=g.position,D=ue===void 0?m.positions.select||D.top:ue;me(),F();var U=document.createElement("div"),K=x();U.id=K;var X=document.createElement("div");X.classList.add(m.classes.textbox),X.classList.add(m.classes.backgroundInfo),X.innerHTML='
'+E+"
",U.appendChild(X),ge.forEach(function(z,ie){var ne=z.type,I=ne===void 0?1:ne,fe=z.text,Le=z.handler,ce=document.createElement("div");ce.classList.add(S[I]),ce.classList.add(m.classes.button),ce.classList.add(m.classes.selectChoice);var de=ge[ie+1];de&&!de.type&&(de.type=1),de&&de.type===I&&ce.classList.add(m.classes.selectChoiceRepeated),ce.innerHTML=fe,ce.onclick=function(){W(K,D),J(),Le()},U.appendChild(ce)});var M=document.createElement("div");M.classList.add(m.classes.backgroundNeutral),M.classList.add(m.classes.button),M.innerHTML=O,M.onclick=function(){W(K,D),J(),se?se():v&&v()},U.appendChild(M),U.listener=function(z){_(z)&&M.click()},$(U,D),R(U,D)},oe=T.date=function(g,v,E){var V=g.value,O=V===void 0?new Date:V,se=g.submitText,ge=se===void 0?"OK":se,ue=g.cancelText,D=ue===void 0?"Cancel":ue,U=g.submitCallback,K=g.cancelCallback,X=g.position,M=X===void 0?m.positions.date||M.top:X;me(),F();var z="▾",ie=document.createElement("div"),ne=document.createElement("div"),I=document.createElement("div"),fe=function(le){ie.innerHTML=m.dateMonths[le.getMonth()],ne.innerHTML=le.getDate(),I.innerHTML=le.getFullYear()},Le=function(le){var re=new Date(O.getFullYear(),O.getMonth()+1,0).getDate(),Be=le.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Be)>re&&(Be=re.toString()),le.target.textContent=Be,Number(Be)<1&&(Be="1"),O.setDate(Number(Be))},ce=function(le){var re=le.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);le.target.textContent=re,O.setFullYear(Number(re))},de=function(le){fe(O)},_e=function(le){var re=new Date(O.getFullYear(),O.getMonth()+le+1,0).getDate();O.getDate()>re&&O.setDate(re),O.setMonth(O.getMonth()+le),fe(O)},Fe=function(le){O.setDate(O.getDate()+le),fe(O)},yt=function(le){var re=O.getFullYear()+le;re<0?O.setFullYear(0):O.setFullYear(O.getFullYear()+le),fe(O)},Ge=document.createElement("div"),at=x();Ge.id=at;var ct=document.createElement("div");ct.classList.add(m.classes.backgroundInfo);var Ce=document.createElement("div");Ce.classList.add(m.classes.dateSelectorInner);var qe=document.createElement("div");qe.classList.add(m.classes.button),qe.classList.add(m.classes.elementThird),qe.classList.add(m.classes.dateSelectorUp),qe.innerHTML=z;var Se=document.createElement("div");Se.classList.add(m.classes.button),Se.classList.add(m.classes.elementThird),Se.classList.add(m.classes.dateSelectorUp),Se.innerHTML=z;var Ne=document.createElement("div");Ne.classList.add(m.classes.button),Ne.classList.add(m.classes.elementThird),Ne.classList.add(m.classes.dateSelectorUp),Ne.innerHTML=z,ie.classList.add(m.classes.element),ie.classList.add(m.classes.elementThird),ie.innerHTML=m.dateMonths[O.getMonth()],ne.classList.add(m.classes.element),ne.classList.add(m.classes.elementThird),ne.setAttribute("contentEditable",!0),ne.addEventListener("input",Le),ne.addEventListener("blur",de),ne.innerHTML=O.getDate(),I.classList.add(m.classes.element),I.classList.add(m.classes.elementThird),I.setAttribute("contentEditable",!0),I.addEventListener("input",ce),I.addEventListener("blur",de),I.innerHTML=O.getFullYear();var Ye=document.createElement("div");Ye.classList.add(m.classes.button),Ye.classList.add(m.classes.elementThird),Ye.innerHTML=z;var Xe=document.createElement("div");Xe.classList.add(m.classes.button),Xe.classList.add(m.classes.elementThird),Xe.innerHTML=z;var ot=document.createElement("div");ot.classList.add(m.classes.button),ot.classList.add(m.classes.elementThird),ot.innerHTML=z,qe.onclick=function(){return _e(1)},Se.onclick=function(){return Fe(1)},Ne.onclick=function(){return yt(1)},Ye.onclick=function(){return _e(-1)},Xe.onclick=function(){return Fe(-1)},ot.onclick=function(){return yt(-1)};var Pe=document.createElement("div");Pe.classList.add(m.classes.button),Pe.classList.add(m.classes.elementHalf),Pe.classList.add(m.classes.backgroundSuccess),Pe.innerHTML=ge,Pe.onclick=function(){W(at,M),J(),U?U(O):v&&v(O)};var Je=document.createElement("div");Je.classList.add(m.classes.button),Je.classList.add(m.classes.elementHalf),Je.classList.add(m.classes.backgroundError),Je.innerHTML=D,Je.onclick=function(){W(at,M),J(),K?K(O):E&&E(O)},Ce.appendChild(qe),Ce.appendChild(Se),Ce.appendChild(Ne),Ce.appendChild(ie),Ce.appendChild(ne),Ce.appendChild(I),Ce.appendChild(Ye),Ce.appendChild(Xe),Ce.appendChild(ot),ct.appendChild(Ce),Ge.appendChild(ct),Ge.appendChild(Pe),Ge.appendChild(Je),Ge.listener=function(le){A(le)?Pe.click():_(le)&&Je.click()},$(Ge,M),R(Ge,M)};T.default={alert:Te,force:ve,confirm:we,input:Q,select:Qe,date:oe,setOptions:k,hideAlerts:F}}])})}).call(n,a(0)(r))}])})}),vn={};bs(vn,{default:()=>Ft});var ys=wn(xn());Ts(vn,wn(xn()));var{default:yn,...ws}=ys,Ft=yn!==void 0?yn:ws;var br=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function Tr(e,t,r,n){e.addEventListener?e.addEventListener(t,r,n):e.attachEvent&&e.attachEvent("on".concat(t),function(){r(window.event)})}function En(e,t){for(var r=t.slice(0,t.length-1),n=0;n=0;)t[r-1]+=",",t.splice(r,1),r=t.lastIndexOf("");return t}function xs(e,t){for(var r=e.length>=t.length?e:t,n=e.length>=t.length?t:e,a=!0,i=0;i=0&&ae.splice(r,1),e.key&&e.key.toLowerCase()==="meta"&&ae.splice(0,ae.length),(t===93||t===224)&&(t=91),t in xe){xe[t]=!1;for(var n in $e)$e[n]===t&&(Ve[n]=!1)}}function _s(e){if(typeof e>"u")Object.keys(pe).forEach(function(c){return delete pe[c]});else if(Array.isArray(e))e.forEach(function(c){c.key&&yr(c)});else if(typeof e=="object")e.key&&yr(e);else if(typeof e=="string"){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n1?En($e,l):[];pe[T]=pe[T].filter(function(C){var b=n?C.method===n:!0;return!(b&&C.scope===r&&xs(C.mods,L))})}})};function Sn(e,t,r,n){if(t.element===n){var a;if(t.scope===r||t.scope==="all"){a=t.mods.length>0;for(var i in xe)Object.prototype.hasOwnProperty.call(xe,i)&&(!xe[i]&&t.mods.indexOf(+i)>-1||xe[i]&&t.mods.indexOf(+i)===-1)&&(a=!1);(t.mods.length===0&&!xe[16]&&!xe[18]&&!xe[17]&&!xe[91]||a||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function An(e,t){var r=pe["*"],n=e.keyCode||e.which||e.charCode;if(Ve.filter.call(this,e)){if((n===93||n===224)&&(n=91),ae.indexOf(n)===-1&&n!==229&&ae.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(b){var Z=xr[b];e[b]&&ae.indexOf(Z)===-1?ae.push(Z):!e[b]&&ae.indexOf(Z)>-1?ae.splice(ae.indexOf(Z),1):b==="metaKey"&&e[b]&&ae.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(ae=ae.slice(ae.indexOf(Z))))}),n in xe){xe[n]=!0;for(var a in $e)$e[a]===n&&(Ve[a]=!0);if(!r)return}for(var i in xe)Object.prototype.hasOwnProperty.call(xe,i)&&(xe[i]=e[xr[i]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(ae.indexOf(17)===-1&&ae.push(17),ae.indexOf(18)===-1&&ae.push(18),xe[17]=!0,xe[18]=!0);var c=Ct();if(r)for(var o=0;o-1}function Ve(e,t,r){ae=[];var n=Mn(e),a=[],i="all",c=document,o=0,l=!1,u=!0,d="+",T=!1;for(r===void 0&&typeof t=="function"&&(r=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(i=t.scope),t.element&&(c=t.element),t.keyup&&(l=t.keyup),t.keydown!==void 0&&(u=t.keydown),t.capture!==void 0&&(T=t.capture),typeof t.splitKey=="string"&&(d=t.splitKey)),typeof t=="string"&&(i=t);o1&&(a=En($e,e)),e=e[e.length-1],e=e==="*"?"*":Wt(e),e in pe||(pe[e]=[]),pe[e].push({keyup:l,keydown:u,scope:i,mods:a,shortcut:n[o],method:r,key:n[o],splitKey:d,element:c});typeof c<"u"&&!Ps(c)&&window&&(_n.push(c),Tr(c,"keydown",function(L){An(L,c)},T),Cn||(Cn=!0,Tr(window,"focus",function(){ae=[]},T)),Tr(c,"keyup",function(L){An(L,c),Ls(L)},T))}function Rs(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(pe).forEach(function(r){var n=pe[r].filter(function(a){return a.scope===t&&a.shortcut===e});n.forEach(function(a){a&&a.method&&a.method()})})}var wr={getPressedKeyString:As,setScope:Pn,getScope:Ct,deleteScope:Ms,getPressedKeyCodes:Ss,isPressed:Es,filter:ks,trigger:Rs,unbind:_s,keyMap:vt,modifier:$e,modifierMap:xr};for(jt in wr)Object.prototype.hasOwnProperty.call(wr,jt)&&(Ve[jt]=wr[jt]);var jt;typeof document<"u"&&(kn=window.hotkeys,Ve.noConflict=function(e){return e&&window.hotkeys===Ve&&(window.hotkeys=kn),Ve},window.hotkeys=Ve);var kn;var Is=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),r=Math.round(t-this.#e);this.#e=t}},Os=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Is:{reset:()=>{},stop:()=>{}}}},oc=new Os,Ds="poegempjloogba",Ns="ension://";var Bs="rome-ext";var sc="ch"+Bs+Ns+"cofdb"+Ds+"gkncekinflcnj";var{entries:Fn,setPrototypeOf:Rn,isFrozen:Fs,getPrototypeOf:js,getOwnPropertyDescriptor:Ws}=Object,{freeze:Ie,seal:ze,create:Hs}=Object,{apply:Er,construct:Mr}=typeof Reflect<"u"&&Reflect;Er||(Er=function(e,t,r){return e.apply(t,r)});Ie||(Ie=function(e){return e});ze||(ze=function(e){return e});Mr||(Mr=function(e,t){return new e(...t)});var qs=We(Array.prototype.forEach),In=We(Array.prototype.pop),St=We(Array.prototype.push),Kt=We(String.prototype.toLowerCase),vr=We(String.prototype.toString),Ks=We(String.prototype.match),Ke=We(String.prototype.replace),zs=We(String.prototype.indexOf),Gs=We(String.prototype.trim),Ue=We(RegExp.prototype.test),At=Vs(TypeError);function We(e){return function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),a=1;a/gm),Zs=ze(/\${[\w\W]*}/gm),Qs=ze(/^data-[\-\w.\u00B7-\uFFFF]/),ei=ze(/^aria-[\-\w]+$/),jn=ze(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),ti=ze(/^(?:\w+script|data):/i),ri=ze(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Wn=ze(/^html$/i),Un=Object.freeze({__proto__:null,MUSTACHE_EXPR:Xs,ERB_EXPR:Js,TMPLIT_EXPR:Zs,DATA_ATTR:Qs,ARIA_ATTR:ei,IS_ALLOWED_URI:jn,IS_SCRIPT_OR_DATA:ti,ATTR_WHITESPACE:ri,DOCTYPE_NAME:Wn}),ni=()=>typeof window>"u"?null:window,ai=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let r=null,n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(r=t.getAttribute(n));let a="dompurify"+(r?"#"+r:"");try{return e.createPolicy(a,{createHTML(i){return i},createScriptURL(i){return i}})}catch{return null}};function Hn(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ni(),t=s=>Hn(s);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let r=e.document,n=r.currentScript,{document:a}=e,{DocumentFragment:i,HTMLTemplateElement:c,Node:o,Element:l,NodeFilter:u,NamedNodeMap:d=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:T,DOMParser:L,trustedTypes:C}=e,b=l.prototype,Z=Ht(b,"cloneNode"),te=Ht(b,"nextSibling"),m=Ht(b,"childNodes"),k=Ht(b,"parentNode");if(typeof c=="function"){let s=a.createElement("template");s.content&&s.content.ownerDocument&&(a=s.content.ownerDocument)}let G,Y="",{implementation:me,createNodeIterator:x,createDocumentFragment:S,getElementsByTagName:f}=a,{importNode:A}=r,_={};t.isSupported=typeof Fn=="function"&&typeof k=="function"&&me&&me.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:$,ERB_EXPR:W,TMPLIT_EXPR:R,DATA_ATTR:J,ARIA_ATTR:F,IS_SCRIPT_OR_DATA:Te,ATTR_WHITESPACE:ve}=Un,{IS_ALLOWED_URI:we}=Un,Q=null,Qe=H({},[...On,...Cr,...Sr,...Ar,...Dn]),oe=null,g=H({},[...Nn,...kr,...Bn,...qt]),v=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),E=null,V=null,O=!0,se=!0,ge=!1,ue=!0,D=!1,U=!1,K=!1,X=!1,M=!1,z=!1,ie=!1,ne=!0,I=!1,fe="user-content-",Le=!0,ce=!1,de={},_e=null,Fe=H({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),yt=null,Ge=H({},["audio","video","img","source","image","track"]),at=null,ct=H({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ce="http://www.w3.org/1998/Math/MathML",qe="http://www.w3.org/2000/svg",Se="http://www.w3.org/1999/xhtml",Ne=Se,Ye=!1,Xe=null,ot=H({},[Ce,qe,Se],vr),Pe,Je=["application/xhtml+xml","text/html"],le="text/html",re,Be=null,Wa=a.createElement("form"),Yr=function(s){return s instanceof RegExp||s instanceof Function},nr=function(s){if(!(Be&&Be===s)){if((!s||typeof s!="object")&&(s={}),s=mt(s),Pe=Je.indexOf(s.PARSER_MEDIA_TYPE)===-1?Pe=le:Pe=s.PARSER_MEDIA_TYPE,re=Pe==="application/xhtml+xml"?vr:Kt,Q="ALLOWED_TAGS"in s?H({},s.ALLOWED_TAGS,re):Qe,oe="ALLOWED_ATTR"in s?H({},s.ALLOWED_ATTR,re):g,Xe="ALLOWED_NAMESPACES"in s?H({},s.ALLOWED_NAMESPACES,vr):ot,at="ADD_URI_SAFE_ATTR"in s?H(mt(ct),s.ADD_URI_SAFE_ATTR,re):ct,yt="ADD_DATA_URI_TAGS"in s?H(mt(Ge),s.ADD_DATA_URI_TAGS,re):Ge,_e="FORBID_CONTENTS"in s?H({},s.FORBID_CONTENTS,re):Fe,E="FORBID_TAGS"in s?H({},s.FORBID_TAGS,re):{},V="FORBID_ATTR"in s?H({},s.FORBID_ATTR,re):{},de="USE_PROFILES"in s?s.USE_PROFILES:!1,O=s.ALLOW_ARIA_ATTR!==!1,se=s.ALLOW_DATA_ATTR!==!1,ge=s.ALLOW_UNKNOWN_PROTOCOLS||!1,ue=s.ALLOW_SELF_CLOSE_IN_ATTR!==!1,D=s.SAFE_FOR_TEMPLATES||!1,U=s.WHOLE_DOCUMENT||!1,M=s.RETURN_DOM||!1,z=s.RETURN_DOM_FRAGMENT||!1,ie=s.RETURN_TRUSTED_TYPE||!1,X=s.FORCE_BODY||!1,ne=s.SANITIZE_DOM!==!1,I=s.SANITIZE_NAMED_PROPS||!1,Le=s.KEEP_CONTENT!==!1,ce=s.IN_PLACE||!1,we=s.ALLOWED_URI_REGEXP||jn,Ne=s.NAMESPACE||Se,v=s.CUSTOM_ELEMENT_HANDLING||{},s.CUSTOM_ELEMENT_HANDLING&&Yr(s.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(v.tagNameCheck=s.CUSTOM_ELEMENT_HANDLING.tagNameCheck),s.CUSTOM_ELEMENT_HANDLING&&Yr(s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(v.attributeNameCheck=s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),s.CUSTOM_ELEMENT_HANDLING&&typeof s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(v.allowCustomizedBuiltInElements=s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),D&&(se=!1),z&&(M=!0),de&&(Q=H({},[...Dn]),oe=[],de.html===!0&&(H(Q,On),H(oe,Nn)),de.svg===!0&&(H(Q,Cr),H(oe,kr),H(oe,qt)),de.svgFilters===!0&&(H(Q,Sr),H(oe,kr),H(oe,qt)),de.mathMl===!0&&(H(Q,Ar),H(oe,Bn),H(oe,qt))),s.ADD_TAGS&&(Q===Qe&&(Q=mt(Q)),H(Q,s.ADD_TAGS,re)),s.ADD_ATTR&&(oe===g&&(oe=mt(oe)),H(oe,s.ADD_ATTR,re)),s.ADD_URI_SAFE_ATTR&&H(at,s.ADD_URI_SAFE_ATTR,re),s.FORBID_CONTENTS&&(_e===Fe&&(_e=mt(_e)),H(_e,s.FORBID_CONTENTS,re)),Le&&(Q["#text"]=!0),U&&H(Q,["html","head","body"]),Q.table&&(H(Q,["tbody"]),delete E.tbody),s.TRUSTED_TYPES_POLICY){if(typeof s.TRUSTED_TYPES_POLICY.createHTML!="function")throw At('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof s.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw At('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');G=s.TRUSTED_TYPES_POLICY,Y=G.createHTML("")}else G===void 0&&(G=ai(C,n)),G!==null&&typeof Y=="string"&&(Y=G.createHTML(""));Ie&&Ie(s),Be=s}},Xr=H({},["mi","mo","mn","ms","mtext"]),Jr=H({},["foreignobject","desc","title","annotation-xml"]),Ha=H({},["title","style","font","a","script"]),Dt=H({},Cr);H(Dt,Sr),H(Dt,$s);let ar=H({},Ar);H(ar,Ys);let qa=function(s){let y=k(s);(!y||!y.tagName)&&(y={namespaceURI:Ne,tagName:"template"});let h=Kt(s.tagName),ee=Kt(y.tagName);return Xe[s.namespaceURI]?s.namespaceURI===qe?y.namespaceURI===Se?h==="svg":y.namespaceURI===Ce?h==="svg"&&(ee==="annotation-xml"||Xr[ee]):!!Dt[h]:s.namespaceURI===Ce?y.namespaceURI===Se?h==="math":y.namespaceURI===qe?h==="math"&&Jr[ee]:!!ar[h]:s.namespaceURI===Se?y.namespaceURI===qe&&!Jr[ee]||y.namespaceURI===Ce&&!Xr[ee]?!1:!ar[h]&&(Ha[h]||!Dt[h]):!!(Pe==="application/xhtml+xml"&&Xe[s.namespaceURI]):!1},ut=function(s){St(t.removed,{element:s});try{s.parentNode.removeChild(s)}catch{s.remove()}},or=function(s,y){try{St(t.removed,{attribute:y.getAttributeNode(s),from:y})}catch{St(t.removed,{attribute:null,from:y})}if(y.removeAttribute(s),s==="is"&&!oe[s])if(M||z)try{ut(y)}catch{}else try{y.setAttribute(s,"")}catch{}},Zr=function(s){let y,h;if(X)s=""+s;else{let Re=Ks(s,/^[\r\n\t ]+/);h=Re&&Re[0]}Pe==="application/xhtml+xml"&&Ne===Se&&(s=''+s+"");let ee=G?G.createHTML(s):s;if(Ne===Se)try{y=new L().parseFromString(ee,Pe)}catch{}if(!y||!y.documentElement){y=me.createDocument(Ne,"template",null);try{y.documentElement.innerHTML=Ye?Y:ee}catch{}}let be=y.body||y.documentElement;return s&&h&&be.insertBefore(a.createTextNode(h),be.childNodes[0]||null),Ne===Se?f.call(y,U?"html":"body")[0]:U?y.documentElement:be},Qr=function(s){return x.call(s.ownerDocument||s,s,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT,null,!1)},Ka=function(s){return s instanceof T&&(typeof s.nodeName!="string"||typeof s.textContent!="string"||typeof s.removeChild!="function"||!(s.attributes instanceof d)||typeof s.removeAttribute!="function"||typeof s.setAttribute!="function"||typeof s.namespaceURI!="string"||typeof s.insertBefore!="function"||typeof s.hasChildNodes!="function")},Nt=function(s){return typeof o=="object"?s instanceof o:s&&typeof s=="object"&&typeof s.nodeType=="number"&&typeof s.nodeName=="string"},Ze=function(s,y,h){_[s]&&qs(_[s],ee=>{ee.call(t,y,h,Be)})},en=function(s){let y;if(Ze("beforeSanitizeElements",s,null),Ka(s))return ut(s),!0;let h=re(s.nodeName);if(Ze("uponSanitizeElement",s,{tagName:h,allowedTags:Q}),s.hasChildNodes()&&!Nt(s.firstElementChild)&&(!Nt(s.content)||!Nt(s.content.firstElementChild))&&Ue(/<[/\w]/g,s.innerHTML)&&Ue(/<[/\w]/g,s.textContent))return ut(s),!0;if(!Q[h]||E[h]){if(!E[h]&&rn(h)&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,h)||v.tagNameCheck instanceof Function&&v.tagNameCheck(h)))return!1;if(Le&&!_e[h]){let ee=k(s)||s.parentNode,be=m(s)||s.childNodes;if(be&&ee){let Re=be.length;for(let De=Re-1;De>=0;--De)ee.insertBefore(Z(be[De],!0),te(s))}}return ut(s),!0}return s instanceof l&&!qa(s)||(h==="noscript"||h==="noembed")&&Ue(/<\/no(script|embed)/i,s.innerHTML)?(ut(s),!0):(D&&s.nodeType===3&&(y=s.textContent,y=Ke(y,$," "),y=Ke(y,W," "),y=Ke(y,R," "),s.textContent!==y&&(St(t.removed,{element:s.cloneNode()}),s.textContent=y)),Ze("afterSanitizeElements",s,null),!1)},tn=function(s,y,h){if(ne&&(y==="id"||y==="name")&&(h in a||h in Wa))return!1;if(!(se&&!V[y]&&Ue(J,y))&&!(O&&Ue(F,y))){if(!oe[y]||V[y]){if(!(rn(s)&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,s)||v.tagNameCheck instanceof Function&&v.tagNameCheck(s))&&(v.attributeNameCheck instanceof RegExp&&Ue(v.attributeNameCheck,y)||v.attributeNameCheck instanceof Function&&v.attributeNameCheck(y))||y==="is"&&v.allowCustomizedBuiltInElements&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,h)||v.tagNameCheck instanceof Function&&v.tagNameCheck(h))))return!1}else if(!at[y]&&!Ue(we,Ke(h,ve,""))&&!((y==="src"||y==="xlink:href"||y==="href")&&s!=="script"&&zs(h,"data:")===0&&yt[s])&&!(ge&&!Ue(Te,Ke(h,ve,"")))&&h)return!1}return!0},rn=function(s){return s.indexOf("-")>0},nn=function(s){let y,h,ee,be;Ze("beforeSanitizeAttributes",s,null);let{attributes:Re}=s;if(!Re)return;let De={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:oe};for(be=Re.length;be--;){y=Re[be];let{name:ye,namespaceURI:dt}=y;if(h=ye==="value"?y.value:Gs(y.value),ee=re(ye),De.attrName=ee,De.attrValue=h,De.keepAttr=!0,De.forceKeepAttr=void 0,Ze("uponSanitizeAttribute",s,De),h=De.attrValue,De.forceKeepAttr||(or(ye,s),!De.keepAttr))continue;if(!ue&&Ue(/\/>/i,h)){or(ye,s);continue}D&&(h=Ke(h,$," "),h=Ke(h,W," "),h=Ke(h,R," "));let an=re(s.nodeName);if(tn(an,ee,h)){if(I&&(ee==="id"||ee==="name")&&(or(ye,s),h=fe+h),G&&typeof C=="object"&&typeof C.getAttributeType=="function"&&!dt)switch(C.getAttributeType(an,ee)){case"TrustedHTML":{h=G.createHTML(h);break}case"TrustedScriptURL":{h=G.createScriptURL(h);break}}try{dt?s.setAttributeNS(dt,ye,h):s.setAttribute(ye,h),In(t.removed)}catch{}}}Ze("afterSanitizeAttributes",s,null)},za=function s(y){let h,ee=Qr(y);for(Ze("beforeSanitizeShadowDOM",y,null);h=ee.nextNode();)Ze("uponSanitizeShadowNode",h,null),!en(h)&&(h.content instanceof i&&s(h.content),nn(h));Ze("afterSanitizeShadowDOM",y,null)};return t.sanitize=function(s){let y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},h,ee,be,Re;if(Ye=!s,Ye&&(s=""),typeof s!="string"&&!Nt(s))if(typeof s.toString=="function"){if(s=s.toString(),typeof s!="string")throw At("dirty is not a string, aborting")}else throw At("toString is not a function");if(!t.isSupported)return s;if(K||nr(y),t.removed=[],typeof s=="string"&&(ce=!1),ce){if(s.nodeName){let dt=re(s.nodeName);if(!Q[dt]||E[dt])throw At("root node is forbidden and cannot be sanitized in-place")}}else if(s instanceof o)h=Zr(""),ee=h.ownerDocument.importNode(s,!0),ee.nodeType===1&&ee.nodeName==="BODY"||ee.nodeName==="HTML"?h=ee:h.appendChild(ee);else{if(!M&&!D&&!U&&s.indexOf("<")===-1)return G&&ie?G.createHTML(s):s;if(h=Zr(s),!h)return M?null:ie?Y:""}h&&X&&ut(h.firstChild);let De=Qr(ce?s:h);for(;be=De.nextNode();)en(be)||(be.content instanceof i&&za(be.content),nn(be));if(ce)return s;if(M){if(z)for(Re=S.call(h.ownerDocument);h.firstChild;)Re.appendChild(h.firstChild);else Re=h;return(oe.shadowroot||oe.shadowrootmod)&&(Re=A.call(r,Re,!0)),Re}let ye=U?h.outerHTML:h.innerHTML;return U&&Q["!doctype"]&&h.ownerDocument&&h.ownerDocument.doctype&&h.ownerDocument.doctype.name&&Ue(Wn,h.ownerDocument.doctype.name)&&(ye=" -`+ye),D&&(ye=Ke(ye,$," "),ye=Ke(ye,W," "),ye=Ke(ye,R," ")),G&&ie?G.createHTML(ye):ye},t.setConfig=function(s){nr(s),K=!0},t.clearConfig=function(){Be=null,K=!1},t.isValidAttribute=function(s,y,h){Be||nr({});let ee=re(s),be=re(y);return tn(ee,be,h)},t.addHook=function(s,y){typeof y=="function"&&(_[s]=_[s]||[],St(_[s],y))},t.removeHook=function(s){if(_[s])return In(_[s])},t.removeHooks=function(s){_[s]&&(_[s]=[])},t.removeAllHooks=function(){_={}},t}var qn=Hn();var _c=Ft.alert;var Kn={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var zn={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var Gn={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var li=[{code:"zh-CN",messages:Kn},{code:"zh-TW",messages:zn},{code:"en",messages:Gn}];var st={};for(let e of li)st[e.code]=e.messages;var it="Immersive Translate",he="immersive-translate",zt="pdf/index.html";var $n="subtitle/index.html",Yn="ebook/index.html",Xn="ebook/make/index.html",q="immersiveTranslate",Gt="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",gt=q+"GoogleAccessToken",Jn=q+"AuthFlow",Vt="immersive-translate-config-latest.json",Xc=q+"AuthState",Jc=q+"IframeMessage",Zc=q+"WaitForRateLimit",Qc=q+"DocumentMessageAsk",eu=q+"DocumentMessageTellThirdParty",tu=q+"DocumentMessageThirdPartyTell",ru=q+"DocumentMessageHandler",nu=`${q}Container`,au=`${q}SpecifiedContainer`,$t="buildinConfig",kt="localConfig",Lr="openOptionsPage";var _r="translateLocalPdfFile",Zn="donateContext",Pr="openEbookViewer",Rr="openEbookBuilder",Qn="openSubtitleBuilder",ou=`${q}PageTranslatedStatus`,su=`${q}PageUrlChanged`,iu=`${q}ReceiveCommand`,lu=q+"LastUseMouseHoverTime",cu=q+"LastUseInputTime",uu=q+"LastUseManualTranslatePageTime",du=`${q}PopupReceiveMessage`,ci="immersivetranslate.com",ui="config.immersivetranslate.com",mu=`https://${ci}/`,gu=`https://${ui}/default_config.json`,pu=`${q}Mark`;var hu=`${q}Root`,fu=`data-${he}-effect`,bu=`data-${he}-translation-element-mark`,Tu=`${q}TranslationElementMark`,yu=`${q}TranslatedMark`,wu=`${q}ParagraphId`,xu=`${q}LoadingId`,vu=`data-${he}-loading-id`,Cu=`${q}ErrorId`,Su=`data-${he}-error-id`,Au=`${q}AtomicBlockMark`,ku=`${q}ExcludeMark`,Eu=`data-${he}-exclude-mark`,Mu=`${q}StayOriginalMark`,Lu=`${q}PreWhitespaceMark`,_u=`${q}InlineMark`,Pu=`${q}BlockMark`,Ru=`${q}Left`,Iu=`${q}Right`,Ou=`${q}Width`,Du=`${q}Height`,Nu=`${q}Top`,Bu=`${q}FontSize`;var Uu=`${q}GlobalStyleMark`;var Fu=`${he}-target-wrapper`,ju=`${he}-pdf-target-container`,Wu=`${he}-target-inner`,Hu=`${he}-source-wrapper`,qu=`${he}-target-translation-block-wrapper`,Ku=`${he}-root-translation-theme`,zu=`${q}RootTranslationTheme`,Gu=`${he}-target-translation-vertical-block-wrapper`,Vu=`${he}-target-translation-pdf-block-wrapper`,$u=`${he}-target-translation-pre-whitespace`,Yu=`${he}-target-translation-inline-wrapper`;var Et=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"];var Yt="zh-CN";var Vn=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],di={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"firefox_zip"};var Ya=Object.create,ir=Object.defineProperty,Za=Object.getOwnPropertyDescriptor,sn=Object.getOwnPropertyNames,Xa=Object.getPrototypeOf,Ja=Object.prototype.hasOwnProperty,Qa=(e,t)=>function(){return t||(0,e[sn(e)[0]])((t={exports:{}}).exports,t),t.exports},eo=(e,t)=>{for(var r in t)ir(e,r,{get:t[r],enumerable:!0})},sr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of sn(t))!Ja.call(e,a)&&a!==r&&ir(e,a,{get:()=>t[a],enumerable:!(n=Za(t,a))||n.enumerable});return e},to=(e,t,r)=>(sr(e,t,"default"),r&&sr(r,t,"default")),ln=(e,t,r)=>(r=e!=null?Ya(Xa(e)):{},sr(t||!e||!e.__esModule?ir(r,"default",{value:e,enumerable:!0}):r,e)),cn=Qa({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(r,n){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],n);else if(typeof e<"u")n(t);else{var a={exports:{}};n(a),r.browser=a.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(r){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let n="The message port closed before a response was received.",a=i=>{let c={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(c).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class o extends WeakMap{constructor(S,f=void 0){super(f),this.createItem=S}get(S){return this.has(S)||this.set(S,this.createItem(S)),super.get(S)}}let l=x=>x&&typeof x=="object"&&typeof x.then=="function",u=(x,S)=>(...f)=>{i.runtime.lastError?x.reject(new Error(i.runtime.lastError.message)):S.singleCallbackArg||f.length<=1&&S.singleCallbackArg!==!1?x.resolve(f[0]):x.resolve(f)},d=x=>x==1?"argument":"arguments",T=(x,S)=>function(A,..._){if(_.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${d(S.maxArgs)} for ${x}(), got ${_.length}`);return new Promise(($,W)=>{if(S.fallbackToNoCallback)try{A[x](..._,u({resolve:$,reject:W},S))}catch{A[x](..._),S.fallbackToNoCallback=!1,S.noCallback=!0,$()}else S.noCallback?(A[x](..._),$()):A[x](..._,u({resolve:$,reject:W},S))})},L=(x,S,f)=>new Proxy(S,{apply(A,_,$){return f.call(_,x,...$)}}),C=Function.call.bind(Object.prototype.hasOwnProperty),b=(x,S={},f={})=>{let A=Object.create(null),_={has(W,R){return R in x||R in A},get(W,R,X){if(R in A)return A[R];if(!(R in x))return;let F=x[R];if(typeof F=="function")if(typeof S[R]=="function")F=L(x,x[R],S[R]);else if(C(f,R)){let Te=T(R,f[R]);F=L(x,x[R],Te)}else F=F.bind(x);else if(typeof F=="object"&&F!==null&&(C(S,R)||C(f,R)))F=b(F,S[R],f[R]);else if(C(f,"*"))F=b(F,S[R],f["*"]);else return Object.defineProperty(A,R,{configurable:!0,enumerable:!0,get(){return x[R]},set(Te){x[R]=Te}}),F;return A[R]=F,F},set(W,R,X,F){return R in A?A[R]=X:x[R]=X,!0},defineProperty(W,R,X){return Reflect.defineProperty(A,R,X)},deleteProperty(W,R){return Reflect.deleteProperty(A,R)}},$=Object.create(x);return new Proxy($,_)},J=x=>({addListener(S,f,...A){S.addListener(x.get(f),...A)},hasListener(S,f){return S.hasListener(x.get(f))},removeListener(S,f){S.removeListener(x.get(f))}}),te=new o(x=>typeof x!="function"?x:function(f){let A=b(f,{},{getContent:{minArgs:0,maxArgs:0}});x(A)}),m=new o(x=>typeof x!="function"?x:function(f,A,_){let $=!1,W,R=new Promise(ve=>{W=function(ye){$=!0,ve(ye)}}),X;try{X=x(f,A,W)}catch(ve){X=Promise.reject(ve)}let F=X!==!0&&l(X);if(X!==!0&&!F&&!$)return!1;let Te=ve=>{ve.then(ye=>{_(ye)},ye=>{let Q;ye&&(ye instanceof Error||typeof ye.message=="string")?Q=ye.message:Q="An unexpected error occurred",_({__mozWebExtensionPolyfillReject__:!0,message:Q})}).catch(ye=>{})};return Te(F?X:R),!0}),k=({reject:x,resolve:S},f)=>{i.runtime.lastError?i.runtime.lastError.message===n?S():x(new Error(i.runtime.lastError.message)):f&&f.__mozWebExtensionPolyfillReject__?x(new Error(f.message)):S(f)},G=(x,S,f,...A)=>{if(A.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${d(S.maxArgs)} for ${x}(), got ${A.length}`);return new Promise((_,$)=>{let W=k.bind(null,{resolve:_,reject:$});A.push(W),f.sendMessage(...A)})},Y={devtools:{network:{onRequestFinished:J(te)}},runtime:{onMessage:J(m),onMessageExternal:J(m),sendMessage:G.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:G.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},me={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return c.privacy={network:{"*":me},services:{"*":me},websites:{"*":me}},b(i,Y,c)};r.exports=a(chrome)}else r.exports=globalThis.browser})}}),un={};eo(un,{default:()=>Bt});var ro=ln(cn());to(un,ln(cn()));var{default:on,...no}=ro,Bt=on!==void 0?on:no;globalThis.immersiveTranslateBrowserAPI=Bt;function yt(){let e,t="pending",r=new Promise((n,a)=>{e={async resolve(i){await i,t="fulfilled",n(i)},reject(i){t="rejected",a(i)}}});return Object.defineProperty(r,"state",{get:()=>t}),Object.assign(r,e)}function lr(e,t={}){let{signal:r,persistent:n}=t;return r?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((a,i)=>{let c=()=>{clearTimeout(l),i(new DOMException("Delay was aborted.","AbortError"))},l=setTimeout(()=>{r?.removeEventListener("abort",c),a()},e);if(r?.addEventListener("abort",c,{once:!0}),n===!1)try{Deno.unrefTimer(l)}catch(u){if(!(u instanceof ReferenceError))throw u}})}var dn=class{#e=0;#t=[];#r=[];#n=yt();add(t){++this.#e,this.#a(t[Symbol.asyncIterator]())}async#a(t){try{let{value:r,done:n}=await t.next();n?--this.#e:this.#t.push({iterator:t,value:r})}catch(r){this.#r.push(r)}this.#n.resolve()}async*iterate(){for(;this.#e>0;){await this.#n;for(let t=0;tPo,bgBlue:()=>Do,bgBrightBlack:()=>Fo,bgBrightBlue:()=>qo,bgBrightCyan:()=>Ko,bgBrightGreen:()=>Wo,bgBrightMagenta:()=>zo,bgBrightRed:()=>jo,bgBrightWhite:()=>Go,bgBrightYellow:()=>Ho,bgCyan:()=>Bo,bgGreen:()=>Io,bgMagenta:()=>No,bgRed:()=>Ro,bgRgb24:()=>Zo,bgRgb8:()=>$o,bgWhite:()=>Uo,bgYellow:()=>Oo,black:()=>ho,blue:()=>wo,bold:()=>io,brightBlack:()=>pn,brightBlue:()=>Eo,brightCyan:()=>Lo,brightGreen:()=>Ao,brightMagenta:()=>Mo,brightRed:()=>So,brightWhite:()=>_o,brightYellow:()=>ko,cyan:()=>xo,dim:()=>lo,getColorEnabled:()=>oo,gray:()=>Co,green:()=>bo,hidden:()=>go,inverse:()=>mo,italic:()=>co,magenta:()=>yo,red:()=>fo,reset:()=>so,rgb24:()=>Yo,rgb8:()=>Vo,setColorEnabled:()=>ao,strikethrough:()=>po,stripColor:()=>Jo,underline:()=>uo,white:()=>vo,yellow:()=>To});var{Deno:mn}=globalThis,gn=typeof mn?.noColor=="boolean"?mn.noColor:!0,cr=!gn;function ao(e){gn||(cr=e)}function oo(){return cr}function N(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function B(e,t){return cr?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function so(e){return B(e,N([0],0))}function io(e){return B(e,N([1],22))}function lo(e){return B(e,N([2],22))}function co(e){return B(e,N([3],23))}function uo(e){return B(e,N([4],24))}function mo(e){return B(e,N([7],27))}function go(e){return B(e,N([8],28))}function po(e){return B(e,N([9],29))}function ho(e){return B(e,N([30],39))}function fo(e){return B(e,N([31],39))}function bo(e){return B(e,N([32],39))}function To(e){return B(e,N([33],39))}function wo(e){return B(e,N([34],39))}function yo(e){return B(e,N([35],39))}function xo(e){return B(e,N([36],39))}function vo(e){return B(e,N([37],39))}function Co(e){return pn(e)}function pn(e){return B(e,N([90],39))}function So(e){return B(e,N([91],39))}function Ao(e){return B(e,N([92],39))}function ko(e){return B(e,N([93],39))}function Eo(e){return B(e,N([94],39))}function Mo(e){return B(e,N([95],39))}function Lo(e){return B(e,N([96],39))}function _o(e){return B(e,N([97],39))}function Po(e){return B(e,N([40],49))}function Ro(e){return B(e,N([41],49))}function Io(e){return B(e,N([42],49))}function Oo(e){return B(e,N([43],49))}function Do(e){return B(e,N([44],49))}function No(e){return B(e,N([45],49))}function Bo(e){return B(e,N([46],49))}function Uo(e){return B(e,N([47],49))}function Fo(e){return B(e,N([100],49))}function jo(e){return B(e,N([101],49))}function Wo(e){return B(e,N([102],49))}function Ho(e){return B(e,N([103],49))}function qo(e){return B(e,N([104],49))}function zo(e){return B(e,N([105],49))}function Ko(e){return B(e,N([106],49))}function Go(e){return B(e,N([107],49))}function et(e,t=255,r=0){return Math.trunc(Math.max(Math.min(e,t),r))}function Vo(e,t){return B(e,N([38,5,et(t)],39))}function $o(e,t){return B(e,N([48,5,et(t)],49))}function Yo(e,t){return typeof t=="number"?B(e,N([38,2,t>>16&255,t>>8&255,t&255],39)):B(e,N([38,2,et(t.r),et(t.g),et(t.b)],39))}function Zo(e,t){return typeof t=="number"?B(e,N([48,2,t>>16&255,t>>8&255,t&255],49)):B(e,N([48,2,et(t.r),et(t.g),et(t.b)],49))}var Xo=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function Jo(e){return e.replace(Xo,"")}var ur=class extends Error{constructor(t,r){super(`Exceeded max retry count (${r})`),this.name="RetryError",this.cause=t}},Qo={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function dr(e,t){let r={...Qo,...t};if(r.maxTimeout>=0&&r.minTimeout>r.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let n=r.minTimeout,a;for(let i=0;isetTimeout(o,n)),n*=r.multiplier,n=Math.max(n,r.minTimeout),r.maxTimeout>=0&&(n=Math.min(n,r.maxTimeout)),a=c}throw new ur(a,r.maxAttempts)}var Ol=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var Ut=globalThis||(typeof window<"u"?window:self),ts=Object.create,gr=Object.defineProperty,rs=Object.getOwnPropertyDescriptor,ns=Object.getOwnPropertyNames,as=Object.getPrototypeOf,os=Object.prototype.hasOwnProperty,ss=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),is=(e,t)=>{for(var r in t)gr(e,r,{get:t[r],enumerable:!0})},mr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of ns(t))!os.call(e,a)&&a!==r&&gr(e,a,{get:()=>t[a],enumerable:!(n=rs(t,a))||n.enumerable});return e},ls=(e,t,r)=>(mr(e,t,"default"),r&&mr(r,t,"default")),fn=(e,t,r)=>(r=e!=null?ts(as(e)):{},mr(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e)),bn=ss((e,t)=>{var r="Expected a function",n=NaN,a="[object Symbol]",i=/^\s+|\s+$/g,c=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt,d=typeof Ut=="object"&&Ut&&Ut.Object===Object&&Ut,T=typeof self=="object"&&self&&self.Object===Object&&self,L=d||T||Function("return this")(),C=Object.prototype,b=C.toString,J=Math.max,te=Math.min,m=function(){return L.Date.now()};function k(f,A,_){var $,W,R,X,F,Te,ve=0,ye=!1,Q=!1,Qe=!0;if(typeof f!="function")throw new TypeError(r);A=S(A)||0,Y(_)&&(ye=!!_.leading,Q="maxWait"in _,R=Q?J(S(_.maxWait)||0,A):R,Qe="trailing"in _?!!_.trailing:Qe);function oe(D){var U=$,z=W;return $=W=void 0,ve=D,X=f.apply(z,U),X}function g(D){return ve=D,F=setTimeout(V,A),ye?oe(D):X}function v(D){var U=D-Te,z=D-ve,Z=A-U;return Q?te(Z,R-z):Z}function E(D){var U=D-Te,z=D-ve;return Te===void 0||U>=A||U<0||Q&&z>=R}function V(){var D=m();if(E(D))return O(D);F=setTimeout(V,v(D))}function O(D){return F=void 0,Qe&&$?oe(D):($=W=void 0,X)}function se(){F!==void 0&&clearTimeout(F),ve=0,$=Te=W=F=void 0}function ge(){return F===void 0?X:O(m())}function ue(){var D=m(),U=E(D);if($=arguments,W=this,Te=D,U){if(F===void 0)return g(Te);if(Q)return F=setTimeout(V,A),oe(Te)}return F===void 0&&(F=setTimeout(V,A)),X}return ue.cancel=se,ue.flush=ge,ue}function G(f,A,_){var $=!0,W=!0;if(typeof f!="function")throw new TypeError(r);return Y(_)&&($="leading"in _?!!_.leading:$,W="trailing"in _?!!_.trailing:W),k(f,A,{leading:$,maxWait:A,trailing:W})}function Y(f){var A=typeof f;return!!f&&(A=="object"||A=="function")}function me(f){return!!f&&typeof f=="object"}function x(f){return typeof f=="symbol"||me(f)&&b.call(f)==a}function S(f){if(typeof f=="number")return f;if(x(f))return n;if(Y(f)){var A=typeof f.valueOf=="function"?f.valueOf():f;f=Y(A)?A+"":A}if(typeof f!="string")return f===0?f:+f;f=f.replace(i,"");var _=o.test(f);return _||l.test(f)?u(f.slice(2),_?2:8):c.test(f)?n:+f}t.exports=G}),Tn={};is(Tn,{default:()=>pr});var cs=fn(bn());ls(Tn,fn(bn()));var{default:hn,...us}=cs,pr=hn!==void 0?hn:us;var ds=Object.create,fr=Object.defineProperty,ms=Object.getOwnPropertyDescriptor,gs=Object.getOwnPropertyNames,ps=Object.getPrototypeOf,hs=Object.prototype.hasOwnProperty,fs=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),bs=(e,t)=>{for(var r in t)fr(e,r,{get:t[r],enumerable:!0})},hr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of gs(t))!hs.call(e,a)&&a!==r&&fr(e,a,{get:()=>t[a],enumerable:!(n=ms(t,a))||n.enumerable});return e},Ts=(e,t,r)=>(hr(e,t,"default"),r&&hr(r,t,"default")),yn=(e,t,r)=>(r=e!=null?ds(ps(e)):{},hr(t||!e||!e.__esModule?fr(r,"default",{value:e,enumerable:!0}):r,e)),xn=fs((e,t)=>{(function(r,n){typeof e=="object"&&typeof t=="object"?t.exports=n():typeof define=="function"&&define.amd?define([],n):typeof e=="object"?e.notie=n():r.notie=n()})(e,function(){return function(r){function n(i){if(a[i])return a[i].exports;var c=a[i]={i,l:!1,exports:{}};return r[i].call(c.exports,c,c.exports,n),c.l=!0,c.exports}var a={};return n.m=r,n.c=a,n.i=function(i){return i},n.d=function(i,c,o){n.o(i,c)||Object.defineProperty(i,c,{configurable:!1,enumerable:!0,get:o})},n.n=function(i){var c=i&&i.__esModule?function(){return i.default}:function(){return i};return n.d(c,"a",c),c},n.o=function(i,c){return Object.prototype.hasOwnProperty.call(i,c)},n.p="",n(n.s=1)}([function(r,n){r.exports=function(a){return a.webpackPolyfill||(a.deprecate=function(){},a.paths=[],a.children||(a.children=[]),Object.defineProperty(a,"loaded",{enumerable:!0,get:function(){return a.l}}),Object.defineProperty(a,"id",{enumerable:!0,get:function(){return a.i}}),a.webpackPolyfill=1),a}},function(r,n,a){"use strict";(function(i){var c,o,l,u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(d){return typeof d}:function(d){return d&&typeof Symbol=="function"&&d.constructor===Symbol&&d!==Symbol.prototype?"symbol":typeof d};(function(d,T){u(n)==="object"&&u(i)==="object"?i.exports=T():(o=[],c=T,l=typeof c=="function"?c.apply(n,o):c,l!==void 0&&(i.exports=l))})(void 0,function(){return function(d){function T(C){if(L[C])return L[C].exports;var b=L[C]={i:C,l:!1,exports:{}};return d[C].call(b.exports,b,b.exports,T),b.l=!0,b.exports}var L={};return T.m=d,T.c=L,T.i=function(C){return C},T.d=function(C,b,J){T.o(C,b)||Object.defineProperty(C,b,{configurable:!1,enumerable:!0,get:J})},T.n=function(C){var b=C&&C.__esModule?function(){return C.default}:function(){return C};return T.d(b,"a",b),b},T.o=function(C,b){return Object.prototype.hasOwnProperty.call(C,b)},T.p="",T(T.s=0)}([function(d,T,L){function C(g,v){var E={};for(var V in g)v.indexOf(V)>=0||Object.prototype.hasOwnProperty.call(g,V)&&(E[V]=g[V]);return E}Object.defineProperty(T,"__esModule",{value:!0});var b=typeof Symbol=="function"&&u(Symbol.iterator)==="symbol"?function(g){return typeof g>"u"?"undefined":u(g)}:function(g){return g&&typeof Symbol=="function"&&g.constructor===Symbol&&g!==Symbol.prototype?"symbol":typeof g>"u"?"undefined":u(g)},J=Object.assign||function(g){for(var v=1;v'+V+"",z.onclick=function(){return W(Z,U)},z.listener=function(M){(A(M)||_(M))&&F()},$(z,U),se&&se<1&&(se=1),!ue&&se&&Y(se).then(function(){return W(Z,U)})},ve=T.force=function(g,v){var E=g.type,V=E===void 0?5:E,O=g.text,se=g.buttonText,ge=se===void 0?"OK":se,ue=g.callback,D=g.position,U=D===void 0?m.positions.force||U.top:D;me(),F();var z=document.createElement("div"),Z=x();z.id=Z;var M=document.createElement("div");M.classList.add(m.classes.textbox),M.classList.add(m.classes.backgroundInfo),M.innerHTML='
'+O+"
";var K=document.createElement("div");K.classList.add(m.classes.button),K.classList.add(S[V]),K.innerHTML=ge,K.onclick=function(){W(Z,U),X(),ue?ue():v&&v()},z.appendChild(M),z.appendChild(K),z.listener=function(ie){A(ie)&&K.click()},$(z,U),R()},ye=T.confirm=function(g,v,E){var V=g.text,O=g.submitText,se=O===void 0?"Yes":O,ge=g.cancelText,ue=ge===void 0?"Cancel":ge,D=g.submitCallback,U=g.cancelCallback,z=g.position,Z=z===void 0?m.positions.confirm||Z.top:z;me(),F();var M=document.createElement("div"),K=x();M.id=K;var ie=document.createElement("div");ie.classList.add(m.classes.textbox),ie.classList.add(m.classes.backgroundInfo),ie.innerHTML='
'+V+"
";var ne=document.createElement("div");ne.classList.add(m.classes.button),ne.classList.add(m.classes.elementHalf),ne.classList.add(m.classes.backgroundSuccess),ne.innerHTML=se,ne.onclick=function(){W(K,Z),X(),D?D():v&&v()};var I=document.createElement("div");I.classList.add(m.classes.button),I.classList.add(m.classes.elementHalf),I.classList.add(m.classes.backgroundError),I.innerHTML=ue,I.onclick=function(){W(K,Z),X(),U?U():E&&E()},M.appendChild(ie),M.appendChild(ne),M.appendChild(I),M.listener=function(fe){A(fe)?ne.click():_(fe)&&I.click()},$(M,Z),R(M,Z)},Q=function(g,v,E){var V=g.text,O=g.submitText,se=O===void 0?"Submit":O,ge=g.cancelText,ue=ge===void 0?"Cancel":ge,D=g.submitCallback,U=g.cancelCallback,z=g.position,Z=z===void 0?m.positions.input||Z.top:z,M=C(g,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);me(),F();var K=document.createElement("div"),ie=x();K.id=ie;var ne=document.createElement("div");ne.classList.add(m.classes.textbox),ne.classList.add(m.classes.backgroundInfo),ne.innerHTML='
'+V+"
";var I=document.createElement("input");I.classList.add(m.classes.inputField),I.setAttribute("autocapitalize",M.autocapitalize||"none"),I.setAttribute("autocomplete",M.autocomplete||"off"),I.setAttribute("autocorrect",M.autocorrect||"off"),I.setAttribute("autofocus",M.autofocus||"true"),I.setAttribute("inputmode",M.inputmode||"verbatim"),I.setAttribute("max",M.max||""),I.setAttribute("maxlength",M.maxlength||""),I.setAttribute("min",M.min||""),I.setAttribute("minlength",M.minlength||""),I.setAttribute("placeholder",M.placeholder||""),I.setAttribute("spellcheck",M.spellcheck||"default"),I.setAttribute("step",M.step||"any"),I.setAttribute("type",M.type||"text"),I.value=M.value||"",M.allowed&&(I.oninput=function(){var ce=void 0;if(Array.isArray(M.allowed)){for(var de="",_e=M.allowed,Fe=0;Fe<_e.length;Fe++)_e[Fe]==="an"?de+="0-9a-zA-Z":_e[Fe]==="a"?de+="a-zA-Z":_e[Fe]==="n"&&(de+="0-9"),_e[Fe]==="s"&&(de+=" ");ce=new RegExp("[^"+de+"]","g")}else b(M.allowed)==="object"&&(ce=M.allowed);I.value=I.value.replace(ce,"")});var fe=document.createElement("div");fe.classList.add(m.classes.button),fe.classList.add(m.classes.elementHalf),fe.classList.add(m.classes.backgroundSuccess),fe.innerHTML=se,fe.onclick=function(){W(ie,Z),X(),D?D(I.value):v&&v(I.value)};var Le=document.createElement("div");Le.classList.add(m.classes.button),Le.classList.add(m.classes.elementHalf),Le.classList.add(m.classes.backgroundError),Le.innerHTML=ue,Le.onclick=function(){W(ie,Z),X(),U?U(I.value):E&&E(I.value)},K.appendChild(ne),K.appendChild(I),K.appendChild(fe),K.appendChild(Le),K.listener=function(ce){A(ce)?fe.click():_(ce)&&Le.click()},$(K,Z),I.focus(),R(K,Z)};T.input=Q;var Qe=T.select=function(g,v){var E=g.text,V=g.cancelText,O=V===void 0?"Cancel":V,se=g.cancelCallback,ge=g.choices,ue=g.position,D=ue===void 0?m.positions.select||D.top:ue;me(),F();var U=document.createElement("div"),z=x();U.id=z;var Z=document.createElement("div");Z.classList.add(m.classes.textbox),Z.classList.add(m.classes.backgroundInfo),Z.innerHTML='
'+E+"
",U.appendChild(Z),ge.forEach(function(K,ie){var ne=K.type,I=ne===void 0?1:ne,fe=K.text,Le=K.handler,ce=document.createElement("div");ce.classList.add(S[I]),ce.classList.add(m.classes.button),ce.classList.add(m.classes.selectChoice);var de=ge[ie+1];de&&!de.type&&(de.type=1),de&&de.type===I&&ce.classList.add(m.classes.selectChoiceRepeated),ce.innerHTML=fe,ce.onclick=function(){W(z,D),X(),Le()},U.appendChild(ce)});var M=document.createElement("div");M.classList.add(m.classes.backgroundNeutral),M.classList.add(m.classes.button),M.innerHTML=O,M.onclick=function(){W(z,D),X(),se?se():v&&v()},U.appendChild(M),U.listener=function(K){_(K)&&M.click()},$(U,D),R(U,D)},oe=T.date=function(g,v,E){var V=g.value,O=V===void 0?new Date:V,se=g.submitText,ge=se===void 0?"OK":se,ue=g.cancelText,D=ue===void 0?"Cancel":ue,U=g.submitCallback,z=g.cancelCallback,Z=g.position,M=Z===void 0?m.positions.date||M.top:Z;me(),F();var K="▾",ie=document.createElement("div"),ne=document.createElement("div"),I=document.createElement("div"),fe=function(le){ie.innerHTML=m.dateMonths[le.getMonth()],ne.innerHTML=le.getDate(),I.innerHTML=le.getFullYear()},Le=function(le){var re=new Date(O.getFullYear(),O.getMonth()+1,0).getDate(),Be=le.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Be)>re&&(Be=re.toString()),le.target.textContent=Be,Number(Be)<1&&(Be="1"),O.setDate(Number(Be))},ce=function(le){var re=le.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);le.target.textContent=re,O.setFullYear(Number(re))},de=function(le){fe(O)},_e=function(le){var re=new Date(O.getFullYear(),O.getMonth()+le+1,0).getDate();O.getDate()>re&&O.setDate(re),O.setMonth(O.getMonth()+le),fe(O)},Fe=function(le){O.setDate(O.getDate()+le),fe(O)},wt=function(le){var re=O.getFullYear()+le;re<0?O.setFullYear(0):O.setFullYear(O.getFullYear()+le),fe(O)},Ge=document.createElement("div"),at=x();Ge.id=at;var ct=document.createElement("div");ct.classList.add(m.classes.backgroundInfo);var Ce=document.createElement("div");Ce.classList.add(m.classes.dateSelectorInner);var qe=document.createElement("div");qe.classList.add(m.classes.button),qe.classList.add(m.classes.elementThird),qe.classList.add(m.classes.dateSelectorUp),qe.innerHTML=K;var Se=document.createElement("div");Se.classList.add(m.classes.button),Se.classList.add(m.classes.elementThird),Se.classList.add(m.classes.dateSelectorUp),Se.innerHTML=K;var Ne=document.createElement("div");Ne.classList.add(m.classes.button),Ne.classList.add(m.classes.elementThird),Ne.classList.add(m.classes.dateSelectorUp),Ne.innerHTML=K,ie.classList.add(m.classes.element),ie.classList.add(m.classes.elementThird),ie.innerHTML=m.dateMonths[O.getMonth()],ne.classList.add(m.classes.element),ne.classList.add(m.classes.elementThird),ne.setAttribute("contentEditable",!0),ne.addEventListener("input",Le),ne.addEventListener("blur",de),ne.innerHTML=O.getDate(),I.classList.add(m.classes.element),I.classList.add(m.classes.elementThird),I.setAttribute("contentEditable",!0),I.addEventListener("input",ce),I.addEventListener("blur",de),I.innerHTML=O.getFullYear();var Ye=document.createElement("div");Ye.classList.add(m.classes.button),Ye.classList.add(m.classes.elementThird),Ye.innerHTML=K;var Ze=document.createElement("div");Ze.classList.add(m.classes.button),Ze.classList.add(m.classes.elementThird),Ze.innerHTML=K;var ot=document.createElement("div");ot.classList.add(m.classes.button),ot.classList.add(m.classes.elementThird),ot.innerHTML=K,qe.onclick=function(){return _e(1)},Se.onclick=function(){return Fe(1)},Ne.onclick=function(){return wt(1)},Ye.onclick=function(){return _e(-1)},Ze.onclick=function(){return Fe(-1)},ot.onclick=function(){return wt(-1)};var Pe=document.createElement("div");Pe.classList.add(m.classes.button),Pe.classList.add(m.classes.elementHalf),Pe.classList.add(m.classes.backgroundSuccess),Pe.innerHTML=ge,Pe.onclick=function(){W(at,M),X(),U?U(O):v&&v(O)};var Xe=document.createElement("div");Xe.classList.add(m.classes.button),Xe.classList.add(m.classes.elementHalf),Xe.classList.add(m.classes.backgroundError),Xe.innerHTML=D,Xe.onclick=function(){W(at,M),X(),z?z(O):E&&E(O)},Ce.appendChild(qe),Ce.appendChild(Se),Ce.appendChild(Ne),Ce.appendChild(ie),Ce.appendChild(ne),Ce.appendChild(I),Ce.appendChild(Ye),Ce.appendChild(Ze),Ce.appendChild(ot),ct.appendChild(Ce),Ge.appendChild(ct),Ge.appendChild(Pe),Ge.appendChild(Xe),Ge.listener=function(le){A(le)?Pe.click():_(le)&&Xe.click()},$(Ge,M),R(Ge,M)};T.default={alert:Te,force:ve,confirm:ye,input:Q,select:Qe,date:oe,setOptions:k,hideAlerts:F}}])})}).call(n,a(0)(r))}])})}),vn={};bs(vn,{default:()=>Ft});var ws=yn(xn());Ts(vn,yn(xn()));var{default:wn,...ys}=ws,Ft=wn!==void 0?wn:ys;var br=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function Tr(e,t,r,n){e.addEventListener?e.addEventListener(t,r,n):e.attachEvent&&e.attachEvent("on".concat(t),function(){r(window.event)})}function En(e,t){for(var r=t.slice(0,t.length-1),n=0;n=0;)t[r-1]+=",",t.splice(r,1),r=t.lastIndexOf("");return t}function xs(e,t){for(var r=e.length>=t.length?e:t,n=e.length>=t.length?t:e,a=!0,i=0;i=0&&ae.splice(r,1),e.key&&e.key.toLowerCase()==="meta"&&ae.splice(0,ae.length),(t===93||t===224)&&(t=91),t in xe){xe[t]=!1;for(var n in $e)$e[n]===t&&(Ve[n]=!1)}}function _s(e){if(typeof e>"u")Object.keys(pe).forEach(function(c){return delete pe[c]});else if(Array.isArray(e))e.forEach(function(c){c.key&&wr(c)});else if(typeof e=="object")e.key&&wr(e);else if(typeof e=="string"){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n1?En($e,l):[];pe[T]=pe[T].filter(function(C){var b=n?C.method===n:!0;return!(b&&C.scope===r&&xs(C.mods,L))})}})};function Sn(e,t,r,n){if(t.element===n){var a;if(t.scope===r||t.scope==="all"){a=t.mods.length>0;for(var i in xe)Object.prototype.hasOwnProperty.call(xe,i)&&(!xe[i]&&t.mods.indexOf(+i)>-1||xe[i]&&t.mods.indexOf(+i)===-1)&&(a=!1);(t.mods.length===0&&!xe[16]&&!xe[18]&&!xe[17]&&!xe[91]||a||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function An(e,t){var r=pe["*"],n=e.keyCode||e.which||e.charCode;if(Ve.filter.call(this,e)){if((n===93||n===224)&&(n=91),ae.indexOf(n)===-1&&n!==229&&ae.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(b){var J=xr[b];e[b]&&ae.indexOf(J)===-1?ae.push(J):!e[b]&&ae.indexOf(J)>-1?ae.splice(ae.indexOf(J),1):b==="metaKey"&&e[b]&&ae.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(ae=ae.slice(ae.indexOf(J))))}),n in xe){xe[n]=!0;for(var a in $e)$e[a]===n&&(Ve[a]=!0);if(!r)return}for(var i in xe)Object.prototype.hasOwnProperty.call(xe,i)&&(xe[i]=e[xr[i]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(ae.indexOf(17)===-1&&ae.push(17),ae.indexOf(18)===-1&&ae.push(18),xe[17]=!0,xe[18]=!0);var c=Ct();if(r)for(var o=0;o-1}function Ve(e,t,r){ae=[];var n=Mn(e),a=[],i="all",c=document,o=0,l=!1,u=!0,d="+",T=!1;for(r===void 0&&typeof t=="function"&&(r=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(i=t.scope),t.element&&(c=t.element),t.keyup&&(l=t.keyup),t.keydown!==void 0&&(u=t.keydown),t.capture!==void 0&&(T=t.capture),typeof t.splitKey=="string"&&(d=t.splitKey)),typeof t=="string"&&(i=t);o1&&(a=En($e,e)),e=e[e.length-1],e=e==="*"?"*":Wt(e),e in pe||(pe[e]=[]),pe[e].push({keyup:l,keydown:u,scope:i,mods:a,shortcut:n[o],method:r,key:n[o],splitKey:d,element:c});typeof c<"u"&&!Ps(c)&&window&&(_n.push(c),Tr(c,"keydown",function(L){An(L,c)},T),Cn||(Cn=!0,Tr(window,"focus",function(){ae=[]},T)),Tr(c,"keyup",function(L){An(L,c),Ls(L)},T))}function Rs(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(pe).forEach(function(r){var n=pe[r].filter(function(a){return a.scope===t&&a.shortcut===e});n.forEach(function(a){a&&a.method&&a.method()})})}var yr={getPressedKeyString:As,setScope:Pn,getScope:Ct,deleteScope:Ms,getPressedKeyCodes:Ss,isPressed:Es,filter:ks,trigger:Rs,unbind:_s,keyMap:vt,modifier:$e,modifierMap:xr};for(jt in yr)Object.prototype.hasOwnProperty.call(yr,jt)&&(Ve[jt]=yr[jt]);var jt;typeof document<"u"&&(kn=window.hotkeys,Ve.noConflict=function(e){return e&&window.hotkeys===Ve&&(window.hotkeys=kn),Ve},window.hotkeys=Ve);var kn;var Is=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),r=Math.round(t-this.#e);this.#e=t}},Os=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Is:{reset:()=>{},stop:()=>{}}}},oc=new Os,Ds="poegempjloogba",Ns="ension://";var Bs="rome-ext";var sc="ch"+Bs+Ns+"cofdb"+Ds+"gkncekinflcnj";var{entries:Fn,setPrototypeOf:Rn,isFrozen:Fs,getPrototypeOf:js,getOwnPropertyDescriptor:Ws}=Object,{freeze:Ie,seal:Ke,create:Hs}=Object,{apply:Er,construct:Mr}=typeof Reflect<"u"&&Reflect;Er||(Er=function(e,t,r){return e.apply(t,r)});Ie||(Ie=function(e){return e});Ke||(Ke=function(e){return e});Mr||(Mr=function(e,t){return new e(...t)});var qs=We(Array.prototype.forEach),In=We(Array.prototype.pop),St=We(Array.prototype.push),zt=We(String.prototype.toLowerCase),vr=We(String.prototype.toString),zs=We(String.prototype.match),ze=We(String.prototype.replace),Ks=We(String.prototype.indexOf),Gs=We(String.prototype.trim),Ue=We(RegExp.prototype.test),At=Vs(TypeError);function We(e){return function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),a=1;a/gm),Js=Ke(/\${[\w\W]*}/gm),Qs=Ke(/^data-[\-\w.\u00B7-\uFFFF]/),ei=Ke(/^aria-[\-\w]+$/),jn=Ke(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),ti=Ke(/^(?:\w+script|data):/i),ri=Ke(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Wn=Ke(/^html$/i),Un=Object.freeze({__proto__:null,MUSTACHE_EXPR:Zs,ERB_EXPR:Xs,TMPLIT_EXPR:Js,DATA_ATTR:Qs,ARIA_ATTR:ei,IS_ALLOWED_URI:jn,IS_SCRIPT_OR_DATA:ti,ATTR_WHITESPACE:ri,DOCTYPE_NAME:Wn}),ni=()=>typeof window>"u"?null:window,ai=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let r=null,n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(r=t.getAttribute(n));let a="dompurify"+(r?"#"+r:"");try{return e.createPolicy(a,{createHTML(i){return i},createScriptURL(i){return i}})}catch{return null}};function Hn(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ni(),t=s=>Hn(s);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let r=e.document,n=r.currentScript,{document:a}=e,{DocumentFragment:i,HTMLTemplateElement:c,Node:o,Element:l,NodeFilter:u,NamedNodeMap:d=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:T,DOMParser:L,trustedTypes:C}=e,b=l.prototype,J=Ht(b,"cloneNode"),te=Ht(b,"nextSibling"),m=Ht(b,"childNodes"),k=Ht(b,"parentNode");if(typeof c=="function"){let s=a.createElement("template");s.content&&s.content.ownerDocument&&(a=s.content.ownerDocument)}let G,Y="",{implementation:me,createNodeIterator:x,createDocumentFragment:S,getElementsByTagName:f}=a,{importNode:A}=r,_={};t.isSupported=typeof Fn=="function"&&typeof k=="function"&&me&&me.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:$,ERB_EXPR:W,TMPLIT_EXPR:R,DATA_ATTR:X,ARIA_ATTR:F,IS_SCRIPT_OR_DATA:Te,ATTR_WHITESPACE:ve}=Un,{IS_ALLOWED_URI:ye}=Un,Q=null,Qe=H({},[...On,...Cr,...Sr,...Ar,...Dn]),oe=null,g=H({},[...Nn,...kr,...Bn,...qt]),v=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),E=null,V=null,O=!0,se=!0,ge=!1,ue=!0,D=!1,U=!1,z=!1,Z=!1,M=!1,K=!1,ie=!1,ne=!0,I=!1,fe="user-content-",Le=!0,ce=!1,de={},_e=null,Fe=H({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),wt=null,Ge=H({},["audio","video","img","source","image","track"]),at=null,ct=H({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ce="http://www.w3.org/1998/Math/MathML",qe="http://www.w3.org/2000/svg",Se="http://www.w3.org/1999/xhtml",Ne=Se,Ye=!1,Ze=null,ot=H({},[Ce,qe,Se],vr),Pe,Xe=["application/xhtml+xml","text/html"],le="text/html",re,Be=null,Wa=a.createElement("form"),Yr=function(s){return s instanceof RegExp||s instanceof Function},nr=function(s){if(!(Be&&Be===s)){if((!s||typeof s!="object")&&(s={}),s=mt(s),Pe=Xe.indexOf(s.PARSER_MEDIA_TYPE)===-1?Pe=le:Pe=s.PARSER_MEDIA_TYPE,re=Pe==="application/xhtml+xml"?vr:zt,Q="ALLOWED_TAGS"in s?H({},s.ALLOWED_TAGS,re):Qe,oe="ALLOWED_ATTR"in s?H({},s.ALLOWED_ATTR,re):g,Ze="ALLOWED_NAMESPACES"in s?H({},s.ALLOWED_NAMESPACES,vr):ot,at="ADD_URI_SAFE_ATTR"in s?H(mt(ct),s.ADD_URI_SAFE_ATTR,re):ct,wt="ADD_DATA_URI_TAGS"in s?H(mt(Ge),s.ADD_DATA_URI_TAGS,re):Ge,_e="FORBID_CONTENTS"in s?H({},s.FORBID_CONTENTS,re):Fe,E="FORBID_TAGS"in s?H({},s.FORBID_TAGS,re):{},V="FORBID_ATTR"in s?H({},s.FORBID_ATTR,re):{},de="USE_PROFILES"in s?s.USE_PROFILES:!1,O=s.ALLOW_ARIA_ATTR!==!1,se=s.ALLOW_DATA_ATTR!==!1,ge=s.ALLOW_UNKNOWN_PROTOCOLS||!1,ue=s.ALLOW_SELF_CLOSE_IN_ATTR!==!1,D=s.SAFE_FOR_TEMPLATES||!1,U=s.WHOLE_DOCUMENT||!1,M=s.RETURN_DOM||!1,K=s.RETURN_DOM_FRAGMENT||!1,ie=s.RETURN_TRUSTED_TYPE||!1,Z=s.FORCE_BODY||!1,ne=s.SANITIZE_DOM!==!1,I=s.SANITIZE_NAMED_PROPS||!1,Le=s.KEEP_CONTENT!==!1,ce=s.IN_PLACE||!1,ye=s.ALLOWED_URI_REGEXP||jn,Ne=s.NAMESPACE||Se,v=s.CUSTOM_ELEMENT_HANDLING||{},s.CUSTOM_ELEMENT_HANDLING&&Yr(s.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(v.tagNameCheck=s.CUSTOM_ELEMENT_HANDLING.tagNameCheck),s.CUSTOM_ELEMENT_HANDLING&&Yr(s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(v.attributeNameCheck=s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),s.CUSTOM_ELEMENT_HANDLING&&typeof s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(v.allowCustomizedBuiltInElements=s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),D&&(se=!1),K&&(M=!0),de&&(Q=H({},[...Dn]),oe=[],de.html===!0&&(H(Q,On),H(oe,Nn)),de.svg===!0&&(H(Q,Cr),H(oe,kr),H(oe,qt)),de.svgFilters===!0&&(H(Q,Sr),H(oe,kr),H(oe,qt)),de.mathMl===!0&&(H(Q,Ar),H(oe,Bn),H(oe,qt))),s.ADD_TAGS&&(Q===Qe&&(Q=mt(Q)),H(Q,s.ADD_TAGS,re)),s.ADD_ATTR&&(oe===g&&(oe=mt(oe)),H(oe,s.ADD_ATTR,re)),s.ADD_URI_SAFE_ATTR&&H(at,s.ADD_URI_SAFE_ATTR,re),s.FORBID_CONTENTS&&(_e===Fe&&(_e=mt(_e)),H(_e,s.FORBID_CONTENTS,re)),Le&&(Q["#text"]=!0),U&&H(Q,["html","head","body"]),Q.table&&(H(Q,["tbody"]),delete E.tbody),s.TRUSTED_TYPES_POLICY){if(typeof s.TRUSTED_TYPES_POLICY.createHTML!="function")throw At('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof s.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw At('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');G=s.TRUSTED_TYPES_POLICY,Y=G.createHTML("")}else G===void 0&&(G=ai(C,n)),G!==null&&typeof Y=="string"&&(Y=G.createHTML(""));Ie&&Ie(s),Be=s}},Zr=H({},["mi","mo","mn","ms","mtext"]),Xr=H({},["foreignobject","desc","title","annotation-xml"]),Ha=H({},["title","style","font","a","script"]),Dt=H({},Cr);H(Dt,Sr),H(Dt,$s);let ar=H({},Ar);H(ar,Ys);let qa=function(s){let w=k(s);(!w||!w.tagName)&&(w={namespaceURI:Ne,tagName:"template"});let h=zt(s.tagName),ee=zt(w.tagName);return Ze[s.namespaceURI]?s.namespaceURI===qe?w.namespaceURI===Se?h==="svg":w.namespaceURI===Ce?h==="svg"&&(ee==="annotation-xml"||Zr[ee]):!!Dt[h]:s.namespaceURI===Ce?w.namespaceURI===Se?h==="math":w.namespaceURI===qe?h==="math"&&Xr[ee]:!!ar[h]:s.namespaceURI===Se?w.namespaceURI===qe&&!Xr[ee]||w.namespaceURI===Ce&&!Zr[ee]?!1:!ar[h]&&(Ha[h]||!Dt[h]):!!(Pe==="application/xhtml+xml"&&Ze[s.namespaceURI]):!1},ut=function(s){St(t.removed,{element:s});try{s.parentNode.removeChild(s)}catch{s.remove()}},or=function(s,w){try{St(t.removed,{attribute:w.getAttributeNode(s),from:w})}catch{St(t.removed,{attribute:null,from:w})}if(w.removeAttribute(s),s==="is"&&!oe[s])if(M||K)try{ut(w)}catch{}else try{w.setAttribute(s,"")}catch{}},Jr=function(s){let w,h;if(Z)s=""+s;else{let Re=zs(s,/^[\r\n\t ]+/);h=Re&&Re[0]}Pe==="application/xhtml+xml"&&Ne===Se&&(s=''+s+"");let ee=G?G.createHTML(s):s;if(Ne===Se)try{w=new L().parseFromString(ee,Pe)}catch{}if(!w||!w.documentElement){w=me.createDocument(Ne,"template",null);try{w.documentElement.innerHTML=Ye?Y:ee}catch{}}let be=w.body||w.documentElement;return s&&h&&be.insertBefore(a.createTextNode(h),be.childNodes[0]||null),Ne===Se?f.call(w,U?"html":"body")[0]:U?w.documentElement:be},Qr=function(s){return x.call(s.ownerDocument||s,s,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT,null,!1)},za=function(s){return s instanceof T&&(typeof s.nodeName!="string"||typeof s.textContent!="string"||typeof s.removeChild!="function"||!(s.attributes instanceof d)||typeof s.removeAttribute!="function"||typeof s.setAttribute!="function"||typeof s.namespaceURI!="string"||typeof s.insertBefore!="function"||typeof s.hasChildNodes!="function")},Nt=function(s){return typeof o=="object"?s instanceof o:s&&typeof s=="object"&&typeof s.nodeType=="number"&&typeof s.nodeName=="string"},Je=function(s,w,h){_[s]&&qs(_[s],ee=>{ee.call(t,w,h,Be)})},en=function(s){let w;if(Je("beforeSanitizeElements",s,null),za(s))return ut(s),!0;let h=re(s.nodeName);if(Je("uponSanitizeElement",s,{tagName:h,allowedTags:Q}),s.hasChildNodes()&&!Nt(s.firstElementChild)&&(!Nt(s.content)||!Nt(s.content.firstElementChild))&&Ue(/<[/\w]/g,s.innerHTML)&&Ue(/<[/\w]/g,s.textContent))return ut(s),!0;if(!Q[h]||E[h]){if(!E[h]&&rn(h)&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,h)||v.tagNameCheck instanceof Function&&v.tagNameCheck(h)))return!1;if(Le&&!_e[h]){let ee=k(s)||s.parentNode,be=m(s)||s.childNodes;if(be&&ee){let Re=be.length;for(let De=Re-1;De>=0;--De)ee.insertBefore(J(be[De],!0),te(s))}}return ut(s),!0}return s instanceof l&&!qa(s)||(h==="noscript"||h==="noembed")&&Ue(/<\/no(script|embed)/i,s.innerHTML)?(ut(s),!0):(D&&s.nodeType===3&&(w=s.textContent,w=ze(w,$," "),w=ze(w,W," "),w=ze(w,R," "),s.textContent!==w&&(St(t.removed,{element:s.cloneNode()}),s.textContent=w)),Je("afterSanitizeElements",s,null),!1)},tn=function(s,w,h){if(ne&&(w==="id"||w==="name")&&(h in a||h in Wa))return!1;if(!(se&&!V[w]&&Ue(X,w))&&!(O&&Ue(F,w))){if(!oe[w]||V[w]){if(!(rn(s)&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,s)||v.tagNameCheck instanceof Function&&v.tagNameCheck(s))&&(v.attributeNameCheck instanceof RegExp&&Ue(v.attributeNameCheck,w)||v.attributeNameCheck instanceof Function&&v.attributeNameCheck(w))||w==="is"&&v.allowCustomizedBuiltInElements&&(v.tagNameCheck instanceof RegExp&&Ue(v.tagNameCheck,h)||v.tagNameCheck instanceof Function&&v.tagNameCheck(h))))return!1}else if(!at[w]&&!Ue(ye,ze(h,ve,""))&&!((w==="src"||w==="xlink:href"||w==="href")&&s!=="script"&&Ks(h,"data:")===0&&wt[s])&&!(ge&&!Ue(Te,ze(h,ve,"")))&&h)return!1}return!0},rn=function(s){return s.indexOf("-")>0},nn=function(s){let w,h,ee,be;Je("beforeSanitizeAttributes",s,null);let{attributes:Re}=s;if(!Re)return;let De={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:oe};for(be=Re.length;be--;){w=Re[be];let{name:we,namespaceURI:dt}=w;if(h=we==="value"?w.value:Gs(w.value),ee=re(we),De.attrName=ee,De.attrValue=h,De.keepAttr=!0,De.forceKeepAttr=void 0,Je("uponSanitizeAttribute",s,De),h=De.attrValue,De.forceKeepAttr||(or(we,s),!De.keepAttr))continue;if(!ue&&Ue(/\/>/i,h)){or(we,s);continue}D&&(h=ze(h,$," "),h=ze(h,W," "),h=ze(h,R," "));let an=re(s.nodeName);if(tn(an,ee,h)){if(I&&(ee==="id"||ee==="name")&&(or(we,s),h=fe+h),G&&typeof C=="object"&&typeof C.getAttributeType=="function"&&!dt)switch(C.getAttributeType(an,ee)){case"TrustedHTML":{h=G.createHTML(h);break}case"TrustedScriptURL":{h=G.createScriptURL(h);break}}try{dt?s.setAttributeNS(dt,we,h):s.setAttribute(we,h),In(t.removed)}catch{}}}Je("afterSanitizeAttributes",s,null)},Ka=function s(w){let h,ee=Qr(w);for(Je("beforeSanitizeShadowDOM",w,null);h=ee.nextNode();)Je("uponSanitizeShadowNode",h,null),!en(h)&&(h.content instanceof i&&s(h.content),nn(h));Je("afterSanitizeShadowDOM",w,null)};return t.sanitize=function(s){let w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},h,ee,be,Re;if(Ye=!s,Ye&&(s=""),typeof s!="string"&&!Nt(s))if(typeof s.toString=="function"){if(s=s.toString(),typeof s!="string")throw At("dirty is not a string, aborting")}else throw At("toString is not a function");if(!t.isSupported)return s;if(z||nr(w),t.removed=[],typeof s=="string"&&(ce=!1),ce){if(s.nodeName){let dt=re(s.nodeName);if(!Q[dt]||E[dt])throw At("root node is forbidden and cannot be sanitized in-place")}}else if(s instanceof o)h=Jr(""),ee=h.ownerDocument.importNode(s,!0),ee.nodeType===1&&ee.nodeName==="BODY"||ee.nodeName==="HTML"?h=ee:h.appendChild(ee);else{if(!M&&!D&&!U&&s.indexOf("<")===-1)return G&&ie?G.createHTML(s):s;if(h=Jr(s),!h)return M?null:ie?Y:""}h&&Z&&ut(h.firstChild);let De=Qr(ce?s:h);for(;be=De.nextNode();)en(be)||(be.content instanceof i&&Ka(be.content),nn(be));if(ce)return s;if(M){if(K)for(Re=S.call(h.ownerDocument);h.firstChild;)Re.appendChild(h.firstChild);else Re=h;return(oe.shadowroot||oe.shadowrootmod)&&(Re=A.call(r,Re,!0)),Re}let we=U?h.outerHTML:h.innerHTML;return U&&Q["!doctype"]&&h.ownerDocument&&h.ownerDocument.doctype&&h.ownerDocument.doctype.name&&Ue(Wn,h.ownerDocument.doctype.name)&&(we=" +`+we),D&&(we=ze(we,$," "),we=ze(we,W," "),we=ze(we,R," ")),G&&ie?G.createHTML(we):we},t.setConfig=function(s){nr(s),z=!0},t.clearConfig=function(){Be=null,z=!1},t.isValidAttribute=function(s,w,h){Be||nr({});let ee=re(s),be=re(w);return tn(ee,be,h)},t.addHook=function(s,w){typeof w=="function"&&(_[s]=_[s]||[],St(_[s],w))},t.removeHook=function(s){if(_[s])return In(_[s])},t.removeHooks=function(s){_[s]&&(_[s]=[])},t.removeAllHooks=function(){_={}},t}var qn=Hn();var _c=Ft.alert;var zn={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var Kn={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var Gn={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var li=[{code:"zh-CN",messages:zn},{code:"zh-TW",messages:Kn},{code:"en",messages:Gn}];var st={};for(let e of li)st[e.code]=e.messages;var it="Immersive Translate",he="immersive-translate",Kt="pdf/index.html";var $n="subtitle/index.html",Yn="ebook/index.html",Zn="ebook/make/index.html",q="immersiveTranslate",Gt="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",gt=q+"GoogleAccessToken",Xn=q+"AuthFlow",Vt="immersive-translate-config-latest.json",Zc=q+"AuthState",Xc=q+"IframeMessage",Jc=q+"WaitForRateLimit",Qc=q+"DocumentMessageAsk",eu=q+"DocumentMessageTellThirdParty",tu=q+"DocumentMessageThirdPartyTell",ru=q+"DocumentMessageHandler",nu=`${q}Container`,au=`${q}SpecifiedContainer`,$t="buildinConfig",kt="localConfig",Lr="openOptionsPage";var _r="translateLocalPdfFile",Jn="donateContext",Pr="openEbookViewer",Rr="openEbookBuilder",Qn="openSubtitleBuilder",ou=`${q}PageTranslatedStatus`,su=`${q}PageUrlChanged`,iu=`${q}ReceiveCommand`,lu=q+"LastUseMouseHoverTime",cu=q+"LastUseInputTime",uu=q+"LastUseManualTranslatePageTime",du=`${q}PopupReceiveMessage`,ci="immersivetranslate.com",ui="config.immersivetranslate.com",mu=`https://${ci}/`,gu=`https://${ui}/default_config.json`,pu=`${q}Mark`;var hu=`${q}Root`,fu=`data-${he}-effect`,bu=`data-${he}-translation-element-mark`,Tu=`${q}TranslationElementMark`,wu=`${q}TranslatedMark`,yu=`${q}ParagraphId`,xu=`${q}LoadingId`,vu=`data-${he}-loading-id`,Cu=`${q}ErrorId`,Su=`data-${he}-error-id`,Au=`${q}AtomicBlockMark`,ku=`${q}ExcludeMark`,Eu=`data-${he}-exclude-mark`,Mu=`${q}StayOriginalMark`,Lu=`${q}PreWhitespaceMark`,_u=`${q}InlineMark`,Pu=`${q}BlockMark`,Ru=`${q}Left`,Iu=`${q}Right`,Ou=`${q}Width`,Du=`${q}Height`,Nu=`${q}Top`,Bu=`${q}FontSize`;var Uu=`${q}GlobalStyleMark`;var Fu=`${he}-target-wrapper`,ju=`${he}-pdf-target-container`,Wu=`${he}-target-inner`,Hu=`${he}-source-wrapper`,qu=`${he}-target-translation-block-wrapper`,zu=`${he}-root-translation-theme`,Ku=`${q}RootTranslationTheme`,Gu=`${he}-target-translation-vertical-block-wrapper`,Vu=`${he}-target-translation-pdf-block-wrapper`,$u=`${he}-target-translation-pre-whitespace`,Yu=`${he}-target-translation-inline-wrapper`;var Et=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"];var Yt="zh-CN";var Vn=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],di={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...Vn,{type:"password",name:"apikey",required:!0}],props:Vn},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},Xu={type:q+"ChildFrameToRootFrameIdentifier"};var pt=console,Ir=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let r=performance.now(),n=Math.round(r-this.#e),a=je.green;n>1e4?a=je.red:n>1e3&&(a=je.yellow),pt.debug(je.dim(it+" TIMING:"),t,"in",a(n+"ms")),this.#e=r}},Mt=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pt.log(je.dim(it+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pt.log(je.green(it+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pt.warn(je.yellow(it+" WARN:"),...t)}error(...t){this.#e<=3&&pt.error(je.red(it+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pt.error(je.red(it+" FATAL:"),...t)}timing(){return this.level===0?new Ir:{reset:()=>{},stop:()=>{}}}},P=new Mt;function ht(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let r=Et.map(a=>a.toLowerCase()),n=r.indexOf(t);if(n===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let a=r.indexOf(t);return a===-1?"auto":Et[a]}else return"auto";else return Et[n]}function Oe(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():w}var j=Oe();function Or(){return j.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function He(){if(j.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}var cd=Oe().PROD==="1",ud=Oe().PROD!=="1";function Dr(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}var Nr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...Vn,{type:"password",name:"apikey",required:!0}],props:Vn},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},Zu={type:q+"ChildFrameToRootFrameIdentifier"};var pt=console,Ir=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let r=performance.now(),n=Math.round(r-this.#e),a=je.green;n>1e4?a=je.red:n>1e3&&(a=je.yellow),pt.debug(je.dim(it+" TIMING:"),t,"in",a(n+"ms")),this.#e=r}},Mt=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pt.log(je.dim(it+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pt.log(je.green(it+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pt.warn(je.yellow(it+" WARN:"),...t)}error(...t){this.#e<=3&&pt.error(je.red(it+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pt.error(je.red(it+" FATAL:"),...t)}timing(){return this.level===0?new Ir:{reset:()=>{},stop:()=>{}}}},P=new Mt;function ht(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let r=Et.map(a=>a.toLowerCase()),n=r.indexOf(t);if(n===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let a=r.indexOf(t);return a===-1?"auto":Et[a]}else return"auto";else return Et[n]}function Oe(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():y}var j=Oe();function Or(){return j.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function He(){if(j.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}var cd=Oe().PROD==="1",ud=Oe().PROD!=="1";function Dr(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}var Nr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4082,12 +4090,12 @@ body { ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};var Br="DENO",Xt="CHROME",Jt="FIREFOX";function ea(e){let t=Xt;try{let r=navigator?.userAgent||"";/firefox/i.test(r)||typeof InstallTrigger<"u"?t=Jt:/deno/i.test(r)&&(t=Br)}catch{}return e===Xt&&t===Xt||e===Jt&&t===Jt||e===Br&&t===Br}function ta(){return ea(Xt)}function ra(){return typeof Deno<"u"}function na(){return ea(Jt)}var aa={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},oa={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:aa,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:aa,query:()=>{},sendMessage:()=>{}}};var p;ra()?p=oa:p=globalThis.immersiveTranslateBrowserAPI;function Ur(e){return Array.isArray(e)?e:e?[e]:[]}function sa(e,t){let r=[],n=Object.keys(e);for(let c of n){let o=e[c];Array.isArray(o)&&r.push(c)}let a={...e};return Object.keys(t).forEach(c=>{let o=t[c];if(o!==void 0)if(!r.includes(c))a[c]=o;else if(c.startsWith("additional")){let l=Ur(o);a[c]=Array.from(new Set([...a[c],...l]))}else a[c]=Ur(o)}),a}function gi(){if(j.PROD==="1")return{};let e={};if(j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(j.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:j.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(j.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:j.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(j.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&j.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:j.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:j.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(j.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:j.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(j.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=j.DEEPL_PROXY_ENDPOINT),j.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=j.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),j.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:j.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return j.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),j.MOCK==="1"&&(e.translationService="mock"),j.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=j.IMMERSIVE_TRANSLATE_SERVICE),e}async function Lt(){let e=await p.storage.local.get(kt);if(e[kt]){let t=e[kt],r=t.tempTranslationUrlMatches||[],n=r.filter(c=>c.expiredAt>Date.now()),a=!1;n.length!==r.length&&(r=n,a=!0);let i={...t,tempTranslationUrlMatches:[...r]};return a&&await ft(i),i}else return{}}async function ft(e){await p.storage.local.set({[kt]:e})}async function tt(){let e=await p.storage.local.get($t),t={...Nr,buildinConfigUpdatedAt:j.BUILD_TIME};if(e[$t]){let m=e[$t];if(m&&m.buildinConfigUpdatedAt){let k=new Date(m.buildinConfigUpdatedAt),G=new Date(t.buildinConfigUpdatedAt);k>G&&(t=m)}}let r={};if(!Or()&&p.commands&&p.commands.getAll){let m=await p.commands.getAll();for(let k of m)k.name&&k.shortcut&&(r[k.name]=k.shortcut)}let n=hi(),a=gi(),i=await _t(),c=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},o=await Lt(),l=new Date;if(o&&o.tempTranslationUrlMatches&&o.tempTranslationUrlMatches.length>0){let m=o.tempTranslationUrlMatches.filter(k=>new Date(k.expiredAt)>l);if(m.length>0){let k=i.translationUrlPattern?i.translationUrlPattern?.matches||[]:[],G=Array.isArray(k)?k:[k],Y=Array.from(new Set(G.concat(m.map(me=>me.match))));i.translationUrlPattern={...i.translationUrlPattern,matches:Y}}}let u=Object.assign({},c,a,i);if(!u.interfaceLanguage){let m=await pi();u.interfaceLanguage=m}let d=u.interfaceLanguage==="en",T=u.targetLanguage==="en",L=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,C=["bing","google","transmart","mock"].includes(u.translationService)||!u.translationService;!d&&!T&&!L&&C?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let b=Object.assign(n,t),Z=Object.keys(b),te=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let m of Z){let k=m;if(k==="generalRule")typeof u[k]=="object"&&(b[k]=sa(n[k],u[k]));else if(k==="translationServices"){let G=u[k]||{},Y=t[k]||{},me=Object.keys(Y),x=Object.keys(G),S=[...new Set([...me,...x])],f={};for(let A of S)f[A]={...Y[A],...G[A]};b[k]=f}else if(typeof u[k]!="string"&&typeof u[k]!="boolean"&&typeof u[k]!="number"&&te.includes(k))u[k]&&(b[k]=Object.assign(b[k],u[k])),k==="shortcuts"&&(Or()||He()?b[k]={...b[k],...r}:b[k]={...r});else if(k==="rules"){if(Array.isArray(u[k])&&(b[k]=[...u[k],...b[k]]),j.PROD==="0"&&j.DEV_RULES){let G=JSON.parse(j.DEV_RULES);b[k]=[...G,...b[k]]}}else u[k]!==void 0&&(b[k]=u[k])}return b.donateUrl=t.donateUrl,b.minVersion=t.minVersion,b.feedbackUrl=t.feedbackUrl,b}async function _t(){return(await p.storage.sync.get("userConfig")||{}).userConfig||{}}async function bt(e){await p.storage.sync.set({userConfig:e})}var pi=async()=>{let e=["zh-CN"];try{e=await p.i18n.getAcceptLanguages()}catch(n){P.warn("get browser language error:",n)}let r=e.map(n=>ht(n)).find(n=>st[n]);return r||"en"},hi=()=>{let e={...Nr,buildinConfigUpdatedAt:j.BUILD_TIME};return{...e,targetLanguage:Yt,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function ia(e){let t=p.runtime.getURL(zt),r=new URL(t);return(e.startsWith("http")||!na())&&r.searchParams.set("file",e),r.href}function la(e){return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}var lt=class extends Error{constructor(r,n,a){super(n);this.name=r,a&&(this.details=a)}};async function ua(e){let t;if(e&&e.retry&&e.retry>0)try{t=await dr(ca.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(r){throw r&&r.name==="RetryError"&&r.cause?r.cause:r}else t=await ca(e);return t}async function ca(e){e.body;let{url:t,responseType:r,...n}=e;r||(r="json"),n={mode:"cors",...n};let a=!0;e.fetchPolyfill&&(a=!1);let i=e.fetchPolyfill||fetch,c=12e4;if(e.timeout&&(c=e.timeout),a){let l=new AbortController,u=l.signal;setTimeout(()=>{l.abort()},c),n.signal=u}let o;try{o=await i(t,n)}catch(l){P.error("fetch error",l);let u=l.message||"";throw l.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+u,l}if(o.ok&&o.status>=200&&o.status<400){if(r==="json")return await o.json();if(r==="text")return await o.text();if(r==="raw"){let l=await o.text(),u=Object.fromEntries([...o.headers.entries()]),d=o.url;return d||(o.headers.get("X-Final-URL")?d=o.headers.get("X-Final-URL"):d=t),{body:l,headers:u,status:o.status,statusText:o.statusText,url:d}}else if(r==="stream"){let l="",u;if(o.body&&o.body instanceof ReadableStream)for await(let d of fi(o.body)){let T=new TextDecoder().decode(d);l+=T;let L;for(;(L=l.indexOf(` -`))>=0;){let C=l.slice(0,L).trim();if(l=l.slice(L+1),C.startsWith("event:")||C==="")continue;let b="";if(C.startsWith("data:")&&(b=C.slice(5).trim()),b==="[DONE]")break;let Z;try{Z=JSON.parse(b??"")}catch(te){P.debug("json error",te);continue}u=Z}}return u}}else{let l;try{l=await o.text()}catch(T){P.error("parse response failed",T)}l&&P.error("fail response",l);let u="";l&&(u=l.slice(0,280));let d="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+o.status+": "+(o.statusText||"")+u;throw o.status===429?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${u}`:o.status===403?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${u}`:o.status===400?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${u}`:o.status===502&&(d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${u}`),new lt("fetchError",d,l)}}async function*fi(e){let t=e.getReader();try{for(;;){let{done:r,value:n}=await t.read();if(r)return;yield n}}finally{t.releaseLock()}}var da=["*://*/*","*","*://*"],ga="immersive-translate-wildcard-placeholder.com";function bi(e,t){let r=[];if(!t||(t&&!Array.isArray(t)?r=[t]:r=t,r.length===0))return null;if(r.some(c=>da.includes(c)))return e;let n=new URL(e);n.hash="",n.search="";let a=n.href,i=n.hostname;if(r&&r.length>0){let c=r.find(o=>{let l=o;if(o===i)return!0;if(da.includes(o))return!0;if(!o.includes("*")&&o.includes("://")){try{let u=new URL(o);return u.pathname==="/"&&!o.endsWith("/")?u.hostname===i:yi(a,o)}catch{}return!1}else{let u,d=o;if(o.includes("://")){let te=o.split("://");u=te[0],u==="*"&&te.length>1&&(u="*",o="https://"+te[1])}else u="*",o="https://"+o;let T=o.replace(/\*/g,ga),L;try{L=new URL(T)}catch{return P.debug("invalid match pattern",T,"raw match value:",d),!1}let C=L.hostname,b=L.pathname;b==="/"&&(d.replace("://","").includes("/")||(b="/*"));let Z=Ti(u+":",ma(C),ma(b));if(Z){let te=new URL(a);return te.port="",Z.test(te.href)}else return!1}});if(c)return c}return null}function ma(e){return e.replaceAll(ga,"*")}function Ti(e,t,r){let n="^";return e==="*:"?n+="(http:|https:|file:)":n+=e,n+="//",t&&(e==="file:"||(t==="*"?n+="[^/]+?":(t.match(/^\*\./)&&(n+="[^/]*?",t=t.substring(2)),n+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),r?r==="*"||r==="/*"?n+="(/.*)?":r.includes("*")?(n+=r.replace(/\*/g,".*?"),n+="/?"):n+=r.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):n+="/?",n+="$",new RegExp(n)}function pa(e,t){return bi(e,t)!==null}function yi(e,t){let r=new URL(e),n=new URL(t);return r.hostname===n.hostname&&r.pathname===n.pathname&&r.protocol===n.protocol&&r.port===n.port}var Zt=class{constructor(t){this.accessToken=t}async listAll(){let t=[],r="";do{let{nextPageToken:n,files:a}=await this.list(r).catch(i=>{throw i});t.push(...a),r=n||""}while(r);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){return P.error("get config error, use default",r),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,r=Vt){let n=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:r,parents:["appDataFolder"],mimeType:"application/json"},n)}updateConfig(t,r){let n=new Blob([JSON.stringify(r,null,2)],{type:"application/json"});return this.updateContent(t,n)}async upload(t,r){let n=new FormData;n.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),n.append("file",r);let a=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:n});return a.ok?await a.json():Promise.reject(a.text())}async list(t,r){let n=new URL("https://www.googleapis.com/drive/v3/files");t&&n.searchParams.append("pageToken",t),r&&n.searchParams.append("q",r),n.searchParams.append("spaces","appDataFolder"),n.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),n.searchParams.append("pageSize","100"),n.searchParams.append("orderBy","createdTime desc");try{return P.debug("list api:",n.toString(),this.accessToken),await(await fetch(n.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(a){throw P.error("fetch google ip error",a),a}}async updateContent(t,r){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:r})).text()}};function ha(e,t){let r=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${Gt}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(r.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function fa(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function ba(e,t,r,n,a,i,c){P.debug(`autoSyncStrategy accessToken: ${e}`);let o=new Zt(e);try{let l=(await o.findByName(Vt)).files;P.debug("files",l);let u=l[0]?.id,d=null;if(u&&(d=await o.getConfig(u).then(T=>({fileId:u,config:T}))),d){let{config:T,fileId:L}=d,C=T.updatedAt?new Date(T.updatedAt):new Date(0),b=t.updatedAt?new Date(t.updatedAt):new Date(0);if(P.debug("remoteUpdatedAt",C,"localUpdatedAt",b),C>b)P.debug("remote is newer, update local config",T),r(T),i&&i(!0);else if(C.getTime()===b.getTime())P.debug("remote and local are the same, do nothing"),i&&i(!1);else if(C(await rt.removeAuthInfo(),Dr()&&globalThis.location.reload(),n))}static async getAuthInfo(){let t=await p.storage.local.get(gt);if(t[gt])return t[gt]}static async removeAuthInfo(){return await p.storage.local.remove(gt)}static setAuthInfo(t){return p.storage.local.set({[gt]:t})}async auth(t=!1){let r=await rt.getAuthInfo();if(P.debug(this.CLASSNAME,"token from cache:",r),r&&r.access_token&&await Ta(r.access_token).then(i=>!0).catch(i=>!1))return Promise.resolve(r);let n=ha(this._state,this._redirectUrl);return P.debug(this.CLASSNAME,"auth url: "+n),Dr()?this.userscriptAuthWorkflow(n,t):this.extensionAuthWorkflow(n).then(a=>(rt.setAuthInfo(a),a))}async userscriptAuthWorkflow(t,r){return r&&await p.storage.local.set({[Jn]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let r,n=!1;return new Promise((a,i)=>{let c=()=>{p.tabs.onUpdated.removeListener(o),p.tabs.onRemoved.removeListener(l)},o=(L,C,b)=>{if(P.debug(this.CLASSNAME,"create tab onUpdated: "+b.url),r===L){let Z=new URL(b.url||""),te=fa(b.url);Z.pathname.startsWith("/auth-done")&&te?.access_token&&(P.debug(this.CLASSNAME,"auth done: "+b.url),a({access_token:te.access_token}),n=!0,p.tabs.remove(L),c())}},l=(L,C)=>{P.debug(this.CLASSNAME,"create tab onRemoved: "+L),(L===r||!n)&&(c(),i(new Error("auth failed")))},u=Math.min(500,screen.availWidth),d=Math.min(650,screen.availHeight),T;p.windows===void 0?T=p.tabs.create({url:t}).then(L=>{r=L.id}):T=p.windows.create({url:t,type:"popup",width:u,height:d,left:Math.round((screen.width-u)/2),top:Math.round((screen.height-d)/2)}).then(L=>{r=L.tabs[0].id}),T.then(()=>{p.tabs.onUpdated.addListener(o),p.tabs.onRemoved.addListener(l)}).catch(L=>{P.debug(this.CLASSNAME,"create tab failed: "+L),i(L)})})}};var xi="https://www.googleapis.com/oauth2/v3/tokeninfo",vi=Gt,Ci=Oe().REDIRECT_URL;function Ta(e){if(!e)throw"Authorization failure";let t=`${xi}?access_token=${e}`,r=new Request(t,{method:"GET"});function n(a){return new Promise((i,c)=>{a.status!=200&&c("Token validation error"),a.json().then(o=>{o.aud&&o.aud===vi?i(e):c("Token validation error")})})}return fetch(r).then(n)}function ya(e,t=!1){let r=Ci;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let a=window.location.hostname,i=window.location.port;r=`${window.location.protocol}//${a}${i?`:${i}`:""}/auth-done/`}return new rt(e,r).auth(t)}async function wa(){}function xa(e,t){let r=new Map;for(let i of t)r.set(i.header.toLowerCase(),i);let n=[],a=e.filter(i=>{let c=r.get(i.name.toLowerCase());if(c){if(c.operation==="remove")return!1;if(c.operation==="set")return!1}return!0});for(let i of t)i.operation==="set"&&n.push({name:i.header,value:i.value||""});return a.concat(n)}var Qt=[{id:1,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://httpstat.us/429"},{header:"origin",operation:"set",value:"https://httpstat.us/429"},{header:"DNT",operation:"set",value:"1"}]},condition:{urlFilter:"https://httpstat.us/429",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:2,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"https://www.deepl.com"},{header:"DNT",operation:"set",value:"1"},{header:"cookie",operation:"remove"}]},condition:{urlFilter:"https://www2.deepl.com/jsonrpc*",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:200,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"chrome-extension://cofdbpoegempjloogbagkncekinflcnj"},{header:"DNT",operation:"set",value:"1"}]},condition:{urlFilter:"https://api.deepl.com/jsonrpc*",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:201,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"chrome-extension://cofdbpoegempjloogbagkncekinflcnj"}]},condition:{urlFilter:"https://w.deepl.com/oidc/token",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:3,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"origin",operation:"set",value:"chrome-extension://lkjkfecdnfjopaeaibboihfkmhdjmanm"}]},condition:{urlFilter:"https://transmart.qq.com/api/imt",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:4,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"origin",operation:"set",value:"chrome-extension://lkjkfecdnfjopaeaibboihfkmhdjmanm"}]},condition:{urlFilter:"https://translate.volcengine.com/crx/translate/v1/",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}}];var Pt=new Map,Rt=class{constructor(t,r=!1){this.logger=new Mt,r&&this.logger.setLevel("debug"),this.fromType=t,Pt.has(t)||(Pt.set(t,new Map),p.runtime.onMessage.addListener((n,a,i)=>{let c=n.from,o=n.to,l,u,d;a.tab&&a.tab.id&&(l=a.tab.id,c=`${c}:${l}`,u=a.tab.url,d=a.tab.active),this.logger.debug(`${n.to} received message [${n.payload.method}] from ${n.from}`,n.payload.data?n.payload.data:" ");let T=jr(o),{type:L,name:C}=T;if(L!==t)return!1;let b=jr(c),te=Pt.get(L).get(C);if(!te)return this.logger.debug(`no message handler for ${L}:${o}, but it's ok`),!1;let{messageHandler:m,sync:k}=te,G={type:t,name:b.name,id:l,url:u,active:d};if(k){try{let Y=m(n.payload,G);i({ok:!0,data:Y})}catch(Y){i({ok:!1,errorName:Y.name,errorMessage:Y.message,errorDetails:Y.details})}return!1}else return m(n.payload,G).then(Y=>{i({ok:!0,data:Y})}).catch(Y=>{i({ok:!1,errorName:Y.name,errorMessage:Y.message,errorDetails:Y.details})}),!0}))}getConnection(t,r,n){let a=!1;n&&n.sync&&(a=!0);let i=this.fromType,c=Pt.get(i);if(c.has(t))return c.get(t).connectionInstance;{let o=new Fr(`${i}:${t}`,this.logger);return Pt.get(i).set(t,{messageHandler:r,sync:a,connectionInstance:o}),o}}},Fr=class{constructor(t,r){this.from=t,this.logger=r}async sendMessage(t,r){let n=jr(t),{type:a,id:i}=n;if(a!=="content_script"){let c={to:t,from:this.from,payload:r};this.logger.debug(`${c.from} send message [${c.payload.method}] to ${c.to}`,c.payload.data?c.payload.data:" ");try{let o=await p.runtime.sendMessage(c);return va(c,o,this.logger)}catch(o){if(a==="popup"){let l=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(r)}`;return this.logger.debug(l,r,t,o),Promise.resolve({message:l})}else throw o}}else{let c={from:this.from,to:t,payload:r};this.logger.debug(`${c.from} send message [${c.payload.method}] to ${c.to}`,c.payload.data?c.payload.data:" ");let o=await p.tabs.sendMessage(i,c);return va(c,o,this.logger)}}};function va(e,t,r){if(t){if(t.ok)return r.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new lt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new lt("noResponse","Unknown error")}function jr(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let r={type:t[0],name:t[1]};if(t[0]==="content_script"){let n=parseInt(t[2]);if(!isNaN(n))r.id=n;else throw new Error("tab id not a valid number")}return r}function nt(e,t){var r=(e&65535)+(t&65535),n=(e>>16)+(t>>16)+(r>>16);return n<<16|r&65535}function Ai(e,t){return e<>>32-t}function tr(e,t,r,n,a,i){return nt(Ai(nt(nt(t,e),nt(n,i)),a),r)}function Ae(e,t,r,n,a,i,c){return tr(t&r|~t&n,e,t,a,i,c)}function ke(e,t,r,n,a,i,c){return tr(t&n|r&~n,e,t,a,i,c)}function Ee(e,t,r,n,a,i,c){return tr(t^r^n,e,t,a,i,c)}function Me(e,t,r,n,a,i,c){return tr(r^(t|~n),e,t,a,i,c)}function er(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var r,n,a,i,c,o=1732584193,l=-271733879,u=-1732584194,d=271733878;for(r=0;r>5]>>>t%32&255);return r}function Wr(e){var t,r=[];for(r[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(n=er(n,e.length*8)),r=0;r<16;r+=1)a[r]=n[r]^909522486,i[r]=n[r]^1549556828;return c=er(a.concat(Wr(t)),512+t.length*8),Ca(er(i.concat(c),512+128))}function Sa(e){var t="0123456789abcdef",r="",n,a;for(a=0;a>>4&15)+t.charAt(n&15);return r}function Hr(e){return unescape(encodeURIComponent(e))}function Aa(e){return ki(Hr(e))}function Mi(e){return Sa(Aa(e))}function ka(e,t){return Ei(Hr(e),Hr(t))}function Li(e,t){return Sa(ka(e,t))}function Ea(e,t,r){return t?r?ka(t,e):Li(t,e):r?Aa(e):Mi(e)}function qr(e){if(Math.abs(e)<1024)return e+" Byte";let r=["KB","MB","GB","TB","PB","EB","ZB","YB"],n=-1;do e/=1024,++n;while(Math.abs(e)>=1024&&n{let a=e,i=1,c=indexedDB.open(a,i);c.onsuccess=o=>{r(c.result)},c.onerror=o=>{n()},c.onupgradeneeded=o=>{let l=c.result,u=t||"cache";l.createObjectStore(u,{keyPath:"key"})}})}async function Ma(e){let t=`${he}-${e.service}@${e.from}->${e.to}`;return await Pi(t,e)}async function La(e){let t=Ea(e.originalText),r=`${he}-${e.service}@${e.from}->${e.to}`;return await _i(r,t)}async function _i(e,t){let r=await It(e);return await new Promise((n,a)=>{if(!r)return a();let i="cache",o=r.transaction([i],"readonly").objectStore(i).get(t);o.onsuccess=l=>{r.close();let u=o.result;n(u)},o.onerror=l=>{r.close(),a()}})}async function Pi(e,t){let r=await It(e);return(await _a()).includes(e)||await Ri(e),await new Promise(a=>{if(!r)return a(!1);let i="cache",o=r.transaction([i],"readwrite").objectStore(i).put(t);o.onsuccess=l=>{r.close(),a(!0)},o.onerror=l=>{r.close(),a(!1)}})}async function Ri(e){let t="cache_list",r=await It(he+"-cacheList",t),a=r.transaction([t],"readwrite").objectStore(t).put({key:e});a.onsuccess=i=>{r.close(),Tt.push(e)},a.onerror=i=>{r.close()}}async function _a(){if(Tt&&Tt.length>0)return Tt;let e=await It(he+"-cacheList","cache_list");return Tt=await new Promise(t=>{let r="cache_list",a=e.transaction([r],"readonly").objectStore(r).getAllKeys();a.onsuccess=i=>{e.close(),t(a.result)},a.onerror=i=>{e.close(),t([])}}),Tt}async function Pa(){try{let e=[];(await _a()).forEach(n=>{e.push(Ii(n))});let r=await Promise.all(e);return qr(r.reduce((n,a)=>n+a,0))}catch{return qr(0)}}async function Ii(e){let t=await It(e),n=[...t.objectStoreNames].reduce((c,o)=>{let l=Oi(t,o);return c.push(l),c},[]),a=await Promise.all(n);return t.close(),a.reduce((c,o)=>c+o,0)}async function Oi(e,t){return await new Promise((r,n)=>{if(e==null)return n();let a=0,i=e.transaction([t]).objectStore(t).openCursor();i.onsuccess=c=>{let o=i.result;if(o){let l=o.value,u=JSON.stringify(l);a+=u.length,o.continue()}else r(a)},i.onerror=c=>n("error in "+t+": "+c)})}var rr,Di=async function(e,t){let{method:r,data:n}=e;if(P.debug("background received message",r,n||" "),r==="mock")await lr(150);else{if(r==="queryParagraphCache")return La(n);if(r==="setParagraphCache")return Ma(n);if(r==="calculateSize")return Pa();if(r==="fetch")return ua(n);if(r==="getConfig")return tt();if(r==="getLocalConfig")return Lt();if(r==="openOptionsPage")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i})}else{let a=p.runtime.getURL("options.html"),i=n&&n.pageRoute?n.pageRoute:"";i=i||"",p.tabs.create({url:a+i})}else if(r==="openAboutPage")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i+"#about"})}else p.tabs.create({url:p.runtime.getURL("options.html#about")});else if(r=="openSearchEnhancement")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i+"#advanced"})}else p.tabs.create({url:p.runtime.getURL("options.html#advanced")});else if(r==="openEbookViewerPage")p.tabs.create({url:p.runtime.getURL("ebook/index.html")});else if(r==="openSubtitleBuilderPage"){let a=p.runtime.getURL("ebook/subtitle/index.html");He()&&(a=Oe().SUBTITLE_BUILDER_URL),p.tabs.create({url:a})}else if(r==="openEbookBuilderPage"){let a=p.runtime.getURL("ebook/make/index.html");He()&&(a=Oe().EBOOK_BUILDER_URL),p.tabs.create({url:a})}else if(r==="openHtmlViewerPage"){let a=p.runtime.getURL("html/index.html");p.tabs.create({url:a})}else if(r==="openPdfViewerPage"){let a=p.runtime.getURL("pdf/index.html");p.tabs.create({url:a})}else{if(r==="setLocalConfig")return ft(n);if(r=="getUserConfig")return _t();if(r=="setUserConfig")return bt(n);if(r==="detectLanguage"){let{text:a,minLength:i}=n;if(!i&&i!==0&&(i=50),a.length<=i)return"auto";if(p.i18n&&p.i18n.detectLanguage)try{let c=await p.i18n.detectLanguage(a);return c.languages.length>0?ht(c.languages[0].language):"auto"}catch(c){return P.debug("detect language error",c),"auto"}else return"auto"}else if(r==="detectTabLanguage")try{let a=await p.tabs.detectLanguage(t.id);return ht(a)}catch(a){return P.debug("detect tab language error, use auto ",a),"auto"}else if(r==="autoSyncLatestConfig"){try{await wa()}catch(a){P.debug("auto sync latest config error",a)}return""}}}};function Ra(){Kr();let e=p.runtime.getManifest();if(e.manifest_version>2,e.manifest_version===2&&p.webRequest&&p.webRequest.onBeforeSendHeaders){let t=Qt.map(n=>n.condition.urlFilter),r=Qt.reduce((n,a)=>(a.condition.resourceTypes.forEach(i=>{n.includes(i)||n.push(i)}),n),[]);p.webRequest.onBeforeSendHeaders.addListener(function(n){if(!(n.originUrl&&n.originUrl.startsWith("http"))&&n.originUrl&&n.requestHeaders)for(let a=0;a{if(P.debug(`received command: ${e}`),["toggleTranslatePage"].includes(e)){let t=await p.tabs.query({active:!0,currentWindow:!0});if(t.length===0||typeof t[0].id>"u")return;let n=t[0].url;if(la(n)){p.tabs.create({url:ia(n)});return}}await zr({method:e})})}async function zr(e){let r=(await p.tabs.query({currentWindow:!0,active:!0}))[0].id;Kr().sendMessage(`content_script:main:${r}`,e).catch(a=>{P.error("send content message request failed",e,a)})}function Ni(e,t){let r=e;return t&&Object.keys(t).forEach(n=>{let a=t[n],i=Bi(n);if(typeof a=="object"||i){let c=a;i&&typeof c=="string"&&(c={tag:"a",href:c,target:"_blank"});let o=`<${n}>`,l=r.indexOf(o);if(l!==-1){let u=c.tag||"a",d=r.indexOf(``);if(d!==-1){let T=r.substring(l+o.length,d),L=Object.keys(c).filter(C=>C!=="tag").map(C=>`${C}="${c[C]}"`).join(" ");r=r.replace(`${o}${T}`,`<${u} ${L}>${T}`)}}}else{let c=new RegExp("{"+n+"}","gm");r=r.replace(c,a.toString())}}),r}function Oa(e,t,r){let n=e[t];if(!n)return r;let a=r.split("."),i="";do{i+=a.shift();let c=n[i];c!==void 0&&(typeof c=="object"||!a.length)?(n=c,i=""):a.length?i+=".":n=r}while(a.length);return n}function Da(e,t,r,n,a){if(!e.hasOwnProperty(r))return t;let i=Oa(e,r,t);return i===t&&r!==n&&(i=Oa(e,n,t)),Ni(i,a)}function Bi(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}var Na={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},Ui={...st,"zh-CN":{...Na["zh-CN"],...st["zh-CN"]},"zh-TW":{...Na["zh-TW"],...st["zh-TW"]}};function Ba(e,t,r){return Da(Ui,e,t,Yt,r)}var Ot=ta()?["action"]:["browser_action","page_action"],Ua=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...Ot]},{id:Lr,contexts:Ot},{id:Pr,contexts:Ot},{id:Rr,contexts:Ot},{id:_r,contexts:Ot}];async function Gr(e){P.debug("createContextMenu",Ua);for(let t of Ua){let r=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(r=!1);try{p.contextMenus.create({id:t.id,title:Ba(`browser.${t.id}`,e.interfaceLanguage),contexts:t.contexts,visible:r},()=>p.runtime.lastError)}catch(n){P.debug("create context menu error, it's ok!!",n,`menu id: ${t.id}`)}}}function Fa(){p.contextMenus.onClicked.addListener(e=>{if(e.menuItemId===Lr)if(He()){let r=Oe().OPTIONS_URL;p.tabs.create({url:r})}else p.runtime.openOptionsPage();else if(e.menuItemId===_r){let t=p.runtime.getURL(zt);p.tabs.create({url:t})}else if(e.menuItemId===Rr){let t=p.runtime.getURL(Xn);He()&&(t=Oe().EBOOK_BUILDER_URL),p.tabs.create({url:t})}else if(e.menuItemId===Pr)p.tabs.create({url:p.runtime.getURL(Yn)});else if(e.menuItemId===Qn){let t=p.runtime.getURL($n);He()&&(t=Oe().SUBTITLE_BUILDER_URL),p.tabs.create({url:t})}else e.menuItemId===Zn?p.tabs.create({url:"https://immersivetranslate.com/docs/donate/"}):zr({method:e.menuItemId})})}function Vr(){tt().then(e=>{e.uninstallUrl&&p.runtime.setUninstallURL&&p.runtime.setUninstallURL(e.uninstallUrl),$r(e)}).catch(e=>{P.error("create menu error",e)})}function $r(e){e?Gr(e):tt().then(t=>{Gr(t)}).catch(t=>{P.error("create menu error",t)})}function ja(){p.runtime.onInstalled.addListener(e=>{P.debug(`onInstalled reason: ${e.reason}`),P.debug(e),e.reason=="install"?(async()=>{let t="https://onboarding.immersivetranslate.com/",n=p.runtime.getURL("").startsWith("safari"),a=!1,i=!1;try{let c=await p.runtime.getPlatformInfo();n?c.os==="mac"?a=!0:c.os==="ios"&&(i=!0):c.os==="android"&&(t="https://onboarding.immersivetranslate.com/mobile/")}catch{}a?t="https://onboarding.immersivetranslate.com/mac-safari/":i&&(t="https://onboarding.immersivetranslate.com/ios/step-2/"),p.tabs.create({url:t}),Vr()})():(e.reason=="update"&&p.runtime.getManifest().version!=e.previousVersion,Vr())})}Ra();ja();Ia();p.contextMenus&&Fa();async function Fi(){p.contextMenus&&$r(),(await tt()).debug&&P.setLevel("debug")}Fi().catch(e=>{});})(); +`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};var Br="DENO",Zt="CHROME",Xt="FIREFOX";function ea(e){let t=Zt;try{let r=navigator?.userAgent||"";/firefox/i.test(r)||typeof InstallTrigger<"u"?t=Xt:/deno/i.test(r)&&(t=Br)}catch{}return e===Zt&&t===Zt||e===Xt&&t===Xt||e===Br&&t===Br}function ta(){return ea(Zt)}function ra(){return typeof Deno<"u"}function na(){return ea(Xt)}var aa={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},oa={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:aa,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:aa,query:()=>{},sendMessage:()=>{}}};var p;ra()?p=oa:p=globalThis.immersiveTranslateBrowserAPI;function Ur(e){return Array.isArray(e)?e:e?[e]:[]}function sa(e,t){let r=[],n=Object.keys(e);for(let c of n){let o=e[c];Array.isArray(o)&&r.push(c)}let a={...e};return Object.keys(t).forEach(c=>{let o=t[c];if(o!==void 0)if(!r.includes(c))a[c]=o;else if(c.startsWith("additional")){let l=Ur(o);a[c]=Array.from(new Set([...a[c],...l]))}else a[c]=Ur(o)}),a}function gi(){if(j.PROD==="1")return{};let e={};if(j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:j.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:j.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(j.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:j.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(j.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:j.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:j.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(j.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&j.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:j.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:j.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(j.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:j.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(j.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=j.DEEPL_PROXY_ENDPOINT),j.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=j.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),j.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:j.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return j.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),j.MOCK==="1"&&(e.translationService="mock"),j.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=j.IMMERSIVE_TRANSLATE_SERVICE),e}async function Lt(){let e=await p.storage.local.get(kt);if(e[kt]){let t=e[kt],r=t.tempTranslationUrlMatches||[],n=r.filter(c=>c.expiredAt>Date.now()),a=!1;n.length!==r.length&&(r=n,a=!0);let i={...t,tempTranslationUrlMatches:[...r]};return a&&await ft(i),i}else return{}}async function ft(e){await p.storage.local.set({[kt]:e})}async function tt(){let e=await p.storage.local.get($t),t={...Nr,buildinConfigUpdatedAt:j.BUILD_TIME};if(e[$t]){let m=e[$t];if(m&&m.buildinConfigUpdatedAt){let k=new Date(m.buildinConfigUpdatedAt),G=new Date(t.buildinConfigUpdatedAt);k>G&&(t=m)}}let r={};if(!Or()&&p.commands&&p.commands.getAll){let m=await p.commands.getAll();for(let k of m)k.name&&k.shortcut&&(r[k.name]=k.shortcut)}let n=hi(),a=gi(),i=await _t(),c=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},o=await Lt(),l=new Date;if(o&&o.tempTranslationUrlMatches&&o.tempTranslationUrlMatches.length>0){let m=o.tempTranslationUrlMatches.filter(k=>new Date(k.expiredAt)>l);if(m.length>0){let k=i.translationUrlPattern?i.translationUrlPattern?.matches||[]:[],G=Array.isArray(k)?k:[k],Y=Array.from(new Set(G.concat(m.map(me=>me.match))));i.translationUrlPattern={...i.translationUrlPattern,matches:Y}}}let u=Object.assign({},c,a,i);if(!u.interfaceLanguage){let m=await pi();u.interfaceLanguage=m}let d=u.interfaceLanguage==="en",T=u.targetLanguage==="en",L=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,C=["bing","google","transmart","mock"].includes(u.translationService)||!u.translationService;!d&&!T&&!L&&C?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let b=Object.assign(n,t),J=Object.keys(b),te=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let m of J){let k=m;if(k==="generalRule")typeof u[k]=="object"&&(b[k]=sa(n[k],u[k]));else if(k==="translationServices"){let G=u[k]||{},Y=t[k]||{},me=Object.keys(Y),x=Object.keys(G),S=[...new Set([...me,...x])],f={};for(let A of S)f[A]={...Y[A],...G[A]};b[k]=f}else if(typeof u[k]!="string"&&typeof u[k]!="boolean"&&typeof u[k]!="number"&&te.includes(k))u[k]&&(b[k]=Object.assign(b[k],u[k])),k==="shortcuts"&&(Or()||He()?b[k]={...b[k],...r}:b[k]={...r});else if(k==="rules"){if(Array.isArray(u[k])&&(b[k]=[...u[k],...b[k]]),j.PROD==="0"&&j.DEV_RULES){let G=JSON.parse(j.DEV_RULES);b[k]=[...G,...b[k]]}}else u[k]!==void 0&&(b[k]=u[k])}return b.donateUrl=t.donateUrl,b.minVersion=t.minVersion,b.feedbackUrl=t.feedbackUrl,b}async function _t(){return(await p.storage.sync.get("userConfig")||{}).userConfig||{}}async function bt(e){await p.storage.sync.set({userConfig:e})}var pi=async()=>{let e=["zh-CN"];try{e=await p.i18n.getAcceptLanguages()}catch(n){P.warn("get browser language error:",n)}let r=e.map(n=>ht(n)).find(n=>st[n]);return r||"en"},hi=()=>{let e={...Nr,buildinConfigUpdatedAt:j.BUILD_TIME};return{...e,targetLanguage:Yt,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function ia(e){let t=p.runtime.getURL(Kt),r=new URL(t);return(e.startsWith("http")||!na())&&r.searchParams.set("file",e),r.href}function la(e){return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}var lt=class extends Error{constructor(r,n,a){super(n);this.name=r,a&&(this.details=a)}};async function ua(e){let t;if(e&&e.retry&&e.retry>0)try{t=await dr(ca.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(r){throw r&&r.name==="RetryError"&&r.cause?r.cause:r}else t=await ca(e);return t}async function ca(e){e.body;let{url:t,responseType:r,...n}=e;r||(r="json"),n={mode:"cors",...n};let a=!0;e.fetchPolyfill&&(a=!1);let i=e.fetchPolyfill||fetch,c=12e4;if(e.timeout&&(c=e.timeout),a){let l=new AbortController,u=l.signal;setTimeout(()=>{l.abort()},c),n.signal=u}let o;try{o=await i(t,n)}catch(l){P.error("fetch error",l);let u=l.message||"";throw l.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+u,l}if(o.ok&&o.status>=200&&o.status<400){if(r==="json")return await o.json();if(r==="text")return await o.text();if(r==="raw"){let l=await o.text(),u=Object.fromEntries([...o.headers.entries()]),d=o.url;return d||(o.headers.get("X-Final-URL")?d=o.headers.get("X-Final-URL"):d=t),{body:l,headers:u,status:o.status,statusText:o.statusText,url:d}}else if(r==="stream"){let l="",u;if(o.body&&o.body instanceof ReadableStream)for await(let d of fi(o.body)){let T=new TextDecoder().decode(d);l+=T;let L;for(;(L=l.indexOf(` +`))>=0;){let C=l.slice(0,L).trim();if(l=l.slice(L+1),C.startsWith("event:")||C==="")continue;let b="";if(C.startsWith("data:")&&(b=C.slice(5).trim()),b==="[DONE]")break;let J;try{J=JSON.parse(b??"")}catch(te){P.debug("json error",te);continue}u=J}}return u}}else{let l;try{l=await o.text()}catch(T){P.error("parse response failed",T)}l&&P.error("fail response",l);let u="";l&&(u=l.slice(0,280));let d="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+o.status+": "+(o.statusText||"")+u;throw o.status===429?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${u}`:o.status===403?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${u}`:o.status===400?d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${u}`:o.status===502&&(d=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${u}`),new lt("fetchError",d,l)}}async function*fi(e){let t=e.getReader();try{for(;;){let{done:r,value:n}=await t.read();if(r)return;yield n}}finally{t.releaseLock()}}var da=["*://*/*","*","*://*"],ga="immersive-translate-wildcard-placeholder.com";function bi(e,t){let r=[];if(!t||(t&&!Array.isArray(t)?r=[t]:r=t,r.length===0))return null;if(r.some(c=>da.includes(c)))return e;let n=new URL(e);n.hash="",n.search="";let a=n.href,i=n.hostname;if(r&&r.length>0){let c=r.find(o=>{let l=o;if(o===i)return!0;if(da.includes(o))return!0;if(!o.includes("*")&&o.includes("://")){try{let u=new URL(o);return u.pathname==="/"&&!o.endsWith("/")?u.hostname===i:wi(a,o)}catch{}return!1}else{let u,d=o;if(o.includes("://")){let te=o.split("://");u=te[0],u==="*"&&te.length>1&&(u="*",o="https://"+te[1])}else u="*",o="https://"+o;let T=o.replace(/\*/g,ga),L;try{L=new URL(T)}catch{return P.debug("invalid match pattern",T,"raw match value:",d),!1}let C=L.hostname,b=L.pathname;b==="/"&&(d.replace("://","").includes("/")||(b="/*"));let J=Ti(u+":",ma(C),ma(b));if(J){let te=new URL(a);return te.port="",J.test(te.href)}else return!1}});if(c)return c}return null}function ma(e){return e.replaceAll(ga,"*")}function Ti(e,t,r){let n="^";return e==="*:"?n+="(http:|https:|file:)":n+=e,n+="//",t&&(e==="file:"||(t==="*"?n+="[^/]+?":(t.match(/^\*\./)&&(n+="[^/]*?",t=t.substring(2)),n+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),r?r==="*"||r==="/*"?n+="(/.*)?":r.includes("*")?(n+=r.replace(/\*/g,".*?"),n+="/?"):n+=r.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):n+="/?",n+="$",new RegExp(n)}function pa(e,t){return bi(e,t)!==null}function wi(e,t){let r=new URL(e),n=new URL(t);return r.hostname===n.hostname&&r.pathname===n.pathname&&r.protocol===n.protocol&&r.port===n.port}var Jt=class{constructor(t){this.accessToken=t}async listAll(){let t=[],r="";do{let{nextPageToken:n,files:a}=await this.list(r).catch(i=>{throw i});t.push(...a),r=n||""}while(r);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){return P.error("get config error, use default",r),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,r=Vt){let n=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:r,parents:["appDataFolder"],mimeType:"application/json"},n)}updateConfig(t,r){let n=new Blob([JSON.stringify(r,null,2)],{type:"application/json"});return this.updateContent(t,n)}async upload(t,r){let n=new FormData;n.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),n.append("file",r);let a=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:n});return a.ok?await a.json():Promise.reject(a.text())}async list(t,r){let n=new URL("https://www.googleapis.com/drive/v3/files");t&&n.searchParams.append("pageToken",t),r&&n.searchParams.append("q",r),n.searchParams.append("spaces","appDataFolder"),n.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),n.searchParams.append("pageSize","100"),n.searchParams.append("orderBy","createdTime desc");try{return P.debug("list api:",n.toString(),this.accessToken),await(await fetch(n.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(a){throw P.error("fetch google ip error",a),a}}async updateContent(t,r){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:r})).text()}};function ha(e,t){let r=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${Gt}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(r.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function fa(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function ba(e,t,r,n,a,i,c){P.debug(`autoSyncStrategy accessToken: ${e}`);let o=new Jt(e);try{let l=(await o.findByName(Vt)).files;P.debug("files",l);let u=l[0]?.id,d=null;if(u&&(d=await o.getConfig(u).then(T=>({fileId:u,config:T}))),d){let{config:T,fileId:L}=d,C=T.updatedAt?new Date(T.updatedAt):new Date(0),b=t.updatedAt?new Date(t.updatedAt):new Date(0);if(P.debug("remoteUpdatedAt",C,"localUpdatedAt",b),C>b)P.debug("remote is newer, update local config",T),r(T),i&&i(!0);else if(C.getTime()===b.getTime())P.debug("remote and local are the same, do nothing"),i&&i(!1);else if(C(await rt.removeAuthInfo(),Dr()&&globalThis.location.reload(),n))}static async getAuthInfo(){let t=await p.storage.local.get(gt);if(t[gt])return t[gt]}static async removeAuthInfo(){return await p.storage.local.remove(gt)}static setAuthInfo(t){return p.storage.local.set({[gt]:t})}async auth(t=!1){let r=await rt.getAuthInfo();if(P.debug(this.CLASSNAME,"token from cache:",r),r&&r.access_token&&await Ta(r.access_token).then(i=>!0).catch(i=>!1))return Promise.resolve(r);let n=ha(this._state,this._redirectUrl);return P.debug(this.CLASSNAME,"auth url: "+n),Dr()?this.userscriptAuthWorkflow(n,t):this.extensionAuthWorkflow(n).then(a=>(rt.setAuthInfo(a),a))}async userscriptAuthWorkflow(t,r){return r&&await p.storage.local.set({[Xn]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let r,n=!1;return new Promise((a,i)=>{let c=()=>{p.tabs.onUpdated.removeListener(o),p.tabs.onRemoved.removeListener(l)},o=(L,C,b)=>{if(P.debug(this.CLASSNAME,"create tab onUpdated: "+b.url),r===L){let J=new URL(b.url||""),te=fa(b.url);J.pathname.startsWith("/auth-done")&&te?.access_token&&(P.debug(this.CLASSNAME,"auth done: "+b.url),a({access_token:te.access_token}),n=!0,p.tabs.remove(L),c())}},l=(L,C)=>{P.debug(this.CLASSNAME,"create tab onRemoved: "+L),(L===r||!n)&&(c(),i(new Error("auth failed")))},u=Math.min(500,screen.availWidth),d=Math.min(650,screen.availHeight),T;p.windows===void 0?T=p.tabs.create({url:t}).then(L=>{r=L.id}):T=p.windows.create({url:t,type:"popup",width:u,height:d,left:Math.round((screen.width-u)/2),top:Math.round((screen.height-d)/2)}).then(L=>{r=L.tabs[0].id}),T.then(()=>{p.tabs.onUpdated.addListener(o),p.tabs.onRemoved.addListener(l)}).catch(L=>{P.debug(this.CLASSNAME,"create tab failed: "+L),i(L)})})}};var xi="https://www.googleapis.com/oauth2/v3/tokeninfo",vi=Gt,Ci=Oe().REDIRECT_URL;function Ta(e){if(!e)throw"Authorization failure";let t=`${xi}?access_token=${e}`,r=new Request(t,{method:"GET"});function n(a){return new Promise((i,c)=>{a.status!=200&&c("Token validation error"),a.json().then(o=>{o.aud&&o.aud===vi?i(e):c("Token validation error")})})}return fetch(r).then(n)}function wa(e,t=!1){let r=Ci;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let a=window.location.hostname,i=window.location.port;r=`${window.location.protocol}//${a}${i?`:${i}`:""}/auth-done/`}return new rt(e,r).auth(t)}async function ya(){}function xa(e,t){let r=new Map;for(let i of t)r.set(i.header.toLowerCase(),i);let n=[],a=e.filter(i=>{let c=r.get(i.name.toLowerCase());if(c){if(c.operation==="remove")return!1;if(c.operation==="set")return!1}return!0});for(let i of t)i.operation==="set"&&n.push({name:i.header,value:i.value||""});return a.concat(n)}var Qt=[{id:1,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://httpstat.us/429"},{header:"origin",operation:"set",value:"https://httpstat.us/429"},{header:"DNT",operation:"set",value:"1"}]},condition:{urlFilter:"https://httpstat.us/429",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:2,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"https://www.deepl.com"},{header:"DNT",operation:"set",value:"1"},{header:"cookie",operation:"remove"}]},condition:{urlFilter:"https://www2.deepl.com/jsonrpc*",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:200,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"chrome-extension://cofdbpoegempjloogbagkncekinflcnj"},{header:"DNT",operation:"set",value:"1"}]},condition:{urlFilter:"https://api.deepl.com/jsonrpc*",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:201,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"Referer",operation:"set",value:"https://www.deepl.com/"},{header:"origin",operation:"set",value:"chrome-extension://cofdbpoegempjloogbagkncekinflcnj"}]},condition:{urlFilter:"https://w.deepl.com/oidc/token",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:3,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"origin",operation:"set",value:"chrome-extension://lkjkfecdnfjopaeaibboihfkmhdjmanm"}]},condition:{urlFilter:"https://transmart.qq.com/api/imt",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}},{id:4,priority:1,action:{type:"modifyHeaders",requestHeaders:[{header:"origin",operation:"set",value:"chrome-extension://lkjkfecdnfjopaeaibboihfkmhdjmanm"}]},condition:{urlFilter:"https://translate.volcengine.com/crx/translate/v1/",resourceTypes:["xmlhttprequest"],domainType:"thirdParty",initiatorDomains:["cfhamdkdjgoelclgllcoikbckcfpaklj","bpoadfkcbjbfhfodiogcnhhhpibjhbnh"]}}];var Pt=new Map,Rt=class{constructor(t,r=!1){this.logger=new Mt,r&&this.logger.setLevel("debug"),this.fromType=t,Pt.has(t)||(Pt.set(t,new Map),p.runtime.onMessage.addListener((n,a,i)=>{let c=n.from,o=n.to,l,u,d;a.tab&&a.tab.id&&(l=a.tab.id,c=`${c}:${l}`,u=a.tab.url,d=a.tab.active),this.logger.debug(`${n.to} received message [${n.payload.method}] from ${n.from}`,n.payload.data?n.payload.data:" ");let T=jr(o),{type:L,name:C}=T;if(L!==t)return!1;let b=jr(c),te=Pt.get(L).get(C);if(!te)return this.logger.debug(`no message handler for ${L}:${o}, but it's ok`),!1;let{messageHandler:m,sync:k}=te,G={type:t,name:b.name,id:l,url:u,active:d};if(k){try{let Y=m(n.payload,G);i({ok:!0,data:Y})}catch(Y){i({ok:!1,errorName:Y.name,errorMessage:Y.message,errorDetails:Y.details})}return!1}else return m(n.payload,G).then(Y=>{i({ok:!0,data:Y})}).catch(Y=>{i({ok:!1,errorName:Y.name,errorMessage:Y.message,errorDetails:Y.details})}),!0}))}getConnection(t,r,n){let a=!1;n&&n.sync&&(a=!0);let i=this.fromType,c=Pt.get(i);if(c.has(t))return c.get(t).connectionInstance;{let o=new Fr(`${i}:${t}`,this.logger);return Pt.get(i).set(t,{messageHandler:r,sync:a,connectionInstance:o}),o}}},Fr=class{constructor(t,r){this.from=t,this.logger=r}async sendMessage(t,r){let n=jr(t),{type:a,id:i}=n;if(a!=="content_script"){let c={to:t,from:this.from,payload:r};this.logger.debug(`${c.from} send message [${c.payload.method}] to ${c.to}`,c.payload.data?c.payload.data:" ");try{let o=await p.runtime.sendMessage(c);return va(c,o,this.logger)}catch(o){if(a==="popup"){let l=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(r)}`;return this.logger.debug(l,r,t,o),Promise.resolve({message:l})}else throw o}}else{let c={from:this.from,to:t,payload:r};this.logger.debug(`${c.from} send message [${c.payload.method}] to ${c.to}`,c.payload.data?c.payload.data:" ");let o=await p.tabs.sendMessage(i,c);return va(c,o,this.logger)}}};function va(e,t,r){if(t){if(t.ok)return r.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new lt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new lt("noResponse","Unknown error")}function jr(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let r={type:t[0],name:t[1]};if(t[0]==="content_script"){let n=parseInt(t[2]);if(!isNaN(n))r.id=n;else throw new Error("tab id not a valid number")}return r}function nt(e,t){var r=(e&65535)+(t&65535),n=(e>>16)+(t>>16)+(r>>16);return n<<16|r&65535}function Ai(e,t){return e<>>32-t}function tr(e,t,r,n,a,i){return nt(Ai(nt(nt(t,e),nt(n,i)),a),r)}function Ae(e,t,r,n,a,i,c){return tr(t&r|~t&n,e,t,a,i,c)}function ke(e,t,r,n,a,i,c){return tr(t&n|r&~n,e,t,a,i,c)}function Ee(e,t,r,n,a,i,c){return tr(t^r^n,e,t,a,i,c)}function Me(e,t,r,n,a,i,c){return tr(r^(t|~n),e,t,a,i,c)}function er(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var r,n,a,i,c,o=1732584193,l=-271733879,u=-1732584194,d=271733878;for(r=0;r>5]>>>t%32&255);return r}function Wr(e){var t,r=[];for(r[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(n=er(n,e.length*8)),r=0;r<16;r+=1)a[r]=n[r]^909522486,i[r]=n[r]^1549556828;return c=er(a.concat(Wr(t)),512+t.length*8),Ca(er(i.concat(c),512+128))}function Sa(e){var t="0123456789abcdef",r="",n,a;for(a=0;a>>4&15)+t.charAt(n&15);return r}function Hr(e){return unescape(encodeURIComponent(e))}function Aa(e){return ki(Hr(e))}function Mi(e){return Sa(Aa(e))}function ka(e,t){return Ei(Hr(e),Hr(t))}function Li(e,t){return Sa(ka(e,t))}function Ea(e,t,r){return t?r?ka(t,e):Li(t,e):r?Aa(e):Mi(e)}function qr(e){if(Math.abs(e)<1024)return e+" Byte";let r=["KB","MB","GB","TB","PB","EB","ZB","YB"],n=-1;do e/=1024,++n;while(Math.abs(e)>=1024&&n{let a=e,i=1,c=indexedDB.open(a,i);c.onsuccess=o=>{r(c.result)},c.onerror=o=>{n()},c.onupgradeneeded=o=>{let l=c.result,u=t||"cache";l.createObjectStore(u,{keyPath:"key"})}})}async function Ma(e){let t=`${he}-${e.service}@${e.from}->${e.to}`;return await Pi(t,e)}async function La(e){let t=Ea(e.originalText),r=`${he}-${e.service}@${e.from}->${e.to}`;return await _i(r,t)}async function _i(e,t){let r=await It(e);return await new Promise((n,a)=>{if(!r)return a();let i="cache",o=r.transaction([i],"readonly").objectStore(i).get(t);o.onsuccess=l=>{r.close();let u=o.result;n(u)},o.onerror=l=>{r.close(),a()}})}async function Pi(e,t){let r=await It(e);return(await _a()).includes(e)||await Ri(e),await new Promise(a=>{if(!r)return a(!1);let i="cache",o=r.transaction([i],"readwrite").objectStore(i).put(t);o.onsuccess=l=>{r.close(),a(!0)},o.onerror=l=>{r.close(),a(!1)}})}async function Ri(e){let t="cache_list",r=await It(he+"-cacheList",t),a=r.transaction([t],"readwrite").objectStore(t).put({key:e});a.onsuccess=i=>{r.close(),Tt.push(e)},a.onerror=i=>{r.close()}}async function _a(){if(Tt&&Tt.length>0)return Tt;let e=await It(he+"-cacheList","cache_list");return Tt=await new Promise(t=>{let r="cache_list",a=e.transaction([r],"readonly").objectStore(r).getAllKeys();a.onsuccess=i=>{e.close(),t(a.result)},a.onerror=i=>{e.close(),t([])}}),Tt}async function Pa(){try{let e=[];(await _a()).forEach(n=>{e.push(Ii(n))});let r=await Promise.all(e);return qr(r.reduce((n,a)=>n+a,0))}catch{return qr(0)}}async function Ii(e){let t=await It(e),n=[...t.objectStoreNames].reduce((c,o)=>{let l=Oi(t,o);return c.push(l),c},[]),a=await Promise.all(n);return t.close(),a.reduce((c,o)=>c+o,0)}async function Oi(e,t){return await new Promise((r,n)=>{if(e==null)return n();let a=0,i=e.transaction([t]).objectStore(t).openCursor();i.onsuccess=c=>{let o=i.result;if(o){let l=o.value,u=JSON.stringify(l);a+=u.length,o.continue()}else r(a)},i.onerror=c=>n("error in "+t+": "+c)})}var rr,Di=async function(e,t){let{method:r,data:n}=e;if(P.debug("background received message",r,n||" "),r==="mock")await lr(150);else{if(r==="queryParagraphCache")return La(n);if(r==="setParagraphCache")return Ma(n);if(r==="calculateSize")return Pa();if(r==="fetch")return ua(n);if(r==="getConfig")return tt();if(r==="getLocalConfig")return Lt();if(r==="openOptionsPage")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i})}else{let a=p.runtime.getURL("options.html"),i=n&&n.pageRoute?n.pageRoute:"";i=i||"",p.tabs.create({url:a+i})}else if(r==="openAboutPage")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i+"#about"})}else p.tabs.create({url:p.runtime.getURL("options.html#about")});else if(r=="openSearchEnhancement")if(He()){let i=Oe().OPTIONS_URL;p.tabs.create({url:i+"#advanced"})}else p.tabs.create({url:p.runtime.getURL("options.html#advanced")});else if(r==="openEbookViewerPage")p.tabs.create({url:p.runtime.getURL("ebook/index.html")});else if(r==="openSubtitleBuilderPage"){let a=p.runtime.getURL("ebook/subtitle/index.html");He()&&(a=Oe().SUBTITLE_BUILDER_URL),p.tabs.create({url:a})}else if(r==="openEbookBuilderPage"){let a=p.runtime.getURL("ebook/make/index.html");He()&&(a=Oe().EBOOK_BUILDER_URL),p.tabs.create({url:a})}else if(r==="openHtmlViewerPage"){let a=p.runtime.getURL("html/index.html");p.tabs.create({url:a})}else if(r==="openPdfViewerPage"){let a=p.runtime.getURL("pdf/index.html");p.tabs.create({url:a})}else{if(r==="setLocalConfig")return ft(n);if(r=="getUserConfig")return _t();if(r=="setUserConfig")return bt(n);if(r==="detectLanguage"){let{text:a,minLength:i}=n;if(!i&&i!==0&&(i=50),a.length<=i)return"auto";if(p.i18n&&p.i18n.detectLanguage)try{let c=await p.i18n.detectLanguage(a);return c.languages.length>0?ht(c.languages[0].language):"auto"}catch(c){return P.debug("detect language error",c),"auto"}else return"auto"}else if(r==="detectTabLanguage")try{let a=await p.tabs.detectLanguage(t.id);return ht(a)}catch(a){return P.debug("detect tab language error, use auto ",a),"auto"}else if(r==="autoSyncLatestConfig"){try{await ya()}catch(a){P.debug("auto sync latest config error",a)}return""}}}};function Ra(){zr();let e=p.runtime.getManifest();if(e.manifest_version>2,e.manifest_version===2&&p.webRequest&&p.webRequest.onBeforeSendHeaders){let t=Qt.map(n=>n.condition.urlFilter),r=Qt.reduce((n,a)=>(a.condition.resourceTypes.forEach(i=>{n.includes(i)||n.push(i)}),n),[]);p.webRequest.onBeforeSendHeaders.addListener(function(n){if(!(n.originUrl&&n.originUrl.startsWith("http"))&&n.originUrl&&n.requestHeaders)for(let a=0;a{if(P.debug(`received command: ${e}`),["toggleTranslatePage"].includes(e)){let t=await p.tabs.query({active:!0,currentWindow:!0});if(t.length===0||typeof t[0].id>"u")return;let n=t[0].url;if(la(n)){p.tabs.create({url:ia(n)});return}}await Kr({method:e})})}async function Kr(e){let r=(await p.tabs.query({currentWindow:!0,active:!0}))[0].id;zr().sendMessage(`content_script:main:${r}`,e).catch(a=>{P.error("send content message request failed",e,a)})}function Ni(e,t){let r=e;return t&&Object.keys(t).forEach(n=>{let a=t[n],i=Bi(n);if(typeof a=="object"||i){let c=a;i&&typeof c=="string"&&(c={tag:"a",href:c,target:"_blank"});let o=`<${n}>`,l=r.indexOf(o);if(l!==-1){let u=c.tag||"a",d=r.indexOf(``);if(d!==-1){let T=r.substring(l+o.length,d),L=Object.keys(c).filter(C=>C!=="tag").map(C=>`${C}="${c[C]}"`).join(" ");r=r.replace(`${o}${T}`,`<${u} ${L}>${T}`)}}}else{let c=new RegExp("{"+n+"}","gm");r=r.replace(c,a.toString())}}),r}function Oa(e,t,r){let n=e[t];if(!n)return r;let a=r.split("."),i="";do{i+=a.shift();let c=n[i];c!==void 0&&(typeof c=="object"||!a.length)?(n=c,i=""):a.length?i+=".":n=r}while(a.length);return n}function Da(e,t,r,n,a){if(!e.hasOwnProperty(r))return t;let i=Oa(e,r,t);return i===t&&r!==n&&(i=Oa(e,n,t)),Ni(i,a)}function Bi(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}var Na={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},Ui={...st,"zh-CN":{...Na["zh-CN"],...st["zh-CN"]},"zh-TW":{...Na["zh-TW"],...st["zh-TW"]}};function Ba(e,t,r){return Da(Ui,e,t,Yt,r)}var Ot=ta()?["action"]:["browser_action","page_action"],Ua=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...Ot]},{id:Lr,contexts:Ot},{id:Pr,contexts:Ot},{id:Rr,contexts:Ot},{id:_r,contexts:Ot}];async function Gr(e){P.debug("createContextMenu",Ua);for(let t of Ua){let r=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(r=!1);try{p.contextMenus.create({id:t.id,title:Ba(`browser.${t.id}`,e.interfaceLanguage),contexts:t.contexts,visible:r},()=>p.runtime.lastError)}catch(n){P.debug("create context menu error, it's ok!!",n,`menu id: ${t.id}`)}}}function Fa(){p.contextMenus.onClicked.addListener(e=>{if(e.menuItemId===Lr)if(He()){let r=Oe().OPTIONS_URL;p.tabs.create({url:r})}else p.runtime.openOptionsPage();else if(e.menuItemId===_r){let t=p.runtime.getURL(Kt);p.tabs.create({url:t})}else if(e.menuItemId===Rr){let t=p.runtime.getURL(Zn);He()&&(t=Oe().EBOOK_BUILDER_URL),p.tabs.create({url:t})}else if(e.menuItemId===Pr)p.tabs.create({url:p.runtime.getURL(Yn)});else if(e.menuItemId===Qn){let t=p.runtime.getURL($n);He()&&(t=Oe().SUBTITLE_BUILDER_URL),p.tabs.create({url:t})}else e.menuItemId===Jn?p.tabs.create({url:"https://immersivetranslate.com/docs/donate/"}):Kr({method:e.menuItemId})})}function Vr(){tt().then(e=>{e.uninstallUrl&&p.runtime.setUninstallURL&&p.runtime.setUninstallURL(e.uninstallUrl),$r(e)}).catch(e=>{P.error("create menu error",e)})}function $r(e){e?Gr(e):tt().then(t=>{Gr(t)}).catch(t=>{P.error("create menu error",t)})}function ja(){p.runtime.onInstalled.addListener(e=>{P.debug(`onInstalled reason: ${e.reason}`),P.debug(e),e.reason=="install"?(async()=>{let t="https://onboarding.immersivetranslate.com/",n=p.runtime.getURL("").startsWith("safari"),a=!1,i=!1;try{let c=await p.runtime.getPlatformInfo();n?c.os==="mac"?a=!0:c.os==="ios"&&(i=!0):c.os==="android"&&(t="https://onboarding.immersivetranslate.com/mobile/")}catch{}a?t="https://onboarding.immersivetranslate.com/mac-safari/":i&&(t="https://onboarding.immersivetranslate.com/ios/step-2/"),p.tabs.create({url:t}),Vr()})():(e.reason=="update"&&p.runtime.getManifest().version!=e.previousVersion,Vr())})}Ra();ja();Ia();p.contextMenus&&Fa();async function Fi(){p.contextMenus&&$r(),(await tt()).debug&&P.setLevel("debug")}Fi().catch(e=>{});})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/dist/firefox/content_script.js b/dist/firefox/content_script.js index 26e27cf96..16ce27fa5 100644 --- a/dist/firefox/content_script.js +++ b/dist/firefox/content_script.js @@ -1,4 +1,4 @@ -(()=>{var Wg=Object.defineProperty;var qg=(e,t)=>{for(var n in t)Wg(e,n,{get:t[n],enumerable:!0})};var rl=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var a0=(e,t,n)=>(rl(e,t,"read from private field"),n?n.call(e):t.get(e)),ol=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},il=(e,t,n,a)=>(rl(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T16:25:28.017Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Jg=Object.defineProperty;var Yg=(e,t)=>{for(var n in t)Jg(e,n,{get:t[n],enumerable:!0})};var ll=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var ui=(e,t,n)=>(ll(e,t,"read from private field"),n?n.call(e):t.get(e)),cl=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},dl=(e,t,n,a)=>(ll(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,11 +4067,11 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var Kg=Object.create,r0=Object.defineProperty,Gg=Object.getOwnPropertyDescriptor,ll=Object.getOwnPropertyNames,Vg=Object.getPrototypeOf,Jg=Object.prototype.hasOwnProperty,Yg=(e,t)=>function(){return t||(0,e[ll(e)[0]])((t={exports:{}}).exports,t),t.exports},Xg=(e,t)=>{for(var n in t)r0(e,n,{get:t[n],enumerable:!0})},u0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of ll(t))!Jg.call(e,u)&&u!==n&&r0(e,u,{get:()=>t[u],enumerable:!(a=Gg(t,u))||a.enumerable});return e},Zg=(e,t,n)=>(u0(e,t,"default"),n&&u0(n,t,"default")),cl=(e,t,n)=>(n=e!=null?Kg(Vg(e)):{},u0(t||!e||!e.__esModule?r0(n,"default",{value:e,enumerable:!0}):n,e)),dl=Yg({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/.pnpm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var u={exports:{}};a(u),n.browser=u.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",u=r=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(S,D=void 0){super(D),this.createItem=S}get(S){return this.has(S)||this.set(S,this.createItem(S)),super.get(S)}}let s=y=>y&&typeof y=="object"&&typeof y.then=="function",l=(y,S)=>(...D)=>{r.runtime.lastError?y.reject(new Error(r.runtime.lastError.message)):S.singleCallbackArg||D.length<=1&&S.singleCallbackArg!==!1?y.resolve(D[0]):y.resolve(D)},c=y=>y==1?"argument":"arguments",d=(y,S)=>function(x,...F){if(F.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${c(S.maxArgs)} for ${y}(), got ${F.length}`);return new Promise((O,w)=>{if(S.fallbackToNoCallback)try{x[y](...F,l({resolve:O,reject:w},S))}catch{x[y](...F),S.fallbackToNoCallback=!1,S.noCallback=!0,O()}else S.noCallback?(x[y](...F),O()):x[y](...F,l({resolve:O,reject:w},S))})},m=(y,S,D)=>new Proxy(S,{apply(x,F,O){return D.call(F,y,...O)}}),g=Function.call.bind(Object.prototype.hasOwnProperty),f=(y,S={},D={})=>{let x=Object.create(null),F={has(w,B){return B in y||B in x},get(w,B,J){if(B in x)return x[B];if(!(B in y))return;let N=y[B];if(typeof N=="function")if(typeof S[B]=="function")N=m(y,y[B],S[B]);else if(g(D,B)){let ge=d(B,D[B]);N=m(y,y[B],ge)}else N=N.bind(y);else if(typeof N=="object"&&N!==null&&(g(S,B)||g(D,B)))N=f(N,S[B],D[B]);else if(g(D,"*"))N=f(N,S[B],D["*"]);else return Object.defineProperty(x,B,{configurable:!0,enumerable:!0,get(){return y[B]},set(ge){y[B]=ge}}),N;return x[B]=N,N},set(w,B,J,N){return B in x?x[B]=J:y[B]=J,!0},defineProperty(w,B,J){return Reflect.defineProperty(x,B,J)},deleteProperty(w,B){return Reflect.deleteProperty(x,B)}},O=Object.create(y);return new Proxy(O,F)},v=y=>({addListener(S,D,...x){S.addListener(y.get(D),...x)},hasListener(S,D){return S.hasListener(y.get(D))},removeListener(S,D){S.removeListener(y.get(D))}}),T=new i(y=>typeof y!="function"?y:function(D){let x=f(D,{},{getContent:{minArgs:0,maxArgs:0}});y(x)}),p=new i(y=>typeof y!="function"?y:function(D,x,F){let O=!1,w,B=new Promise(pe=>{w=function(Ne){O=!0,pe(Ne)}}),J;try{J=y(D,x,w)}catch(pe){J=Promise.reject(pe)}let N=J!==!0&&s(J);if(J!==!0&&!N&&!O)return!1;let ge=pe=>{pe.then(Ne=>{F(Ne)},Ne=>{let be;Ne&&(Ne instanceof Error||typeof Ne.message=="string")?be=Ne.message:be="An unexpected error occurred",F({__mozWebExtensionPolyfillReject__:!0,message:be})}).catch(Ne=>{})};return ge(N?J:B),!0}),C=({reject:y,resolve:S},D)=>{r.runtime.lastError?r.runtime.lastError.message===a?S():y(new Error(r.runtime.lastError.message)):D&&D.__mozWebExtensionPolyfillReject__?y(new Error(D.message)):S(D)},M=(y,S,D,...x)=>{if(x.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${c(S.maxArgs)} for ${y}(), got ${x.length}`);return new Promise((F,O)=>{let w=C.bind(null,{resolve:F,reject:O});x.push(w),D.sendMessage(...x)})},L={devtools:{network:{onRequestFinished:v(T)}},runtime:{onMessage:v(p),onMessageExternal:v(p),sendMessage:M.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:M.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},A={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":A},services:{"*":A},websites:{"*":A}},f(r,L,o)};n.exports=u(chrome)}else n.exports=globalThis.browser})}}),ml={};Xg(ml,{default:()=>Nu});var Qg=cl(dl());Zg(ml,cl(dl()));var{default:sl,...ep}=Qg,Nu=sl!==void 0?sl:ep;globalThis.immersiveTranslateBrowserAPI=Nu;function lt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var de=lt();function ne(){return de.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function gl(){return de.HAS_CSP_ERROR=="1"}function Rt(){if(de.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function pl(){return typeof Deno<"u"}var ub=lt().PROD==="1",ca=lt().PROD!=="1";function fl(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function da(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var o0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function Iu(e,t){let n=da(),a=setTimeout(()=>n.reject(new o0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Xa(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(s),r(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var hl=class{#e=0;#t=[];#n=[];#a=da();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tSp,bgBlue:()=>Pp,bgBrightBlack:()=>Rp,bgBrightBlue:()=>jp,bgBrightCyan:()=>Hp,bgBrightGreen:()=>Np,bgBrightMagenta:()=>zp,bgBrightRed:()=>Op,bgBrightWhite:()=>Up,bgBrightYellow:()=>Ip,bgCyan:()=>_p,bgGreen:()=>Lp,bgMagenta:()=>Mp,bgRed:()=>Dp,bgRgb24:()=>Kp,bgRgb8:()=>qp,bgWhite:()=>Bp,bgYellow:()=>Fp,black:()=>dp,blue:()=>fp,bold:()=>up,brightBlack:()=>yl,brightBlue:()=>wp,brightCyan:()=>kp,brightGreen:()=>xp,brightMagenta:()=>vp,brightRed:()=>Tp,brightWhite:()=>Ap,brightYellow:()=>Cp,cyan:()=>bp,dim:()=>rp,getColorEnabled:()=>np,gray:()=>yp,green:()=>gp,hidden:()=>lp,inverse:()=>sp,italic:()=>op,magenta:()=>hp,red:()=>mp,reset:()=>ap,rgb24:()=>$p,rgb8:()=>Wp,setColorEnabled:()=>tp,strikethrough:()=>cp,stripColor:()=>Vp,underline:()=>ip,white:()=>Ep,yellow:()=>pp});var{Deno:bl}=globalThis,El=typeof bl?.noColor=="boolean"?bl.noColor:!0,i0=!El;function tp(e){El||(i0=e)}function np(){return i0}function re(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function oe(e,t){return i0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function ap(e){return oe(e,re([0],0))}function up(e){return oe(e,re([1],22))}function rp(e){return oe(e,re([2],22))}function op(e){return oe(e,re([3],23))}function ip(e){return oe(e,re([4],24))}function sp(e){return oe(e,re([7],27))}function lp(e){return oe(e,re([8],28))}function cp(e){return oe(e,re([9],29))}function dp(e){return oe(e,re([30],39))}function mp(e){return oe(e,re([31],39))}function gp(e){return oe(e,re([32],39))}function pp(e){return oe(e,re([33],39))}function fp(e){return oe(e,re([34],39))}function hp(e){return oe(e,re([35],39))}function bp(e){return oe(e,re([36],39))}function Ep(e){return oe(e,re([37],39))}function yp(e){return yl(e)}function yl(e){return oe(e,re([90],39))}function Tp(e){return oe(e,re([91],39))}function xp(e){return oe(e,re([92],39))}function Cp(e){return oe(e,re([93],39))}function wp(e){return oe(e,re([94],39))}function vp(e){return oe(e,re([95],39))}function kp(e){return oe(e,re([96],39))}function Ap(e){return oe(e,re([97],39))}function Sp(e){return oe(e,re([40],49))}function Dp(e){return oe(e,re([41],49))}function Lp(e){return oe(e,re([42],49))}function Fp(e){return oe(e,re([43],49))}function Pp(e){return oe(e,re([44],49))}function Mp(e){return oe(e,re([45],49))}function _p(e){return oe(e,re([46],49))}function Bp(e){return oe(e,re([47],49))}function Rp(e){return oe(e,re([100],49))}function Op(e){return oe(e,re([101],49))}function Np(e){return oe(e,re([102],49))}function Ip(e){return oe(e,re([103],49))}function jp(e){return oe(e,re([104],49))}function zp(e){return oe(e,re([105],49))}function Hp(e){return oe(e,re([106],49))}function Up(e){return oe(e,re([107],49))}function Cn(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function Wp(e,t){return oe(e,re([38,5,Cn(t)],39))}function qp(e,t){return oe(e,re([48,5,Cn(t)],49))}function $p(e,t){return typeof t=="number"?oe(e,re([38,2,t>>16&255,t>>8&255,t&255],39)):oe(e,re([38,2,Cn(t.r),Cn(t.g),Cn(t.b)],39))}function Kp(e,t){return typeof t=="number"?oe(e,re([48,2,t>>16&255,t>>8&255,t&255],49)):oe(e,re([48,2,Cn(t.r),Cn(t.g),Cn(t.b)],49))}var Gp=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function Vp(e){return e.replace(Gp,"")}var s0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},Jp={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function l0(e,t){let n={...Jp,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new s0(u,n.maxAttempts)}var $b=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var ju=globalThis||(typeof window<"u"?window:self),Xp=Object.create,d0=Object.defineProperty,Zp=Object.getOwnPropertyDescriptor,Qp=Object.getOwnPropertyNames,ef=Object.getPrototypeOf,tf=Object.prototype.hasOwnProperty,nf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),af=(e,t)=>{for(var n in t)d0(e,n,{get:t[n],enumerable:!0})},c0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Qp(t))!tf.call(e,u)&&u!==n&&d0(e,u,{get:()=>t[u],enumerable:!(a=Zp(t,u))||a.enumerable});return e},uf=(e,t,n)=>(c0(e,t,"default"),n&&c0(n,t,"default")),xl=(e,t,n)=>(n=e!=null?Xp(ef(e)):{},c0(t||!e||!e.__esModule?d0(n,"default",{value:e,enumerable:!0}):n,e)),Cl=nf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof ju=="object"&&ju&&ju.Object===Object&&ju,d=typeof self=="object"&&self&&self.Object===Object&&self,m=c||d||Function("return this")(),g=Object.prototype,f=g.toString,v=Math.max,T=Math.min,p=function(){return m.Date.now()};function C(D,x,F){var O,w,B,J,N,ge,pe=0,Ne=!1,be=!1,vt=!0;if(typeof D!="function")throw new TypeError(n);x=S(x)||0,L(F)&&(Ne=!!F.leading,be="maxWait"in F,B=be?v(S(F.maxWait)||0,x):B,vt="trailing"in F?!!F.trailing:vt);function ye(Z){var ue=O,ce=w;return O=w=void 0,pe=Z,J=D.apply(ce,ue),J}function b(Z){return pe=Z,N=setTimeout(le,x),Ne?ye(Z):J}function I(Z){var ue=Z-ge,ce=Z-pe,Y=x-ue;return be?T(Y,B-ce):Y}function G(Z){var ue=Z-ge,ce=Z-pe;return ge===void 0||ue>=x||ue<0||be&&ce>=B}function le(){var Z=p();if(G(Z))return V(Z);N=setTimeout(le,I(Z))}function V(Z){return N=void 0,vt&&O?ye(Z):(O=w=void 0,J)}function Ae(){N!==void 0&&clearTimeout(N),pe=0,O=ge=w=N=void 0}function Q(){return N===void 0?J:V(p())}function Te(){var Z=p(),ue=G(Z);if(O=arguments,w=this,ge=Z,ue){if(N===void 0)return b(ge);if(be)return N=setTimeout(le,x),ye(ge)}return N===void 0&&(N=setTimeout(le,x)),J}return Te.cancel=Ae,Te.flush=Q,Te}function M(D,x,F){var O=!0,w=!0;if(typeof D!="function")throw new TypeError(n);return L(F)&&(O="leading"in F?!!F.leading:O,w="trailing"in F?!!F.trailing:w),C(D,x,{leading:O,maxWait:x,trailing:w})}function L(D){var x=typeof D;return!!D&&(x=="object"||x=="function")}function A(D){return!!D&&typeof D=="object"}function y(D){return typeof D=="symbol"||A(D)&&f.call(D)==u}function S(D){if(typeof D=="number")return D;if(y(D))return a;if(L(D)){var x=typeof D.valueOf=="function"?D.valueOf():D;D=L(x)?x+"":x}if(typeof D!="string")return D===0?D:+D;D=D.replace(r,"");var F=i.test(D);return F||s.test(D)?l(D.slice(2),F?2:8):o.test(D)?a:+D}t.exports=M}),wl={};af(wl,{default:()=>ct});var rf=xl(Cl());uf(wl,xl(Cl()));var{default:Tl,...of}=rf,ct=Tl!==void 0?Tl:of;var sf=Object.create,g0=Object.defineProperty,lf=Object.getOwnPropertyDescriptor,cf=Object.getOwnPropertyNames,df=Object.getPrototypeOf,mf=Object.prototype.hasOwnProperty,gf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),pf=(e,t)=>{for(var n in t)g0(e,n,{get:t[n],enumerable:!0})},m0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of cf(t))!mf.call(e,u)&&u!==n&&g0(e,u,{get:()=>t[u],enumerable:!(a=lf(t,u))||a.enumerable});return e},ff=(e,t,n)=>(m0(e,t,"default"),n&&m0(n,t,"default")),kl=(e,t,n)=>(n=e!=null?sf(df(e)):{},m0(t||!e||!e.__esModule?g0(n,"default",{value:e,enumerable:!0}):n,e)),Al=gf((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){l(a)==="object"&&l(r)==="object"?r.exports=d():(i=[],o=d,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(r.exports=s))})(void 0,function(){return function(c){function d(g){if(m[g])return m[g].exports;var f=m[g]={i:g,l:!1,exports:{}};return c[g].call(f.exports,f,f.exports,d),f.l=!0,f.exports}var m={};return d.m=c,d.c=m,d.i=function(g){return g},d.d=function(g,f,v){d.o(g,f)||Object.defineProperty(g,f,{configurable:!1,enumerable:!0,get:v})},d.n=function(g){var f=g&&g.__esModule?function(){return g.default}:function(){return g};return d.d(f,"a",f),f},d.o=function(g,f){return Object.prototype.hasOwnProperty.call(g,f)},d.p="",d(d.s=0)}([function(c,d,m){function g(b,I){var G={};for(var le in b)I.indexOf(le)>=0||Object.prototype.hasOwnProperty.call(b,le)&&(G[le]=b[le]);return G}Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},v=Object.assign||function(b){for(var I=1;I'+le+"",ce.onclick=function(){return w(Y,ue)},ce.listener=function(z){(x(z)||F(z))&&N()},O(ce,ue),Ae&&Ae<1&&(Ae=1),!Te&&Ae&&L(Ae).then(function(){return w(Y,ue)})},pe=d.force=function(b,I){var G=b.type,le=G===void 0?5:G,V=b.text,Ae=b.buttonText,Q=Ae===void 0?"OK":Ae,Te=b.callback,Z=b.position,ue=Z===void 0?p.positions.force||ue.top:Z;A(),N();var ce=document.createElement("div"),Y=y();ce.id=Y;var z=document.createElement("div");z.classList.add(p.classes.textbox),z.classList.add(p.classes.backgroundInfo),z.innerHTML='
'+V+"
";var ee=document.createElement("div");ee.classList.add(p.classes.button),ee.classList.add(S[le]),ee.innerHTML=Q,ee.onclick=function(){w(Y,ue),J(),Te?Te():I&&I()},ce.appendChild(z),ce.appendChild(ee),ce.listener=function(Le){x(Le)&&ee.click()},O(ce,ue),B()},Ne=d.confirm=function(b,I,G){var le=b.text,V=b.submitText,Ae=V===void 0?"Yes":V,Q=b.cancelText,Te=Q===void 0?"Cancel":Q,Z=b.submitCallback,ue=b.cancelCallback,ce=b.position,Y=ce===void 0?p.positions.confirm||Y.top:ce;A(),N();var z=document.createElement("div"),ee=y();z.id=ee;var Le=document.createElement("div");Le.classList.add(p.classes.textbox),Le.classList.add(p.classes.backgroundInfo),Le.innerHTML='
'+le+"
";var Se=document.createElement("div");Se.classList.add(p.classes.button),Se.classList.add(p.classes.elementHalf),Se.classList.add(p.classes.backgroundSuccess),Se.innerHTML=Ae,Se.onclick=function(){w(ee,Y),J(),Z?Z():I&&I()};var te=document.createElement("div");te.classList.add(p.classes.button),te.classList.add(p.classes.elementHalf),te.classList.add(p.classes.backgroundError),te.innerHTML=Te,te.onclick=function(){w(ee,Y),J(),ue?ue():G&&G()},z.appendChild(Le),z.appendChild(Se),z.appendChild(te),z.listener=function(He){x(He)?Se.click():F(He)&&te.click()},O(z,Y),B(z,Y)},be=function(b,I,G){var le=b.text,V=b.submitText,Ae=V===void 0?"Submit":V,Q=b.cancelText,Te=Q===void 0?"Cancel":Q,Z=b.submitCallback,ue=b.cancelCallback,ce=b.position,Y=ce===void 0?p.positions.input||Y.top:ce,z=g(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);A(),N();var ee=document.createElement("div"),Le=y();ee.id=Le;var Se=document.createElement("div");Se.classList.add(p.classes.textbox),Se.classList.add(p.classes.backgroundInfo),Se.innerHTML='
'+le+"
";var te=document.createElement("input");te.classList.add(p.classes.inputField),te.setAttribute("autocapitalize",z.autocapitalize||"none"),te.setAttribute("autocomplete",z.autocomplete||"off"),te.setAttribute("autocorrect",z.autocorrect||"off"),te.setAttribute("autofocus",z.autofocus||"true"),te.setAttribute("inputmode",z.inputmode||"verbatim"),te.setAttribute("max",z.max||""),te.setAttribute("maxlength",z.maxlength||""),te.setAttribute("min",z.min||""),te.setAttribute("minlength",z.minlength||""),te.setAttribute("placeholder",z.placeholder||""),te.setAttribute("spellcheck",z.spellcheck||"default"),te.setAttribute("step",z.step||"any"),te.setAttribute("type",z.type||"text"),te.value=z.value||"",z.allowed&&(te.oninput=function(){var Me=void 0;if(Array.isArray(z.allowed)){for(var _e="",Be=z.allowed,kt=0;kt'+G+"",ue.appendChild(Y),Q.forEach(function(ee,Le){var Se=ee.type,te=Se===void 0?1:Se,He=ee.text,tt=ee.handler,Me=document.createElement("div");Me.classList.add(S[te]),Me.classList.add(p.classes.button),Me.classList.add(p.classes.selectChoice);var _e=Q[Le+1];_e&&!_e.type&&(_e.type=1),_e&&_e.type===te&&Me.classList.add(p.classes.selectChoiceRepeated),Me.innerHTML=He,Me.onclick=function(){w(ce,Z),J(),tt()},ue.appendChild(Me)});var z=document.createElement("div");z.classList.add(p.classes.backgroundNeutral),z.classList.add(p.classes.button),z.innerHTML=V,z.onclick=function(){w(ce,Z),J(),Ae?Ae():I&&I()},ue.appendChild(z),ue.listener=function(ee){F(ee)&&z.click()},O(ue,Z),B(ue,Z)},ye=d.date=function(b,I,G){var le=b.value,V=le===void 0?new Date:le,Ae=b.submitText,Q=Ae===void 0?"OK":Ae,Te=b.cancelText,Z=Te===void 0?"Cancel":Te,ue=b.submitCallback,ce=b.cancelCallback,Y=b.position,z=Y===void 0?p.positions.date||z.top:Y;A(),N();var ee="▾",Le=document.createElement("div"),Se=document.createElement("div"),te=document.createElement("div"),He=function(xe){Le.innerHTML=p.dateMonths[xe.getMonth()],Se.innerHTML=xe.getDate(),te.innerHTML=xe.getFullYear()},tt=function(xe){var we=new Date(V.getFullYear(),V.getMonth()+1,0).getDate(),Pt=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Pt)>we&&(Pt=we.toString()),xe.target.textContent=Pt,Number(Pt)<1&&(Pt="1"),V.setDate(Number(Pt))},Me=function(xe){var we=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);xe.target.textContent=we,V.setFullYear(Number(we))},_e=function(xe){He(V)},Be=function(xe){var we=new Date(V.getFullYear(),V.getMonth()+xe+1,0).getDate();V.getDate()>we&&V.setDate(we),V.setMonth(V.getMonth()+xe),He(V)},kt=function(xe){V.setDate(V.getDate()+xe),He(V)},xn=function(xe){var we=V.getFullYear()+xe;we<0?V.setFullYear(0):V.setFullYear(V.getFullYear()+xe),He(V)},Ue=document.createElement("div"),en=y();Ue.id=en;var Kt=document.createElement("div");Kt.classList.add(p.classes.backgroundInfo);var nt=document.createElement("div");nt.classList.add(p.classes.dateSelectorInner);var Ft=document.createElement("div");Ft.classList.add(p.classes.button),Ft.classList.add(p.classes.elementThird),Ft.classList.add(p.classes.dateSelectorUp),Ft.innerHTML=ee;var _=document.createElement("div");_.classList.add(p.classes.button),_.classList.add(p.classes.elementThird),_.classList.add(p.classes.dateSelectorUp),_.innerHTML=ee;var X=document.createElement("div");X.classList.add(p.classes.button),X.classList.add(p.classes.elementThird),X.classList.add(p.classes.dateSelectorUp),X.innerHTML=ee,Le.classList.add(p.classes.element),Le.classList.add(p.classes.elementThird),Le.innerHTML=p.dateMonths[V.getMonth()],Se.classList.add(p.classes.element),Se.classList.add(p.classes.elementThird),Se.setAttribute("contentEditable",!0),Se.addEventListener("input",tt),Se.addEventListener("blur",_e),Se.innerHTML=V.getDate(),te.classList.add(p.classes.element),te.classList.add(p.classes.elementThird),te.setAttribute("contentEditable",!0),te.addEventListener("input",Me),te.addEventListener("blur",_e),te.innerHTML=V.getFullYear();var Ce=document.createElement("div");Ce.classList.add(p.classes.button),Ce.classList.add(p.classes.elementThird),Ce.innerHTML=ee;var fe=document.createElement("div");fe.classList.add(p.classes.button),fe.classList.add(p.classes.elementThird),fe.innerHTML=ee;var Ee=document.createElement("div");Ee.classList.add(p.classes.button),Ee.classList.add(p.classes.elementThird),Ee.innerHTML=ee,Ft.onclick=function(){return Be(1)},_.onclick=function(){return kt(1)},X.onclick=function(){return xn(1)},Ce.onclick=function(){return Be(-1)},fe.onclick=function(){return kt(-1)},Ee.onclick=function(){return xn(-1)};var Ie=document.createElement("div");Ie.classList.add(p.classes.button),Ie.classList.add(p.classes.elementHalf),Ie.classList.add(p.classes.backgroundSuccess),Ie.innerHTML=Q,Ie.onclick=function(){w(en,z),J(),ue?ue(V):I&&I(V)};var ot=document.createElement("div");ot.classList.add(p.classes.button),ot.classList.add(p.classes.elementHalf),ot.classList.add(p.classes.backgroundError),ot.innerHTML=Z,ot.onclick=function(){w(en,z),J(),ce?ce(V):G&&G(V)},nt.appendChild(Ft),nt.appendChild(_),nt.appendChild(X),nt.appendChild(Le),nt.appendChild(Se),nt.appendChild(te),nt.appendChild(Ce),nt.appendChild(fe),nt.appendChild(Ee),Kt.appendChild(nt),Ue.appendChild(Kt),Ue.appendChild(Ie),Ue.appendChild(ot),Ue.listener=function(xe){x(xe)?Ie.click():F(xe)&&ot.click()},O(Ue,z),B(Ue,z)};d.default={alert:ge,force:pe,confirm:Ne,input:be,select:vt,date:ye,setOptions:C,hideAlerts:N}}])})}).call(a,u(0)(n))}])})}),Sl={};pf(Sl,{default:()=>zu});var hf=kl(Al());ff(Sl,kl(Al()));var{default:vl,...bf}=hf,zu=vl!==void 0?vl:bf;var p0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function f0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Ml(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function Ef(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Pe.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Pe.splice(0,Pe.length),(t===93||t===224)&&(t=91),t in it){it[t]=!1;for(var a in tn)tn[a]===t&&(je[a]=!1)}}function Sf(e){if(typeof e>"u")Object.keys(Ve).forEach(function(o){return delete Ve[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&h0(o)});else if(typeof e=="object")e.key&&h0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Ml(tn,s):[];Ve[d]=Ve[d].filter(function(g){var f=a?g.method===a:!0;return!(f&&g.scope===n&&Ef(g.mods,m))})}})};function Ll(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(!it[r]&&t.mods.indexOf(+r)>-1||it[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!it[16]&&!it[18]&&!it[17]&&!it[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Fl(e,t){var n=Ve["*"],a=e.keyCode||e.which||e.charCode;if(je.filter.call(this,e)){if((a===93||a===224)&&(a=91),Pe.indexOf(a)===-1&&a!==229&&Pe.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var v=E0[f];e[f]&&Pe.indexOf(v)===-1?Pe.push(v):!e[f]&&Pe.indexOf(v)>-1?Pe.splice(Pe.indexOf(v),1):f==="metaKey"&&e[f]&&Pe.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Pe=Pe.slice(Pe.indexOf(v))))}),a in it){it[a]=!0;for(var u in tn)tn[u]===a&&(je[u]=!0);if(!n)return}for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(it[r]=e[E0[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Pe.indexOf(17)===-1&&Pe.push(17),Pe.indexOf(18)===-1&&Pe.push(18),it[17]=!0,it[18]=!0);var o=eu();if(n)for(var i=0;i-1}function je(e,t,n){Pe=[];var a=_l(e),u=[],r="all",o=document,i=0,s=!1,l=!0,c="+",d=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(d=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=Ml(tn,e)),e=e[e.length-1],e=e==="*"?"*":Uu(e),e in Ve||(Ve[e]=[]),Ve[e].push({keyup:s,keydown:l,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!Df(o)&&window&&(Rl.push(o),f0(o,"keydown",function(m){Fl(m,o)},d),Dl||(Dl=!0,f0(window,"focus",function(){Pe=[]},d)),f0(o,"keyup",function(m){Fl(m,o),Af(m)},d))}function Lf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ve).forEach(function(n){var a=Ve[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var b0={getPressedKeyString:Cf,setScope:Ol,getScope:eu,deleteScope:kf,getPressedKeyCodes:xf,isPressed:vf,filter:wf,trigger:Lf,unbind:Sf,keyMap:Qa,modifier:tn,modifierMap:E0};for(Hu in b0)Object.prototype.hasOwnProperty.call(b0,Hu)&&(je[Hu]=b0[Hu]);var Hu;typeof document<"u"&&(Pl=window.hotkeys,je.noConflict=function(e){return e&&window.hotkeys===je&&(window.hotkeys=Pl),je},window.hotkeys=je);var Pl;var Ff=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Pf=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Ff:{reset:()=>{},stop:()=>{}}}},y0=new Pf,Mf="poegempjloogba",_f="ension://",Bf="me-";function tu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function Ul(e){return e?e.PROD==="1":!0}function Wl(e){return e?e.MOCK==="1":!1}function ql(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var Rf="rome-ext";function Of(e,t){return t?e+(t-e%t):e}function Nf(e,t){return e.split(t).length-1}function If(e){let t=Date.now(),n=1;for(let a of e)n+=Nf(a,"i");return Of(t,n)}function jf(e,t){return Math.floor(Math.random()*(t-e+1))+e}var zf="extension",Hf="chro";function Uf(){return jf(1e6,1e8)}var Nl="BrowserExt";function Wf(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var Il="DeepL",jl="ension",qf="ch"+Rf+_f+"cofdb"+Mf+"gkncekinflcnj";function $l(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",qf),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${Il}${Nl}${jl}/${r||"1.1.1"} ${l}`)}else i.append("user-agent",`${Il}${Nl}${jl}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function $f(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:If(n)},id:Uf()},o=$l({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${Hf+Bf+zf},${t}`,headers:o,body:Wf(r),method:"POST"}}function Kf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Wn={},qn={};async function zl(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=tu(u);i||(i=tu(r)[1]);let s={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(s=await Wu(e,t));let[l,c]=tu(s.refreshTokenExpiresAt);i=c,i||(i=tu(s.refreshTokenChecksAt)[1]);let d=s.refreshToken;if(Wn[d])return new Promise((m,g)=>{Wn[d].push((f,v)=>{f?g(f):m(v)})});Wn[d]=[];try{let m=await Gf(d,t.onFetch),g={state:{...n,...s,...m},shouldUpdateRefreshToken:i};return Wn[d].forEach(f=>{f(null,g)}),delete Wn[d],g}catch(m){throw Wn[d].forEach(g=>{g(m)}),delete Wn[d],m}}async function Wu(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(qn[e])return new Promise((u,r)=>{qn[e].push((o,i)=>{o?r(o):u(i)})});try{qn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return qn[e].forEach(d=>{d(null,c)}),delete qn[e],c}catch(u){throw qn[e].forEach(r=>{r(u)}),delete qn[e],u}}async function Gf(e,t){if(!e)throw new Error("refreshToken is required");let n=Ul(),a=Wl();if(!n&&!a){await ql(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:$l({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=Kf(r.access_token);if(r.expires_in){let i=new Date,s=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function Hl(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(Vf(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...$f({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},s=Ul(),l=Wl();if(!s&&!l)return await ql(50),{translations:u.map(g=>({text:"mock: "+g,detected_source_language:"EN"}))};let c=await n(i.url,i),d=JSON.parse(c.body),m=[];if(d.result&&d.result.texts)m=d.result.texts.map(g=>({text:g.text,detected_source_language:d.result.lang}));else throw new Error("No response from deepl api");return{translations:m}}function Vf(e){let t=0;for(let n of e)t+=n.length;return t}async function Jf(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await Yf(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return y0.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){y0.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function Yf(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var qu=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>Jf({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await Hl(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await Hl(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw y0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=tu(e);if(t)n&&zl(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await zl(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var Xf={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},Gl={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},We={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},bt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},wn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},P=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=P.getVersionPrecision(e),u=P.getVersionPrecision(t),r=Math.max(a,u),o=0,i=P.map([e,t],s=>{let l=r-P.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return P.map(c.split("."),d=>new Array(20-d.length).join("0")+d).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return Xf[e]}static getBrowserTypeByAlias(e){return Gl[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,Zf=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=P.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=P.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=P.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=P.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=P.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=P.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=P.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=P.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=P.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=P.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=P.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=P.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=P.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=P.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=P.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=P.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=P.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=P.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=P.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=P.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=P.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=P.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=P.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=P.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=P.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=P.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=P.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:P.getFirstMatch(a,e),version:P.getSecondMatch(a,e)}}}],Qf=Zf,e2=[{test:[/Roku\/DVP/],describe(e){let t=P.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:bt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=P.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:bt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=P.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=P.getWindowsVersionName(t);return{name:bt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:bt.iOS},n=P.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=P.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=P.getMacOSVersionName(t),a={name:bt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=P.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:bt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=P.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=P.getAndroidVersionName(t),a={name:bt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=P.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:bt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=P.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||P.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||P.getFirstMatch(/\bbb(\d+)/i,e);return{name:bt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=P.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:bt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=P.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:bt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:bt.Linux}}},{test:[/CrOS/],describe(){return{name:bt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=P.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:bt.PlayStation4,version:t}}}],t2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=P.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:We.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:We.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:We.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:We.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:We.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=P.getFirstMatch(/(ipod|iphone)/i,e);return{type:We.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:We.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:We.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:We.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:We.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:We.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:We.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:We.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:We.tv}}}],n2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:wn.Blink};let t=P.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:wn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:wn.Trident},n=P.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:wn.Presto},n=P.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:wn.Gecko},n=P.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:wn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:wn.WebKit},n=P.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],a2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=P.find(Qf,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=P.find(e2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=P.find(t2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=P.find(n2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return P.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=P.find(r,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=P.find(r,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(u>0){let r=Object.keys(a),o=P.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=P.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(P.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Kl=a2,u2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Kl(e,t)}static parse(e){return new Kl(e).getResult()}static get BROWSER_MAP(){return Gl}static get ENGINE_MAP(){return wn}static get OS_MAP(){return bt}static get PLATFORMS_MAP(){return We}},$u=u2;var{entries:t4,setPrototypeOf:Vl,isFrozen:r2,getPrototypeOf:o2,getOwnPropertyDescriptor:i2}=Object,{freeze:Et,seal:Vt,create:s2}=Object,{apply:k0,construct:A0}=typeof Reflect<"u"&&Reflect;k0||(k0=function(e,t,n){return e.apply(t,n)});Et||(Et=function(e){return e});Vt||(Vt=function(e){return e});A0||(A0=function(e,t){return new e(...t)});var l2=Nt(Array.prototype.forEach),Jl=Nt(Array.prototype.pop),nu=Nt(Array.prototype.push),Vu=Nt(String.prototype.toLowerCase),T0=Nt(String.prototype.toString),c2=Nt(String.prototype.match),Gt=Nt(String.prototype.replace),d2=Nt(String.prototype.indexOf),m2=Nt(String.prototype.trim),Mt=Nt(RegExp.prototype.test),au=g2(TypeError);function Nt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),E2=Vt(/\${[\w\W]*}/gm),y2=Vt(/^data-[\-\w.\u00B7-\uFFFF]/),T2=Vt(/^aria-[\-\w]+$/),n4=Vt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),x2=Vt(/^(?:\w+script|data):/i),C2=Vt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),a4=Vt(/^html$/i),e4=Object.freeze({__proto__:null,MUSTACHE_EXPR:h2,ERB_EXPR:b2,TMPLIT_EXPR:E2,DATA_ATTR:y2,ARIA_ATTR:T2,IS_ALLOWED_URI:n4,IS_SCRIPT_OR_DATA:x2,ATTR_WHITESPACE:C2,DOCTYPE_NAME:a4}),w2=()=>typeof window>"u"?null:window,v2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function u4(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:w2(),t=h=>u4(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:m,trustedTypes:g}=e,f=s.prototype,v=Ku(f,"cloneNode"),T=Ku(f,"nextSibling"),p=Ku(f,"childNodes"),C=Ku(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let M,L="",{implementation:A,createNodeIterator:y,createDocumentFragment:S,getElementsByTagName:D}=u,{importNode:x}=n,F={};t.isSupported=typeof t4=="function"&&typeof C=="function"&&A&&A.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:O,ERB_EXPR:w,TMPLIT_EXPR:B,DATA_ATTR:J,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:ge,ATTR_WHITESPACE:pe}=e4,{IS_ALLOWED_URI:Ne}=e4,be=null,vt=he({},[...Yl,...x0,...C0,...w0,...Xl]),ye=null,b=he({},[...Zl,...v0,...Ql,...Gu]),I=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),G=null,le=null,V=!0,Ae=!0,Q=!1,Te=!0,Z=!1,ue=!1,ce=!1,Y=!1,z=!1,ee=!1,Le=!1,Se=!0,te=!1,He="user-content-",tt=!0,Me=!1,_e={},Be=null,kt=he({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),xn=null,Ue=he({},["audio","video","img","source","image","track"]),en=null,Kt=he({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),nt="http://www.w3.org/1998/Math/MathML",Ft="http://www.w3.org/2000/svg",_="http://www.w3.org/1999/xhtml",X=_,Ce=!1,fe=null,Ee=he({},[nt,Ft,_],T0),Ie,ot=["application/xhtml+xml","text/html"],xe="text/html",we,Pt=null,Ig=u.createElement("form"),Js=function(h){return h instanceof RegExp||h instanceof Function},e0=function(h){if(!(Pt&&Pt===h)){if((!h||typeof h!="object")&&(h={}),h=ma(h),Ie=ot.indexOf(h.PARSER_MEDIA_TYPE)===-1?Ie=xe:Ie=h.PARSER_MEDIA_TYPE,we=Ie==="application/xhtml+xml"?T0:Vu,be="ALLOWED_TAGS"in h?he({},h.ALLOWED_TAGS,we):vt,ye="ALLOWED_ATTR"in h?he({},h.ALLOWED_ATTR,we):b,fe="ALLOWED_NAMESPACES"in h?he({},h.ALLOWED_NAMESPACES,T0):Ee,en="ADD_URI_SAFE_ATTR"in h?he(ma(Kt),h.ADD_URI_SAFE_ATTR,we):Kt,xn="ADD_DATA_URI_TAGS"in h?he(ma(Ue),h.ADD_DATA_URI_TAGS,we):Ue,Be="FORBID_CONTENTS"in h?he({},h.FORBID_CONTENTS,we):kt,G="FORBID_TAGS"in h?he({},h.FORBID_TAGS,we):{},le="FORBID_ATTR"in h?he({},h.FORBID_ATTR,we):{},_e="USE_PROFILES"in h?h.USE_PROFILES:!1,V=h.ALLOW_ARIA_ATTR!==!1,Ae=h.ALLOW_DATA_ATTR!==!1,Q=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Te=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Z=h.SAFE_FOR_TEMPLATES||!1,ue=h.WHOLE_DOCUMENT||!1,z=h.RETURN_DOM||!1,ee=h.RETURN_DOM_FRAGMENT||!1,Le=h.RETURN_TRUSTED_TYPE||!1,Y=h.FORCE_BODY||!1,Se=h.SANITIZE_DOM!==!1,te=h.SANITIZE_NAMED_PROPS||!1,tt=h.KEEP_CONTENT!==!1,Me=h.IN_PLACE||!1,Ne=h.ALLOWED_URI_REGEXP||n4,X=h.NAMESPACE||_,I=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&Js(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(I.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&Js(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(I.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(I.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Z&&(Ae=!1),ee&&(z=!0),_e&&(be=he({},[...Xl]),ye=[],_e.html===!0&&(he(be,Yl),he(ye,Zl)),_e.svg===!0&&(he(be,x0),he(ye,v0),he(ye,Gu)),_e.svgFilters===!0&&(he(be,C0),he(ye,v0),he(ye,Gu)),_e.mathMl===!0&&(he(be,w0),he(ye,Ql),he(ye,Gu))),h.ADD_TAGS&&(be===vt&&(be=ma(be)),he(be,h.ADD_TAGS,we)),h.ADD_ATTR&&(ye===b&&(ye=ma(ye)),he(ye,h.ADD_ATTR,we)),h.ADD_URI_SAFE_ATTR&&he(en,h.ADD_URI_SAFE_ATTR,we),h.FORBID_CONTENTS&&(Be===kt&&(Be=ma(Be)),he(Be,h.FORBID_CONTENTS,we)),tt&&(be["#text"]=!0),ue&&he(be,["html","head","body"]),be.table&&(he(be,["tbody"]),delete G.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw au('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw au('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');M=h.TRUSTED_TYPES_POLICY,L=M.createHTML("")}else M===void 0&&(M=v2(g,a)),M!==null&&typeof L=="string"&&(L=M.createHTML(""));Et&&Et(h),Pt=h}},Ys=he({},["mi","mo","mn","ms","mtext"]),Xs=he({},["foreignobject","desc","title","annotation-xml"]),jg=he({},["title","style","font","a","script"]),Ru=he({},x0);he(Ru,C0),he(Ru,p2);let t0=he({},w0);he(t0,f2);let zg=function(h){let W=C(h);(!W||!W.tagName)&&(W={namespaceURI:X,tagName:"template"});let R=Vu(h.tagName),ve=Vu(W.tagName);return fe[h.namespaceURI]?h.namespaceURI===Ft?W.namespaceURI===_?R==="svg":W.namespaceURI===nt?R==="svg"&&(ve==="annotation-xml"||Ys[ve]):!!Ru[R]:h.namespaceURI===nt?W.namespaceURI===_?R==="math":W.namespaceURI===Ft?R==="math"&&Xs[ve]:!!t0[R]:h.namespaceURI===_?W.namespaceURI===Ft&&!Xs[ve]||W.namespaceURI===nt&&!Ys[ve]?!1:!t0[R]&&(jg[R]||!Ru[R]):!!(Ie==="application/xhtml+xml"&&fe[h.namespaceURI]):!1},sa=function(h){nu(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},n0=function(h,W){try{nu(t.removed,{attribute:W.getAttributeNode(h),from:W})}catch{nu(t.removed,{attribute:null,from:W})}if(W.removeAttribute(h),h==="is"&&!ye[h])if(z||ee)try{sa(W)}catch{}else try{W.setAttribute(h,"")}catch{}},Zs=function(h){let W,R;if(Y)h=""+h;else{let ht=c2(h,/^[\r\n\t ]+/);R=ht&&ht[0]}Ie==="application/xhtml+xml"&&X===_&&(h=''+h+"");let ve=M?M.createHTML(h):h;if(X===_)try{W=new m().parseFromString(ve,Ie)}catch{}if(!W||!W.documentElement){W=A.createDocument(X,"template",null);try{W.documentElement.innerHTML=Ce?L:ve}catch{}}let Xe=W.body||W.documentElement;return h&&R&&Xe.insertBefore(u.createTextNode(R),Xe.childNodes[0]||null),X===_?D.call(W,ue?"html":"body")[0]:ue?W.documentElement:Xe},Qs=function(h){return y.call(h.ownerDocument||h,h,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Hg=function(h){return h instanceof d&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Ou=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},mn=function(h,W,R){F[h]&&l2(F[h],ve=>{ve.call(t,W,R,Pt)})},el=function(h){let W;if(mn("beforeSanitizeElements",h,null),Hg(h))return sa(h),!0;let R=we(h.nodeName);if(mn("uponSanitizeElement",h,{tagName:R,allowedTags:be}),h.hasChildNodes()&&!Ou(h.firstElementChild)&&(!Ou(h.content)||!Ou(h.content.firstElementChild))&&Mt(/<[/\w]/g,h.innerHTML)&&Mt(/<[/\w]/g,h.textContent))return sa(h),!0;if(!be[R]||G[R]){if(!G[R]&&nl(R)&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,R)||I.tagNameCheck instanceof Function&&I.tagNameCheck(R)))return!1;if(tt&&!Be[R]){let ve=C(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&ve){let ht=Xe.length;for(let At=ht-1;At>=0;--At)ve.insertBefore(v(Xe[At],!0),T(h))}}return sa(h),!0}return h instanceof s&&!zg(h)||(R==="noscript"||R==="noembed")&&Mt(/<\/no(script|embed)/i,h.innerHTML)?(sa(h),!0):(Z&&h.nodeType===3&&(W=h.textContent,W=Gt(W,O," "),W=Gt(W,w," "),W=Gt(W,B," "),h.textContent!==W&&(nu(t.removed,{element:h.cloneNode()}),h.textContent=W)),mn("afterSanitizeElements",h,null),!1)},tl=function(h,W,R){if(Se&&(W==="id"||W==="name")&&(R in u||R in Ig))return!1;if(!(Ae&&!le[W]&&Mt(J,W))&&!(V&&Mt(N,W))){if(!ye[W]||le[W]){if(!(nl(h)&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,h)||I.tagNameCheck instanceof Function&&I.tagNameCheck(h))&&(I.attributeNameCheck instanceof RegExp&&Mt(I.attributeNameCheck,W)||I.attributeNameCheck instanceof Function&&I.attributeNameCheck(W))||W==="is"&&I.allowCustomizedBuiltInElements&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,R)||I.tagNameCheck instanceof Function&&I.tagNameCheck(R))))return!1}else if(!en[W]&&!Mt(Ne,Gt(R,pe,""))&&!((W==="src"||W==="xlink:href"||W==="href")&&h!=="script"&&d2(R,"data:")===0&&xn[h])&&!(Q&&!Mt(ge,Gt(R,pe,"")))&&R)return!1}return!0},nl=function(h){return h.indexOf("-")>0},al=function(h){let W,R,ve,Xe;mn("beforeSanitizeAttributes",h,null);let{attributes:ht}=h;if(!ht)return;let At={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye};for(Xe=ht.length;Xe--;){W=ht[Xe];let{name:at,namespaceURI:la}=W;if(R=at==="value"?W.value:m2(W.value),ve=we(at),At.attrName=ve,At.attrValue=R,At.keepAttr=!0,At.forceKeepAttr=void 0,mn("uponSanitizeAttribute",h,At),R=At.attrValue,At.forceKeepAttr||(n0(at,h),!At.keepAttr))continue;if(!Te&&Mt(/\/>/i,R)){n0(at,h);continue}Z&&(R=Gt(R,O," "),R=Gt(R,w," "),R=Gt(R,B," "));let ul=we(h.nodeName);if(tl(ul,ve,R)){if(te&&(ve==="id"||ve==="name")&&(n0(at,h),R=He+R),M&&typeof g=="object"&&typeof g.getAttributeType=="function"&&!la)switch(g.getAttributeType(ul,ve)){case"TrustedHTML":{R=M.createHTML(R);break}case"TrustedScriptURL":{R=M.createScriptURL(R);break}}try{la?h.setAttributeNS(la,at,R):h.setAttribute(at,R),Jl(t.removed)}catch{}}}mn("afterSanitizeAttributes",h,null)},Ug=function h(W){let R,ve=Qs(W);for(mn("beforeSanitizeShadowDOM",W,null);R=ve.nextNode();)mn("uponSanitizeShadowNode",R,null),!el(R)&&(R.content instanceof r&&h(R.content),al(R));mn("afterSanitizeShadowDOM",W,null)};return t.sanitize=function(h){let W=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},R,ve,Xe,ht;if(Ce=!h,Ce&&(h=""),typeof h!="string"&&!Ou(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw au("dirty is not a string, aborting")}else throw au("toString is not a function");if(!t.isSupported)return h;if(ce||e0(W),t.removed=[],typeof h=="string"&&(Me=!1),Me){if(h.nodeName){let la=we(h.nodeName);if(!be[la]||G[la])throw au("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)R=Zs(""),ve=R.ownerDocument.importNode(h,!0),ve.nodeType===1&&ve.nodeName==="BODY"||ve.nodeName==="HTML"?R=ve:R.appendChild(ve);else{if(!z&&!Z&&!ue&&h.indexOf("<")===-1)return M&&Le?M.createHTML(h):h;if(R=Zs(h),!R)return z?null:Le?L:""}R&&Y&&sa(R.firstChild);let At=Qs(Me?h:R);for(;Xe=At.nextNode();)el(Xe)||(Xe.content instanceof r&&Ug(Xe.content),al(Xe));if(Me)return h;if(z){if(ee)for(ht=S.call(R.ownerDocument);R.firstChild;)ht.appendChild(R.firstChild);else ht=R;return(ye.shadowroot||ye.shadowrootmod)&&(ht=x.call(n,ht,!0)),ht}let at=ue?R.outerHTML:R.innerHTML;return ue&&be["!doctype"]&&R.ownerDocument&&R.ownerDocument.doctype&&R.ownerDocument.doctype.name&&Mt(a4,R.ownerDocument.doctype.name)&&(at=" -`+at),Z&&(at=Gt(at,O," "),at=Gt(at,w," "),at=Gt(at,B," ")),M&&Le?M.createHTML(at):at},t.setConfig=function(h){e0(h),ce=!0},t.clearConfig=function(){Pt=null,ce=!1},t.isValidAttribute=function(h,W,R){Pt||e0({});let ve=we(h),Xe=we(W);return tl(ve,Xe,R)},t.addHook=function(h,W){typeof W=="function"&&(F[h]=F[h]||[],nu(F[h],W))},t.removeHook=function(h){if(F[h])return Jl(F[h])},t.removeHooks=function(h){F[h]&&(F[h]=[])},t.removeAllHooks=function(){F={}},t}var De=u4();var HE=zu.alert;var r4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var o4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var i4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var D2=[{code:"zh-CN",messages:r4},{code:"zh-TW",messages:o4},{code:"en",messages:i4}],gn="immersiveTranslateDeeplGlobalState",Ju="immersiveTranslateBingGlobalState",It={};for(let e of D2)It[e.code]=e.messages;var $n="Immersive Translate",H="immersive-translate";var ie="immersiveTranslate";var iy=ie+"GoogleAccessToken",sy=ie+"AuthFlow";var ly=ie+"AuthState",Yu=ie+"IframeMessage",cy=ie+"WaitForRateLimit",Xu=ie+"DocumentMessageAsk",yt=ie+"DocumentMessageTellThirdParty",l4=ie+"DocumentMessageThirdPartyTell",Zu=ie+"DocumentMessageHandler",L2=`${ie}Container`,c4=`${ie}SpecifiedContainer`,vn="buildinConfig",uu="localConfig",S0="openOptionsPage",D0="openAboutPage";var L0="openEbookViewer",F0="openEbookBuilder";var Qu=`${ie}PageTranslatedStatus`,dy=`${ie}PageUrlChanged`,kn=`${ie}ReceiveCommand`,d4=ie+"LastUseMouseHoverTime",m4=ie+"LastUseInputTime",pn=ie+"LastUseManualTranslatePageTime",my=`${ie}PopupReceiveMessage`,F2="immersivetranslate.com",P2="config.immersivetranslate.com",gy=`https://${F2}/`,ru=`https://${P2}/default_config.json`,py=`${ie}Mark`,ou="immersiveTranslateEffect",St=`${ie}Root`,fy=`data-${H}-effect`,nn=`data-${H}-translation-element-mark`,g4=`${ie}TranslationElementMark`,hy=`${ie}TranslatedMark`,by=`${ie}ParagraphId`,p4=`${ie}LoadingId`,P0=`data-${H}-loading-id`,f4=`${ie}ErrorId`,er=`data-${H}-error-id`,M2=`${ie}AtomicBlockMark`,h4=`${ie}ExcludeMark`,Ey=`data-${H}-exclude-mark`,_2=`${ie}StayOriginalMark`,yy=`${ie}PreWhitespaceMark`,tr=`${ie}InlineMark`,b4=`${ie}BlockMark`,Ty=`${ie}Left`,xy=`${ie}Right`,Cy=`${ie}Width`,wy=`${ie}Height`,vy=`${ie}Top`,ky=`${ie}FontSize`,iu="lastRunTime",Ay=`${ie}GlobalStyleMark`,nr=["@","#"],ar=" --- ",E4=` -`,jt=`${H}-target-wrapper`,Sy=`${H}-pdf-target-container`,y4=`${H}-target-inner`,Dy=`${H}-source-wrapper`,M0=`${H}-target-translation-block-wrapper`,Ly=`${H}-root-translation-theme`,ga=`${ie}RootTranslationTheme`,T4=`${H}-target-translation-vertical-block-wrapper`,x4=`${H}-target-translation-pdf-block-wrapper`,C4=`${H}-target-translation-pre-whitespace`,_0=`${H}-target-translation-inline-wrapper`;var w4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},zt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],v4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},k4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},A4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var S4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var ur="zh-CN";var s4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"firefox_zip"};var Zg=Object.create,oi=Object.defineProperty,Qg=Object.getOwnPropertyDescriptor,gl=Object.getOwnPropertyNames,ep=Object.getPrototypeOf,tp=Object.prototype.hasOwnProperty,np=(e,t)=>function(){return t||(0,e[gl(e)[0]])((t={exports:{}}).exports,t),t.exports},ap=(e,t)=>{for(var n in t)oi(e,n,{get:t[n],enumerable:!0})},ri=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of gl(t))!tp.call(e,u)&&u!==n&&oi(e,u,{get:()=>t[u],enumerable:!(a=Qg(t,u))||a.enumerable});return e},up=(e,t,n)=>(ri(e,t,"default"),n&&ri(n,t,"default")),pl=(e,t,n)=>(n=e!=null?Zg(ep(e)):{},ri(t||!e||!e.__esModule?oi(n,"default",{value:e,enumerable:!0}):n,e)),fl=np({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var u={exports:{}};a(u),n.browser=u.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",u=r=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(S,D=void 0){super(D),this.createItem=S}get(S){return this.has(S)||this.set(S,this.createItem(S)),super.get(S)}}let s=y=>y&&typeof y=="object"&&typeof y.then=="function",l=(y,S)=>(...D)=>{r.runtime.lastError?y.reject(new Error(r.runtime.lastError.message)):S.singleCallbackArg||D.length<=1&&S.singleCallbackArg!==!1?y.resolve(D[0]):y.resolve(D)},c=y=>y==1?"argument":"arguments",d=(y,S)=>function(x,...F){if(F.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${c(S.maxArgs)} for ${y}(), got ${F.length}`);return new Promise((O,k)=>{if(S.fallbackToNoCallback)try{x[y](...F,l({resolve:O,reject:k},S))}catch{x[y](...F),S.fallbackToNoCallback=!1,S.noCallback=!0,O()}else S.noCallback?(x[y](...F),O()):x[y](...F,l({resolve:O,reject:k},S))})},m=(y,S,D)=>new Proxy(S,{apply(x,F,O){return D.call(F,y,...O)}}),g=Function.call.bind(Object.prototype.hasOwnProperty),f=(y,S={},D={})=>{let x=Object.create(null),F={has(k,B){return B in y||B in x},get(k,B,J){if(B in x)return x[B];if(!(B in y))return;let N=y[B];if(typeof N=="function")if(typeof S[B]=="function")N=m(y,y[B],S[B]);else if(g(D,B)){let ge=d(B,D[B]);N=m(y,y[B],ge)}else N=N.bind(y);else if(typeof N=="object"&&N!==null&&(g(S,B)||g(D,B)))N=f(N,S[B],D[B]);else if(g(D,"*"))N=f(N,S[B],D["*"]);else return Object.defineProperty(x,B,{configurable:!0,enumerable:!0,get(){return y[B]},set(ge){y[B]=ge}}),N;return x[B]=N,N},set(k,B,J,N){return B in x?x[B]=J:y[B]=J,!0},defineProperty(k,B,J){return Reflect.defineProperty(x,B,J)},deleteProperty(k,B){return Reflect.deleteProperty(x,B)}},O=Object.create(y);return new Proxy(O,F)},w=y=>({addListener(S,D,...x){S.addListener(y.get(D),...x)},hasListener(S,D){return S.hasListener(y.get(D))},removeListener(S,D){S.removeListener(y.get(D))}}),T=new i(y=>typeof y!="function"?y:function(D){let x=f(D,{},{getContent:{minArgs:0,maxArgs:0}});y(x)}),p=new i(y=>typeof y!="function"?y:function(D,x,F){let O=!1,k,B=new Promise(pe=>{k=function(Ne){O=!0,pe(Ne)}}),J;try{J=y(D,x,k)}catch(pe){J=Promise.reject(pe)}let N=J!==!0&&s(J);if(J!==!0&&!N&&!O)return!1;let ge=pe=>{pe.then(Ne=>{F(Ne)},Ne=>{let be;Ne&&(Ne instanceof Error||typeof Ne.message=="string")?be=Ne.message:be="An unexpected error occurred",F({__mozWebExtensionPolyfillReject__:!0,message:be})}).catch(Ne=>{})};return ge(N?J:B),!0}),C=({reject:y,resolve:S},D)=>{r.runtime.lastError?r.runtime.lastError.message===a?S():y(new Error(r.runtime.lastError.message)):D&&D.__mozWebExtensionPolyfillReject__?y(new Error(D.message)):S(D)},M=(y,S,D,...x)=>{if(x.lengthS.maxArgs)throw new Error(`Expected at most ${S.maxArgs} ${c(S.maxArgs)} for ${y}(), got ${x.length}`);return new Promise((F,O)=>{let k=C.bind(null,{resolve:F,reject:O});x.push(k),D.sendMessage(...x)})},L={devtools:{network:{onRequestFinished:w(T)}},runtime:{onMessage:w(p),onMessageExternal:w(p),sendMessage:M.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:M.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},A={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":A},services:{"*":A},websites:{"*":A}},f(r,L,o)};n.exports=u(chrome)}else n.exports=globalThis.browser})}}),hl={};ap(hl,{default:()=>Nu});var rp=pl(fl());up(hl,pl(fl()));var{default:ml,...op}=rp,Nu=ml!==void 0?ml:op;globalThis.immersiveTranslateBrowserAPI=Nu;function lt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var de=lt();function ne(){return de.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function bl(){return de.HAS_CSP_ERROR=="1"}function Rt(){if(de.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function El(){return typeof Deno<"u"}var sb=lt().PROD==="1",ca=lt().PROD!=="1";function yl(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function da(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var ii=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function Iu(e,t){let n=da(),a=setTimeout(()=>n.reject(new ii),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Xa(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(s),r(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var Tl=class{#e=0;#t=[];#n=[];#a=da();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;t_p,bgBlue:()=>Np,bgBrightBlack:()=>Hp,bgBrightBlue:()=>$p,bgBrightCyan:()=>Gp,bgBrightGreen:()=>Wp,bgBrightMagenta:()=>Kp,bgBrightRed:()=>Up,bgBrightWhite:()=>Vp,bgBrightYellow:()=>qp,bgCyan:()=>jp,bgGreen:()=>Rp,bgMagenta:()=>Ip,bgRed:()=>Bp,bgRgb24:()=>Zp,bgRgb8:()=>Yp,bgWhite:()=>zp,bgYellow:()=>Op,black:()=>bp,blue:()=>xp,bold:()=>cp,brightBlack:()=>wl,brightBlue:()=>Lp,brightCyan:()=>Pp,brightGreen:()=>Sp,brightMagenta:()=>Fp,brightRed:()=>Ap,brightWhite:()=>Mp,brightYellow:()=>Dp,cyan:()=>wp,dim:()=>dp,getColorEnabled:()=>sp,gray:()=>kp,green:()=>yp,hidden:()=>fp,inverse:()=>pp,italic:()=>mp,magenta:()=>Cp,red:()=>Ep,reset:()=>lp,rgb24:()=>Xp,rgb8:()=>Jp,setColorEnabled:()=>ip,strikethrough:()=>hp,stripColor:()=>ef,underline:()=>gp,white:()=>vp,yellow:()=>Tp});var{Deno:xl}=globalThis,Cl=typeof xl?.noColor=="boolean"?xl.noColor:!0,si=!Cl;function ip(e){Cl||(si=e)}function sp(){return si}function re(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function oe(e,t){return si?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function lp(e){return oe(e,re([0],0))}function cp(e){return oe(e,re([1],22))}function dp(e){return oe(e,re([2],22))}function mp(e){return oe(e,re([3],23))}function gp(e){return oe(e,re([4],24))}function pp(e){return oe(e,re([7],27))}function fp(e){return oe(e,re([8],28))}function hp(e){return oe(e,re([9],29))}function bp(e){return oe(e,re([30],39))}function Ep(e){return oe(e,re([31],39))}function yp(e){return oe(e,re([32],39))}function Tp(e){return oe(e,re([33],39))}function xp(e){return oe(e,re([34],39))}function Cp(e){return oe(e,re([35],39))}function wp(e){return oe(e,re([36],39))}function vp(e){return oe(e,re([37],39))}function kp(e){return wl(e)}function wl(e){return oe(e,re([90],39))}function Ap(e){return oe(e,re([91],39))}function Sp(e){return oe(e,re([92],39))}function Dp(e){return oe(e,re([93],39))}function Lp(e){return oe(e,re([94],39))}function Fp(e){return oe(e,re([95],39))}function Pp(e){return oe(e,re([96],39))}function Mp(e){return oe(e,re([97],39))}function _p(e){return oe(e,re([40],49))}function Bp(e){return oe(e,re([41],49))}function Rp(e){return oe(e,re([42],49))}function Op(e){return oe(e,re([43],49))}function Np(e){return oe(e,re([44],49))}function Ip(e){return oe(e,re([45],49))}function jp(e){return oe(e,re([46],49))}function zp(e){return oe(e,re([47],49))}function Hp(e){return oe(e,re([100],49))}function Up(e){return oe(e,re([101],49))}function Wp(e){return oe(e,re([102],49))}function qp(e){return oe(e,re([103],49))}function $p(e){return oe(e,re([104],49))}function Kp(e){return oe(e,re([105],49))}function Gp(e){return oe(e,re([106],49))}function Vp(e){return oe(e,re([107],49))}function Cn(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function Jp(e,t){return oe(e,re([38,5,Cn(t)],39))}function Yp(e,t){return oe(e,re([48,5,Cn(t)],49))}function Xp(e,t){return typeof t=="number"?oe(e,re([38,2,t>>16&255,t>>8&255,t&255],39)):oe(e,re([38,2,Cn(t.r),Cn(t.g),Cn(t.b)],39))}function Zp(e,t){return typeof t=="number"?oe(e,re([48,2,t>>16&255,t>>8&255,t&255],49)):oe(e,re([48,2,Cn(t.r),Cn(t.g),Cn(t.b)],49))}var Qp=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function ef(e){return e.replace(Qp,"")}var li=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},tf={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function ci(e,t){let n={...tf,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new li(u,n.maxAttempts)}var Jb=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var ju=globalThis||(typeof window<"u"?window:self),af=Object.create,mi=Object.defineProperty,uf=Object.getOwnPropertyDescriptor,rf=Object.getOwnPropertyNames,of=Object.getPrototypeOf,sf=Object.prototype.hasOwnProperty,lf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),cf=(e,t)=>{for(var n in t)mi(e,n,{get:t[n],enumerable:!0})},di=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of rf(t))!sf.call(e,u)&&u!==n&&mi(e,u,{get:()=>t[u],enumerable:!(a=uf(t,u))||a.enumerable});return e},df=(e,t,n)=>(di(e,t,"default"),n&&di(n,t,"default")),kl=(e,t,n)=>(n=e!=null?af(of(e)):{},di(t||!e||!e.__esModule?mi(n,"default",{value:e,enumerable:!0}):n,e)),Al=lf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof ju=="object"&&ju&&ju.Object===Object&&ju,d=typeof self=="object"&&self&&self.Object===Object&&self,m=c||d||Function("return this")(),g=Object.prototype,f=g.toString,w=Math.max,T=Math.min,p=function(){return m.Date.now()};function C(D,x,F){var O,k,B,J,N,ge,pe=0,Ne=!1,be=!1,vt=!0;if(typeof D!="function")throw new TypeError(n);x=S(x)||0,L(F)&&(Ne=!!F.leading,be="maxWait"in F,B=be?w(S(F.maxWait)||0,x):B,vt="trailing"in F?!!F.trailing:vt);function ye(Z){var ue=O,ce=k;return O=k=void 0,pe=Z,J=D.apply(ce,ue),J}function b(Z){return pe=Z,N=setTimeout(le,x),Ne?ye(Z):J}function I(Z){var ue=Z-ge,ce=Z-pe,Y=x-ue;return be?T(Y,B-ce):Y}function G(Z){var ue=Z-ge,ce=Z-pe;return ge===void 0||ue>=x||ue<0||be&&ce>=B}function le(){var Z=p();if(G(Z))return V(Z);N=setTimeout(le,I(Z))}function V(Z){return N=void 0,vt&&O?ye(Z):(O=k=void 0,J)}function Se(){N!==void 0&&clearTimeout(N),pe=0,O=ge=k=N=void 0}function Q(){return N===void 0?J:V(p())}function Te(){var Z=p(),ue=G(Z);if(O=arguments,k=this,ge=Z,ue){if(N===void 0)return b(ge);if(be)return N=setTimeout(le,x),ye(ge)}return N===void 0&&(N=setTimeout(le,x)),J}return Te.cancel=Se,Te.flush=Q,Te}function M(D,x,F){var O=!0,k=!0;if(typeof D!="function")throw new TypeError(n);return L(F)&&(O="leading"in F?!!F.leading:O,k="trailing"in F?!!F.trailing:k),C(D,x,{leading:O,maxWait:x,trailing:k})}function L(D){var x=typeof D;return!!D&&(x=="object"||x=="function")}function A(D){return!!D&&typeof D=="object"}function y(D){return typeof D=="symbol"||A(D)&&f.call(D)==u}function S(D){if(typeof D=="number")return D;if(y(D))return a;if(L(D)){var x=typeof D.valueOf=="function"?D.valueOf():D;D=L(x)?x+"":x}if(typeof D!="string")return D===0?D:+D;D=D.replace(r,"");var F=i.test(D);return F||s.test(D)?l(D.slice(2),F?2:8):o.test(D)?a:+D}t.exports=M}),Sl={};cf(Sl,{default:()=>ct});var mf=kl(Al());df(Sl,kl(Al()));var{default:vl,...gf}=mf,ct=vl!==void 0?vl:gf;var pf=Object.create,pi=Object.defineProperty,ff=Object.getOwnPropertyDescriptor,hf=Object.getOwnPropertyNames,bf=Object.getPrototypeOf,Ef=Object.prototype.hasOwnProperty,yf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Tf=(e,t)=>{for(var n in t)pi(e,n,{get:t[n],enumerable:!0})},gi=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of hf(t))!Ef.call(e,u)&&u!==n&&pi(e,u,{get:()=>t[u],enumerable:!(a=ff(t,u))||a.enumerable});return e},xf=(e,t,n)=>(gi(e,t,"default"),n&&gi(n,t,"default")),Ll=(e,t,n)=>(n=e!=null?pf(bf(e)):{},gi(t||!e||!e.__esModule?pi(n,"default",{value:e,enumerable:!0}):n,e)),Fl=yf((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){l(a)==="object"&&l(r)==="object"?r.exports=d():(i=[],o=d,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(r.exports=s))})(void 0,function(){return function(c){function d(g){if(m[g])return m[g].exports;var f=m[g]={i:g,l:!1,exports:{}};return c[g].call(f.exports,f,f.exports,d),f.l=!0,f.exports}var m={};return d.m=c,d.c=m,d.i=function(g){return g},d.d=function(g,f,w){d.o(g,f)||Object.defineProperty(g,f,{configurable:!1,enumerable:!0,get:w})},d.n=function(g){var f=g&&g.__esModule?function(){return g.default}:function(){return g};return d.d(f,"a",f),f},d.o=function(g,f){return Object.prototype.hasOwnProperty.call(g,f)},d.p="",d(d.s=0)}([function(c,d,m){function g(b,I){var G={};for(var le in b)I.indexOf(le)>=0||Object.prototype.hasOwnProperty.call(b,le)&&(G[le]=b[le]);return G}Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},w=Object.assign||function(b){for(var I=1;I'+le+"",ce.onclick=function(){return k(Y,ue)},ce.listener=function(H){(x(H)||F(H))&&N()},O(ce,ue),Se&&Se<1&&(Se=1),!Te&&Se&&L(Se).then(function(){return k(Y,ue)})},pe=d.force=function(b,I){var G=b.type,le=G===void 0?5:G,V=b.text,Se=b.buttonText,Q=Se===void 0?"OK":Se,Te=b.callback,Z=b.position,ue=Z===void 0?p.positions.force||ue.top:Z;A(),N();var ce=document.createElement("div"),Y=y();ce.id=Y;var H=document.createElement("div");H.classList.add(p.classes.textbox),H.classList.add(p.classes.backgroundInfo),H.innerHTML='
'+V+"
";var ee=document.createElement("div");ee.classList.add(p.classes.button),ee.classList.add(S[le]),ee.innerHTML=Q,ee.onclick=function(){k(Y,ue),J(),Te?Te():I&&I()},ce.appendChild(H),ce.appendChild(ee),ce.listener=function(Le){x(Le)&&ee.click()},O(ce,ue),B()},Ne=d.confirm=function(b,I,G){var le=b.text,V=b.submitText,Se=V===void 0?"Yes":V,Q=b.cancelText,Te=Q===void 0?"Cancel":Q,Z=b.submitCallback,ue=b.cancelCallback,ce=b.position,Y=ce===void 0?p.positions.confirm||Y.top:ce;A(),N();var H=document.createElement("div"),ee=y();H.id=ee;var Le=document.createElement("div");Le.classList.add(p.classes.textbox),Le.classList.add(p.classes.backgroundInfo),Le.innerHTML='
'+le+"
";var De=document.createElement("div");De.classList.add(p.classes.button),De.classList.add(p.classes.elementHalf),De.classList.add(p.classes.backgroundSuccess),De.innerHTML=Se,De.onclick=function(){k(ee,Y),J(),Z?Z():I&&I()};var te=document.createElement("div");te.classList.add(p.classes.button),te.classList.add(p.classes.elementHalf),te.classList.add(p.classes.backgroundError),te.innerHTML=Te,te.onclick=function(){k(ee,Y),J(),ue?ue():G&&G()},H.appendChild(Le),H.appendChild(De),H.appendChild(te),H.listener=function(He){x(He)?De.click():F(He)&&te.click()},O(H,Y),B(H,Y)},be=function(b,I,G){var le=b.text,V=b.submitText,Se=V===void 0?"Submit":V,Q=b.cancelText,Te=Q===void 0?"Cancel":Q,Z=b.submitCallback,ue=b.cancelCallback,ce=b.position,Y=ce===void 0?p.positions.input||Y.top:ce,H=g(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);A(),N();var ee=document.createElement("div"),Le=y();ee.id=Le;var De=document.createElement("div");De.classList.add(p.classes.textbox),De.classList.add(p.classes.backgroundInfo),De.innerHTML='
'+le+"
";var te=document.createElement("input");te.classList.add(p.classes.inputField),te.setAttribute("autocapitalize",H.autocapitalize||"none"),te.setAttribute("autocomplete",H.autocomplete||"off"),te.setAttribute("autocorrect",H.autocorrect||"off"),te.setAttribute("autofocus",H.autofocus||"true"),te.setAttribute("inputmode",H.inputmode||"verbatim"),te.setAttribute("max",H.max||""),te.setAttribute("maxlength",H.maxlength||""),te.setAttribute("min",H.min||""),te.setAttribute("minlength",H.minlength||""),te.setAttribute("placeholder",H.placeholder||""),te.setAttribute("spellcheck",H.spellcheck||"default"),te.setAttribute("step",H.step||"any"),te.setAttribute("type",H.type||"text"),te.value=H.value||"",H.allowed&&(te.oninput=function(){var Me=void 0;if(Array.isArray(H.allowed)){for(var _e="",Be=H.allowed,kt=0;kt'+G+"",ue.appendChild(Y),Q.forEach(function(ee,Le){var De=ee.type,te=De===void 0?1:De,He=ee.text,tt=ee.handler,Me=document.createElement("div");Me.classList.add(S[te]),Me.classList.add(p.classes.button),Me.classList.add(p.classes.selectChoice);var _e=Q[Le+1];_e&&!_e.type&&(_e.type=1),_e&&_e.type===te&&Me.classList.add(p.classes.selectChoiceRepeated),Me.innerHTML=He,Me.onclick=function(){k(ce,Z),J(),tt()},ue.appendChild(Me)});var H=document.createElement("div");H.classList.add(p.classes.backgroundNeutral),H.classList.add(p.classes.button),H.innerHTML=V,H.onclick=function(){k(ce,Z),J(),Se?Se():I&&I()},ue.appendChild(H),ue.listener=function(ee){F(ee)&&H.click()},O(ue,Z),B(ue,Z)},ye=d.date=function(b,I,G){var le=b.value,V=le===void 0?new Date:le,Se=b.submitText,Q=Se===void 0?"OK":Se,Te=b.cancelText,Z=Te===void 0?"Cancel":Te,ue=b.submitCallback,ce=b.cancelCallback,Y=b.position,H=Y===void 0?p.positions.date||H.top:Y;A(),N();var ee="▾",Le=document.createElement("div"),De=document.createElement("div"),te=document.createElement("div"),He=function(xe){Le.innerHTML=p.dateMonths[xe.getMonth()],De.innerHTML=xe.getDate(),te.innerHTML=xe.getFullYear()},tt=function(xe){var ve=new Date(V.getFullYear(),V.getMonth()+1,0).getDate(),Pt=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Pt)>ve&&(Pt=ve.toString()),xe.target.textContent=Pt,Number(Pt)<1&&(Pt="1"),V.setDate(Number(Pt))},Me=function(xe){var ve=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);xe.target.textContent=ve,V.setFullYear(Number(ve))},_e=function(xe){He(V)},Be=function(xe){var ve=new Date(V.getFullYear(),V.getMonth()+xe+1,0).getDate();V.getDate()>ve&&V.setDate(ve),V.setMonth(V.getMonth()+xe),He(V)},kt=function(xe){V.setDate(V.getDate()+xe),He(V)},xn=function(xe){var ve=V.getFullYear()+xe;ve<0?V.setFullYear(0):V.setFullYear(V.getFullYear()+xe),He(V)},Ue=document.createElement("div"),tn=y();Ue.id=tn;var Kt=document.createElement("div");Kt.classList.add(p.classes.backgroundInfo);var nt=document.createElement("div");nt.classList.add(p.classes.dateSelectorInner);var Ft=document.createElement("div");Ft.classList.add(p.classes.button),Ft.classList.add(p.classes.elementThird),Ft.classList.add(p.classes.dateSelectorUp),Ft.innerHTML=ee;var _=document.createElement("div");_.classList.add(p.classes.button),_.classList.add(p.classes.elementThird),_.classList.add(p.classes.dateSelectorUp),_.innerHTML=ee;var X=document.createElement("div");X.classList.add(p.classes.button),X.classList.add(p.classes.elementThird),X.classList.add(p.classes.dateSelectorUp),X.innerHTML=ee,Le.classList.add(p.classes.element),Le.classList.add(p.classes.elementThird),Le.innerHTML=p.dateMonths[V.getMonth()],De.classList.add(p.classes.element),De.classList.add(p.classes.elementThird),De.setAttribute("contentEditable",!0),De.addEventListener("input",tt),De.addEventListener("blur",_e),De.innerHTML=V.getDate(),te.classList.add(p.classes.element),te.classList.add(p.classes.elementThird),te.setAttribute("contentEditable",!0),te.addEventListener("input",Me),te.addEventListener("blur",_e),te.innerHTML=V.getFullYear();var we=document.createElement("div");we.classList.add(p.classes.button),we.classList.add(p.classes.elementThird),we.innerHTML=ee;var fe=document.createElement("div");fe.classList.add(p.classes.button),fe.classList.add(p.classes.elementThird),fe.innerHTML=ee;var Ee=document.createElement("div");Ee.classList.add(p.classes.button),Ee.classList.add(p.classes.elementThird),Ee.innerHTML=ee,Ft.onclick=function(){return Be(1)},_.onclick=function(){return kt(1)},X.onclick=function(){return xn(1)},we.onclick=function(){return Be(-1)},fe.onclick=function(){return kt(-1)},Ee.onclick=function(){return xn(-1)};var Ie=document.createElement("div");Ie.classList.add(p.classes.button),Ie.classList.add(p.classes.elementHalf),Ie.classList.add(p.classes.backgroundSuccess),Ie.innerHTML=Q,Ie.onclick=function(){k(tn,H),J(),ue?ue(V):I&&I(V)};var ot=document.createElement("div");ot.classList.add(p.classes.button),ot.classList.add(p.classes.elementHalf),ot.classList.add(p.classes.backgroundError),ot.innerHTML=Z,ot.onclick=function(){k(tn,H),J(),ce?ce(V):G&&G(V)},nt.appendChild(Ft),nt.appendChild(_),nt.appendChild(X),nt.appendChild(Le),nt.appendChild(De),nt.appendChild(te),nt.appendChild(we),nt.appendChild(fe),nt.appendChild(Ee),Kt.appendChild(nt),Ue.appendChild(Kt),Ue.appendChild(Ie),Ue.appendChild(ot),Ue.listener=function(xe){x(xe)?Ie.click():F(xe)&&ot.click()},O(Ue,H),B(Ue,H)};d.default={alert:ge,force:pe,confirm:Ne,input:be,select:vt,date:ye,setOptions:C,hideAlerts:N}}])})}).call(a,u(0)(n))}])})}),Pl={};Tf(Pl,{default:()=>zu});var Cf=Ll(Fl());xf(Pl,Ll(Fl()));var{default:Dl,...wf}=Cf,zu=Dl!==void 0?Dl:wf;var fi=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function hi(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Ol(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function vf(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Pe.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Pe.splice(0,Pe.length),(t===93||t===224)&&(t=91),t in it){it[t]=!1;for(var a in nn)nn[a]===t&&(je[a]=!1)}}function _f(e){if(typeof e>"u")Object.keys(Ge).forEach(function(o){return delete Ge[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&bi(o)});else if(typeof e=="object")e.key&&bi(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Ol(nn,s):[];Ge[d]=Ge[d].filter(function(g){var f=a?g.method===a:!0;return!(f&&g.scope===n&&vf(g.mods,m))})}})};function _l(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(!it[r]&&t.mods.indexOf(+r)>-1||it[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!it[16]&&!it[18]&&!it[17]&&!it[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Bl(e,t){var n=Ge["*"],a=e.keyCode||e.which||e.charCode;if(je.filter.call(this,e)){if((a===93||a===224)&&(a=91),Pe.indexOf(a)===-1&&a!==229&&Pe.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var w=yi[f];e[f]&&Pe.indexOf(w)===-1?Pe.push(w):!e[f]&&Pe.indexOf(w)>-1?Pe.splice(Pe.indexOf(w),1):f==="metaKey"&&e[f]&&Pe.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Pe=Pe.slice(Pe.indexOf(w))))}),a in it){it[a]=!0;for(var u in nn)nn[u]===a&&(je[u]=!0);if(!n)return}for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(it[r]=e[yi[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Pe.indexOf(17)===-1&&Pe.push(17),Pe.indexOf(18)===-1&&Pe.push(18),it[17]=!0,it[18]=!0);var o=eu();if(n)for(var i=0;i-1}function je(e,t,n){Pe=[];var a=Nl(e),u=[],r="all",o=document,i=0,s=!1,l=!0,c="+",d=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(d=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=Ol(nn,e)),e=e[e.length-1],e=e==="*"?"*":Uu(e),e in Ge||(Ge[e]=[]),Ge[e].push({keyup:s,keydown:l,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!Bf(o)&&window&&(jl.push(o),hi(o,"keydown",function(m){Bl(m,o)},d),Ml||(Ml=!0,hi(window,"focus",function(){Pe=[]},d)),hi(o,"keyup",function(m){Bl(m,o),Mf(m)},d))}function Rf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ge).forEach(function(n){var a=Ge[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var Ei={getPressedKeyString:Df,setScope:zl,getScope:eu,deleteScope:Pf,getPressedKeyCodes:Sf,isPressed:Ff,filter:Lf,trigger:Rf,unbind:_f,keyMap:Qa,modifier:nn,modifierMap:yi};for(Hu in Ei)Object.prototype.hasOwnProperty.call(Ei,Hu)&&(je[Hu]=Ei[Hu]);var Hu;typeof document<"u"&&(Rl=window.hotkeys,je.noConflict=function(e){return e&&window.hotkeys===je&&(window.hotkeys=Rl),je},window.hotkeys=je);var Rl;var Of=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Nf=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Of:{reset:()=>{},stop:()=>{}}}},Ti=new Nf,If="poegempjloogba",jf="ension://",zf="me-";function tu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function Kl(e){return e?e.PROD==="1":!0}function Gl(e){return e?e.MOCK==="1":!1}function Vl(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var Hf="rome-ext";function Uf(e,t){return t?e+(t-e%t):e}function Wf(e,t){return e.split(t).length-1}function qf(e){let t=Date.now(),n=1;for(let a of e)n+=Wf(a,"i");return Uf(t,n)}function $f(e,t){return Math.floor(Math.random()*(t-e+1))+e}var Kf="extension",Gf="chro";function Vf(){return $f(1e6,1e8)}var Hl="BrowserExt";function Jf(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var Ul="DeepL",Wl="ension",Yf="ch"+Hf+jf+"cofdb"+If+"gkncekinflcnj";function Jl(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",Yf),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${Ul}${Hl}${Wl}/${r||"1.1.1"} ${l}`)}else i.append("user-agent",`${Ul}${Hl}${Wl}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function Xf(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:qf(n)},id:Vf()},o=Jl({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${Gf+zf+Kf},${t}`,headers:o,body:Jf(r),method:"POST"}}function Zf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Wn={},qn={};async function ql(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=tu(u);i||(i=tu(r)[1]);let s={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(s=await Wu(e,t));let[l,c]=tu(s.refreshTokenExpiresAt);i=c,i||(i=tu(s.refreshTokenChecksAt)[1]);let d=s.refreshToken;if(Wn[d])return new Promise((m,g)=>{Wn[d].push((f,w)=>{f?g(f):m(w)})});Wn[d]=[];try{let m=await Qf(d,t.onFetch),g={state:{...n,...s,...m},shouldUpdateRefreshToken:i};return Wn[d].forEach(f=>{f(null,g)}),delete Wn[d],g}catch(m){throw Wn[d].forEach(g=>{g(m)}),delete Wn[d],m}}async function Wu(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(qn[e])return new Promise((u,r)=>{qn[e].push((o,i)=>{o?r(o):u(i)})});try{qn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return qn[e].forEach(d=>{d(null,c)}),delete qn[e],c}catch(u){throw qn[e].forEach(r=>{r(u)}),delete qn[e],u}}async function Qf(e,t){if(!e)throw new Error("refreshToken is required");let n=Kl(),a=Gl();if(!n&&!a){await Vl(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:Jl({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=Zf(r.access_token);if(r.expires_in){let i=new Date,s=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function $l(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(e2(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...Xf({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},s=Kl(),l=Gl();if(!s&&!l)return await Vl(50),{translations:u.map(g=>({text:"mock: "+g,detected_source_language:"EN"}))};let c=await n(i.url,i),d=JSON.parse(c.body),m=[];if(d.result&&d.result.texts)m=d.result.texts.map(g=>({text:g.text,detected_source_language:d.result.lang}));else throw new Error("No response from deepl api");return{translations:m}}function e2(e){let t=0;for(let n of e)t+=n.length;return t}async function t2(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await n2(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return Ti.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){Ti.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function n2(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var qu=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>t2({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await $l(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await $l(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw Ti.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=tu(e);if(t)n&&ql(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await ql(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&Wu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var a2={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},Xl={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},We={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},bt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},wn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},P=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=P.getVersionPrecision(e),u=P.getVersionPrecision(t),r=Math.max(a,u),o=0,i=P.map([e,t],s=>{let l=r-P.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return P.map(c.split("."),d=>new Array(20-d.length).join("0")+d).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return a2[e]}static getBrowserTypeByAlias(e){return Xl[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,u2=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=P.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=P.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=P.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=P.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=P.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=P.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=P.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=P.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=P.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=P.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=P.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=P.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=P.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=P.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=P.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=P.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=P.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=P.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=P.getFirstMatch(Fe,e)||P.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=P.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=P.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=P.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=P.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=P.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=P.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=P.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=P.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=P.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=P.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:P.getFirstMatch(a,e),version:P.getSecondMatch(a,e)}}}],r2=u2,o2=[{test:[/Roku\/DVP/],describe(e){let t=P.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:bt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=P.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:bt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=P.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=P.getWindowsVersionName(t);return{name:bt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:bt.iOS},n=P.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=P.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=P.getMacOSVersionName(t),a={name:bt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=P.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:bt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=P.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=P.getAndroidVersionName(t),a={name:bt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=P.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:bt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=P.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||P.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||P.getFirstMatch(/\bbb(\d+)/i,e);return{name:bt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=P.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:bt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=P.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:bt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:bt.Linux}}},{test:[/CrOS/],describe(){return{name:bt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=P.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:bt.PlayStation4,version:t}}}],i2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=P.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:We.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:We.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:We.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:We.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:We.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=P.getFirstMatch(/(ipod|iphone)/i,e);return{type:We.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:We.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:We.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:We.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:We.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:We.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:We.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:We.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:We.tv}}}],s2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:wn.Blink};let t=P.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:wn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:wn.Trident},n=P.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:wn.Presto},n=P.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:wn.Gecko},n=P.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:wn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:wn.WebKit},n=P.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],l2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=P.find(r2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=P.find(o2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=P.find(i2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=P.find(s2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return P.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=P.find(r,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=P.find(r,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(u>0){let r=Object.keys(a),o=P.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=P.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(P.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Yl=l2,c2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Yl(e,t)}static parse(e){return new Yl(e).getResult()}static get BROWSER_MAP(){return Xl}static get ENGINE_MAP(){return wn}static get OS_MAP(){return bt}static get PLATFORMS_MAP(){return We}},$u=c2;var{entries:r4,setPrototypeOf:Zl,isFrozen:d2,getPrototypeOf:m2,getOwnPropertyDescriptor:g2}=Object,{freeze:Et,seal:Vt,create:p2}=Object,{apply:Ai,construct:Si}=typeof Reflect<"u"&&Reflect;Ai||(Ai=function(e,t,n){return e.apply(t,n)});Et||(Et=function(e){return e});Vt||(Vt=function(e){return e});Si||(Si=function(e,t){return new e(...t)});var f2=Nt(Array.prototype.forEach),Ql=Nt(Array.prototype.pop),nu=Nt(Array.prototype.push),Vu=Nt(String.prototype.toLowerCase),xi=Nt(String.prototype.toString),h2=Nt(String.prototype.match),Gt=Nt(String.prototype.replace),b2=Nt(String.prototype.indexOf),E2=Nt(String.prototype.trim),Mt=Nt(RegExp.prototype.test),au=y2(TypeError);function Nt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),v2=Vt(/\${[\w\W]*}/gm),k2=Vt(/^data-[\-\w.\u00B7-\uFFFF]/),A2=Vt(/^aria-[\-\w]+$/),o4=Vt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),S2=Vt(/^(?:\w+script|data):/i),D2=Vt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),i4=Vt(/^html$/i),u4=Object.freeze({__proto__:null,MUSTACHE_EXPR:C2,ERB_EXPR:w2,TMPLIT_EXPR:v2,DATA_ATTR:k2,ARIA_ATTR:A2,IS_ALLOWED_URI:o4,IS_SCRIPT_OR_DATA:S2,ATTR_WHITESPACE:D2,DOCTYPE_NAME:i4}),L2=()=>typeof window>"u"?null:window,F2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function s4(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:L2(),t=h=>s4(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:m,trustedTypes:g}=e,f=s.prototype,w=Ku(f,"cloneNode"),T=Ku(f,"nextSibling"),p=Ku(f,"childNodes"),C=Ku(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let M,L="",{implementation:A,createNodeIterator:y,createDocumentFragment:S,getElementsByTagName:D}=u,{importNode:x}=n,F={};t.isSupported=typeof r4=="function"&&typeof C=="function"&&A&&A.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:O,ERB_EXPR:k,TMPLIT_EXPR:B,DATA_ATTR:J,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:ge,ATTR_WHITESPACE:pe}=u4,{IS_ALLOWED_URI:Ne}=u4,be=null,vt=he({},[...e4,...Ci,...wi,...vi,...t4]),ye=null,b=he({},[...n4,...ki,...a4,...Gu]),I=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),G=null,le=null,V=!0,Se=!0,Q=!1,Te=!0,Z=!1,ue=!1,ce=!1,Y=!1,H=!1,ee=!1,Le=!1,De=!0,te=!1,He="user-content-",tt=!0,Me=!1,_e={},Be=null,kt=he({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),xn=null,Ue=he({},["audio","video","img","source","image","track"]),tn=null,Kt=he({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),nt="http://www.w3.org/1998/Math/MathML",Ft="http://www.w3.org/2000/svg",_="http://www.w3.org/1999/xhtml",X=_,we=!1,fe=null,Ee=he({},[nt,Ft,_],xi),Ie,ot=["application/xhtml+xml","text/html"],xe="text/html",ve,Pt=null,qg=u.createElement("form"),Qs=function(h){return h instanceof RegExp||h instanceof Function},ti=function(h){if(!(Pt&&Pt===h)){if((!h||typeof h!="object")&&(h={}),h=ma(h),Ie=ot.indexOf(h.PARSER_MEDIA_TYPE)===-1?Ie=xe:Ie=h.PARSER_MEDIA_TYPE,ve=Ie==="application/xhtml+xml"?xi:Vu,be="ALLOWED_TAGS"in h?he({},h.ALLOWED_TAGS,ve):vt,ye="ALLOWED_ATTR"in h?he({},h.ALLOWED_ATTR,ve):b,fe="ALLOWED_NAMESPACES"in h?he({},h.ALLOWED_NAMESPACES,xi):Ee,tn="ADD_URI_SAFE_ATTR"in h?he(ma(Kt),h.ADD_URI_SAFE_ATTR,ve):Kt,xn="ADD_DATA_URI_TAGS"in h?he(ma(Ue),h.ADD_DATA_URI_TAGS,ve):Ue,Be="FORBID_CONTENTS"in h?he({},h.FORBID_CONTENTS,ve):kt,G="FORBID_TAGS"in h?he({},h.FORBID_TAGS,ve):{},le="FORBID_ATTR"in h?he({},h.FORBID_ATTR,ve):{},_e="USE_PROFILES"in h?h.USE_PROFILES:!1,V=h.ALLOW_ARIA_ATTR!==!1,Se=h.ALLOW_DATA_ATTR!==!1,Q=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Te=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Z=h.SAFE_FOR_TEMPLATES||!1,ue=h.WHOLE_DOCUMENT||!1,H=h.RETURN_DOM||!1,ee=h.RETURN_DOM_FRAGMENT||!1,Le=h.RETURN_TRUSTED_TYPE||!1,Y=h.FORCE_BODY||!1,De=h.SANITIZE_DOM!==!1,te=h.SANITIZE_NAMED_PROPS||!1,tt=h.KEEP_CONTENT!==!1,Me=h.IN_PLACE||!1,Ne=h.ALLOWED_URI_REGEXP||o4,X=h.NAMESPACE||_,I=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&Qs(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(I.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&Qs(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(I.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(I.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Z&&(Se=!1),ee&&(H=!0),_e&&(be=he({},[...t4]),ye=[],_e.html===!0&&(he(be,e4),he(ye,n4)),_e.svg===!0&&(he(be,Ci),he(ye,ki),he(ye,Gu)),_e.svgFilters===!0&&(he(be,wi),he(ye,ki),he(ye,Gu)),_e.mathMl===!0&&(he(be,vi),he(ye,a4),he(ye,Gu))),h.ADD_TAGS&&(be===vt&&(be=ma(be)),he(be,h.ADD_TAGS,ve)),h.ADD_ATTR&&(ye===b&&(ye=ma(ye)),he(ye,h.ADD_ATTR,ve)),h.ADD_URI_SAFE_ATTR&&he(tn,h.ADD_URI_SAFE_ATTR,ve),h.FORBID_CONTENTS&&(Be===kt&&(Be=ma(Be)),he(Be,h.FORBID_CONTENTS,ve)),tt&&(be["#text"]=!0),ue&&he(be,["html","head","body"]),be.table&&(he(be,["tbody"]),delete G.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw au('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw au('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');M=h.TRUSTED_TYPES_POLICY,L=M.createHTML("")}else M===void 0&&(M=F2(g,a)),M!==null&&typeof L=="string"&&(L=M.createHTML(""));Et&&Et(h),Pt=h}},el=he({},["mi","mo","mn","ms","mtext"]),tl=he({},["foreignobject","desc","title","annotation-xml"]),$g=he({},["title","style","font","a","script"]),Ru=he({},Ci);he(Ru,wi),he(Ru,T2);let ni=he({},vi);he(ni,x2);let Kg=function(h){let W=C(h);(!W||!W.tagName)&&(W={namespaceURI:X,tagName:"template"});let R=Vu(h.tagName),ke=Vu(W.tagName);return fe[h.namespaceURI]?h.namespaceURI===Ft?W.namespaceURI===_?R==="svg":W.namespaceURI===nt?R==="svg"&&(ke==="annotation-xml"||el[ke]):!!Ru[R]:h.namespaceURI===nt?W.namespaceURI===_?R==="math":W.namespaceURI===Ft?R==="math"&&tl[ke]:!!ni[R]:h.namespaceURI===_?W.namespaceURI===Ft&&!tl[ke]||W.namespaceURI===nt&&!el[ke]?!1:!ni[R]&&($g[R]||!Ru[R]):!!(Ie==="application/xhtml+xml"&&fe[h.namespaceURI]):!1},sa=function(h){nu(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},ai=function(h,W){try{nu(t.removed,{attribute:W.getAttributeNode(h),from:W})}catch{nu(t.removed,{attribute:null,from:W})}if(W.removeAttribute(h),h==="is"&&!ye[h])if(H||ee)try{sa(W)}catch{}else try{W.setAttribute(h,"")}catch{}},nl=function(h){let W,R;if(Y)h=""+h;else{let ht=h2(h,/^[\r\n\t ]+/);R=ht&&ht[0]}Ie==="application/xhtml+xml"&&X===_&&(h=''+h+"");let ke=M?M.createHTML(h):h;if(X===_)try{W=new m().parseFromString(ke,Ie)}catch{}if(!W||!W.documentElement){W=A.createDocument(X,"template",null);try{W.documentElement.innerHTML=we?L:ke}catch{}}let Xe=W.body||W.documentElement;return h&&R&&Xe.insertBefore(u.createTextNode(R),Xe.childNodes[0]||null),X===_?D.call(W,ue?"html":"body")[0]:ue?W.documentElement:Xe},al=function(h){return y.call(h.ownerDocument||h,h,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Gg=function(h){return h instanceof d&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Ou=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},mn=function(h,W,R){F[h]&&f2(F[h],ke=>{ke.call(t,W,R,Pt)})},ul=function(h){let W;if(mn("beforeSanitizeElements",h,null),Gg(h))return sa(h),!0;let R=ve(h.nodeName);if(mn("uponSanitizeElement",h,{tagName:R,allowedTags:be}),h.hasChildNodes()&&!Ou(h.firstElementChild)&&(!Ou(h.content)||!Ou(h.content.firstElementChild))&&Mt(/<[/\w]/g,h.innerHTML)&&Mt(/<[/\w]/g,h.textContent))return sa(h),!0;if(!be[R]||G[R]){if(!G[R]&&ol(R)&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,R)||I.tagNameCheck instanceof Function&&I.tagNameCheck(R)))return!1;if(tt&&!Be[R]){let ke=C(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&ke){let ht=Xe.length;for(let At=ht-1;At>=0;--At)ke.insertBefore(w(Xe[At],!0),T(h))}}return sa(h),!0}return h instanceof s&&!Kg(h)||(R==="noscript"||R==="noembed")&&Mt(/<\/no(script|embed)/i,h.innerHTML)?(sa(h),!0):(Z&&h.nodeType===3&&(W=h.textContent,W=Gt(W,O," "),W=Gt(W,k," "),W=Gt(W,B," "),h.textContent!==W&&(nu(t.removed,{element:h.cloneNode()}),h.textContent=W)),mn("afterSanitizeElements",h,null),!1)},rl=function(h,W,R){if(De&&(W==="id"||W==="name")&&(R in u||R in qg))return!1;if(!(Se&&!le[W]&&Mt(J,W))&&!(V&&Mt(N,W))){if(!ye[W]||le[W]){if(!(ol(h)&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,h)||I.tagNameCheck instanceof Function&&I.tagNameCheck(h))&&(I.attributeNameCheck instanceof RegExp&&Mt(I.attributeNameCheck,W)||I.attributeNameCheck instanceof Function&&I.attributeNameCheck(W))||W==="is"&&I.allowCustomizedBuiltInElements&&(I.tagNameCheck instanceof RegExp&&Mt(I.tagNameCheck,R)||I.tagNameCheck instanceof Function&&I.tagNameCheck(R))))return!1}else if(!tn[W]&&!Mt(Ne,Gt(R,pe,""))&&!((W==="src"||W==="xlink:href"||W==="href")&&h!=="script"&&b2(R,"data:")===0&&xn[h])&&!(Q&&!Mt(ge,Gt(R,pe,"")))&&R)return!1}return!0},ol=function(h){return h.indexOf("-")>0},il=function(h){let W,R,ke,Xe;mn("beforeSanitizeAttributes",h,null);let{attributes:ht}=h;if(!ht)return;let At={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye};for(Xe=ht.length;Xe--;){W=ht[Xe];let{name:at,namespaceURI:la}=W;if(R=at==="value"?W.value:E2(W.value),ke=ve(at),At.attrName=ke,At.attrValue=R,At.keepAttr=!0,At.forceKeepAttr=void 0,mn("uponSanitizeAttribute",h,At),R=At.attrValue,At.forceKeepAttr||(ai(at,h),!At.keepAttr))continue;if(!Te&&Mt(/\/>/i,R)){ai(at,h);continue}Z&&(R=Gt(R,O," "),R=Gt(R,k," "),R=Gt(R,B," "));let sl=ve(h.nodeName);if(rl(sl,ke,R)){if(te&&(ke==="id"||ke==="name")&&(ai(at,h),R=He+R),M&&typeof g=="object"&&typeof g.getAttributeType=="function"&&!la)switch(g.getAttributeType(sl,ke)){case"TrustedHTML":{R=M.createHTML(R);break}case"TrustedScriptURL":{R=M.createScriptURL(R);break}}try{la?h.setAttributeNS(la,at,R):h.setAttribute(at,R),Ql(t.removed)}catch{}}}mn("afterSanitizeAttributes",h,null)},Vg=function h(W){let R,ke=al(W);for(mn("beforeSanitizeShadowDOM",W,null);R=ke.nextNode();)mn("uponSanitizeShadowNode",R,null),!ul(R)&&(R.content instanceof r&&h(R.content),il(R));mn("afterSanitizeShadowDOM",W,null)};return t.sanitize=function(h){let W=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},R,ke,Xe,ht;if(we=!h,we&&(h=""),typeof h!="string"&&!Ou(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw au("dirty is not a string, aborting")}else throw au("toString is not a function");if(!t.isSupported)return h;if(ce||ti(W),t.removed=[],typeof h=="string"&&(Me=!1),Me){if(h.nodeName){let la=ve(h.nodeName);if(!be[la]||G[la])throw au("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)R=nl(""),ke=R.ownerDocument.importNode(h,!0),ke.nodeType===1&&ke.nodeName==="BODY"||ke.nodeName==="HTML"?R=ke:R.appendChild(ke);else{if(!H&&!Z&&!ue&&h.indexOf("<")===-1)return M&&Le?M.createHTML(h):h;if(R=nl(h),!R)return H?null:Le?L:""}R&&Y&&sa(R.firstChild);let At=al(Me?h:R);for(;Xe=At.nextNode();)ul(Xe)||(Xe.content instanceof r&&Vg(Xe.content),il(Xe));if(Me)return h;if(H){if(ee)for(ht=S.call(R.ownerDocument);R.firstChild;)ht.appendChild(R.firstChild);else ht=R;return(ye.shadowroot||ye.shadowrootmod)&&(ht=x.call(n,ht,!0)),ht}let at=ue?R.outerHTML:R.innerHTML;return ue&&be["!doctype"]&&R.ownerDocument&&R.ownerDocument.doctype&&R.ownerDocument.doctype.name&&Mt(i4,R.ownerDocument.doctype.name)&&(at=" +`+at),Z&&(at=Gt(at,O," "),at=Gt(at,k," "),at=Gt(at,B," ")),M&&Le?M.createHTML(at):at},t.setConfig=function(h){ti(h),ce=!0},t.clearConfig=function(){Pt=null,ce=!1},t.isValidAttribute=function(h,W,R){Pt||ti({});let ke=ve(h),Xe=ve(W);return rl(ke,Xe,R)},t.addHook=function(h,W){typeof W=="function"&&(F[h]=F[h]||[],nu(F[h],W))},t.removeHook=function(h){if(F[h])return Ql(F[h])},t.removeHooks=function(h){F[h]&&(F[h]=[])},t.removeAllHooks=function(){F={}},t}var Ce=s4();var $E=zu.alert;var l4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var c4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var d4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var B2=[{code:"zh-CN",messages:l4},{code:"zh-TW",messages:c4},{code:"en",messages:d4}],gn="immersiveTranslateDeeplGlobalState",Ju="immersiveTranslateBingGlobalState",It={};for(let e of B2)It[e.code]=e.messages;var $n="Immersive Translate",z="immersive-translate";var ie="immersiveTranslate";var dy=ie+"GoogleAccessToken",my=ie+"AuthFlow";var gy=ie+"AuthState",Yu=ie+"IframeMessage",py=ie+"WaitForRateLimit",Xu=ie+"DocumentMessageAsk",yt=ie+"DocumentMessageTellThirdParty",g4=ie+"DocumentMessageThirdPartyTell",Zu=ie+"DocumentMessageHandler",R2=`${ie}Container`,p4=`${ie}SpecifiedContainer`,vn="buildinConfig",uu="localConfig",Di="openOptionsPage",Li="openAboutPage";var Fi="openEbookViewer",Pi="openEbookBuilder";var Qu=`${ie}PageTranslatedStatus`,fy=`${ie}PageUrlChanged`,kn=`${ie}ReceiveCommand`,f4=ie+"LastUseMouseHoverTime",h4=ie+"LastUseInputTime",pn=ie+"LastUseManualTranslatePageTime",hy=`${ie}PopupReceiveMessage`,O2="immersivetranslate.com",N2="config.immersivetranslate.com",by=`https://${O2}/`,ru=`https://${N2}/default_config.json`,Ey=`${ie}Mark`,ou="immersiveTranslateEffect",St=`${ie}Root`,yy=`data-${z}-effect`,an=`data-${z}-translation-element-mark`,b4=`${ie}TranslationElementMark`,Ty=`${ie}TranslatedMark`,xy=`${ie}ParagraphId`,E4=`${ie}LoadingId`,Mi=`data-${z}-loading-id`,y4=`${ie}ErrorId`,er=`data-${z}-error-id`,I2=`${ie}AtomicBlockMark`,T4=`${ie}ExcludeMark`,Cy=`data-${z}-exclude-mark`,j2=`${ie}StayOriginalMark`,wy=`${ie}PreWhitespaceMark`,tr=`${ie}InlineMark`,x4=`${ie}BlockMark`,vy=`${ie}Left`,ky=`${ie}Right`,Ay=`${ie}Width`,Sy=`${ie}Height`,Dy=`${ie}Top`,Ly=`${ie}FontSize`,iu="lastRunTime",Fy=`${ie}GlobalStyleMark`,nr=["@","#"],ar=" --- ",C4=` +`,jt=`${z}-target-wrapper`,Py=`${z}-pdf-target-container`,w4=`${z}-target-inner`,My=`${z}-source-wrapper`,_i=`${z}-target-translation-block-wrapper`,_y=`${z}-root-translation-theme`,ga=`${ie}RootTranslationTheme`,v4=`${z}-target-translation-vertical-block-wrapper`,k4=`${z}-target-translation-pdf-block-wrapper`,A4=`${z}-target-translation-pre-whitespace`,Bi=`${z}-target-translation-inline-wrapper`;var S4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},zt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],D4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},L4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},F4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var P4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var ur="zh-CN";var m4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...s4,{type:"password",name:"apikey",required:!0}],props:s4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},B0={type:ie+"ChildFrameToRootFrameIdentifier"},rr=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var D4='';var pa=console,R0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=Ot.green;a>1e4?u=Ot.red:a>1e3&&(u=Ot.yellow),pa.debug(Ot.dim($n+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},su=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pa.log(Ot.dim($n+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pa.log(Ot.green($n+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pa.warn(Ot.yellow($n+" WARN:"),...t)}error(...t){this.#e<=3&&pa.error(Ot.red($n+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pa.error(Ot.red($n+" FATAL:"),...t)}timing(){return this.level===0?new R0:{reset:()=>{},stop:()=>{}}}},k=new su;var O0=/iPhone/i,L4=/iPod/i,F4=/iPad/i,P4=/\biOS-universal(?:.+)Mac\b/i,N0=/\bAndroid(?:.+)Mobile\b/i,M4=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,or=/Silk/i,hn=/Windows Phone/i,_4=/\bWindows(?:.+)ARM\b/i,B4=/BlackBerry/i,R4=/BB10/i,O4=/Opera Mini/i,N4=/\b(CriOS|Chrome)(?:.+)Mobile/i,I4=/Mobile(?:.+)Firefox\b/i,j4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function B2(e){return t=>t.test(e)}function ha(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=B2(n),r={apple:{phone:u(O0)&&!u(hn),ipod:u(L4),tablet:!u(O0)&&(u(F4)||j4(t))&&!u(hn),universal:u(P4),device:(u(O0)||u(L4)||u(F4)||u(P4)||j4(t))&&!u(hn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(or),device:u(fa)||u(or)},android:{phone:!u(hn)&&u(fa)||!u(hn)&&u(N0),tablet:!u(hn)&&!u(fa)&&!u(N0)&&(u(or)||u(M4)),device:!u(hn)&&(u(fa)||u(or)||u(N0)||u(M4))||u(/\bokhttp\b/i)},windows:{phone:u(hn),tablet:u(_4),device:u(hn)||u(_4)},other:{blackberry:u(B4),blackberry10:u(R4),opera:u(O4),firefox:u(I4),chrome:u(N4),device:u(B4)||u(R4)||u(O4)||u(I4)||u(N4)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var I0="DENO",ir="CHROME",sr="FIREFOX";function z4(e){let t=ir;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=sr:/deno/i.test(n)&&(t=I0)}catch{}return e===ir&&t===ir||e===sr&&t===sr||e===I0&&t===I0}function H4(){return z4(ir)}function U4(){return typeof Deno<"u"}function lr(){return z4(sr)}function W4(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function lu(){return!!globalThis.matchMedia("(pointer:fine)").matches}var q4={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},$4={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:q4,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:q4,query:()=>{},sendMessage:()=>{}}};var q;U4()?q=$4:q=globalThis.immersiveTranslateBrowserAPI;var Yy=G4(2),K4=G4(3);function G4(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var R2=/\s+/g,O2=/[\t\n\v\f\r ]+/g;function V4(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?N2:I2;return String(e).replace(t.style==="html"?O2:R2,t.trim?j2(n):n)}function N2(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function I2(){return" "}function j2(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var J4={}.hasOwnProperty;function z2(e){return e==null?"":V4(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function H2(e){return K4(" "+z2(e)+" ")}function U2(e){let t=H2(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function J2(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function Y2(e,t,n,a){t=Z2(t,n,a);let u=[],r;if(t)for(r in t)cr.call(t,r)&&u.push([r,X2(e,t[r])]);return u.length===0?z0():u.sort(Q2)}function X2(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of lh){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/r>.5?t==="zh-CN"?ac(e)?"zh-TW":"zh-CN":t:"auto"}var rc=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function oc(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=mr(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...rc.keys()]},u=Z4(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=rc.get(r);if(o)return o}return"auto"}function Kn(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=zt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":zt[u]}else return"auto";else return zt[a]}var gr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...m4,{type:"password",name:"apikey",required:!0}],props:m4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},Ri={type:ie+"ChildFrameToRootFrameIdentifier"},rr=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var M4='';var pa=console,Oi=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=Ot.green;a>1e4?u=Ot.red:a>1e3&&(u=Ot.yellow),pa.debug(Ot.dim($n+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},su=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pa.log(Ot.dim($n+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pa.log(Ot.green($n+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pa.warn(Ot.yellow($n+" WARN:"),...t)}error(...t){this.#e<=3&&pa.error(Ot.red($n+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pa.error(Ot.red($n+" FATAL:"),...t)}timing(){return this.level===0?new Oi:{reset:()=>{},stop:()=>{}}}},v=new su;var Ni=/iPhone/i,_4=/iPod/i,B4=/iPad/i,R4=/\biOS-universal(?:.+)Mac\b/i,Ii=/\bAndroid(?:.+)Mobile\b/i,O4=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,or=/Silk/i,hn=/Windows Phone/i,N4=/\bWindows(?:.+)ARM\b/i,I4=/BlackBerry/i,j4=/BB10/i,z4=/Opera Mini/i,H4=/\b(CriOS|Chrome)(?:.+)Mobile/i,U4=/Mobile(?:.+)Firefox\b/i,W4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function z2(e){return t=>t.test(e)}function ha(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=z2(n),r={apple:{phone:u(Ni)&&!u(hn),ipod:u(_4),tablet:!u(Ni)&&(u(B4)||W4(t))&&!u(hn),universal:u(R4),device:(u(Ni)||u(_4)||u(B4)||u(R4)||W4(t))&&!u(hn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(or),device:u(fa)||u(or)},android:{phone:!u(hn)&&u(fa)||!u(hn)&&u(Ii),tablet:!u(hn)&&!u(fa)&&!u(Ii)&&(u(or)||u(O4)),device:!u(hn)&&(u(fa)||u(or)||u(Ii)||u(O4))||u(/\bokhttp\b/i)},windows:{phone:u(hn),tablet:u(N4),device:u(hn)||u(N4)},other:{blackberry:u(I4),blackberry10:u(j4),opera:u(z4),firefox:u(U4),chrome:u(H4),device:u(I4)||u(j4)||u(z4)||u(U4)||u(H4)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var ji="DENO",ir="CHROME",sr="FIREFOX";function q4(e){let t=ir;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=sr:/deno/i.test(n)&&(t=ji)}catch{}return e===ir&&t===ir||e===sr&&t===sr||e===ji&&t===ji}function $4(){return q4(ir)}function K4(){return typeof Deno<"u"}function lr(){return q4(sr)}function G4(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function lu(){return!!globalThis.matchMedia("(pointer:fine)").matches}var V4={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},J4={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:V4,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:V4,query:()=>{},sendMessage:()=>{}}};var q;K4()?q=J4:q=globalThis.immersiveTranslateBrowserAPI;var eT=X4(2),Y4=X4(3);function X4(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var H2=/\s+/g,U2=/[\t\n\v\f\r ]+/g;function Z4(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?W2:q2;return String(e).replace(t.style==="html"?U2:H2,t.trim?$2(n):n)}function W2(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function q2(){return" "}function $2(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var Q4={}.hasOwnProperty;function K2(e){return e==null?"":Z4(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function G2(e){return Y4(" "+K2(e)+" ")}function V2(e){let t=G2(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function th(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function nh(e,t,n,a){t=uh(t,n,a);let u=[],r;if(t)for(r in t)cr.call(t,r)&&u.push([r,ah(e,t[r])]);return u.length===0?Hi():u.sort(rh)}function ah(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of fh){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/r>.5?t==="zh-CN"?ic(e)?"zh-TW":"zh-CN":t:"auto"}var lc=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function cc(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=mr(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...lc.keys()]},u=nc(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=lc.get(r);if(o)return o}return"auto"}function Kn(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=zt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":zt[u]}else return"auto";else return zt[a]}var gr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4083,70 +4091,81 @@ body { ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};function H0(e){return Array.isArray(e)?e:e?[e]:[]}function U0(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function An(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function pr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let s=H0(i);u[o]=Array.from(new Set([...u[o],...s]))}else u[o]=H0(i)}),u}function dh(){if(de.PROD==="1")return{};let e={};if(de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(de.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:de.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(de.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:de.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(de.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&de.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:de.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:de.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(de.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:de.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(de.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=de.DEEPL_PROXY_ENDPOINT),de.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=de.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),de.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:de.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return de.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),de.MOCK==="1"&&(e.translationService="mock"),de.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=de.IMMERSIVE_TRANSLATE_SERVICE),e}async function du(){let e=await q.storage.local.get(uu);if(e[uu]){let t=e[uu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await mu(r),r}else return{}}async function mu(e){await q.storage.local.set({[uu]:e})}async function ic(e){await q.storage.local.set({[vn]:e})}async function sc(){let e=await q.storage.local.get(vn),n={...cc(),...gr,buildinConfigUpdatedAt:de.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function Gn(){let e=await q.storage.local.get(vn),t={...gr,buildinConfigUpdatedAt:de.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let C=new Date(p.buildinConfigUpdatedAt),M=new Date(t.buildinConfigUpdatedAt);C>M&&(t=p)}}let n={};if(!ne()&&q.commands&&q.commands.getAll){let p=await q.commands.getAll();for(let C of p)C.name&&C.shortcut&&(n[C.name]=C.shortcut)}let a=cc(),u=dh(),r=await W0(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await du(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(C=>new Date(C.expiredAt)>s);if(p.length>0){let C=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],M=Array.isArray(C)?C:[C],L=Array.from(new Set(M.concat(p.map(A=>A.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:L}}}let l=Object.assign({},o,u,r);if(!l.interfaceLanguage){let p=await mh();l.interfaceLanguage=p}let c=l.interfaceLanguage==="en",d=l.targetLanguage==="en",m=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,g=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!d&&!m&&g?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),v=Object.keys(f),T=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of v){let C=p;if(C==="generalRule")typeof l[C]=="object"&&(f[C]=pr(a[C],l[C]));else if(C==="translationServices"){let M=l[C]||{},L=t[C]||{},A=Object.keys(L),y=Object.keys(M),S=[...new Set([...A,...y])],D={};for(let x of S)D[x]={...L[x],...M[x]};f[C]=D}else if(typeof l[C]!="string"&&typeof l[C]!="boolean"&&typeof l[C]!="number"&&T.includes(C))l[C]&&(f[C]=Object.assign(f[C],l[C])),C==="shortcuts"&&(ne()||Rt()?f[C]={...f[C],...n}:f[C]={...n});else if(C==="rules"){if(Array.isArray(l[C])&&(f[C]=[...l[C],...f[C]]),de.PROD==="0"&&de.DEV_RULES){let M=JSON.parse(de.DEV_RULES);f[C]=[...M,...f[C]]}}else l[C]!==void 0&&(f[C]=l[C])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function W0(){return(await q.storage.sync.get("userConfig")||{}).userConfig||{}}async function lc(e){await q.storage.sync.set({userConfig:e})}var mh=async()=>{let e=["zh-CN"];try{e=await q.i18n.getAcceptLanguages()}catch(a){k.warn("get browser language error:",a)}let n=e.map(a=>Kn(a)).find(a=>It[a]);return n||"en"},cc=()=>{let e={...gr,buildinConfigUpdatedAt:de.BUILD_TIME};return{...e,targetLanguage:ur,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var Ze=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function mc(e){let t;if(e&&e.retry&&e.retry>0)try{t=await l0(dc.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await dc(e);return t}async function dc(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await r(t,a)}catch(s){k.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of gh(i.body)){let d=new TextDecoder().decode(c);s+=d;let m;for(;(m=s.indexOf(` -`))>=0;){let g=s.slice(0,m).trim();if(s=s.slice(m+1),g.startsWith("event:")||g==="")continue;let f="";if(g.startsWith("data:")&&(f=g.slice(5).trim()),f==="[DONE]")break;let v;try{v=JSON.parse(f??"")}catch(T){k.debug("json error",T);continue}l=v}}return l}}else{let s;try{s=await i.text()}catch(d){k.error("parse response failed",d)}s&&k.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new Ze("fetchError",c,s)}}async function*gh(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Sn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function ph(e,t){return e<>>32-t}function hr(e,t,n,a,u,r){return Sn(ph(Sn(Sn(t,e),Sn(a,r)),u),n)}function dt(e,t,n,a,u,r,o){return hr(t&n|~t&a,e,t,u,r,o)}function mt(e,t,n,a,u,r,o){return hr(t&a|n&~a,e,t,u,r,o)}function gt(e,t,n,a,u,r,o){return hr(t^n^a,e,t,u,r,o)}function pt(e,t,n,a,u,r,o){return hr(n^(t|~a),e,t,u,r,o)}function fr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function q0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=fr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=fr(u.concat(q0(t)),512+t.length*8),gc(fr(r.concat(o),512+128))}function pc(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function $0(e){return unescape(encodeURIComponent(e))}function fc(e){return fh($0(e))}function bh(e){return pc(fc(e))}function hc(e,t){return hh($0(e),$0(t))}function Eh(e,t){return pc(hc(e,t))}function Dn(e,t,n){return t?n?hc(t,e):Eh(t,e):n?fc(e):bh(e)}function bc(e,t,n){let a=yh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((s,l)=>s+l.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function yh(e,t){let n=[],a=[];for(let u=0;u0?f"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};function Ui(e){return Array.isArray(e)?e:e?[e]:[]}function Wi(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function An(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function pr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let s=Ui(i);u[o]=Array.from(new Set([...u[o],...s]))}else u[o]=Ui(i)}),u}function bh(){if(de.PROD==="1")return{};let e={};if(de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:de.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:de.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(de.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:de.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(de.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:de.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:de.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(de.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&de.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:de.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:de.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(de.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:de.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(de.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=de.DEEPL_PROXY_ENDPOINT),de.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=de.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),de.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:de.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return de.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),de.MOCK==="1"&&(e.translationService="mock"),de.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=de.IMMERSIVE_TRANSLATE_SERVICE),e}async function du(){let e=await q.storage.local.get(uu);if(e[uu]){let t=e[uu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await mu(r),r}else return{}}async function mu(e){await q.storage.local.set({[uu]:e})}async function dc(e){await q.storage.local.set({[vn]:e})}async function mc(){let e=await q.storage.local.get(vn),n={...pc(),...gr,buildinConfigUpdatedAt:de.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function Gn(){let e=await q.storage.local.get(vn),t={...gr,buildinConfigUpdatedAt:de.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let C=new Date(p.buildinConfigUpdatedAt),M=new Date(t.buildinConfigUpdatedAt);C>M&&(t=p)}}let n={};if(!ne()&&q.commands&&q.commands.getAll){let p=await q.commands.getAll();for(let C of p)C.name&&C.shortcut&&(n[C.name]=C.shortcut)}let a=pc(),u=bh(),r=await qi(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await du(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(C=>new Date(C.expiredAt)>s);if(p.length>0){let C=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],M=Array.isArray(C)?C:[C],L=Array.from(new Set(M.concat(p.map(A=>A.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:L}}}let l=Object.assign({},o,u,r);if(!l.interfaceLanguage){let p=await Eh();l.interfaceLanguage=p}let c=l.interfaceLanguage==="en",d=l.targetLanguage==="en",m=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,g=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!d&&!m&&g?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),w=Object.keys(f),T=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of w){let C=p;if(C==="generalRule")typeof l[C]=="object"&&(f[C]=pr(a[C],l[C]));else if(C==="translationServices"){let M=l[C]||{},L=t[C]||{},A=Object.keys(L),y=Object.keys(M),S=[...new Set([...A,...y])],D={};for(let x of S)D[x]={...L[x],...M[x]};f[C]=D}else if(typeof l[C]!="string"&&typeof l[C]!="boolean"&&typeof l[C]!="number"&&T.includes(C))l[C]&&(f[C]=Object.assign(f[C],l[C])),C==="shortcuts"&&(ne()||Rt()?f[C]={...f[C],...n}:f[C]={...n});else if(C==="rules"){if(Array.isArray(l[C])&&(f[C]=[...l[C],...f[C]]),de.PROD==="0"&&de.DEV_RULES){let M=JSON.parse(de.DEV_RULES);f[C]=[...M,...f[C]]}}else l[C]!==void 0&&(f[C]=l[C])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function qi(){return(await q.storage.sync.get("userConfig")||{}).userConfig||{}}async function gc(e){await q.storage.sync.set({userConfig:e})}var Eh=async()=>{let e=["zh-CN"];try{e=await q.i18n.getAcceptLanguages()}catch(a){v.warn("get browser language error:",a)}let n=e.map(a=>Kn(a)).find(a=>It[a]);return n||"en"},pc=()=>{let e={...gr,buildinConfigUpdatedAt:de.BUILD_TIME};return{...e,targetLanguage:ur,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var Ze=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function hc(e){let t;if(e&&e.retry&&e.retry>0)try{t=await ci(fc.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await fc(e);return t}async function fc(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await r(t,a)}catch(s){v.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of yh(i.body)){let d=new TextDecoder().decode(c);s+=d;let m;for(;(m=s.indexOf(` +`))>=0;){let g=s.slice(0,m).trim();if(s=s.slice(m+1),g.startsWith("event:")||g==="")continue;let f="";if(g.startsWith("data:")&&(f=g.slice(5).trim()),f==="[DONE]")break;let w;try{w=JSON.parse(f??"")}catch(T){v.debug("json error",T);continue}l=w}}return l}}else{let s;try{s=await i.text()}catch(d){v.error("parse response failed",d)}s&&v.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new Ze("fetchError",c,s)}}async function*yh(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Sn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function Th(e,t){return e<>>32-t}function hr(e,t,n,a,u,r){return Sn(Th(Sn(Sn(t,e),Sn(a,r)),u),n)}function dt(e,t,n,a,u,r,o){return hr(t&n|~t&a,e,t,u,r,o)}function mt(e,t,n,a,u,r,o){return hr(t&a|n&~a,e,t,u,r,o)}function gt(e,t,n,a,u,r,o){return hr(t^n^a,e,t,u,r,o)}function pt(e,t,n,a,u,r,o){return hr(n^(t|~a),e,t,u,r,o)}function fr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function $i(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=fr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=fr(u.concat($i(t)),512+t.length*8),bc(fr(r.concat(o),512+128))}function Ec(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function Ki(e){return unescape(encodeURIComponent(e))}function yc(e){return xh(Ki(e))}function wh(e){return Ec(yc(e))}function Tc(e,t){return Ch(Ki(e),Ki(t))}function vh(e,t){return Ec(Tc(e,t))}function Dn(e,t,n){return t?n?Tc(t,e):vh(t,e):n?yc(e):wh(e)}function xc(e,t,n){let a=kh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((s,l)=>s+l.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function kh(e,t){let n=[],a=[];for(let u=0;u0?ft){let p=[];K0(v,t,p);for(let C=0;C0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&K0(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let s=r.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){u=!1;break}}r.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var Ec=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let s=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,d=!!s.beta;return i===e.translationService||l&&u||c&&(n||u)||d&&(a||n||u)?!0:!c&&!d&&!l}).map(i=>G0(i,e))};function _t(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var ba=[];async function br(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function yc(e){let t=`${H}-${e.service}@${e.from}->${e.to}`;return await xh(t,e)}async function Tc(e){let t=Dn(e.originalText),n=`${H}-${e.service}@${e.from}->${e.to}`;return await Th(n,t)}async function Th(e,t){let n=await br(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),u()}})}async function xh(e,t){let n=await br(e);return(await wh()).includes(e)||await Ch(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=s=>{n.close(),u(!0)},i.onerror=s=>{n.close(),u(!1)}})}async function Ch(e){let t="cache_list",n=await br(H+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),ba.push(e)},u.onerror=r=>{n.close()}}async function wh(){if(ba&&ba.length>0)return ba;let e=await br(H+"-cacheList","cache_list");return ba=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),ba}function Qe(){try{return globalThis.self!==globalThis.top}catch{return!0}}var V0="Original";function Re(){return V0}function Tt(e){V0=e,xc(V0)}var wc="auto",Er="auto",Cc="auto";function yr(e){wc=e}function Ut(e){Er=e}function an(){return Er!=="auto"?Er:Cc!=="auto"?Cc:wc}function Ea(){return Er}var vc=ie+"SyncStoreKey_";function J0(e,t){let n=vc+e;return q.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=vc+e;return q.storage.sync.set({[n]:t})}var gu=new Map,ya=class{constructor(t,n=!1){this.logger=new su,n&&this.logger.setLevel("debug"),this.fromType=t,gu.has(t)||(gu.set(t,new Map),q.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,s,l,c;u.tab&&u.tab.id&&(s=u.tab.id,o=`${o}:${s}`,l=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let d=X0(i),{type:m,name:g}=d;if(m!==t)return!1;let f=X0(o),T=gu.get(m).get(g);if(!T)return this.logger.debug(`no message handler for ${m}:${i}, but it's ok`),!1;let{messageHandler:p,sync:C}=T,M={type:t,name:f.name,id:s,url:l,active:c};if(C){try{let L=p(a.payload,M);r({ok:!0,data:L})}catch(L){r({ok:!1,errorName:L.name,errorMessage:L.message,errorDetails:L.details})}return!1}else return p(a.payload,M).then(L=>{r({ok:!0,data:L})}).catch(L=>{r({ok:!1,errorName:L.name,errorMessage:L.message,errorDetails:L.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=gu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new Y0(`${r}:${t}`,this.logger);return gu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},Y0=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=X0(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await q.runtime.sendMessage(o);return kc(o,i,this.logger)}catch(i){if(u==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await q.tabs.sendMessage(r,o);return kc(o,i,this.logger)}}};function kc(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Ze(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Ze("noResponse","Unknown error")}function X0(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ta=async function(e,t){let{method:n,data:a}=e,u=await Pc(),r=Date.now();k.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await Q0(),et(pn,r)):n==="translateTheMainPage"?(await Ar(),et(pn,r)):n==="translateToThePageEndImmediately"?(await Fc(),et(pn,r)):n==="toggleTranslatePage"?(await wr(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await Lc(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await Sc(),et(pn,r)):n==="toggleOnlyTransation"?(await Sr(),et(pn,r)):n==="translatePage"?(await Jt(u),et(pn,r)):n==="toggleTranslationMask"?await kr():n==="restorePage"?Vn():n==="setCurrentPageLanguageByClient"?Ut(a):n==="retryFailedParagraphs"?vr():n==="switchTranslationMode"&&a&&a.mode&&Dc(a.mode)},vh=function(e,t){let{method:n,data:a}=e;if(k.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Re();if(n==="getCurrentPageLanguage"){let u=an();return Z0().catch(r=>{k.warn("detectCurrentPageLanguage failed",r)}),u}},Tr,xr;function Ac(){let e=Cr();Qe()||kh(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Cr(){return Tr||(Tr=new ya("content_script",!1).getConnection("main",Ta),Tr)}function kh(){return xr||(xr=new ya("content_script",!1).getConnection("main_sync",vh,{sync:!0}),xr)}var Ah=new Map;function Mc(e){let t=Sh(64),n=new CustomEvent(Xu,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{Ah.set(t,(r,o)=>{r?u(r):a(o)})})}function Sh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Ic(e){return ne()?Tc(e):qe({method:"queryParagraphCache",data:e})}async function jc(e){if(ne()){await yc(e);return}return qe({method:"setParagraphCache",data:e})}async function zc(){if(ne())return Promise.resolve();await qe({method:"mockRequest"})}function Lr(e=!1,t=""){return ne()?(q.runtime.openOptionsPage(e,t),Promise.resolve()):qe({method:"openOptionsPage"})}function Hc(e=""){return ne()||Rt()?lt().OPTIONS_URL:q.runtime.getURL("options.html")}function Uc(e=""){return q&&q.runtime&&q.runtime.getURL?q.runtime.getURL("options.html"):""}function Fr(e=!1){return ne()?(q.extra.openAboutPage(e),Promise.resolve()):qe({method:"openAboutPage"})}function Wc(e=!1){return ne()?(q.extra.openSearchEnhancement(e),Promise.resolve()):qe({method:"openSearchEnhancement"})}function Pr(e=!1){return ne()?(q.extra.openEbookViewerPage(e),Promise.resolve()):qe({method:"openEbookViewerPage"})}function qc(e=!1){return ne()?Promise.resolve():qe({method:"openHtmlViewerPage"})}function Mr(e=!1){return ne()?(q.extra.openEbookBuilderPage(e),Promise.resolve()):qe({method:"openEbookBuilderPage"})}function _r(e){Rt()}function ei(e=!1){return ne()?(alert("it's not support in userscript"),Promise.resolve()):qe({method:"openPdfViewerPage"})}function $c(e=!1){return ne()?(q.extra.openSubtitleBuilderPage(e),Promise.resolve()):qe({method:"openSubtitleBuilderPage"})}function Kc(){return ne()?(k.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):qe({method:"autoSyncLatestConfig"})}var Gc=ie+"StoreKey_";function Br(e,t){let n=Gc+e;return q.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Vc(e,t){let n=Gc+e;return q.storage.local.set({[n]:t})}var Rr={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.1",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Fn(){return Rr.version}var Jc="G-MKMD9LWFTR";async function $e(e,t,n){try{let a=lt();if(a.INSTALL_FROM==="firefox_store")return;let r=ne(),o=Qe(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let D=await Br(s,0),x=Or(new Date(D)),F=Date.now(),O=Or(new Date(F));if(x===O)return;await Vc(s,F)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",d=await J0("fakeUserId","");d||(d=await Br("fakeUserId",""),d&&await et("fakeUserId",d));let m=Fn(),g=new Date,f=await J0("installedAt","");f||(f=await Br("installedAt",""),f&&await et("installedAt",f)),d?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(d=Lh(32),await et("fakeUserId",d)),f||(f=g.toISOString(),await et("installedAt",f));let v=new Date(f),T=Or(v),p=Or(g),C=T===p,M=g.getTime()-v.getTime()<7*24*60*60*1e3,L=`https://www.google-analytics.com/mp/collect?measurement_id=${Jc}&api_secret=${c}`;i||(L=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${Jc}&api_secret=${c}`);let A=$u.parse(window.navigator.userAgent),y=t.map(D=>{let x=D.params||{};A.os&&(x.os_name=A.os.name||"unknown",x.os_version=A.os.version||"unknown",x.os_version_name=A.os.versionName||"unknown"),A.browser&&(x.browser_name=A.browser.name||"unknown",x.browser_version=A.browser.version||"unknown"),A.platform&&(x.platform_type=A.platform.type||"unknown"),A.engine&&(x.engine_name=A.engine.name||"unknown",x.engine_version=A.engine.version||"unknown"),n.translationService&&(x.translation_service=n.translationService),n.targetLanguage&&(x.target_language=n.targetLanguage),n.config.interfaceLanguage&&(x.interface_language=n.config.interfaceLanguage),m&&(x.version=m),n.config.translationTheme&&(x.translation_theme=n.config.translationTheme),n.config.alpha&&(x.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?x.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):x.always_translate_languages="none",a.INSTALL_FROM&&(x.install_from=a.INSTALL_FROM),n.config.beta&&(x.beta=n.config.alpha.toString()),n.config.translationArea&&(x.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(x.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),T&&(x.install_day=Fh(v)),n.config.translationMode&&(x.translation_mode=n.config.translationMode),x.userscript=r.toString(),C?x.is_new_user_today="1":x.is_new_user_today="0",M?x.is_new_user_this_week="1":x.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?x.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():x.temp_translate_domain_minutes="0";let F="html";if(n.rule.isEbook?F="ebookReader":n.rule.isPdf?F="pdfReader":n.rule.isEbookBuilder?F="ebookBuilder":n.rule.isSubtitleBuilder&&(F="subtitleBuilder"),x.page_type=F,o?x.main_frame=0:x.main_frame=1,!l){let O=n.url;try{let w=new URL(O);x.site_host=w.hostname}catch{x.site_host="unknown"}n.sourceLanguage&&(x.source_language=n.sourceLanguage)}return{...D,params:x}}),S=await $({responseType:"text",url:L,method:"POST",body:JSON.stringify({client_id:d,user_id:d,events:y})})}catch{}}function Lh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var st=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function Pn(e){return e!=null}function Qc(e,t,n){return`${e.type}#${t}#${n}`}function e3(e,t,n,a,u){return{body:u,id:a,type:Qc(e,t,n)}}function Ph(e,t,n,a){return{id:n,response:a,type:Qc(e,"ask",t)}}function t3(e,t,n,a){if(Pn(a)){let u=a.type;if(Pn(u)&&Pn(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Mh(e,t,n){if(Pn(n)){let a=n.type;if(Pn(a)&&Pn(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function _h(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function Bh(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Mh(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Rh(e,t,n,a){let u=r=>{let o=r.data;t3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function Xc(e,t,n,a,u,r){let o=async i=>{let s=i.data;if(t3(n,"ask",a,s)){let l=await r(s.body);t=i.source,t.postMessage(Ph(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function Oh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(e3(t,"tell",n,r,a),u)}async function Zc(e,t,n,a,u,r,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let d=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),m=await Bh(e,n,a,i);clearTimeout(d),l(m)});return t.postMessage(e3(n,"ask",a,i,u),r),s}var un=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];Xc(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(Pn(r))return new un(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new un(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new un(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await Zc(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Rh(this.thisWindow,this.protocol,t,n))}tell(t,n){Oh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(Xc(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return Zc(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){_h(this.listeners)}};var Nh;function Nr(){return Nh}var Ih=new st({limit:7,interval:1250}),jh={tencent:new st({limit:3,interval:1350}),baidu:new st({limit:1,interval:1550}),strict:new st({limit:1,interval:1050}),d:new st({limit:1,interval:1050}),youdao:new st({limit:5,interval:1050}),you:new st({limit:5,interval:1050}),cai:new st({limit:5,interval:1050}),google:new st({limit:10,interval:1050}),deepl:new st({limit:10,interval:1050}),transmart:new st({limit:30,interval:1050}),papago:new st({limit:3,interval:1150}),openai:new st({limit:10,interval:1300}),chatgpt:new st({limit:1,interval:1350})};function pu(e){return jh[e]||Ih}async function n3(e){if(Qe()){let n=Nr();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return k.error("can not comunicate with root frame, use strict limiter",a),pu("strict").getDelay()}else return pu("strict").getDelay()}else return pu(e).getDelay()}async function a3(e,t){if(!Qe()){let a=pu(e);t&&a.setOptions(t)}}async function u3(e){let t=e.key;return{value:pu(t).getDelay()}}var ae=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let T of u)T.from&&T.from!=="auto"&&i.add(T.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=bc(u,l,c)}catch(T){if(a)for(let p=0;pT));let d=[],m=[],g=(T,p,C)=>{let M=p.translatedTexts[0];m[T]||(m[T]=p,m[T].translatedTexts=Array(p.sentenceTotalParts).fill(null)),m[T].translatedTexts[p.partIndex]=M;let L=m[T],A=0;for(let y=0;y{let L=await n3(this.translationOptions.translationService);await Xa(L||0);let A=p.from;if(s&&(A="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(A=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(S=>S.text),from:A,to:p.to,url:C,options:n}),sourceTempSentences:p.tempSentences};{let y=E4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(y=this.serviceConfig.translationTextSeparator);let S=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(S=this.serviceConfig.newlinePlaceholderDelimiters);let D="";S&&S.length>=2?D=p.tempSentences.map((B,J)=>J===p.tempSentences.length-1?B.text:B.text+S[0]+(J+1)+S[1]).join(""):D=p.tempSentences.map(B=>B.text).join(y);let x=await this.translate({text:D,from:A,to:p.to,url:C,options:n}),{text:F}=x,O=[];if(S&&S.length>=2){let B=`${S[0]}\\d+${S[1]}`;S&&S.length>=3&&(B=S[2]);let J=new RegExp(B,"g");O=F.split(J)}else O=F.split(y);let w=[];if(O.length>p.tempSentences.length){for(let B=0;B{let{text:A,sourceTempSentences:y}=L;for(let S=0;S{if(a){for(let A=0;A({...T.sentence,text:T.translatedTexts.join("")}))}}detectLanguageLocally(t){return Je({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ae.langMap=new Map;var xa="input is invalid type",ti=typeof window=="object",Mn=ti?window:{};Mn.JS_SHA256_NO_WINDOW&&(ti=!1);var zh=!ti&&typeof self=="object",Hh=!Mn.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Hh?Mn=global:zh&&(Mn=self);var ZC=!Mn.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,QC=typeof define=="function"&&define.amd,fu=!Mn.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",K="0123456789abcdef".split(""),Uh=[-2147483648,8388608,32768,128],Yt=[24,16,8,0],Ir=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],jr=["hex","array","digest","arrayBuffer"],ut=[];(Mn.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});fu&&(Mn.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var r3=function(e,t){return function(n){return new rt(t,!0).update(n)[e]()}},i3=function(e){var t=r3("hex",e);t.create=function(){return new rt(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};rt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Uh[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};rt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,d,m,g,f,v,T,p,C,M;for(l=16;l<64;++l)g=s[l-15],c=(g>>>7|g<<25)^(g>>>18|g<<14)^g>>>3,g=s[l-2],d=(g>>>17|g<<15)^(g>>>19|g<<13)^g>>>10,s[l]=s[l-16]+c+s[l-7]+d<<0;for(M=t&n,l=0;l<64;l+=4)this.first?(this.is224?(T=300032,g=s[0]-1413257819,i=g-150054599<<0,a=g+24177077<<0):(T=704751109,g=s[0]-210244248,i=g-1521486534<<0,a=g+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),d=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),T=e&t,m=T^e&n^M,v=u&r^~u&o,g=i+d+v+Ir[l]+s[l],f=c+m,i=a+g<<0,a=g+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),d=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,m=p^a&t^T,v=i&u^~i&r,g=o+d+v+Ir[l+1]+s[l+1],f=c+m,o=n+g<<0,n=g+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),d=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),C=n&a,m=C^n&e^p,v=o&i^~o&u,g=r+d+v+Ir[l+2]+s[l+2],f=c+m,r=t+g<<0,t=g+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),d=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),M=t&n,m=M^t&a^C,v=r&o^~r&i,g=u+d+v+Ir[l+3]+s[l+3],f=c+m,u=e+g<<0,e=g+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};rt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=K[e>>28&15]+K[e>>24&15]+K[e>>20&15]+K[e>>16&15]+K[e>>12&15]+K[e>>8&15]+K[e>>4&15]+K[e&15]+K[t>>28&15]+K[t>>24&15]+K[t>>20&15]+K[t>>16&15]+K[t>>12&15]+K[t>>8&15]+K[t>>4&15]+K[t&15]+K[n>>28&15]+K[n>>24&15]+K[n>>20&15]+K[n>>16&15]+K[n>>12&15]+K[n>>8&15]+K[n>>4&15]+K[n&15]+K[a>>28&15]+K[a>>24&15]+K[a>>20&15]+K[a>>16&15]+K[a>>12&15]+K[a>>8&15]+K[a>>4&15]+K[a&15]+K[u>>28&15]+K[u>>24&15]+K[u>>20&15]+K[u>>16&15]+K[u>>12&15]+K[u>>8&15]+K[u>>4&15]+K[u&15]+K[r>>28&15]+K[r>>24&15]+K[r>>20&15]+K[r>>16&15]+K[r>>12&15]+K[r>>8&15]+K[r>>4&15]+K[r&15]+K[o>>28&15]+K[o>>24&15]+K[o>>20&15]+K[o>>16&15]+K[o>>12&15]+K[o>>8&15]+K[o>>4&15]+K[o&15];return this.is224||(s+=K[i>>28&15]+K[i>>24&15]+K[i>>20&15]+K[i>>16&15]+K[i>>12&15]+K[i>>8&15]+K[i>>4&15]+K[i&15]),s};rt.prototype.toString=rt.prototype.hex;rt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};rt.prototype.array=rt.prototype.digest;rt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function zr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,s;for(a=0;a>6,r[i++]=128|s&63):s<55296||s>=57344?(r[i++]=224|s>>12,r[i++]=128|s>>6&63,r[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|s>>18,r[i++]=128|s>>12&63,r[i++]=128|s>>6&63,r[i++]=128|s&63);e=r}else if(u==="object"){if(e===null)throw new Error(xa);if(fu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!fu||!ArrayBuffer.isView(e)))throw new Error(xa)}else throw new Error(xa);e.length>64&&(e=new rt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var d=e[a]||0;l[a]=92^d,c[a]=54^d}rt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}zr.prototype=new rt;zr.prototype.finalize=function(){if(rt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();rt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),rt.prototype.finalize.call(this)}};var Ca=i3();Ca.sha256=Ca;Ca.sha224=i3(!0);Ca.sha256.hmac=s3();Ca.sha224.hmac=s3(!0);var l3=Ca;var c3=l3.sha256;function Xt(e){return Promise.resolve(c3(e))}function Hr(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function _n(e,t){let n=c3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function d3(e,t){let n=await _n(e,t);return Hr(n)}async function Ur(e,t){let n=Wh(t),a=await _n(e,n);return Hr(a)}function Wh(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}var m3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Zt=class extends ae{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceText:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceTextList:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),d=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Xt(r)].join(` +`;continue}else if(w.length>t){let p=[];Gi(w,t,p);for(let C=0;C0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&Gi(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let s=r.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){u=!1;break}}r.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var Cc=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let s=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,d=!!s.beta;return i===e.translationService||l&&u||c&&(n||u)||d&&(a||n||u)?!0:!c&&!d&&!l}).map(i=>Vi(i,e))};function _t(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var ba=[];async function br(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function wc(e){let t=`${z}-${e.service}@${e.from}->${e.to}`;return await Sh(t,e)}async function vc(e){let t=Dn(e.originalText),n=`${z}-${e.service}@${e.from}->${e.to}`;return await Ah(n,t)}async function Ah(e,t){let n=await br(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),u()}})}async function Sh(e,t){let n=await br(e);return(await Lh()).includes(e)||await Dh(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=s=>{n.close(),u(!0)},i.onerror=s=>{n.close(),u(!1)}})}async function Dh(e){let t="cache_list",n=await br(z+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),ba.push(e)},u.onerror=r=>{n.close()}}async function Lh(){if(ba&&ba.length>0)return ba;let e=await br(z+"-cacheList","cache_list");return ba=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),ba}function Qe(){try{return globalThis.self!==globalThis.top}catch{return!0}}var Ji="Original";function Re(){return Ji}function Tt(e){Ji=e,kc(Ji)}var Sc="auto",Er="auto",Ac="auto";function yr(e){Sc=e}function Ut(e){Er=e}function un(){return Er!=="auto"?Er:Ac!=="auto"?Ac:Sc}function Ea(){return Er}var Dc=ie+"SyncStoreKey_";function Yi(e,t){let n=Dc+e;return q.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=Dc+e;return q.storage.sync.set({[n]:t})}var gu=new Map,ya=class{constructor(t,n=!1){this.logger=new su,n&&this.logger.setLevel("debug"),this.fromType=t,gu.has(t)||(gu.set(t,new Map),q.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,s,l,c;u.tab&&u.tab.id&&(s=u.tab.id,o=`${o}:${s}`,l=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let d=Zi(i),{type:m,name:g}=d;if(m!==t)return!1;let f=Zi(o),T=gu.get(m).get(g);if(!T)return this.logger.debug(`no message handler for ${m}:${i}, but it's ok`),!1;let{messageHandler:p,sync:C}=T,M={type:t,name:f.name,id:s,url:l,active:c};if(C){try{let L=p(a.payload,M);r({ok:!0,data:L})}catch(L){r({ok:!1,errorName:L.name,errorMessage:L.message,errorDetails:L.details})}return!1}else return p(a.payload,M).then(L=>{r({ok:!0,data:L})}).catch(L=>{r({ok:!1,errorName:L.name,errorMessage:L.message,errorDetails:L.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=gu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new Xi(`${r}:${t}`,this.logger);return gu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},Xi=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=Zi(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await q.runtime.sendMessage(o);return Lc(o,i,this.logger)}catch(i){if(u==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await q.tabs.sendMessage(r,o);return Lc(o,i,this.logger)}}};function Lc(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Ze(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Ze("noResponse","Unknown error")}function Zi(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ta=async function(e,t){let{method:n,data:a}=e,u=await Rc(),r=Date.now();v.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await e0(),et(pn,r)):n==="translateTheMainPage"?(await Ar(),et(pn,r)):n==="translateToThePageEndImmediately"?(await Bc(),et(pn,r)):n==="toggleTranslatePage"?(await wr(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await _c(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await Pc(),et(pn,r)):n==="toggleOnlyTransation"?(await Sr(),et(pn,r)):n==="translatePage"?(await Jt(u),et(pn,r)):n==="toggleTranslationMask"?await kr():n==="restorePage"?Vn():n==="setCurrentPageLanguageByClient"?Ut(a):n==="retryFailedParagraphs"?vr():n==="switchTranslationMode"&&a&&a.mode&&Mc(a.mode)},Fh=function(e,t){let{method:n,data:a}=e;if(v.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Re();if(n==="getCurrentPageLanguage"){let u=un();return Qi().catch(r=>{v.warn("detectCurrentPageLanguage failed",r)}),u}},Tr,xr;function Fc(){let e=Cr();Qe()||Ph(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Cr(){return Tr||(Tr=new ya("content_script",!1).getConnection("main",Ta),Tr)}function Ph(){return xr||(xr=new ya("content_script",!1).getConnection("main_sync",Fh,{sync:!0}),xr)}var Mh=new Map;function Oc(e){let t=_h(64),n=new CustomEvent(Xu,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{Mh.set(t,(r,o)=>{r?u(r):a(o)})})}function _h(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Uc(e){return ne()?vc(e):qe({method:"queryParagraphCache",data:e})}async function Wc(e){if(ne()){await wc(e);return}return qe({method:"setParagraphCache",data:e})}async function qc(){if(ne())return Promise.resolve();await qe({method:"mockRequest"})}function Lr(e=!1,t=""){return ne()?(q.runtime.openOptionsPage(e,t),Promise.resolve()):qe({method:"openOptionsPage"})}function $c(e=""){return ne()||Rt()?lt().OPTIONS_URL:q.runtime.getURL("options.html")}function Kc(e=""){return q&&q.runtime&&q.runtime.getURL?q.runtime.getURL("options.html"):""}function Fr(e=!1){return ne()?(q.extra.openAboutPage(e),Promise.resolve()):qe({method:"openAboutPage"})}function Gc(e=!1){return ne()?(q.extra.openSearchEnhancement(e),Promise.resolve()):qe({method:"openSearchEnhancement"})}function Pr(e=!1){return ne()?(q.extra.openEbookViewerPage(e),Promise.resolve()):qe({method:"openEbookViewerPage"})}function Vc(e=!1){return ne()?Promise.resolve():qe({method:"openHtmlViewerPage"})}function Mr(e=!1){return ne()?(q.extra.openEbookBuilderPage(e),Promise.resolve()):qe({method:"openEbookBuilderPage"})}function _r(e){Rt()}function t0(e=!1){return ne()?(alert("it's not support in userscript"),Promise.resolve()):qe({method:"openPdfViewerPage"})}function Jc(e=!1){return ne()?(q.extra.openSubtitleBuilderPage(e),Promise.resolve()):qe({method:"openSubtitleBuilderPage"})}function Yc(){return ne()?(v.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):qe({method:"autoSyncLatestConfig"})}var Xc=ie+"StoreKey_";function Br(e,t){let n=Xc+e;return q.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Zc(e,t){let n=Xc+e;return q.storage.local.set({[n]:t})}var Rr={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.2",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Fn(){return Rr.version}var Qc="G-MKMD9LWFTR";async function Je(e,t,n){try{let a=lt();if(a.INSTALL_FROM==="firefox_store")return;let r=ne(),o=Qe(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let D=await Br(s,0),x=Or(new Date(D)),F=Date.now(),O=Or(new Date(F));if(x===O)return;await Zc(s,F)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",d=await Yi("fakeUserId","");d||(d=await Br("fakeUserId",""),d&&await et("fakeUserId",d));let m=Fn(),g=new Date,f=await Yi("installedAt","");f||(f=await Br("installedAt",""),f&&await et("installedAt",f)),d?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(d=Rh(32),await et("fakeUserId",d)),f||(f=g.toISOString(),await et("installedAt",f));let w=new Date(f),T=Or(w),p=Or(g),C=T===p,M=g.getTime()-w.getTime()<7*24*60*60*1e3,L=`https://www.google-analytics.com/mp/collect?measurement_id=${Qc}&api_secret=${c}`;i||(L=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${Qc}&api_secret=${c}`);let A=$u.parse(window.navigator.userAgent),y=t.map(D=>{let x=D.params||{};A.os&&(x.os_name=A.os.name||"unknown",x.os_version=A.os.version||"unknown",x.os_version_name=A.os.versionName||"unknown"),A.browser&&(x.browser_name=A.browser.name||"unknown",x.browser_version=A.browser.version||"unknown"),A.platform&&(x.platform_type=A.platform.type||"unknown"),A.engine&&(x.engine_name=A.engine.name||"unknown",x.engine_version=A.engine.version||"unknown"),n.translationService&&(x.translation_service=n.translationService),n.targetLanguage&&(x.target_language=n.targetLanguage),n.config.interfaceLanguage&&(x.interface_language=n.config.interfaceLanguage),m&&(x.version=m),n.config.translationTheme&&(x.translation_theme=n.config.translationTheme),n.config.alpha&&(x.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?x.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):x.always_translate_languages="none",a.INSTALL_FROM&&(x.install_from=a.INSTALL_FROM),n.config.beta&&(x.beta=n.config.alpha.toString()),n.config.translationArea&&(x.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(x.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),T&&(x.install_day=Oh(w)),n.config.translationMode&&(x.translation_mode=n.config.translationMode),x.userscript=r.toString(),C?x.is_new_user_today="1":x.is_new_user_today="0",M?x.is_new_user_this_week="1":x.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?x.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():x.temp_translate_domain_minutes="0";let F="html";if(n.rule.isEbook?F="ebookReader":n.rule.isPdf?F="pdfReader":n.rule.isEbookBuilder?F="ebookBuilder":n.rule.isSubtitleBuilder&&(F="subtitleBuilder"),x.page_type=F,o?x.main_frame=0:x.main_frame=1,!l){let O=n.url;try{let k=new URL(O);x.site_host=k.hostname}catch{x.site_host="unknown"}n.sourceLanguage&&(x.source_language=n.sourceLanguage)}return{...D,params:x}}),S=await $({responseType:"text",url:L,method:"POST",body:JSON.stringify({client_id:d,user_id:d,events:y})})}catch{}}function Rh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var st=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function Pn(e){return e!=null}function a3(e,t,n){return`${e.type}#${t}#${n}`}function u3(e,t,n,a,u){return{body:u,id:a,type:a3(e,t,n)}}function Nh(e,t,n,a){return{id:n,response:a,type:a3(e,"ask",t)}}function r3(e,t,n,a){if(Pn(a)){let u=a.type;if(Pn(u)&&Pn(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Ih(e,t,n){if(Pn(n)){let a=n.type;if(Pn(a)&&Pn(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function jh(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function zh(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Ih(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Hh(e,t,n,a){let u=r=>{let o=r.data;r3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function t3(e,t,n,a,u,r){let o=async i=>{let s=i.data;if(r3(n,"ask",a,s)){let l=await r(s.body);t=i.source,t.postMessage(Nh(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function Uh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(u3(t,"tell",n,r,a),u)}async function n3(e,t,n,a,u,r,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let d=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),m=await zh(e,n,a,i);clearTimeout(d),l(m)});return t.postMessage(u3(n,"ask",a,i,u),r),s}var rn=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];t3(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(Pn(r))return new rn(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new rn(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new rn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await n3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Hh(this.thisWindow,this.protocol,t,n))}tell(t,n){Uh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(t3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return n3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){jh(this.listeners)}};var Wh;function Nr(){return Wh}var qh=new st({limit:7,interval:1250}),$h={tencent:new st({limit:3,interval:1350}),baidu:new st({limit:1,interval:1550}),strict:new st({limit:1,interval:1050}),d:new st({limit:1,interval:1050}),youdao:new st({limit:5,interval:1050}),you:new st({limit:5,interval:1050}),cai:new st({limit:5,interval:1050}),google:new st({limit:10,interval:1050}),deepl:new st({limit:10,interval:1050}),transmart:new st({limit:30,interval:1050}),papago:new st({limit:3,interval:1150}),openai:new st({limit:10,interval:1300}),chatgpt:new st({limit:1,interval:1350})};function pu(e){return $h[e]||qh}async function o3(e){if(Qe()){let n=Nr();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return v.error("can not comunicate with root frame, use strict limiter",a),pu("strict").getDelay()}else return pu("strict").getDelay()}else return pu(e).getDelay()}async function i3(e,t){if(!Qe()){let a=pu(e);t&&a.setOptions(t)}}async function s3(e){let t=e.key;return{value:pu(t).getDelay()}}var ae=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let T of u)T.from&&T.from!=="auto"&&i.add(T.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=xc(u,l,c)}catch(T){if(a)for(let p=0;pT));let d=[],m=[],g=(T,p,C)=>{let M=p.translatedTexts[0];m[T]||(m[T]=p,m[T].translatedTexts=Array(p.sentenceTotalParts).fill(null)),m[T].translatedTexts[p.partIndex]=M;let L=m[T],A=0;for(let y=0;y{let L=await o3(this.translationOptions.translationService);await Xa(L||0);let A=p.from;if(s&&(A="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(A=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(S=>S.text),from:A,to:p.to,url:C,options:n}),sourceTempSentences:p.tempSentences};{let y=C4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(y=this.serviceConfig.translationTextSeparator);let S=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(S=this.serviceConfig.newlinePlaceholderDelimiters);let D="";S&&S.length>=2?D=p.tempSentences.map((B,J)=>J===p.tempSentences.length-1?B.text:B.text+S[0]+(J+1)+S[1]).join(""):D=p.tempSentences.map(B=>B.text).join(y);let x=await this.translate({text:D,from:A,to:p.to,url:C,options:n}),{text:F}=x,O=[];if(S&&S.length>=2){let B=`${S[0]}\\d+${S[1]}`;S&&S.length>=3&&(B=S[2]);let J=new RegExp(B,"g");O=F.split(J)}else O=F.split(y);let k=[];if(O.length>p.tempSentences.length){for(let B=0;B{let{text:A,sourceTempSentences:y}=L;for(let S=0;S{if(a){for(let A=0;A({...T.sentence,text:T.translatedTexts.join("")}))}}detectLanguageLocally(t){return Ve({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ae.langMap=new Map;var xa="input is invalid type",n0=typeof window=="object",Mn=n0?window:{};Mn.JS_SHA256_NO_WINDOW&&(n0=!1);var Kh=!n0&&typeof self=="object",Gh=!Mn.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Gh?Mn=global:Kh&&(Mn=self);var n5=!Mn.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,a5=typeof define=="function"&&define.amd,fu=!Mn.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",K="0123456789abcdef".split(""),Vh=[-2147483648,8388608,32768,128],Yt=[24,16,8,0],Ir=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],jr=["hex","array","digest","arrayBuffer"],ut=[];(Mn.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});fu&&(Mn.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var l3=function(e,t){return function(n){return new rt(t,!0).update(n)[e]()}},d3=function(e){var t=l3("hex",e);t.create=function(){return new rt(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};rt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Vh[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};rt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,d,m,g,f,w,T,p,C,M;for(l=16;l<64;++l)g=s[l-15],c=(g>>>7|g<<25)^(g>>>18|g<<14)^g>>>3,g=s[l-2],d=(g>>>17|g<<15)^(g>>>19|g<<13)^g>>>10,s[l]=s[l-16]+c+s[l-7]+d<<0;for(M=t&n,l=0;l<64;l+=4)this.first?(this.is224?(T=300032,g=s[0]-1413257819,i=g-150054599<<0,a=g+24177077<<0):(T=704751109,g=s[0]-210244248,i=g-1521486534<<0,a=g+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),d=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),T=e&t,m=T^e&n^M,w=u&r^~u&o,g=i+d+w+Ir[l]+s[l],f=c+m,i=a+g<<0,a=g+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),d=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,m=p^a&t^T,w=i&u^~i&r,g=o+d+w+Ir[l+1]+s[l+1],f=c+m,o=n+g<<0,n=g+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),d=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),C=n&a,m=C^n&e^p,w=o&i^~o&u,g=r+d+w+Ir[l+2]+s[l+2],f=c+m,r=t+g<<0,t=g+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),d=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),M=t&n,m=M^t&a^C,w=r&o^~r&i,g=u+d+w+Ir[l+3]+s[l+3],f=c+m,u=e+g<<0,e=g+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};rt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=K[e>>28&15]+K[e>>24&15]+K[e>>20&15]+K[e>>16&15]+K[e>>12&15]+K[e>>8&15]+K[e>>4&15]+K[e&15]+K[t>>28&15]+K[t>>24&15]+K[t>>20&15]+K[t>>16&15]+K[t>>12&15]+K[t>>8&15]+K[t>>4&15]+K[t&15]+K[n>>28&15]+K[n>>24&15]+K[n>>20&15]+K[n>>16&15]+K[n>>12&15]+K[n>>8&15]+K[n>>4&15]+K[n&15]+K[a>>28&15]+K[a>>24&15]+K[a>>20&15]+K[a>>16&15]+K[a>>12&15]+K[a>>8&15]+K[a>>4&15]+K[a&15]+K[u>>28&15]+K[u>>24&15]+K[u>>20&15]+K[u>>16&15]+K[u>>12&15]+K[u>>8&15]+K[u>>4&15]+K[u&15]+K[r>>28&15]+K[r>>24&15]+K[r>>20&15]+K[r>>16&15]+K[r>>12&15]+K[r>>8&15]+K[r>>4&15]+K[r&15]+K[o>>28&15]+K[o>>24&15]+K[o>>20&15]+K[o>>16&15]+K[o>>12&15]+K[o>>8&15]+K[o>>4&15]+K[o&15];return this.is224||(s+=K[i>>28&15]+K[i>>24&15]+K[i>>20&15]+K[i>>16&15]+K[i>>12&15]+K[i>>8&15]+K[i>>4&15]+K[i&15]),s};rt.prototype.toString=rt.prototype.hex;rt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};rt.prototype.array=rt.prototype.digest;rt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function zr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,s;for(a=0;a>6,r[i++]=128|s&63):s<55296||s>=57344?(r[i++]=224|s>>12,r[i++]=128|s>>6&63,r[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|s>>18,r[i++]=128|s>>12&63,r[i++]=128|s>>6&63,r[i++]=128|s&63);e=r}else if(u==="object"){if(e===null)throw new Error(xa);if(fu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!fu||!ArrayBuffer.isView(e)))throw new Error(xa)}else throw new Error(xa);e.length>64&&(e=new rt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var d=e[a]||0;l[a]=92^d,c[a]=54^d}rt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}zr.prototype=new rt;zr.prototype.finalize=function(){if(rt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();rt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),rt.prototype.finalize.call(this)}};var Ca=d3();Ca.sha256=Ca;Ca.sha224=d3(!0);Ca.sha256.hmac=m3();Ca.sha224.hmac=m3(!0);var g3=Ca;var p3=g3.sha256;function Xt(e){return Promise.resolve(p3(e))}function Hr(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function _n(e,t){let n=p3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function f3(e,t){let n=await _n(e,t);return Hr(n)}async function Ur(e,t){let n=Jh(t),a=await _n(e,n);return Hr(a)}function Jh(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}var h3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Zt=class extends ae{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceText:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceTextList:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),d=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Xt(r)].join(` `),m=Zt.getUTCDate(l),g=["TC3-HMAC-SHA256",c,`${m}/${o}/tc3_request`,await Xt(d)].join(` -`),f=await d3(m,`TC3${a}`),v=await Ur(o,f),T=await Ur("tc3_request",v),p=await Ur(g,T),C=await $({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${m}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(C instanceof Error)throw C;if(C.Response&&C.Response.Error&&C.Response.Error.Message)throw new Error(C.Response.Error.Message);return C}},Jn=Zt;Jn.langMap=new Map(m3),Jn.langMapReverse=new Map(m3.map(([n,a])=>[a,n]));var g3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],qh={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Wr=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await $({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:qh});return{text:i.targetText,from:Wr.langMapReverse.get(i.source)||u,to:Wr.langMapReverse.get(i.target)||r}}},Yn=Wr;Yn.langMap=new Map(g3),Yn.langMapReverse=new Map(g3.map(([n,a])=>[a,n]));var p3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Bn=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await $({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await $({retry:2,url:o})}}},bn=Bn;bn.langMap=new Map(p3),bn.langMapReverse=new Map(p3.map(([n,a])=>[a,n]));function $h(e,t){return t?e+(t-e%t):e}function Kh(e,t){return e.split(t).length-1}function ni(e){let t=Date.now(),n=1;for(let a of e)n+=Kh(a,"i");return $h(t,n)}function Gh(e,t){return Math.floor(Math.random()*(t-e+1))+e}function ai(){return Gh(1e6,1e8)}var ui="https://www2.deepl.com/jsonrpc",ri="auto",f3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function Vh(e=f3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function oi(e){return Vh()[e.toLowerCase()]}var Jh={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function Yh(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function Xh(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function Zh(e,t,n,a,u,r,o){let i=ai(),s=Xh(a,n),l=[];t.forEach(m=>{l.push({text:m,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=ni(t);let c=await $({retry:2,method:"POST",url:e,body:Yh(s),headers:Jh}),d={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(m=>{d.text.push(m.text)}),d}async function h3(e,t,n,a=ri,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:Zh(e,t,oi(n),oi(a)??"auto",u,r,o):{text:[],from:a,to:n}}var b3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wa=class extends ae{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=ui;n&&n.apiUrl&&(this.API_URL=Ht(ui,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await h3(this.API_URL,a,wa.langMap.get(u)||u,wa.langMap.get(r)||"auto");return{text:o.text,from:wa.langMapReverse.get(o.from),to:wa.langMapReverse.get(o.to)}}},Rn=wa;Rn.langMap=new Map(b3),Rn.langMapReverse=new Map(b3.map(([n,a])=>[a,n]));var E3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],ii="https://transmart.qq.com/api/imt",Xn=class extends ae{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Xn.langMap.get(r)||r,i=Xn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let s=lt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=y3());let d=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),m=await $({url:ii,body:d,method:"POST",retry:2});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=lt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=y3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(u.join(` -`));if(l===r)return{text:u,from:l,to:r};let c=Xn.langMap.get(l)||l,d=Xn.langMap.get(r)||r,m=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:d},type:"plain"}),g=await $({url:ii,body:m,method:"POST"});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:l||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await $({url:ii,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Xn.langMapReverse.get(r);return o||r}},Zn=Xn;Zn.langMap=new Map(E3),Zn.langMapReverse=new Map(E3.map(([n,a])=>[a,n]));function y3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function T3(){return Math.random()>=0}var va=class extends ae{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await zc(),!T3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var C3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],si=new Map(C3),x3=new Map(C3.map(([e,t])=>[t,e])),li=class extends ae{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=li.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await $({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:si.get(u)||"auto",target_lang:si.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:x3.get(i.source_lang),to:x3.get(i.target_lang)}}else throw new Error(o.msg)}},hu=li;hu.langMap=si,hu.DEFAULT_CODENAME="deepl";var qr=hu;var $r=new Map;async function ci(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=Dn(e.body)),$r.has(t))return $r.get(t);let n=$(e);$r.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{$r.delete(t)},3e4)}}async function w3(e){return ci(e)}async function bu(e){if(Qe()){let n=Nr();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw k.error("can not comunicate with root frame, use strict limiter",a),a}else return ci(e)}else return ci(e)}var Dt=null,v3=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],di=new Map(v3),Qh=new Map(v3.map(([e,t])=>[t,e])),Kr=class extends ae{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ht(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ht(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ht(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ht(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await q.storage.local.remove(gn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await q.storage.local.get(gn);a&&a[gn]&&(Dt=a[gn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new qu(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?bu({url:u,...r}):$({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,q.storage.local.set({[gn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await q.storage.local.set({[gn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:di.get(a)||"",target_lang:di.get(u)||u},i=this.getRandomKey(),s=new URLSearchParams(o);r.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let d;if(i.startsWith("immersive_")){let f=new qu(i,{state:Dt,onFetch:(v,T)=>{let C=new URL(v).pathname;return C==="/refresh_token"||C==="/oidc/token"?bu({url:v,...T}):$({url:v,...T})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:v=>{Dt=v,q.storage.local.set({[gn]:Dt})}});d=await f.translateApi(l),f.getIsStateChanged()&&(Dt=f.getState(),await q.storage.local.set({[gn]:Dt}))}else d=await $({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:m}=d,g=m.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let T=await new bn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:m.map(p=>p.text).join(` +`),f=await f3(m,`TC3${a}`),w=await Ur(o,f),T=await Ur("tc3_request",w),p=await Ur(g,T),C=await $({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${m}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(C instanceof Error)throw C;if(C.Response&&C.Response.Error&&C.Response.Error.Message)throw new Error(C.Response.Error.Message);return C}},Jn=Zt;Jn.langMap=new Map(h3),Jn.langMapReverse=new Map(h3.map(([n,a])=>[a,n]));var b3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Yh={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Wr=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await $({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:Yh});return{text:i.targetText,from:Wr.langMapReverse.get(i.source)||u,to:Wr.langMapReverse.get(i.target)||r}}},Yn=Wr;Yn.langMap=new Map(b3),Yn.langMapReverse=new Map(b3.map(([n,a])=>[a,n]));var E3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Bn=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await $({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await $({retry:2,url:o})}}},bn=Bn;bn.langMap=new Map(E3),bn.langMapReverse=new Map(E3.map(([n,a])=>[a,n]));function Xh(e,t){return t?e+(t-e%t):e}function Zh(e,t){return e.split(t).length-1}function a0(e){let t=Date.now(),n=1;for(let a of e)n+=Zh(a,"i");return Xh(t,n)}function Qh(e,t){return Math.floor(Math.random()*(t-e+1))+e}function u0(){return Qh(1e6,1e8)}var r0="https://www2.deepl.com/jsonrpc",o0="auto",y3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function e9(e=y3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function i0(e){return e9()[e.toLowerCase()]}var t9={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function n9(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function a9(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function u9(e,t,n,a,u,r,o){let i=u0(),s=a9(a,n),l=[];t.forEach(m=>{l.push({text:m,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=a0(t);let c=await $({retry:2,method:"POST",url:e,body:n9(s),headers:t9}),d={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(m=>{d.text.push(m.text)}),d}async function T3(e,t,n,a=o0,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:u9(e,t,i0(n),i0(a)??"auto",u,r,o):{text:[],from:a,to:n}}var x3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wa=class extends ae{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=r0;n&&n.apiUrl&&(this.API_URL=Ht(r0,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await T3(this.API_URL,a,wa.langMap.get(u)||u,wa.langMap.get(r)||"auto");return{text:o.text,from:wa.langMapReverse.get(o.from),to:wa.langMapReverse.get(o.to)}}},Rn=wa;Rn.langMap=new Map(x3),Rn.langMapReverse=new Map(x3.map(([n,a])=>[a,n]));var C3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],s0="https://transmart.qq.com/api/imt",Xn=class extends ae{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Xn.langMap.get(r)||r,i=Xn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let s=lt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=w3());let d=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),m=await $({url:s0,body:d,method:"POST",retry:2});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=lt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=w3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(u.join(` +`));if(l===r)return{text:u,from:l,to:r};let c=Xn.langMap.get(l)||l,d=Xn.langMap.get(r)||r,m=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:d},type:"plain"}),g=await $({url:s0,body:m,method:"POST"});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:l||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await $({url:s0,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Xn.langMapReverse.get(r);return o||r}},Zn=Xn;Zn.langMap=new Map(C3),Zn.langMapReverse=new Map(C3.map(([n,a])=>[a,n]));function w3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function v3(){return Math.random()>=0}var va=class extends ae{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await qc(),!v3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var A3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],l0=new Map(A3),k3=new Map(A3.map(([e,t])=>[t,e])),c0=class extends ae{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=c0.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await $({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:l0.get(u)||"auto",target_lang:l0.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:k3.get(i.source_lang),to:k3.get(i.target_lang)}}else throw new Error(o.msg)}},hu=c0;hu.langMap=l0,hu.DEFAULT_CODENAME="deepl";var qr=hu;var $r=new Map;async function d0(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=Dn(e.body)),$r.has(t))return $r.get(t);let n=$(e);$r.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{$r.delete(t)},3e4)}}async function S3(e){return d0(e)}async function bu(e){if(Qe()){let n=Nr();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw v.error("can not comunicate with root frame, use strict limiter",a),a}else return d0(e)}else return d0(e)}var Dt=null,D3=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],m0=new Map(D3),r9=new Map(D3.map(([e,t])=>[t,e])),Kr=class extends ae{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ht(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ht(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ht(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ht(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await q.storage.local.remove(gn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await q.storage.local.get(gn);a&&a[gn]&&(Dt=a[gn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new qu(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?bu({url:u,...r}):$({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,q.storage.local.set({[gn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await q.storage.local.set({[gn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:m0.get(a)||"",target_lang:m0.get(u)||u},i=this.getRandomKey(),s=new URLSearchParams(o);r.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let d;if(i.startsWith("immersive_")){let f=new qu(i,{state:Dt,onFetch:(w,T)=>{let C=new URL(w).pathname;return C==="/refresh_token"||C==="/oidc/token"?bu({url:w,...T}):$({url:w,...T})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:w=>{Dt=w,q.storage.local.set({[gn]:Dt})}});d=await f.translateApi(l),f.getIsStateChanged()&&(Dt=f.getState(),await q.storage.local.set({[gn]:Dt}))}else d=await $({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:m}=d,g=m.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let T=await new bn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:m.map(p=>p.text).join(` `),url:"",options:{}});T&&T.text&&(g=T.text.split(` -`))}return{text:g,from:m[0]&&Qh.get(m[0].detected_source_language)||a,to:u}}};Kr.langMap=di;var k3=Kr;var e9=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],mi=new Map(e9),Gr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:mi.get(u)||u,to:mi.get(r)||r,apikey:this.APIKEY})},s=await $(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` -`)&&(l=l.slice(0,-1)),{text:l,from:u,to:r}}else throw new Error(JSON.stringify(s))}};Gr.langMap=mi;var A3=Gr;var t9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],gi=new Map(t9),Vr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:gi.get(r)||r};u!=="auto"&&(o.from=gi.get(u)||u);let i=new URLSearchParams(o),s=JSON.stringify(a.map(d=>({text:d}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await $(l);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(d=>d.translations.map(g=>g.text).join(" "))}}};Vr.langMap=gi;var S3=Vr;var n9=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Eu=new Map(n9),pi=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=` +`))}return{text:g,from:m[0]&&r9.get(m[0].detected_source_language)||a,to:u}}};Kr.langMap=m0;var L3=Kr;var o9=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],g0=new Map(o9),Gr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:g0.get(u)||u,to:g0.get(r)||r,apikey:this.APIKEY})},s=await $(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` +`)&&(l=l.slice(0,-1)),{text:l,from:u,to:r}}else throw new Error(JSON.stringify(s))}};Gr.langMap=g0;var F3=Gr;var i9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],p0=new Map(i9),Vr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:p0.get(r)||r};u!=="auto"&&(o.from=p0.get(u)||u);let i=new URLSearchParams(o),s=JSON.stringify(a.map(d=>({text:d}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await $(l);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(d=>d.translations.map(g=>g.text).join(" "))}}};Vr.langMap=p0;var P3=Vr;var s9=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Eu=new Map(s9),f0=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=`
-`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!Eu.get(u)?(o=(await $({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Eu.get(u)||u,target:Eu.get(r)||r})):l.body=JSON.stringify({text:s,source:Eu.get(u),target:Eu.get(r)||r});let c=await $(l);if(c.translatedText==="")throw new Error("server response invalid");let d=c.translatedText.split("
").map(m=>m.trim());return{from:u,to:r,text:d}}},D3=pi;var a9=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],yu=new Map(a9),Jr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!Eu.get(u)?(o=(await $({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Eu.get(u)||u,target:Eu.get(r)||r})):l.body=JSON.stringify({text:s,source:Eu.get(u),target:Eu.get(r)||r});let c=await $(l);if(c.translatedText==="")throw new Error("server response invalid");let d=c.translatedText.split("
").map(m=>m.trim());return{from:u,to:r,text:d}}},M3=f0;var l9=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],yu=new Map(l9),Jr=class extends ae{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ht(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=yu.get(u)||u,i=yu.get(r)||r,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let g=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:g})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},d=this.getRandomKey();d&&(c.headers.Authorization="Bearer "+d,c.headers["api-key"]=d,d.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let m=await $(c);if(m&&m.choices&&m.choices.length>0&&m.choices[0].message&&m.choices[0].message.content){let g=m.choices[0].message.content.trim();return g.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(g=""),!a.includes(".")&&(g.endsWith("\u3002")||g.endsWith("."))&&(g=g.slice(0,-1)),{from:u,to:r,text:g}}else throw new Error("server response invalid: "+JSON.stringify(m))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,yu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,yu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await $(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:u,to:r,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};Jr.langMap=yu;var L3=Jr;var fi=ie+"CacheKey_";function Yr(e,t){let n=fi+e;return q.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),a0(this,ka)}},bi=eo;ka=new WeakMap;var Ei=new bi;Object.freeze(Ei);var Tu=class extends ae{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: +{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ht(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=yu.get(u)||u,i=yu.get(r)||r,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let g=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:g})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},d=this.getRandomKey();d&&(c.headers.Authorization="Bearer "+d,c.headers["api-key"]=d,d.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let m=await $(c);if(m&&m.choices&&m.choices.length>0&&m.choices[0].message&&m.choices[0].message.content){let g=m.choices[0].message.content.trim();return g.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(g=""),!a.includes(".")&&(g.endsWith("\u3002")||g.endsWith("."))&&(g=g.slice(0,-1)),{from:u,to:r,text:g}}else throw new Error("server response invalid: "+JSON.stringify(m))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,yu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,yu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await $(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:u,to:r,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};Jr.langMap=yu;var _3=Jr;var h0=ie+"CacheKey_";function Yr(e,t){let n=h0+e;return q.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),ui(this,ka)}},E0=eo;ka=new WeakMap;var y0=new E0;Object.freeze(y0);var Tu=class extends ae{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: -{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{r=s,n.apply(l,i)};s-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await $({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return k.debug("delete conversation res:",a),a}}async translate(n){return await Ei.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=Qr.get(u)||u,i=Qr.get(r)||r;if(this.accessToken=await F3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await $({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:_t()})});return k.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw k.debug("post chatgpt error:",c),await Zr(hi),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:d}=s;a(null,{from:l,to:c,text:d})},300,200);await Ei.enqueue(async()=>{let s="chatgpt"+_t(),l=q.runtime.connect({name:s}),c,d;l.onMessage.addListener(T=>{if(!(!T||T==="")){if(T==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{d=JSON.parse(T)}catch(p){k.debug("chatgpt json error",p,T);return}c=d?.conversation_id,d?.message?.author?.role==="assistant"&&i({from:r,to:o,text:d?.message?.content?.parts?.[0]})}});let m=Qr.get(r)||r,g=Qr.get(o)||o;if(this.accessToken=await F3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let v=this.prompt.replace(/{{to}}/g,g).replace(/{{text}}/g,u).replace(/{{from}}/g,m);$({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[v]}}],model:f,parent_message_id:_t()})}).catch(T=>{k.debug("chatgpt error",T),l.disconnect(),this.deleteConversation(c),a(T,{from:r,to:o,text:""})})})}};var r9=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],Ke={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},yi=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Ti=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=yi(t);if(a)return Array.isArray(n)?`${a}=${n.map(yi).sort().join(`&${a}=`)}`:`${a}=${yi(n)}`}).filter(t=>t).join("&"),Aa=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${Ke.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[Ke.tokenHeader]=t.sessionToken),u[Ke.dateHeader]=a,u[Ke.notSignBody]="",u[Ke.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[Ke.algorithmKey]=Ke.algorithm,u[Ke.signHeadersKey]="",u[Ke.signQueriesKey]=void 0,u[Ke.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[Ke.signQueriesKey]=Object.keys(u).sort().join(";"),u[Ke.signatureKey]=i,Ti(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[Ke.dateHeader]=n,t.sessionToken&&(this.request.headers[Ke.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[Ke.contentSha256Header]=await Xt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return Hr(await _n(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push(Ke.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` -`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Ti(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} +{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{r=s,n.apply(l,i)};s-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await $({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return v.debug("delete conversation res:",a),a}}async translate(n){return await y0.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=Qr.get(u)||u,i=Qr.get(r)||r;if(this.accessToken=await B3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await $({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:_t()})});return v.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw v.debug("post chatgpt error:",c),await Zr(b0),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:d}=s;a(null,{from:l,to:c,text:d})},300,200);await y0.enqueue(async()=>{let s="chatgpt"+_t(),l=q.runtime.connect({name:s}),c,d;l.onMessage.addListener(T=>{if(!(!T||T==="")){if(T==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{d=JSON.parse(T)}catch(p){v.debug("chatgpt json error",p,T);return}c=d?.conversation_id,d?.message?.author?.role==="assistant"&&i({from:r,to:o,text:d?.message?.content?.parts?.[0]})}});let m=Qr.get(r)||r,g=Qr.get(o)||o;if(this.accessToken=await B3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let w=this.prompt.replace(/{{to}}/g,g).replace(/{{text}}/g,u).replace(/{{from}}/g,m);$({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[w]}}],model:f,parent_message_id:_t()})}).catch(T=>{v.debug("chatgpt error",T),l.disconnect(),this.deleteConversation(c),a(T,{from:r,to:o,text:""})})})}};var d9=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],$e={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},T0=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},x0=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=T0(t);if(a)return Array.isArray(n)?`${a}=${n.map(T0).sort().join(`&${a}=`)}`:`${a}=${T0(n)}`}).filter(t=>t).join("&"),Aa=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${$e.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[$e.tokenHeader]=t.sessionToken),u[$e.dateHeader]=a,u[$e.notSignBody]="",u[$e.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[$e.algorithmKey]=$e.algorithm,u[$e.signHeadersKey]="",u[$e.signQueriesKey]=void 0,u[$e.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[$e.signQueriesKey]=Object.keys(u).sort().join(";"),u[$e.signatureKey]=i,x0(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[$e.dateHeader]=n,t.sessionToken&&(this.request.headers[$e.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[$e.contentSha256Header]=await Xt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return Hr(await _n(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push($e.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` +`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=x0(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} `),t.push(this.signedHeaders()),t.push(await this.hexEncodedBodyHash()),t.join(` `)}canonicalHeaders(){let t=[];Object.keys(this.request.headers).forEach(a=>{t.push([a,this.request.headers[a]])}),t.sort((a,u)=>a[0].toLowerCase(){let u=a[0].toLowerCase();if(this.isSignableHeader(u)){let r=a[1];if(typeof r>"u"||r===null||typeof r.toString!="function")throw new Error(`Header ${u} contains invalid value`);n.push(`${u}:${this.canonicalHeaderValues(r.toString())}`)}}),n.join(` -`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Xt(t)}async hexEncodedBodyHash(){return this.request.headers[Ke.contentSha256Header]?this.request.headers[Ke.contentSha256Header]:this.request.body?await this.hexEncodedHash(Ti(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return r9.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await _n(n,`${Ke.kDatePrefix}${t.secretKey}`),o=await _n(a,r),i=await _n(u,o);return _n(Ke.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,Ke.v4Identifier].join("/")}};var P3=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],xi=new Map(P3),o9=new Map(P3.map(([e,t])=>[t,e])),to=class extends ae{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Aa(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await $({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new Ze(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new Ze(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=xi.get(u),i={TargetLanguage:xi.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` -`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new Aa(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),d=await $({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(d.TranslationList){let m=d.TranslationList.map(f=>f.Translation),g=u;return d.TranslationList.length>0&&d.TranslationList[0].DetectedSourceLanguage&&(g=o9.get(d.TranslationList[0].DetectedSourceLanguage)||u),{text:m,from:g,to:r}}else if(d.ResponseMetadata&&d.ResponseMetadata.Error){let m=d.ResponseMetadata.Error;throw new Ze(m.Code,m.Message)}else if(d.ResponseMetaData&&d.ResponseMetaData.Error){let m=d.ResponseMetaData.Error;throw new Ze(m.Code,m.Message)}else throw new Error("response: "+JSON.stringify(d))}};to.langMap=xi;var M3=to;var _3=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Ci=new Map(_3),i9=new Map(_3.map(([e,t])=>[t,e])),Sa=class extends ae{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=Ci.get(u)||"detect",i=Ci.get(r)||r,l=await $({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,d=u;return l.detected_language&&(d=i9.get(l.detected_language)||u),{text:c,from:d,to:r}}else{let c=l.base_resp;throw new Ze(c.status_code.toString(),c.status_message)}}};Sa.langMap=Ci;var s9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wi=new Map(s9),Da=class extends ae{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await $({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:wi.get(u)||u,target_lang:wi.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Da.langMap=wi;var vi="https://{s}bing.com",I3=vi+"/translator",l9=vi+"/ttranslatev3",c9=vi+"/tspellcheckv3",no="bingGlobalConfig",j3=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],B3=new Map(j3),R3=new Map(j3.map(([e,t])=>[t,e])),O3=1e3,Qt,La;function ki(e,t){return e.replace("{s}",t?t+".":"")}async function d9(){if(!Qt){let n=await q.storage.local.get(no);return n&&(Qt=n[no]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Qt;return Date.now()-e>t}async function N3(){let e,t,n,a,u,r,o,i,s,l;try{let c=ki(I3,e),d=await $({retry:2,url:c,responseType:"raw"}),{body:m,headers:g,url:f}=d;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=g["set-cookie"],t=m.match(/IG:"([^"]+)"/)[1],n=m.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,s]=JSON.parse(m.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Qt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await q.storage.local.set({[no]:Qt}),Qt}function m9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Qt;return ki(e?c9:l9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Qt.count++:"")}function g9(e,t,n,a){let{token:u,key:r}=Qt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function z3(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>O3)throw new Error(`The supported maximum length of text is ${O3}. Please shorten the text.`);La||(La=N3()),await La,await d9()&&(La=N3(),await La),t=t||"auto",n=n||"zh-CN",t=B3.get(t)||t,n=B3.get(n)||n;let u=m9(!1),r=g9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:ki(I3,Qt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),s=u,l=i.toString(),c=await $({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Qt=null,La=null,await q.storage.local.remove(no),c.ShowCaptcha)throw new Error(` +`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Xt(t)}async hexEncodedBodyHash(){return this.request.headers[$e.contentSha256Header]?this.request.headers[$e.contentSha256Header]:this.request.body?await this.hexEncodedHash(x0(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return d9.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await _n(n,`${$e.kDatePrefix}${t.secretKey}`),o=await _n(a,r),i=await _n(u,o);return _n($e.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,$e.v4Identifier].join("/")}};var R3=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],C0=new Map(R3),m9=new Map(R3.map(([e,t])=>[t,e])),to=class extends ae{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Aa(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await $({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new Ze(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new Ze(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=C0.get(u),i={TargetLanguage:C0.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` +`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new Aa(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),d=await $({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(d.TranslationList){let m=d.TranslationList.map(f=>f.Translation),g=u;return d.TranslationList.length>0&&d.TranslationList[0].DetectedSourceLanguage&&(g=m9.get(d.TranslationList[0].DetectedSourceLanguage)||u),{text:m,from:g,to:r}}else if(d.ResponseMetadata&&d.ResponseMetadata.Error){let m=d.ResponseMetadata.Error;throw new Ze(m.Code,m.Message)}else if(d.ResponseMetaData&&d.ResponseMetaData.Error){let m=d.ResponseMetaData.Error;throw new Ze(m.Code,m.Message)}else throw new Error("response: "+JSON.stringify(d))}};to.langMap=C0;var O3=to;var N3=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],w0=new Map(N3),g9=new Map(N3.map(([e,t])=>[t,e])),Sa=class extends ae{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=w0.get(u)||"detect",i=w0.get(r)||r,l=await $({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,d=u;return l.detected_language&&(d=g9.get(l.detected_language)||u),{text:c,from:d,to:r}}else{let c=l.base_resp;throw new Ze(c.status_code.toString(),c.status_message)}}};Sa.langMap=w0;var p9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],v0=new Map(p9),Da=class extends ae{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await $({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:v0.get(u)||u,target_lang:v0.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Da.langMap=v0;var k0="https://{s}bing.com",U3=k0+"/translator",f9=k0+"/ttranslatev3",h9=k0+"/tspellcheckv3",no="bingGlobalConfig",W3=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],I3=new Map(W3),j3=new Map(W3.map(([e,t])=>[t,e])),z3=1e3,Qt,La;function A0(e,t){return e.replace("{s}",t?t+".":"")}async function b9(){if(!Qt){let n=await q.storage.local.get(no);return n&&(Qt=n[no]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Qt;return Date.now()-e>t}async function H3(){let e,t,n,a,u,r,o,i,s,l;try{let c=A0(U3,e),d=await $({retry:2,url:c,responseType:"raw"}),{body:m,headers:g,url:f}=d;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=g["set-cookie"],t=m.match(/IG:"([^"]+)"/)[1],n=m.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,s]=JSON.parse(m.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Qt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await q.storage.local.set({[no]:Qt}),Qt}function E9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Qt;return A0(e?h9:f9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Qt.count++:"")}function y9(e,t,n,a){let{token:u,key:r}=Qt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function q3(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>z3)throw new Error(`The supported maximum length of text is ${z3}. Please shorten the text.`);La||(La=H3()),await La,await b9()&&(La=H3(),await La),t=t||"auto",n=n||"zh-CN",t=I3.get(t)||t,n=I3.get(n)||n;let u=E9(!1),r=y9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:A0(U3,Qt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),s=u,l=i.toString(),c=await $({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Qt=null,La=null,await q.storage.local.remove(no),c.ShowCaptcha)throw new Error(` Sorry that bing translator seems to be asking for the captcha, Please take care not to request too frequently. The response code is ${c.StatusCode}. `);if(c.StatusCode===401)throw new Error(` Max count of translation exceeded. Please try it again later. The response code is 401. - `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let d=c[0].translations[0],m=c[0].detectedLanguage;return{text:d.text,from:R3.get(m.language),to:R3.get(d.to)}}function H3(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Qn=null,p9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Ai=new Map(p9),Fa=class extends ae{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Qn=null,await Zr(Ju)}async translate(n){let{text:a,from:u,to:r}=n;return a?await z3(a,u,r):{...n}}async init(){if(!Qn){Qn={};let n=await Yr(Ju);n&&(Qn=n)}await U3(Qn)}async translateList(n){let{from:a,to:u,text:r}=n,o=Ai.get(a)||"auto",i=Ai.get(u)||u;o==="auto"&&(o="");let s=await U3(Qn),l=[];for(let g of r)l.push({Text:g});let c=JSON.stringify(l),d=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,m=await $({url:d,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(m&&m.length>0&&m[0].translations&&m[0].translations.length>0)return{text:m.map(g=>g.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(m))}};Fa.langMap=Ai;async function U3(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return W3().catch(u=>{k.error(u)}),e}return W3()}async function W3(){let e=await bu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=H3(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return Qn=t,await Xr(Ju,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var q3=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Si=new Map(q3),f9=new Map(q3.map(([e,t])=>[t,e])),ao=class extends ae{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Si.get(s)||"auto",to:Si.get(l)||l,q:i,salt:a,appid:r,sign:Dn(r+i+a+o)}),d=new URL(u);d.search=c.toString();let m=await $({url:d.toString()});if(m.error_code)throw new Ze("API_SERVER_ERROR",m.error_msg);let{trans_result:g,from:f}=m,v=g.map(({dst:p})=>p);return{from:f9.get(f)||f,to:l,text:v.join(` -`)}}};ao.langMap=Si;var $3=ao;var h9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],uo=new Map(h9),ro=class extends ae{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!uo.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Je({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await $({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${uo.get(u)||"auto"}2${uo.get(r)}`})})).target,from:u,to:r}}};ro.langMap=uo;var K3=ro;var b9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],oo=new Map(b9),io=class extends ae{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!oo.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Je({text:a.join(" "),minLength:10}));let i=a;return{text:(await $({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${oo.get(u)||"auto"}2${oo.get(r)}`})})).target,from:u,to:r}}};io.langMap=oo;var G3=io;var V3=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Di=new Map(V3),E9=new Map(V3.map(([e,t])=>[t,e]));function y9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var so=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=T9(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+y9(a)+o+i+this.appSecret,l=await Xt(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Di.get(u)||"auto",to:Di.get(r)||r,sign:l,signType:"v3",curtime:i.toString()},d=new URLSearchParams(c),g=await $({url:"https://openapi.youdao.com/api",method:"POST",body:d.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!g.translation)throw new Error(JSON.stringify(g));let f=g.l,[v,T]=f.split("2");return{text:g.translation.join(` -`),from:E9.get(v),to:r}}};so.langMap=Di;function T9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var lo=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:Li.get(u)||"auto",to:Li.get(r)||r},i=new URLSearchParams(o),s=await $({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` -`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};lo.langMap=Li;var X3=lo;var x9={mock:va,mock2:va,google:bn,transmart:Zn,deepl:k3,volc:M3,volcAlpha:Sa,bing:Fa,tencent:Jn,tenAlpha:Yn,baidu:$3,caiyun:K3,cai:G3,openl:qr,youdao:J3,you:X3,d:Rn,dpro:Rn,deeplx:Da,niu:A3,azure:S3,openai:L3,chatgpt:Tu,papago:D3},On={};Object.keys(fn).forEach(e=>{On[e]={...fn[e],class:x9[e]}});function Z3(e,t){let n=zt;if(On[e]&&On[e].class&&On[e].class.langMap&&On[e].class.langMap.size>0){let a=On[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return zt}async function Pa(e,t){if(!e.text)return e;let n=await rn({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Ze("translateFailed","translate failed")}async function Fi(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new On[r].class(o,a,{translationService:r}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await a3(r,o),await i.init()}async function rn(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,s=u,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],d={sentences:Array(e.sentences.length)},m=e.sentences.length,g=-1;if(r.cache)for(let p of e.sentences){g++;let C=s;s==="openl"&&(C=s+"-"+l.codename||qr.DEFAULT_CODENAME);let M=null;try{M=await Iu(Ic({originalText:p.text,from:p.from,to:p.to,service:C}),1e3)}catch(L){k.warn("query cache DB error, but it's ok",L)}if(M){let L={...p,text:M.translatedText};d.sentences[g]=L,n&&n(null,L,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(m-f>0&&k.debug(`use ${m-f} sentences from cache`),!c.length)return d;let v;try{v=new On[s].class(l,o,{translationService:s}),await v.init()}catch(p){if(n)for(let C of c)n(p,null,C);throw p}let T=await v.multipleTranslate({sentences:c},l,(p,C,M)=>{if(n&&n(p,C,M),!p&&C&&!s.startsWith("mock")&&r.cache){let L=s;s==="openl"&&(L=s+"-"+l.codename||qr.DEFAULT_CODENAME),r.cache&&Iu(jc({translatedText:C.text,from:M.from,to:M.to,detectedFrom:C.from,key:Dn(M.text),service:L}),3e3).catch(A=>{k.warn("set cache DB error",A)})}});for(let p of T.sentences){let C=d.sentences.findIndex(M=>!M);if(C===-1)throw new Ze("translateFailed","can not match the result");d.sentences[C]=p}return d}var co=!1,C9=ne();function Q3(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function w9(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&ed(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Nn(r,tr)){if(u===!0)return!0;continue}if(xu(r.nodeName,t.inlineTags))return!0;if(!Pi(r,t))return!1}}return!0}function Mi(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(xu(e.nodeName,n)||Pi(e,t)){if(Nn(e,b4)||xu(e.nodeName,["BR"]))return!1;if(Nn(e,tr))return!0;if(Pi(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return w9(e,t)}else return Nn(e,tr);return!1}function ed(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Nn(e,h4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Nn(e,c4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||xu(e.nodeName,r))}function Ma(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!nd(a)&&a.length>=n}function td(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(nd(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function nd(e){for(let t=0;t127)return!1;return!0}function ad(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function ud(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function rd(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function od(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Nn(e,t,n=!1){return _i(e,t,"1",n)}function _i(e,t,n,a=!1){return co&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function _a(e){return(e.innerText||e.textContent||"").trim()}function Bi(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function mo(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Ye(e,t,n,a=!1){e.isContentEditable||(co&&!a?(e.dataset[ou]||(e.dataset[ou]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[ou]||(e.dataset[ou]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function go(e,t,n=!1){if(co&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function Ba(e,t,n=!1){return co&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function Pi(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!xu(e.nodeName,n)}function Ra(e){let{config:t}=e,n=nr;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ze(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Qe())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function In(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){k.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else k.warn("injectCSS failed, rootDocument does not have head node",e)}function Oa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(C9){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function xu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function id(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function sd(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||ed(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return k.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function ld(e,t,n){let a=0,u=(r,o,i,s)=>{if(++a>100||s===r)return r;let l=r.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return r;let c=l.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}var v9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function En(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function Ri(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(En(e,r))return!1;if(En(e,u)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!v9.includes(n.display):En(e,a)}var Bt=En;function ea(e){return!!e.shadowRoot}function jn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function Cu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function po(e){let t=nr;return e&&(t=e),t}async function on(e,t="",n=100){let a="auto";return t?await Je({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Ea()),a)}function fo(e,t){return Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function k9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${H}-loading-${n} notranslate">`}function wu(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",jt),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Ye(a,p4,t.toString());let u=k9(e);return a.innerHTML=De.sanitize(u),a}function Na(e,t){return e.querySelector(`[${P0}='${t}']`)}function cd(){document.querySelectorAll(`[${P0}]`).forEach(t=>{t.remove()})}function dd(){document.querySelectorAll(`.${jt}-error`).forEach(t=>{t.remove()})}function md(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Oa(n)&&t.push(n)}),t}function gd(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let s=u[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||od(i)||ad(i)||rd(i)||ud(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ma(r,n,a)}function sn(e){return e.nodeType===Node.ELEMENT_NODE}function pd(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function fd(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var A9=1e5;function zn(e){let{onParagraph:t,filterRule:n,id:a}=e;n=S9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,d={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},m=!1,g=null;function f(L){let{container:A,onFrame:y,onIgnoreElement:S,id:D}=L,x=document.createTreeWalker(A,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,w=>{let B=O(w);return B==NodeFilter.FILTER_ACCEPT?Lt.mark(w,D):B==NodeFilter.FILTER_REJECT,B}),F=A;if(O(F)===NodeFilter.FILTER_REJECT)return;for(Lt.mark(F,D);F;){if(o&&o.length>0){let{currentNode:w,isMatchedSelection:B}=v(x,F,o);if(w)F=w;else break;if(!B)continue}if(F.nodeType===Node.ELEMENT_NODE||F.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let w=F;if(w.nodeName==="IFRAME"){y&&y(w);break}w.nodeType===Node.ELEMENT_NODE&&(r&&Ni(w,r),l&&ji(w,l));let B=Ri(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(Bt(w,u)&&!B){p(w);let ge=null;for(;!(ge=x.nextSibling())&&x.parentNode(););F=ge;continue}let J=ea(w);(!hd(d,w)||B)&&(T(),w.childNodes.length>0&&C(d,w,w.immersiveTranslateComputedStyle||null)),J&&w.shadowRoot?.mode==="open"&&(B?y?.(w.shadowRoot):f({...L,container:w.shadowRoot})),w.nodeType===Node.ELEMENT_NODE&&w.nodeName==="PRE"&&i&&P9(w)}else if(F.nodeType===Node.TEXT_NODE)p(F);else throw new Error("should not be here");F=x.nextNode(),d.commonAncestorContainer&&F&&F.parentNode===d.commonAncestorContainer&&(d._currentStacks=[]),d.commonAncestorContainer&&F&&F.nodeType===Node.ELEMENT_NODE&&d._currentStacks.push(F)}function O(w){if(w.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(sn(w)){if(l){let N=Object.keys(l);if(N.length>0&&Bt(w,N))for(let pe of N){let Ne=l[pe];if(w.matches(pe)){let be=l[pe],vt=Object.keys(be);for(let ye of vt){let b=be[ye];w.getAttribute(ye)!==b&&(b===null?w.removeAttribute(ye):w.setAttribute(ye,b))}break}}}if(!L.force&&Lt.isMarked(w,D)||pd(w,D)||zi(w,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||w.nodeName==="IFRAME"&&!Oa(w))return NodeFilter.FILTER_REJECT;if(w.nodeType===Node.ELEMENT_NODE){let N=window.getComputedStyle(w);if(w.immersiveTranslateComputedStyle={display:N.display,whiteSpace:N.whiteSpace},Ii(w.immersiveTranslateComputedStyle))return S&&S(w),NodeFilter.FILTER_REJECT;let ge=Ri(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(Bt(w,u)&&ge)return NodeFilter.FILTER_REJECT}let{width:B,height:J}=w.getBoundingClientRect();return w.nodeName==="IMG"&&(B>48&&J>48?w.immersiveTranslateComputedStyle={display:"block"}:B>0&&J>0&&c!==!1&&(w.setAttribute("width",B),w.setAttribute("height",J))),!w.childNodes||w.childNodes&&w.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!d.isPreWhitespace&&(B>0&&B<4||J>0&&J<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(w.nodeType===Node.TEXT_NODE){let B=w.textContent?.trim();if(!B)return d.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let J=w.parentNode;if(J.getBoundingClientRect){let{width:N,height:ge}=J.getBoundingClientRect();if(N>0&&N<4||ge>0&&ge<4)return NodeFilter.FILTER_REJECT}return s>0&&B.length>=s&&Oi(w,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),d&&d.commonAncestorContainer&&d.flatNodes.length>0&&T();function v(L,A,y){let S=A.immersiveTranslateComputedStyle||null;if(g){if(!g.contains(A))if(m=!1,A&&A.nodeType===Node.ELEMENT_NODE)if(ho(A,y))m=!0,g=A,T(),C(d,g,S);else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m}}else if(A&&A.nodeType===Node.ELEMENT_NODE)if(ho(A,y))m=!0,g=A,T(),C(d,g,S);else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};return{currentNode:A,isMatchedSelection:!0}}function T(){let L=F9(d,a);L&&t&&t(L),bd(d)}function p(L){if(!hd(d,L)){T(),bd(d);let A=L.parentNode;A&&C(d,A,A.computedStyle)}d.flatNodes.push(L)}function C(L,A,y){L.commonAncestorContainer=A;let S=M(y);L.isPreWhitespace=S}function M(L){return L&&L.whiteSpace&&L.whiteSpace.startsWith("pre")||L&&L.whiteSpace==="break-spaces"||!1}}function hd(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=ea(t));let a=L9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function S9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function D9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function Ni(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function L9(e){return e&&e._currentStacks?e._currentStacks.some(t=>ea(t)):!1}function F9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(m=>m.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=M9(n,a);r||(r=a);let o=[];for(let m of n){let g=D9(e,r,m);g&&(o.includes(g)||o.push(g))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,d=0;for(;c&&(l.push(c),c!==s);){if(d++,d>A9){k.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function bd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function Ii(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var Lt={_marked_key:"immersive_translate_walked",isMarked(e,t){return _i(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return go(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return Ye(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=Ba(e,"markWalk")||"";return Ye(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||ea(e)):!1}};function P9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=De.sanitize(n)}function M9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function Oi(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",s=n[r+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&Oi(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),s=document.createElement("br");i.parentNode?.insertBefore(s,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=Q3(e,[a]);for(let i of o)for(let s of r){let l=u[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function yd(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let d of l){let m=s[d];if(d==="translate"&&m==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||_9(c,u,r)||!td(f,n,a))continue}c.getAttribute(d)!==m&&(m===null?c.removeAttribute(d):c.setAttribute(d,m))}}}function ji(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function zi(e,t){return Bt(e,t.excludeSelectors||[])?Bt(e,t.selectors||[])?!1:!Bt(e,t.stayOriginalSelectors||[]):!1}function ho(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Bt(e,t.concat(n))}function _9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ma(r,t,n))return!0}}return!1}var Td=["*://*/*","*","*://*"],Cd="immersive-translate-wildcard-placeholder.com";function Hi(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>Td.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===r)return!0;if(Td.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===r:R9(u,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let T=i.split("://");l=T[0],l==="*"&&T.length>1&&(l="*",i="https://"+T[1])}else l="*",i="https://"+i;let d=i.replace(/\*/g,Cd),m;try{m=new URL(d)}catch{return k.debug("invalid match pattern",d,"raw match value:",c),!1}let g=m.hostname,f=m.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let v=B9(l+":",xd(g),xd(f));if(v){let T=new URL(u);return T.port="",v.test(T.href)}else return!1}});if(o)return o}return null}function xd(e){return e.replaceAll(Cd,"*")}function B9(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Wt(e,t){return Hi(e,t)!==null}function R9(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}async function qt(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:d,targetLanguage:m,sourceLanguageUrlPattern:g,immediateTranslationPattern:f}=n,v=Ia(t,o),T=Ia(t,f),p=i,C=Object.keys(s);for(let Q of C){let Te=s[Q];if(Ia(t,Te)){p=Q;break}}let M=l,L=Object.keys(c);for(let Q of L){let Te=c[Q];if(Te&&Ia(t,Te)){M=Q;break}}let A=Ia(t,d),y=wd(t,d);y||(y=Wt(t,S4)),y||(y=Wt(t,n.blockUrls));let S=wd(t,n.inputTranslationUrlPattern);S||(S=Wt(t,n.inputTranslationBlockUrls));let D=Wt(t,n.mutationBlockUrls),x=Object.keys(g),F={};for(let Q of x){let Te=g[Q];if(Te&&Te.matches)for(let Z of Te.matches)F[Z]=Q}let O=Object.keys(F),w=Hi(t,O);w&&(r=F[w]??"auto",F[w]&&F[w]!=="auto"&&Ut(F[w]));let B=m||"zh-CN",J=u.hostname,N=await Xt(J),ge=u.pathname+u.search+u.hash,pe=await Xt(ge),Ne=`https://${N}.com/${pe}`,be=await du(),vt=await sc(),ye=n.translationStartMode;ye==="dynamic"&&T&&(ye="immediate");let b={targetLanguage:B,config:n,translationService:p,isTranslateUrl:A,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:y,isMutationTranslationExcludeUrl:D,isInputTranslationExcludeUrl:S,rule:n.generalRule,url:t,encryptedUrl:Ne,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:v,cache:n.cache,translationTheme:M},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:v,cache:n.cache,translationTheme:M},localConfig:be};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(Q=>!b.config.generalRule.bodyTranslateTags.includes(Q)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(Q=>Q!==".btn"));let I=n.translationServices[b.translationService]||{};I.immediateTranslationTextCount!==void 0&&O9(I.immediateTranslationTextCount)&&I.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=I.immediateTranslationTextCount),b.translationService==="deepl"&&I&&I.authKey&&I.authKey.startsWith("immersive_")&&I.immediateTranslationTextCountForImmersiveDeepl!==void 0&&I.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=I.immediateTranslationTextCountForImmersiveDeepl),I&&I.translationDebounce&&typeof I.translationDebounce=="number"&&(b.state.translationDebounce=I.translationDebounce);let G=vt.immediateTranslationTextCount;n.immediateTranslationTextCount!==G&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let le=n.rules,V;globalThis.PDFViewerApplication?V=le.find(Q=>Q.isPdf):globalThis.immersiveTranslateEbookViewer?V=le.find(Q=>Q.isEbook):globalThis.immersiveTranslateEbookBuilder?V=le.find(Q=>Q.isEbookBuilder):V=le.find(Q=>Ia(t,Q)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),V&&V.isEbookBuilder&&(b.state.translationStartMode="immediate");let Ae=n.generalRule;if(V&&(b.rule=pr(Ae,V)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(Q=>!b.rule.bodyTranslateTags.includes(Q)&&!b.rule.forceTranslateTags.includes(Q))),b.rule.mainFrameSelector){let Q=document.querySelector(b.rule.mainFrameSelector);Q&&(b.mainFrame=Q)}return b}function Ia(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&Wt(e,a)?!1:n&&n.length>0&&Wt(e,n)?!0:r&&r.length>0&&mo(r)?!1:!!(u&&u.length>0&&mo(u))}function wd(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Wt(e,n)||a&&a.length>0&&mo(a))}function O9(e){return typeof e=="number"}function vd(e,t,n,a){let u=t,r=w4[u]||[],o="";e&&r&&r.length>0&&r.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let d=n[c];if(["borderRadius"].includes(c)&&(d+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${d}; -`,t==="marker"&&c==="backgroundColor"&&typeof d=="string"){let{r:m,g,b:f}=id(d);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${m}, ${g}, ${f}; + `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let d=c[0].translations[0],m=c[0].detectedLanguage;return{text:d.text,from:j3.get(m.language),to:j3.get(d.to)}}function $3(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Qn=null,T9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],S0=new Map(T9),Fa=class extends ae{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Qn=null,await Zr(Ju)}async translate(n){let{text:a,from:u,to:r}=n;return a?await q3(a,u,r):{...n}}async init(){if(!Qn){Qn={};let n=await Yr(Ju);n&&(Qn=n)}await K3(Qn)}async translateList(n){let{from:a,to:u,text:r}=n,o=S0.get(a)||"auto",i=S0.get(u)||u;o==="auto"&&(o="");let s=await K3(Qn),l=[];for(let g of r)l.push({Text:g});let c=JSON.stringify(l),d=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,m=await $({url:d,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(m&&m.length>0&&m[0].translations&&m[0].translations.length>0)return{text:m.map(g=>g.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(m))}};Fa.langMap=S0;async function K3(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return G3().catch(u=>{v.error(u)}),e}return G3()}async function G3(){let e=await bu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=$3(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return Qn=t,await Xr(Ju,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var V3=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],D0=new Map(V3),x9=new Map(V3.map(([e,t])=>[t,e])),ao=class extends ae{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:D0.get(s)||"auto",to:D0.get(l)||l,q:i,salt:a,appid:r,sign:Dn(r+i+a+o)}),d=new URL(u);d.search=c.toString();let m=await $({url:d.toString()});if(m.error_code)throw new Ze("API_SERVER_ERROR",m.error_msg);let{trans_result:g,from:f}=m,w=g.map(({dst:p})=>p);return{from:x9.get(f)||f,to:l,text:w.join(` +`)}}};ao.langMap=D0;var J3=ao;var C9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],uo=new Map(C9),ro=class extends ae{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!uo.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ve({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await $({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${uo.get(u)||"auto"}2${uo.get(r)}`})})).target,from:u,to:r}}};ro.langMap=uo;var Y3=ro;var w9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],oo=new Map(w9),io=class extends ae{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!oo.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ve({text:a.join(" "),minLength:10}));let i=a;return{text:(await $({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${oo.get(u)||"auto"}2${oo.get(r)}`})})).target,from:u,to:r}}};io.langMap=oo;var X3=io;var Z3=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],L0=new Map(Z3),v9=new Map(Z3.map(([e,t])=>[t,e]));function k9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var so=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=A9(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+k9(a)+o+i+this.appSecret,l=await Xt(s),c={q:a,appKey:this.appId,salt:o.toString(),from:L0.get(u)||"auto",to:L0.get(r)||r,sign:l,signType:"v3",curtime:i.toString()},d=new URLSearchParams(c),g=await $({url:"https://openapi.youdao.com/api",method:"POST",body:d.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!g.translation)throw new Error(JSON.stringify(g));let f=g.l,[w,T]=f.split("2");return{text:g.translation.join(` +`),from:v9.get(w),to:r}}};so.langMap=L0;function A9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var lo=class extends ae{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:F0.get(u)||"auto",to:F0.get(r)||r},i=new URLSearchParams(o),s=await $({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` +`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};lo.langMap=F0;var td=lo;var S9={mock:va,mock2:va,google:bn,transmart:Zn,deepl:L3,volc:O3,volcAlpha:Sa,bing:Fa,tencent:Jn,tenAlpha:Yn,baidu:J3,caiyun:Y3,cai:X3,openl:qr,youdao:Q3,you:td,d:Rn,dpro:Rn,deeplx:Da,niu:F3,azure:P3,openai:_3,chatgpt:Tu,papago:M3},On={};Object.keys(fn).forEach(e=>{On[e]={...fn[e],class:S9[e]}});function nd(e,t){let n=zt;if(On[e]&&On[e].class&&On[e].class.langMap&&On[e].class.langMap.size>0){let a=On[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return zt}async function Pa(e,t){if(!e.text)return e;let n=await on({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Ze("translateFailed","translate failed")}async function P0(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new On[r].class(o,a,{translationService:r}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await i3(r,o),await i.init()}async function on(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,s=u,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],d={sentences:Array(e.sentences.length)},m=e.sentences.length,g=-1;if(r.cache)for(let p of e.sentences){g++;let C=s;s==="openl"&&(C=s+"-"+l.codename||qr.DEFAULT_CODENAME);let M=null;try{M=await Iu(Uc({originalText:p.text,from:p.from,to:p.to,service:C}),1e3)}catch(L){v.warn("query cache DB error, but it's ok",L)}if(M){let L={...p,text:M.translatedText};d.sentences[g]=L,n&&n(null,L,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(m-f>0&&v.debug(`use ${m-f} sentences from cache`),!c.length)return d;let w;try{w=new On[s].class(l,o,{translationService:s}),await w.init()}catch(p){if(n)for(let C of c)n(p,null,C);throw p}let T=await w.multipleTranslate({sentences:c},l,(p,C,M)=>{if(n&&n(p,C,M),!p&&C&&!s.startsWith("mock")&&r.cache){let L=s;s==="openl"&&(L=s+"-"+l.codename||qr.DEFAULT_CODENAME),r.cache&&Iu(Wc({translatedText:C.text,from:M.from,to:M.to,detectedFrom:C.from,key:Dn(M.text),service:L}),3e3).catch(A=>{v.warn("set cache DB error",A)})}});for(let p of T.sentences){let C=d.sentences.findIndex(M=>!M);if(C===-1)throw new Ze("translateFailed","can not match the result");d.sentences[C]=p}return d}var co=!1,D9=ne();function ad(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function L9(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&ud(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Nn(r,tr)){if(u===!0)return!0;continue}if(xu(r.nodeName,t.inlineTags))return!0;if(!M0(r,t))return!1}}return!0}function _0(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(xu(e.nodeName,n)||M0(e,t)){if(Nn(e,x4)||xu(e.nodeName,["BR"]))return!1;if(Nn(e,tr))return!0;if(M0(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return L9(e,t)}else return Nn(e,tr);return!1}function ud(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Nn(e,T4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Nn(e,p4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||xu(e.nodeName,r))}function Ma(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!od(a)&&a.length>=n}function rd(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(od(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function od(e){for(let t=0;t127)return!1;return!0}function id(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function sd(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function ld(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function cd(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Nn(e,t,n=!1){return B0(e,t,"1",n)}function B0(e,t,n,a=!1){return co&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function _a(e){return(e.innerText||e.textContent||"").trim()}function R0(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function mo(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Ye(e,t,n,a=!1){e.isContentEditable||(co&&!a?(e.dataset[ou]||(e.dataset[ou]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[ou]||(e.dataset[ou]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function go(e,t,n=!1){if(co&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function Ba(e,t,n=!1){return co&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function M0(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!xu(e.nodeName,n)}function Ra(e){let{config:t}=e,n=nr;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ze(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Qe())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function In(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){v.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else v.warn("injectCSS failed, rootDocument does not have head node",e)}function Oa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(D9){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function xu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function dd(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function md(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||ud(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return v.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function gd(e,t,n){let a=0,u=(r,o,i,s)=>{if(++a>100||s===r)return r;let l=r.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return r;let c=l.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}var F9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function En(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function O0(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(En(e,r))return!1;if(En(e,u)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!F9.includes(n.display):En(e,a)}var Bt=En;function ea(e){return!!e.shadowRoot}function jn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function Cu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function po(e){let t=nr;return e&&(t=e),t}async function en(e,t="",n=100){let a="auto";return t?await Ve({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Ea()),a)}function fo(e,t){return Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function P9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${z}-loading-${n} notranslate">`}function wu(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",jt),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Ye(a,E4,t.toString());let u=P9(e);return a.innerHTML=Ce.sanitize(u),a}function Na(e,t){return e.querySelector(`[${Mi}='${t}']`)}function pd(){document.querySelectorAll(`[${Mi}]`).forEach(t=>{t.remove()})}function fd(){document.querySelectorAll(`.${jt}-error`).forEach(t=>{t.remove()})}function hd(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Oa(n)&&t.push(n)}),t}function bd(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let s=u[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||cd(i)||id(i)||ld(i)||sd(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ma(r,n,a)}function sn(e){return e.nodeType===Node.ELEMENT_NODE}function Ed(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function yd(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var M9=1e5;function zn(e){let{onParagraph:t,filterRule:n,id:a}=e;n=_9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,d={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},m=!1,g=null;function f(L){let{container:A,onFrame:y,onIgnoreElement:S,id:D}=L,x=document.createTreeWalker(A,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,k=>{let B=O(k);return B==NodeFilter.FILTER_ACCEPT?Lt.mark(k,D):B==NodeFilter.FILTER_REJECT,B}),F=A;if(O(F)===NodeFilter.FILTER_REJECT)return;for(Lt.mark(F,D);F;){if(o&&o.length>0){let{currentNode:k,isMatchedSelection:B}=w(x,F,o);if(k)F=k;else break;if(!B)continue}if(F.nodeType===Node.ELEMENT_NODE||F.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let k=F;if(k.nodeName==="IFRAME"){y&&y(k);break}k.nodeType===Node.ELEMENT_NODE&&(r&&I0(k,r),l&&z0(k,l));let B=O0(k,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},k.immersiveTranslateComputedStyle||null);if(Bt(k,u)&&!B){p(k);let ge=null;for(;!(ge=x.nextSibling())&&x.parentNode(););F=ge;continue}let J=ea(k);(!Td(d,k)||B)&&(T(),k.childNodes.length>0&&C(d,k,k.immersiveTranslateComputedStyle||null)),J&&k.shadowRoot?.mode==="open"&&(B?y?.(k.shadowRoot):f({...L,container:k.shadowRoot})),k.nodeType===Node.ELEMENT_NODE&&k.nodeName==="PRE"&&i&&N9(k)}else if(F.nodeType===Node.TEXT_NODE)p(F);else throw new Error("should not be here");F=x.nextNode(),d.commonAncestorContainer&&F&&F.parentNode===d.commonAncestorContainer&&(d._currentStacks=[]),d.commonAncestorContainer&&F&&F.nodeType===Node.ELEMENT_NODE&&d._currentStacks.push(F)}function O(k){if(k.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(sn(k)){if(l){let N=Object.keys(l);if(N.length>0&&Bt(k,N))for(let pe of N){let Ne=l[pe];if(k.matches(pe)){let be=l[pe],vt=Object.keys(be);for(let ye of vt){let b=be[ye];k.getAttribute(ye)!==b&&(b===null?k.removeAttribute(ye):k.setAttribute(ye,b))}break}}}if(!L.force&&Lt.isMarked(k,D)||Ed(k,D)||H0(k,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||k.nodeName==="IFRAME"&&!Oa(k))return NodeFilter.FILTER_REJECT;if(k.nodeType===Node.ELEMENT_NODE){let N=window.getComputedStyle(k);if(k.immersiveTranslateComputedStyle={display:N.display,whiteSpace:N.whiteSpace},j0(k.immersiveTranslateComputedStyle))return S&&S(k),NodeFilter.FILTER_REJECT;let ge=O0(k,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},k.immersiveTranslateComputedStyle||null);if(Bt(k,u)&&ge)return NodeFilter.FILTER_REJECT}let{width:B,height:J}=k.getBoundingClientRect();return k.nodeName==="IMG"&&(B>48&&J>48?k.immersiveTranslateComputedStyle={display:"block"}:B>0&&J>0&&c!==!1&&(k.setAttribute("width",B),k.setAttribute("height",J))),!k.childNodes||k.childNodes&&k.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!d.isPreWhitespace&&(B>0&&B<4||J>0&&J<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(k.nodeType===Node.TEXT_NODE){let B=k.textContent?.trim();if(!B)return d.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let J=k.parentNode;if(J.getBoundingClientRect){let{width:N,height:ge}=J.getBoundingClientRect();if(N>0&&N<4||ge>0&&ge<4)return NodeFilter.FILTER_REJECT}return s>0&&B.length>=s&&N0(k,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),d&&d.commonAncestorContainer&&d.flatNodes.length>0&&T();function w(L,A,y){let S=A.immersiveTranslateComputedStyle||null;if(g){if(!g.contains(A))if(m=!1,A&&A.nodeType===Node.ELEMENT_NODE)if(ho(A,y))m=!0,g=A,T(),C(d,g,S);else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m}}else if(A&&A.nodeType===Node.ELEMENT_NODE)if(ho(A,y))m=!0,g=A,T(),C(d,g,S);else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=L.nextNode(),{currentNode:A,isMatchedSelection:m};return{currentNode:A,isMatchedSelection:!0}}function T(){let L=O9(d,a);L&&t&&t(L),xd(d)}function p(L){if(!Td(d,L)){T(),xd(d);let A=L.parentNode;A&&C(d,A,A.computedStyle)}d.flatNodes.push(L)}function C(L,A,y){L.commonAncestorContainer=A;let S=M(y);L.isPreWhitespace=S}function M(L){return L&&L.whiteSpace&&L.whiteSpace.startsWith("pre")||L&&L.whiteSpace==="break-spaces"||!1}}function Td(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=ea(t));let a=R9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function _9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function B9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function I0(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function R9(e){return e&&e._currentStacks?e._currentStacks.some(t=>ea(t)):!1}function O9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(m=>m.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=I9(n,a);r||(r=a);let o=[];for(let m of n){let g=B9(e,r,m);g&&(o.includes(g)||o.push(g))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,d=0;for(;c&&(l.push(c),c!==s);){if(d++,d>M9){v.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function xd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function j0(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var Lt={_marked_key:"immersive_translate_walked",isMarked(e,t){return B0(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return go(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return Ye(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=Ba(e,"markWalk")||"";return Ye(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||ea(e)):!1}};function N9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=Ce.sanitize(n)}function I9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function N0(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",s=n[r+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&N0(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),s=document.createElement("br");i.parentNode?.insertBefore(s,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=ad(e,[a]);for(let i of o)for(let s of r){let l=u[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function wd(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let d of l){let m=s[d];if(d==="translate"&&m==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||j9(c,u,r)||!rd(f,n,a))continue}c.getAttribute(d)!==m&&(m===null?c.removeAttribute(d):c.setAttribute(d,m))}}}function z0(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function H0(e,t){return Bt(e,t.excludeSelectors||[])?Bt(e,t.selectors||[])?!1:!Bt(e,t.stayOriginalSelectors||[]):!1}function ho(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Bt(e,t.concat(n))}function j9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ma(r,t,n))return!0}}return!1}var vd=["*://*/*","*","*://*"],Ad="immersive-translate-wildcard-placeholder.com";function U0(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>vd.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===r)return!0;if(vd.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===r:H9(u,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let T=i.split("://");l=T[0],l==="*"&&T.length>1&&(l="*",i="https://"+T[1])}else l="*",i="https://"+i;let d=i.replace(/\*/g,Ad),m;try{m=new URL(d)}catch{return v.debug("invalid match pattern",d,"raw match value:",c),!1}let g=m.hostname,f=m.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let w=z9(l+":",kd(g),kd(f));if(w){let T=new URL(u);return T.port="",w.test(T.href)}else return!1}});if(o)return o}return null}function kd(e){return e.replaceAll(Ad,"*")}function z9(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Wt(e,t){return U0(e,t)!==null}function H9(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}async function qt(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:d,targetLanguage:m,sourceLanguageUrlPattern:g,immediateTranslationPattern:f}=n,w=Ia(t,o),T=Ia(t,f),p=i,C=Object.keys(s);for(let Q of C){let Te=s[Q];if(Ia(t,Te)){p=Q;break}}let M=l,L=Object.keys(c);for(let Q of L){let Te=c[Q];if(Te&&Ia(t,Te)){M=Q;break}}let A=Ia(t,d),y=Sd(t,d);y||(y=Wt(t,P4)),y||(y=Wt(t,n.blockUrls));let S=Sd(t,n.inputTranslationUrlPattern);S||(S=Wt(t,n.inputTranslationBlockUrls));let D=Wt(t,n.mutationBlockUrls),x=Object.keys(g),F={};for(let Q of x){let Te=g[Q];if(Te&&Te.matches)for(let Z of Te.matches)F[Z]=Q}let O=Object.keys(F),k=U0(t,O);k&&(r=F[k]??"auto",F[k]&&F[k]!=="auto"&&Ut(F[k]));let B=m||"zh-CN",J=u.hostname,N=await Xt(J),ge=u.pathname+u.search+u.hash,pe=await Xt(ge),Ne=`https://${N}.com/${pe}`,be=await du(),vt=await mc(),ye=n.translationStartMode;ye==="dynamic"&&T&&(ye="immediate");let b={targetLanguage:B,config:n,translationService:p,isTranslateUrl:A,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:y,isMutationTranslationExcludeUrl:D,isInputTranslationExcludeUrl:S,rule:n.generalRule,url:t,encryptedUrl:Ne,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:w,cache:n.cache,translationTheme:M},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:w,cache:n.cache,translationTheme:M},localConfig:be};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(Q=>!b.config.generalRule.bodyTranslateTags.includes(Q)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(Q=>Q!==".btn"));let I=n.translationServices[b.translationService]||{};I.immediateTranslationTextCount!==void 0&&U9(I.immediateTranslationTextCount)&&I.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=I.immediateTranslationTextCount),b.translationService==="deepl"&&I&&I.authKey&&I.authKey.startsWith("immersive_")&&I.immediateTranslationTextCountForImmersiveDeepl!==void 0&&I.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=I.immediateTranslationTextCountForImmersiveDeepl),I&&I.translationDebounce&&typeof I.translationDebounce=="number"&&(b.state.translationDebounce=I.translationDebounce);let G=vt.immediateTranslationTextCount;n.immediateTranslationTextCount!==G&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let le=n.rules,V;globalThis.PDFViewerApplication?V=le.find(Q=>Q.isPdf):globalThis.immersiveTranslateEbookViewer?V=le.find(Q=>Q.isEbook):globalThis.immersiveTranslateEbookBuilder?V=le.find(Q=>Q.isEbookBuilder):V=le.find(Q=>Ia(t,Q)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),V&&V.isEbookBuilder&&(b.state.translationStartMode="immediate");let Se=n.generalRule;if(V&&(b.rule=pr(Se,V)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(Q=>!b.rule.bodyTranslateTags.includes(Q)&&!b.rule.forceTranslateTags.includes(Q))),b.rule.mainFrameSelector){let Q=document.querySelector(b.rule.mainFrameSelector);Q&&(b.mainFrame=Q)}return b}function Ia(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&Wt(e,a)?!1:n&&n.length>0&&Wt(e,n)?!0:r&&r.length>0&&mo(r)?!1:!!(u&&u.length>0&&mo(u))}function Sd(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Wt(e,n)||a&&a.length>0&&mo(a))}function U9(e){return typeof e=="number"}function Dd(e,t,n,a){let u=t,r=S4[u]||[],o="";e&&r&&r.length>0&&r.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let d=n[c];if(["borderRadius"].includes(c)&&(d+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${d}; +`,t==="marker"&&c==="backgroundColor"&&typeof d=="string"){let{r:m,g,b:f}=dd(d);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${m}, ${g}, ${f}; `}}});let i="";if(n&&n.textColor){let l=n.textColor;i+=` .immersive-translate-target-translation-theme-${u}-inner{color: ${l};} `}if(n&&n.zoom){let l=n.zoom;i+=` .immersive-translate-target-translation-theme-${u}-inner{font-size: max(13px, ${l}%);} `}let s="";o&&(s=`:root { ${o}} -`),i&&(s+=i),s?In(e,s,"immersive-translate-user-custom-style"):a&&In(e,"","immersive-translate-user-custom-style")}function ja(e,t){let a=lt().IMMERSIVE_TRANSLATE_INJECTED_CSS;In(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};vd(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` +`),i&&(s+=i),s?In(e,s,"immersive-translate-user-custom-style"):a&&In(e,"","immersive-translate-user-custom-style")}function ja(e,t){let a=lt().IMMERSIVE_TRANSLATE_INJECTED_CSS;In(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};Dd(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` `)),t.rule.additionalInjectedCss&&t.rule.additionalInjectedCss.length>0&&(i+=` `+t.rule.additionalInjectedCss.join(` -`))),i&&In(e,i,"immersive-translate-dynamic-injected-css")}async function kd(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Je({text:_a(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=Kn(document.documentElement.lang)),e}function Ad(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function Ui(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=N9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let d=n.substring(s+i.length,c),m=Object.keys(o).filter(g=>g!=="tag").map(g=>`${g}="${o[g]}"`).join(" ");n=n.replace(`${i}${d}`,`<${l} ${m}>${d}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function vu(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function ta(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=vu(e,n,t);return r===t&&n!==a&&(r=vu(e,a,t)),Ui(r,u)}function N9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function bo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function Wi(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(C4),e&&(r.push(`${H}-target-translation-theme-${e}`),t?r.push(`${_0}-theme-${e}`):r.push(`${M0}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(_0):(r.push(M0),u&&r.push(x4)),r}function qi(e){let t=["notranslate",y4];return e&&t.push(`${H}-target-translation-theme-${e}-inner`),t}function Sd(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,d=Ra(n),m="afterend",g=d[0].replace(/\//g,"/");g=g.replace(/"/g,'\\"'),g=g.replace(//g,">");let f=d[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let v=`${g}(\\d+)${f}`,T=new RegExp(v,"g"),p=bo(s);p=De.sanitize(p),o.length>0&&(p=p.replace(T,A=>{let y=p.indexOf(A),S=p[y-1]===" ",D=p[y+A.length]===" ",x=A.slice(d[0].length,-d[1].length),F=Number(x);if(isNaN(F))return A;let O=o[Number(F)];if(O&&O.type==="element"){let w=O.value.outerHTML;return S||(w=" "+w),D||(w=w+" "),w}else k.error("variable type not supported",O,A);return A}));let C=Wi(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&C.push(T4);let M=qi(r),L="";return a.translationBlockStyle&&(L=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${L} class="${C.join(" ")}" ${nn}="1"><${a.targetWrapperTag} class="${M.join(" ")}" ${nn}="1">${p}`,e.inline||(l==="smart"?p=`
${p}`:p=`${l}${p}`),e.inline&&(l!=="smart"?p=`${l}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${nn}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:m}}function Eo(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let s=0;s2&&(T=`<${u[2]}${v}>`),i[v]=l,o.push({text:T,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";d&&(f=jn($i(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Bt(l,a)){let v=Object.keys(i).length,T=`${u[0]}${v}${u[1]}`;u.length>2&&(T=`<${u[2]}${v}>`),i[v]=l;let p=Ki(o).endsWith(" ")?" ":"",C=jn(l.innerText||l.textContent),M=jn(l.nextSibling).startsWith(" ")?" ":"",L=Cu(p+C+M),A=L[0]+T+L[1];if(p===" ")A=A.trimStart();else if(!A.startsWith(" ")){let y=Cu(l.previousSibling)[1];y===""&&(y=" "),A=y+A}o.push({text:A,type:"variable"})}else{let f=Ki(o).endsWith(" ")?" ":"",v=jn(l.innerText||l.textContent);d&&(v=jn($i(l)));let T=jn(l.nextSibling).startsWith(" ")?" ":"",p=Cu(f+v+T),C=p[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+p[1];if(f===" ")C=C.trimStart();else{let M=Cu(l.previousSibling)[1];M===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(M=" "),C=M+C}o.push({text:C,type:"text"})}else{let f=Ki(o).endsWith(" ")?" ":"",v="";l.textContent&&(v=jn($i(l))),f===" "&&(v=v.trimStart()),o.push({text:v,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(d=o[l-1].text),l2){let c=l[2];return I9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=Sd(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function $i(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function I9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:d}=e;o=o||[];let m=bo(e.targetText);m=De.sanitize(m);let g=m,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),v=new RegExp(`<${t}(\\d+)>`);o.length>0&&(g=g.replace(f,M=>{let L=g.indexOf(M),A=g[L-1]===" ",y=g[L+M.length]===" ",S=M.match(v);if(!S)return M;let D=S[1],x=Number(D);if(isNaN(x))return M;let F=o[Number(x)];if(F&&F.type==="element"){let O=F.value.outerHTML;return A||(O=" "+O),y||(O=O+" "),O}else if(F&&F.type==="text"){let O=F.value;return A||(O=" "+O),y||(O=O+" "),O}else k.error("variable type not supported",F,M);return M}));let T=Wi(l,n,a||[],i,c),p=qi(l),C="";return d&&(C=`style="${d}"`),g=`<${u} ${C} class="${T.join(" ")}" ${nn}="1"><${u} class="${p.join(" ")}" ${nn}="1">${g}`,n||(r==="smart"?g=`
${g}`:g=`${r}${g}`),n&&(r!=="smart"?g=`${r}${g}`:g=`<${u} class="notranslate" ${nn}="1"> ${g}`),s==="smart"?g=`${g}`:g=`${g}${s}`,{html:g,position:"afterend"}}function Ki(e){let t=e[e.length-1];return t?t.text:""}function $t(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var j9={sanitize:e=>e};function To(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:$t(e.ctx),onParagraph:ku.bind(null,e),onFrame:n=>{Vi(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),ca&&Ye(t,"consumeContainer",e.id))}function Vi(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Oa(t))return;k.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ha(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else k.debug("onFrame shadowRoot",t.host),Ha(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ha(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=$t(t.ctx),r=0;if(s(t,e,n))return;if(sn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(sn(c)&&(a&&Ni(c,a),u&&ji(c,u)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(Lt.mark(l.currentNode,t.id);l.nextNode();){Lt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let d=l.currentNode;if(Lt.mark(l.currentNode,t.id),i(d)){o(d);continue}else break}if(!l.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){Lt.clearMark(l),r++,t.immediateTranslateCapacity>=0?To(t,l):(ca&&Ye(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return Vi(t,l.shadowRoot,n),!1;if(c==="iframe")return Vi(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let d=t.containerRule;if(d.selectors&&d.selectors?.length>0)return ho(l,d.selectors);if(d.pageHeight){let m=l.scrollHeight;if(m>0&&m0)return!0}return!1}function s(l,c,d){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||d&&Lt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let g=$t(l.ctx);return!!zi(c,{excludeSelectors:g.excludeSelectors,selectors:g.selectors,stayOriginalSelectors:g.stayOriginalSelectors})}}function Ji(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!Lt.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(yo(e.rootNodes),Ld(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=Gi(e.rootNodes);yo(e.rootNodes),za(o,a,e.targetNodes||[]),Ld(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];za(o,a,e.rootNodes||[]),Fd(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=Gi(e.rootNodes);za(o,a,e.targetNodes||[]),Fd(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=Gi(e.targetNodes);yo(e.targetNodes),za(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&yo(e.targetNodes)}catch(o){k.error(o)}}}function Ld(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Ye(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function Fd(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=Ba(a,"immersiveTranslateClassBak");go(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function Gi(e){return e?e[e.length-1].nextSibling:null}function yo(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function za(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var z9=ct(Xi,300);async function ku(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||H9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,ca&&Ye(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Ra(u),i=Eo(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await Zi(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:po(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(s){if(k.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(U9(e,t.text),Yi(e,t)):(ca&&Ye(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function H9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?sn(t)&&t.classList.contains(jt):!1}function U9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function Yi(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),ca&&Ye(t.commonAncestorContainer,"consumeParagraph",e.id),z9.call(e,e.ctx)}async function Xi(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await rn(a,t,(u,r,o)=>{let i=o.id,s=W9(e,i.toString());s&&q9.call(null,u,r,o,s,t,n)})}catch(u){k.error("translateCurrentQueue error",u);return}}function W9(e,t){return e.find(n=>n.id===t)}function q9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${H}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Na(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(k.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=u,l=n.id,c=document.createElement(s.targetWrapperTag);Ye(c,f4,l.toString()),c.classList.add("notranslate",jt,jt+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let d=a.rootNodes[a.rootNodes.length-1].nextSibling;za(d,a.commonAncestorContainer,[c]);let m=e.message.replaceAll(` -`,"");if(m=m.replaceAll('"',"""),i&&(i.error=new Error(m)),c){let g=ta(It,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=ta(It,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),v=`<${s.targetWrapperTag} class="${H}-error notranslate"><${s.targetWrapperTag} class="${H}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=De.sanitize(v)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=Dd(a,u),l=document.createElement(u.rule.targetWrapperTag);l.classList.add("notranslate",jt),l.setAttribute("lang",u.targetLanguage),l.setAttribute(nn,"1");let c=j9.sanitize(s);l.innerHTML=c,a.targetNodes=[l],Ji(a,r),o=!0}else k.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function Zi(e,t){let{text:n}=e,a=await Je({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!gd({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Ea());let s=an(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return Ln(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(g=>Ln(c,g,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var $9=[];function Pd(e){$9.push(e)}function Md(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(ar)||Qi(e).catch(r=>{k.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var Co="";async function Qi(e){let t=document.title;if(!t||t.includes(ar))return;Co!==t&&(Co=t);let n=await on(e,t);if(!fo(e,n))try{let a=await Pa({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=Co+ar+a.text)}catch(a){throw a}}function _d(e){e.rule.isTranslateTitle&&(document.title=Co)}var es;function Bd(e){let t=e.ctx.rule.aiRule;if(k.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=$t(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{wo(e,l,a)}),es=new MutationObserver(l=>{l.forEach(function(c){if(sn(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(d=>{d===r&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,k.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),wo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(d=>{let m=d.previousSibling;!m||m.translated||(m.translated=!0,setTimeout(()=>{m.childNodes[0]?.translated||(k.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",m),wo(e,m,a))},100))})}})}),es.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){En(l,[t.streamingSelector])&&(r=l,k.debug("streamingNode",r)),En(l,[t.messageWrapperSelector])&&(o=l,k.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),k.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),wo(e,o,a),r=void 0,o=null}}function wo(e,t,n){zn({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{ku(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function Rd(){es?.disconnect()}var j=null;function ko(){return j||null}function Ao(e){K9(e),Q9(e),Y9(e),Z9(e),ja(document,e),Tt("Translated"),X9(j),J9(j),Pd(Hn),G9(j)}function K9(e){e.rule.initialSelectorGlobalAttributes&&yd(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function G9(e){Bd(e)}function V9(){Rd()}function J9(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ha(n,e)})}async function Y9(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await mu({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function X9(e){e.ctx.rule.isTranslateTitle&&(Qi(e.ctx),e.titleDynamicObserver=Md(e.ctx))}function Z9(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function Q9(e){let t=_t();j&&(t=j.id),j=j||{},j.ctx=e,j.id=t,j.paragraphQueue=j.paragraphQueue||[],j.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},j.currentUrl=window.location.href,j.containerRule={pageHeight:screen.availHeight,selectors:j.rule.selectors},j.paragraphEntities=j.paragraphEntities||{},j.autoIncreaseParagraphId=j.autoIncreaseParagraphId||1,j.interruptEffectDOM=!1,j.urlChangeDelay=e.rule.urlChangeDelay,j.immediateTranslateCapacity=e.state.immediateTranslationTextCount,j.observeContainers=j.observeContainers||[],j.observeParagraphs=j.observeParagraphs||[],j.dynamicContainerObserver=j.dynamicContainerObserver||u6(j),j.ignoreResizeObserver=j.ignoreResizeObserver||r6(j),j.containerVisibleObserver=j.containerVisibleObserver||t6(j),j.paragraphVisibleObserver=j.paragraphVisibleObserver||n6(j),j.injectCssToDocument=vo,j.walkContainer=zn,j.translateState=e.state.translationMode||e.config.translationMode||"dual",j.allInlineWindows=[window],window.onerror=e6(j,e),window.immersiveTranslateSwitchTranslateState=ns.bind(j)}function Nd(e,t){t.getRootNode()instanceof ShadowRoot?vo(t.getRootNode(),e):vo(t.ownerDocument,e),ts(e)}function ts(e){j||(j={},j.ctx=e,j.id=_t(),j.paragraphQueue=[],j.injectCssToDocument=vo,j.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},j.currentUrl=window.location.href,j.paragraphEntities={},j.autoIncreaseParagraphId=1,j.interruptEffectDOM=!1,j.urlChangeDelay=e.rule.urlChangeDelay,j.translateState=e.config.translationMode||"dual",j.observeContainers=[],j.observeParagraphs=[],j.allInlineWindows=[window],window.switchTranslateState=ns.bind(j))}function Hn(e=!0){j&&(Tt("Original"),V9(),j.interruptEffectDOM=!0,j.ignoreResizeObserver?.disconnect(),j.dynamicContainerObserver?.disconnect(),j.containerVisibleObserver?.disconnect(),j.paragraphVisibleObserver?.disconnect(),j.titleDynamicObserver?.disconnect(),_d(j.ctx),cd(),dd(),e&&ns.call(j,"original"),Object.values(j.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),j=null)}function e6(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{Ao(t)},e.urlChangeDelay||2e3)),!0}}function t6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(To(e,a.target),n.unobserve(a.target))})})}function n6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{Yi(e,o)}),n.unobserve(u)}})})}var Od;function a6(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(Od),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),Od=setTimeout(()=>{let u=e.ctx;Ao(u)},e.urlChangeDelay),!0)):!1}function u6(e){return new MutationObserver(t=>{if(!a6(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!Lt.isSkipMarkEle(n.target)&&!Lt.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...r,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&En(n.target,e.ctx.rule.mutationObserverContainerSelectors)){Lt.clearMark(n.target),n.target.paragraphs=void 0,To(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Ha(r,e))})}})}function r6(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);Ii(r)||(n.unobserve(a.target),Ha(u,e))}})}function ns(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{Ji(t,e)}),e=="original"&&document.querySelectorAll(`.${jt}`).forEach(t=>t.remove())}function vo(e,t){if(e instanceof HTMLIFrameElement){ja(e.contentDocument,t);return}ja(e,t)}async function Id(e){let t=Qe(),n="auto";if(ne()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=Bi(e.mainFrame):a=_a(e.mainFrame).slice(0,1e3),n=await Je({text:a})}else if(t)n=await Je({text:_a(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=Bi(e.mainFrame),n=await Je({text:a})}else n=await Nc();return n==="auto"&&(n=await kd()),yr(n),n}async function jd(){if(!j)return;document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=j.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){j.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${er}='${n}']`);r&&r.remove()}}Xi.call(j,j.ctx)}var zd={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},Hd={...It,"zh-CN":{...zd["zh-CN"],...It["zh-CN"]},"zh-TW":{...zd["zh-TW"],...It["zh-TW"]}},Ud=Hd;function Ua(e,t,n){return ta(Hd,e,t,ur,n)}var So=(e,t,n,a)=>{let u=v4[e]||e,r=k4[e],o=A4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${u})`}else return u};function Wa(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{k.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:Yu,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function as(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&je(o,i=>{i.preventDefault(),Wa({method:a[r]})})}}var _o,me,Gd,o6,Au,Wd,Vd,Fo={},Jd=[],i6=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Un(e,t){for(var n in t)e[n]=t[n];return e}function Yd(e){var t=e.parentNode;t&&t.removeChild(e)}function Xd(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?_o.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return Do(e,o,a,u,null)}function Do(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++Gd};return u==null&&me.vnode!=null&&me.vnode(r),r}function ln(e){return e.children}function Lo(e,t){this.props=e,this.context=t}function qa(e,t){if(t==null)return e.__?qa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Do(g.type,g.props,g.key,g.ref?g.ref:null,g.__v):g)!=null){if(g.__=n,g.__b=n.__b+1,(m=p[c])===null||m&&g.key==m.key&&g.type===m.type)p[c]=void 0;else for(d=0;d=n.__.length&&n.__.push({__V:Ro}),n.__[e]}function ke(e){return Su=1,d6(fm,e)}function d6(e,t,n){var a=No(Du++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):fm(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Ge,!Ge.u)){Ge.u=!0;var u=Ge.shouldComponentUpdate;Ge.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var d=c.__[0];c.__=c.__N,c.__N=void 0,d!==c.__[0]&&(l=!0)}}),!!l&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function Ct(e,t){var n=No(Du++,3);!me.__s&&pm(n.__H,t)&&(n.__=e,n.i=t,Ge.__H.__h.push(n))}function ls(e){return Su=5,gm(function(){return{current:e}},[])}function gm(e,t){var n=No(Du++,7);return pm(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function na(e,t){return Su=8,gm(function(){return e},t)}function cs(e){var t=Ge.context[e.__c],n=No(Du++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Ge)),t.props.value):e.__}function m6(){for(var e;e=mm.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Oo),e.__H.__h.forEach(ss),e.__H.__h=[]}catch(t){e.__H.__h=[],me.__e(t,e.__v)}}me.__b=function(e){typeof e.type!="function"||e.o||e.type===ln?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Ge=null,om&&om(e)},me.__r=function(e){im&&im(e),Du=0;var t=(Ge=e.__c).__H;t&&(is===Ge?(t.__h=[],Ge.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Ro,n.__N=n.i=void 0})):(t.__h.forEach(Oo),t.__h.forEach(ss),t.__h=[])),is=Ge},me.diffed=function(e){sm&&sm(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(mm.push(t)!==1&&rm===me.requestAnimationFrame||((rm=me.requestAnimationFrame)||g6)(m6)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Ro&&(n.__=n.__V),n.i=void 0,n.__V=Ro})),is=Ge=null},me.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Oo),n.__h=n.__h.filter(function(a){return!a.__||ss(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],me.__e(a,n.__v)}}),lm&&lm(e,t)},me.unmount=function(e){cm&&cm(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Oo(a)}catch(u){t=u}}),n.__H=void 0,t&&me.__e(t,n.__v))};var dm=typeof requestAnimationFrame=="function";function g6(e){var t,n=function(){clearTimeout(a),dm&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);dm&&(t=requestAnimationFrame(n))}function Oo(e){var t=Ge,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Ge=t}function ss(e){var t=Ge;e.__c=e.__(),Ge=t}function pm(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function fm(e,t){return typeof t=="function"?t(e):t}var $a={},p6={root:"",lang:"en",fallbackLang:"en"};function ds(e,t){let n=Object.assign({},p6,e);$a=t||$a;let[a,u]=ke(n.lang),[r,o]=ke($a),[i,s]=ke(!1),l=d=>{if(r.hasOwnProperty(d))return;s(!1);let m=Ad(n.root||"",d);n.getUrl&&(m=n.getUrl(n.root||"",d),fetch(m).then(g=>g.json()).then(g=>{$a[d]=g,o({...$a}),s(!0)}).catch(g=>{o({...$a}),s(!0)}))};return Ct(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:u,t:(d,m)=>{if(!r.hasOwnProperty(a))return d;let g=vu(r,a,d);return g===d&&a!==n.fallbackLang&&(g=vu(r,n.fallbackLang,d)),Ui(g,m)},isReady:i}}var f6=0;function U(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--f6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return me.vnode&&me.vnode(s),s}var gs=os(null),ms={root:"assets",lang:"en",fallbackLang:"en"},hm=e=>{let{t,setLang:n,lang:a,isReady:u}=ds({root:e.root||ms.root,lang:e.lang||ms.lang,fallbackLang:e.fallbackLang||ms.fallbackLang,getUrl:e.getUrl},e.translations);return U(gs.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function bm(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let l of r){let d=n[l].matches;for(let m of d)u[m]||(u[m]=[]),u[m].push(l)}let o=u[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(d=>d!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Em(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function ym(e){let t;try{t=new URL(e)}catch{return!1}let n=Uc(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(h6(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function h6(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function Tm(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function xm(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function yn(e){let{items:t,maxWidth:n}=e;return n=n||128,U("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>U("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var Io="DROP_DOWN_DEFAULT_VALUE";function ps(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=ls(null);return U("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:Io,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==Io){o.current.value=Io,o.current?.dispatchEvent(new Event("change"));let l=u.find(c=>c.value===s);l&&n(l)}},children:[{value:Io,label:e.label}].concat(u).map((i,s)=>U("option",{value:i.value,children:i.label},"option-"+s))})}function cn(){return cs(gs)}function fs(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=cn(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[r,"\uFF1A"]}),U(yn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Lu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var b6=({date:e})=>{let{t}=cn(),[n,a]=ke(!1);return Ct(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:U("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},E6=({minVersion:e})=>{let{t}=cn();return U("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},y6=()=>{let{t:e}=cn();return U("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},T6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=cn();return U("p",{class:"text-sm",children:[a("failToSyncRules")," ",U("a",{onClick:t,children:a("retry")}),U("br",{}),a("failedReason"),"\uFF1A",e,U("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function hs(e){let{isShowError:t,request:n}=e,[a,u]=ke(null),{t:r}=cn(),[o,i]=ke(null),[s,l]=ke(null),[c,d]=ke(""),[m,g]=ke(!1),[f,v]=ke(!1),[T,p]=ke(!1),[C,M]=ke(null),[L,A]=ke(null),y=Fn(),S=async()=>{d("");let D=o;if(o===null)try{let x=await n({url:ru});x?(i(x),D=x,g(!0)):(d(r("unknownError")),l(null))}catch(x){l(null),d(x.message);return}D!==null?(e.setStorageBuildinConfig(D),l(!1),u(D.buildinConfigUpdatedAt)):(d(r("canNotFetchRemoteRule")),l(null))};return Ct(()=>{Gn().then(D=>{let x=D.buildinConfigUpdatedAt;M(D);let F=new Date(x);if(u(x),y==="0.0.0"){p(!0);return}n({url:ru}).then(O=>{let w=O,B=w.minVersion,J=y;i(w);let N=w.latestVersion;if(N&&(Lu(J,N)?A(!0):A(!1)),Lu(J,B)){let ge=w.buildinConfigUpdatedAt;new Date(ge)>F?(l(!0),S()):l(!1)}else v(!0),l(null)}).catch(O=>{l(null),d(O.message)})})},[]),Ct(()=>{Gn().then(D=>{M(D)})},[a]),C?U("div",{class:"text-sm mt-2",style:{maxWidth:218},children:T?U(y6,{}):c?t===!1?null:U(T6,{handleSyncing:S,message:c,date:a||""}):f?t===!1?null:U(E6,{minVersion:o.minVersion}):s===null||s===!0?null:m?U(b6,{date:a}):null}):null}function bs(e){let t=Fn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:d,config:m,openAboutPage:g,onTranslateTheWholePage:f,onToggleEnabled:v,openOptionsPage:T,ontranslateToThePageEndImmediately:p,onSetPageLanguage:C,onToggleTranslate:M,onTranslateLocalPdfFile:L,onTranslatePdf:A,onRestorePage:y,ctx:S,currentUrl:D,currentLang:x,onClose:F,onTranslatePage:O,onSetLocalConfig:w,onMouseTriggerChanged:B,errorMsg:J,disabledButton:N,noPermissionPDF:ge}=e,pe=a,[Ne,be]=ke(""),[vt,ye]=ke(J),{t:b,lang:I}=cn(),G=60;I.startsWith("zh")||(G=65);let le=null,V=null,Ae=null,Q=null,Te=null,Z=null,ue=null,ce=null,Y=null,z=null,ee=null,Le=null,Se=!0;if(m){Rt()&&m&&(Se=m.generalRule.showSponsorOnSafari);let{translationService:_,translationServices:X,translationUrlPattern:Ce}=m;fn[_]&&(ce=G0(_,S)),X&&X[_]?Le=X[_]||{}:Le={};try{Y=new URL(D||"")}catch{}if(D&&ym(D)){z=Tm(Y.hostname),ee=xm(D);let{matches:fe,excludeMatches:Ee}=Ce;V=fe.includes(z),le=fe.includes(Y.hostname),Q=Ee.includes(z),Ae=Ee.includes(Y.hostname),Z=fe.includes(ee),ue=Ee.includes(ee)}}if(m&&x&&x!=="auto"){let{translationLanguagePattern:_}=m,{matches:X}=_;X.includes(x)?Te=!0:Te=!1}let te=_=>{_.preventDefault(),T()},He=_=>{pe(X=>(X.alpha?be("Success disable alpha!"):be("Success enable alpha!"),{...X,alpha:!X.alpha}))},tt=_=>{pe(X=>({...X,translationMode:_})),o(_)},Me=()=>{pe(_=>({..._,translationArea:"body"})),f()},_e=()=>{pe(_=>({..._,translationArea:"main"})),n()},Be=(_,X,Ce,fe)=>{if(_==="default"){pe(ot=>{let xe={...ot.translationUrlPattern};return{...ot,translationUrlPattern:{...ot.translationUrlPattern,matches:An([Y?.hostname,z,D],xe.matches),excludeMatches:An([Y?.hostname,z,D],xe.excludeMatches)}}});return}let Ee=_,Ie=Ee==="matches"?"excludeMatches":"matches";Y&&pe(ot=>{let xe={...ot.translationUrlPattern};return xe[Ee]=U0(X,xe[Ee]),fe.length>0&&(xe[Ee]=An(fe,xe[Ee])),xe[Ie]=An(Ce,xe[Ie]),{...ot,translationUrlPattern:{...ot.translationUrlPattern,...xe}}}),Ee==="matches"&&l==="Original"?setTimeout(()=>{O(),F()},100):Ee==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{y(),F()},100)},kt=_=>{if(!_){pe(fe=>{let Ee={...fe.translationLanguagePattern};return{...fe,translationLanguagePattern:{...fe.translationLanguagePattern,matches:An(x,Ee.matches),excludeMatches:An(x,Ee.excludeMatches)}}});return}let X=_,Ce=X==="matches"?"excludeMatches":"matches";x&&pe(fe=>{let Ee={...fe.translationLanguagePattern};return Ee[X]=U0(x,Ee[X]),Ee[Ce]=An(x,Ee[Ce]),{...fe,translationLanguagePattern:{...fe.translationLanguagePattern,...Ee}}}),X==="matches"&&l==="Original"&&setTimeout(()=>{O(),F()},100)},xn=Y?.pathname.toLowerCase().endsWith(".pdf"),Ue=b("translate");l==="Translated"||l==="Error"?Ue=b("show-original"):l==="Original"?xn?lr()&&Y.protocol==="file:"||ge?Ue=b("translate-firefox-local-pdf"):ne()?Ue=b("noSupportTranslate-pdf"):Ue=b("translate-pdf"):Ue=b("translate"):Ue=b(l);let en=b("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(m.shortcuts.toggleTranslatePage&&(W4()&&S.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ue+=` (${b(`fingers.${S.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ue+=` (${m.shortcuts.toggleTranslatePage})`),m.shortcuts.toggleTranslateToThePageEndImmediately&&(en+=` (${m.shortcuts.toggleTranslateToThePageEndImmediately})`));let Kt=[];S&&(Kt=Ec(S));let nt=_=>{_.preventDefault(),F()},Ft=Z3(S.config.translationService,S.config.targetLanguage);return U("div",{class:"p-3",children:[U("div",{class:"text-sm",children:[U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),U(yn,{items:zt.map(_=>({label:So(_,m.interfaceLanguage),value:_,selected:_===S.sourceLanguage,onSelected:X=>{C(X.value)}}))})]}),m&&m.targetLanguage&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),U(yn,{items:Ft.filter(_=>_!=="auto").map(_=>({label:So(_,m.interfaceLanguage),value:_,selected:_===m.targetLanguage,onSelected:X=>{pe(Ce=>({...Ce,targetLanguage:X.value}))}}))})]}),ce&&Kt.length>0&&U(ln,{children:[U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),U(yn,{items:Kt.map(_=>({label:`${b("translationServices."+_.id)}${_.ok?"":" "+b("needAction")}`,value:_.id,selected:_.selected,onSelected:X=>{let Ce=Kt.find(fe=>fe.id===X.value);Ce.ok?(pe(fe=>({...fe,translationService:Ce.id})),Ce.props.length===0?setTimeout(()=>{O()},1):setTimeout(()=>{y()},1)):(pe(fe=>({...fe,translationService:Ce.id})),setTimeout(()=>{T()},100))}}))})]}),Le&&ce.props.length>0&&ce.props.map((_,X)=>U("div",{class:"pl-4 text-sm",children:U(fs,{field:_,value:Le[_.name],onChange:Ce=>{pe(fe=>{let Ee=fe.translationServices||{},Ie=Ee[ce.id]||{};return setTimeout(()=>{y()},1),{...fe,translationServices:{...Ee,[ce.id]:{...Ie,[_.name]:Ce}}}})}},"field-"+X)},"service"+X))]}),Y&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:b("forThisSite")}),U(yn,{items:[{label:b("default"),value:"default",selected:le===!1&&Ae===!1&&!V&&!Q&&!Z&&!ue,onSelected:()=>{Be("default",Y.hostname,[],[]);let _=Y.hostname,X=S.localConfig.tempTranslationUrlMatches||[],Ce=X.filter(Ee=>Ee.match!==_),fe=!1;Ce.length!==X.length&&(fe=!0),fe&&w({...S.localConfig,tempTranslationUrlMatches:[...Ce]})}},ee&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:Z,onSelected:()=>{Be("matches",ee,[ee],[])}},{label:b("alwaysTranslateSomeSite",{hostname:Y.hostname}),value:"matches",selected:le,onSelected:_=>{Be(_.value,Y.hostname,[Y.hostname,z,ee],[z])}},z&&{label:b("alwaysTranslateSomeSite",{hostname:z}),value:"matchesWild",selected:V,onSelected:()=>{Be("matches",z,[ee,Y.hostname,z],[Y.hostname])}},ee&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:ue,onSelected:()=>{Be("excludeMatches",ee,[ee],[])}},{label:b("neverTranslateSomeSite",{hostname:Y.hostname}),value:"excludeMatches",selected:Ae,onSelected:_=>{Be(_.value,Y.hostname,[Y.hostname,z,ee],[z])}},z&&{label:b("neverTranslateSomeSite",{hostname:z}),value:"excludeMatchesWild",selected:Q,onSelected:()=>{Be("excludeMatches",z,[Y.hostname,ee,z],[Y.hostname])}}].filter(Boolean)})]}),B&&lu()&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),U(yn,{items:rr.filter(_=>!(rr.includes(m.generalRule.mouseHoverHoldKey)&&_==="OtherCustom")).map(_=>{let X=b("mouseHoldKey",{key:_}),Ce=rr.includes(m.generalRule.mouseHoverHoldKey),fe=_===m.generalRule.mouseHoverHoldKey;return _==="Auto"?X=b("mouseHoldKeyAuto"):_==="Off"?X=b("mouseHoldKeyOff"):_==="OtherCustom"?X=Ce?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:m.generalRule.mouseHoverHoldKey}):_==="Other"&&(X=b("mouseHoldKeyOther")),Ce||_==="OtherCustom"&&(fe=!0),{label:X,value:_,selected:fe,onSelected:Ee=>{Ee.value==="Other"?T("#interface"):B(Ee.value)}}})})]})]}),U("div",{class:"",children:U("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{xn?A&&A():M()},"aria-busy":l==="Translating",disabled:N||l==="Translating",children:Ue})}),U("div",{class:"text-sm",children:Ne}),U("div",{class:"text-sm",children:vt}),U("div",{class:"flex justify-between flex-wrap",children:[x&&x!=="auto"?U("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[U("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Te,onChange:_=>{let X=_.target.checked;kt(X?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:So(x,m.interfaceLanguage,!1,!0)})]}):U("span",{}),U("div",{class:"flex flex-end flex-grow",children:U(ps,{label:b("more"),showArrow:!0,maxWidth:G,onSelected:_=>{_.value==="changeToOnlyTranslationMode"?tt("translation"):_.value==="changeToDualTranslationMode"?tt("dual"):_.value==="translateTheWholePage"?f():_.value==="translateToThePageEndImmediately"?p():_.value==="translateTheMainPage"?n():_.value==="showTranslationOnly"||(_.value==="translateLocalPdfFile"?L&&L():_.value==="translateLocalHtmlFile"?r&&r():_.value==="translateLocalSubtitleFile"?i&&i():_.value==="donate"?(globalThis.open(m.donateUrl),F()):_.value==="feedback"?(globalThis.open(m.feedbackUrl),F()):_.value==="options"?(T(),F()):_.value==="changeToTranslateTheWholePage"?Me():_.value==="changeToTranslateTheMainPage"?_e():_.value==="about"?g():_.value==="toggleEnabled"?v():_.value==="openEbookViewer"?d():_.value==="openEbookBuilder"&&c())},menus:[m.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},m.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},m.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},m.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+en,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!ne()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!ne()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(m.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(m.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(Se?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),U("footer",{children:[U(hs,{isShowError:!1,request:u,setStorageBuildinConfig:s}),U("div",{class:"mt-3 text-sm flex justify-between",children:[U("a",{href:"#",class:"secondary",onClick:te,children:b("options")}),ne()&&U("a",{href:"#",class:"secondary",onClick:nt,children:b("close")}),U("span",{class:"immersive-translate-no-select muted",onClick:Em(7)(He),children:["V",t,m.enabled?null:U("a",{href:"#",onClick:v,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var Es={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return q.storage[n].get(a)},set:(e,t,n)=>q.storage[n].set({[e]:t})};function jo(e,t,n){let[a]=ke(()=>typeof t=="function"?t():t),[u]=ke(n),[r,o]=ke(a),[i,s]=ke(!1),[l,c]=ke("");Ct(()=>{Es.get(e,a,u).then(m=>{m[e]&&o(m[e]),s(!0),c("")}).catch(m=>{s(!1),c(m)})},[e,a,u]);let d=na(m=>{let g=typeof m=="function"?m(r):m;k.debug("new settings",g),Es.set(e,g,u).then(()=>{o(g),s(!0),c("")}).catch(f=>{o(g),s(!1),c(f)})},[u,e,r]);return[r,d,i,l]}function ys(e,t,n){let a=[];return function(){let[r,o,i,s]=jo(e,t,n),l=na(c=>{for(let d of a)d(c)},[]);return Ct(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,l,i,s]}}function Cm(e,t){return ys(e,t,"sync")}var x6="userConfig",C6={},w6=Cm(x6,C6);function wm(e){let[t,n,a,u]=w6(),r=na(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function zo(e){try{let t=new Date;k.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await q.storage.local.set({[iu]:t.toISOString()}),await v6(),ne()||await Kc()}catch(t){k.error("run cron task failed",t)}}async function vm(){let t=(await xt()).interval;if(t){let n=await q.storage.local.get(iu);if(n&&n[iu]){let a=n[iu];if(Date.now()-new Date(a).getTime()a?(await q.storage.local.set({buildinConfig:t}),k.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):k.debug(`no need to sync rules, latest: ${a}`):k.info(`local version is too old, please update to ${o} or later`)}catch(e){k.error("sync rules error: ",e)}}function Ts(e){let{onClose:t}=e,[n,a]=ke("Original"),[u,r,o,i]=wm(()=>{setTimeout(()=>{M("updateGlobalContext",!1)()},250)}),[s,l]=ke(null),[c,d]=ke(globalThis.location.href),[m,g]=ke("auto"),[f,v]=ke(null),T=N=>{a(N.detail)},p=N=>{g(N);let ge=bm(c,N,s.sourceLanguageUrlPattern);r(pe=>({...pe,sourceLanguageUrlPattern:ge})),Ut(N)},C=()=>{d(globalThis.location.href)};Ct(()=>(document.addEventListener(Qu,T,!1),xt().then(N=>{l(N);let ge=an();g(ge);let pe=Re();a(pe),zo(N.interval)}),document.addEventListener("urlChange",C),()=>{document.removeEventListener("pageTranslatedStatus",T),document.removeEventListener("urlChange",C)}),[]),Ct(()=>{xt().then(N=>{l(N)})},[u]),Ct(()=>{c&&s&&qt({url:c,config:s}).then(N=>{v(N)})},[c,s]);let M=(N,ge,pe={})=>()=>{Wa({method:N,data:pe||{}}),ge&&t()},L=()=>{t()},A=()=>{r(N=>({...N,enabled:!N.enabled})),setTimeout(()=>{L()},50)},y=()=>{ei(),setTimeout(()=>{L()},50)},S=()=>{ei(),setTimeout(()=>{L()},50)},D=(N="")=>{Lr(!0,N),setTimeout(()=>{t()},50)},x=()=>{Fr(),setTimeout(()=>{t()},50)},F=()=>{Pr(),setTimeout(()=>{t()},50)},O=()=>{qc(),setTimeout(()=>{t()},50)},w=()=>{Mr(),setTimeout(()=>{t()},50)},B=()=>{$c(),setTimeout(()=>{t()},50)},J=N=>{r(ge=>({...ge,generalRule:{...ge.generalRule,mouseHoverHoldKey:N}}))};return!s||!f?null:U(bs,{openEbookViewerPage:F,openEbookBuilderPage:w,onSwitchTranslationMode:N=>{M("switchTranslationMode",!0,{mode:N})()},onTranslateLocalHtmlFile:O,onTranslateLocalSubtitleFile:B,request:$,onClose:L,onToggleEnabled:A,onTranslateTheWholePage:M("translateTheWholePage",!0),openOptionsPage:D,onToggleTranslate:M("toggleTranslatePage",!0),onTranslateTheMainPage:M("translateTheMainPage",!0),ontranslateToThePageEndImmediately:M("translateToThePageEndImmediately",!0),onTranslatePage:M("translatePage",!0),onRestorePage:M("restorePage",!1),onTranslatePdf:y,openAboutPage:x,onTranslateLocalPdfFile:S,onSetPageLanguage:p,onUserConfigChange:r,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:m,onSetLocalConfig:Dr,onSetBuildinConfig:Oc,onMouseTriggerChanged:J})}function k6(e,t){for(let n of t){if(ne()&&!lr()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var xs={position:"right",right:0,top:335},wt={...xs},Wo=!1,aa=null,dn=null,qo=null,Cs=null,Ka=null,ws=null,km=6,Ho,Uo,Sm=null,Dm=null;async function ks(){let e=lt();ws=await Rc(),wt=ws.pagePopupConfig||wt;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Cs=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` -`);k6(n,[a]);let u=document.createElement("div");u.innerHTML=De.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),aa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");dn=o,qo=n.querySelector("#mount"),aa.setAttribute("style",vs(wt)),Ls(),o.addEventListener("mousedown",Lm),o.addEventListener("touchstart",D6),globalThis.addEventListener("resize",s=>{aa.setAttribute("style",vs(wt))})}function A6(){Bo(null,qo),qo.style.display="none",dn.style.display="block",Ka=setTimeout(()=>{Ls(!0)},2e3)}function Am(e){let t=e.querySelector("#mount"),n=()=>{A6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await xt();Bo(U(hm,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:Ud,children:U("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:U("div",{class:"immersive-translate-popup-wrapper",style:S6(),children:U(Ts,{onClose:n})})})}),t)})().then(()=>{dn.style.display="none",qo.style.display="block"})}function S6(){let e=As(),t=e.height,{position:n,top:a,left:u}=wt,r={position:"fixed"},o=300,i=300,s=100;return gl()&&(n=xs.position,a=xs.top),n==="right"||n==="left"?(r.top=a-s,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-s,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function As(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function Lm(e){Dm=aa.getAttribute("style"),Ho=e.pageX,Uo=e.pageY,Ka&&clearTimeout(Ka),Wo=!1,dn.style.opacity="1",dn.style.transform="none",Sm=dn.getAttribute("style"),globalThis.addEventListener("mousemove",Ss),globalThis.addEventListener("mouseup",Ds),globalThis.addEventListener("touchmove",Fm),globalThis.addEventListener("touchend",$o),globalThis.addEventListener("touchcancel",$o)}function D6(e){e.preventDefault&&e.preventDefault(),Lm(e.changedTouches[0])}function Fm(e){Ss(e.changedTouches[0])}function $o(e){e.preventDefault&&e.preventDefault(),Ds(e.changedTouches[0])}function Ss(e){e.preventDefault&&e.preventDefault(),Wo=!0,aa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Ds(e){e.preventDefault&&e.preventDefault(),F6(),Ka&&clearTimeout(Ka),Ho=Ho||0,Uo=Uo||0;let t=Math.abs(e.pageX-Ho),n=Math.abs(e.pageY-Uo);t{Ls(!0)},2e3)}function Ls(e=!1){dn.style.opacity="0.4";let t="";wt.position==="left"?t="translateX(-40%)":wt.position==="right"?t="translateX(40%)":wt.position==="top"?t="translateY(-40%)":wt.position==="bottom"&&(t="translateY(40%)"),dn.style.transform=t,e&&(dn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function F6(){globalThis.removeEventListener("mousemove",Ss),globalThis.removeEventListener("mouseup",Ds),globalThis.removeEventListener("touchmove",Fm),globalThis.removeEventListener("touchend",$o),globalThis.removeEventListener("touchcancel",$o)}function vs(e){let t=P6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function P6(e){let{position:t,...n}=e,a=As(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var Ko=!1;async function Pm(e){if(!e){let t=await xt(),n={url:globalThis.location.href,config:t};e=await qt(n)}e.config.debug&&k.setLevel("debug"),e.isTranslateExcludeUrl?k.debug("detect exclude url, do not inject anything."):(ha().any||ne())&&e.rule.isShowUserscriptPagePopup&&(Ko||(Ko=!0,ks().catch(t=>{k.error("init popup error",t)})))}async function Mm(){Ko||(Ko=!0,ks().catch(e=>{k.error("init popup error",e)}))}var _m=!1,Om=[()=>{je.unbind()}],Ps=[...Om],M6=ct(async()=>{await Lr()},50),_6=ct(async()=>{await Fr()},50),B6=ct(async()=>{await Mr()},50),R6=ct(async()=>{await Pr()},50),Nm=ct(e=>{Wa({method:e})},50),O6=ct(()=>{wr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),N6=ct(()=>{Sr();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),I6=ct(()=>{kr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function j6(e,t){let n=e.document;if(_m)return;if(_m=!0,ne()||Ac(),n.addEventListener("securitypolicyviolation",J6),n.addEventListener("immersiveTranslateEbookLoaded",V6),n.addEventListener(l4,G6),n.addEventListener("click",u=>{W6(u,t)}),ne()&&(globalThis.top!=globalThis.self?e.addEventListener("message",H6,!1):n.addEventListener(kn,z6)),globalThis.top===globalThis.self){let u=un.rootIframe(B0);u.handleAsk("getRateLimitDelay",u3),u.handleAsk("throttleRequest",w3)}}function Fu(e,t){Y6(),j6(t,e);let n=t.document,a=U6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Ps.push(()=>{n.removeEventListener("touchstart",a)}),ne()&&globalThis.top===globalThis.self&&(as(e.config),X6(e.config)),Rt()&&as(e.config)}function z6(e){Mm()}function H6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===Yu&&Ta(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function U6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?O6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?I6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&N6()}function W6(e,t){let n=e.target;if(!n||!n.getAttribute){Fs(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&$e(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${H}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),vr(),Fs(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${H}-tooltip-text`);Rm($6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Rm(q6.bind(null,t)));Fs(n)}async function Bm(e=!1){let t=document.querySelector(`.${H}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await Bc();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await _c(n)}function Rm(e){let t=`${H}-modal`,n=`${H}-modal-title`,a=`${H}-modal-body`,u=`${H}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),s=r.querySelector(`.${a}`);e(r,o,s,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=H+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=H+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(d){d.target==r&&(r.style.display="none")},e(r,s,l,c)}setTimeout(()=>{K6()},100)}function q6(e,t,n,a,u){let r=Im.bind(null,e);n.innerHTML=`
${D4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.createElement("p");o.innerHTML=`${r("searchEnhancementNotes")}`,a.appendChild(o);let i=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let m=0;m${r("option")}`})),a.appendChild(s);let l=a.querySelector(`.${H}-open-enhancement`);l&&(l.onclick=function(){Wc(!0)});let c=document.createElement("button");c.innerText=r("closeModal"),c.className=`${H}-btn ${H}-cancel-btn`;let d=document.createElement("button");d.className=`${H}-btn`,d.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(c),u.appendChild(d),c.onclick=function(){t.style.display="none"},d.onclick=function(){let m=a.getElementsByTagName("input"),g="";for(let f=0;f{Go()},10)}function J6(e){de.HAS_CSP_ERROR="1"}function Y6(){Ps.forEach(e=>{e()}),Ps=Om}function X6(e){if(ne()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Rr.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=Ua(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:L0,title:Ua("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:F0,title:Ua("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:S0,title:Ua("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:D0,title:Ua("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===S0?M6():r.id===D0?_6():r.id===F0?B6():r.id===L0?R6():Nm(r.id)},r.key)}}function Z6(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{k.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function jm(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Oe(i.left,r)&&Oe(i.width,u.width));return{prevP:u,curP:o}}function Ms(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function zm(e){return e?e==e[0].repeat(e.length):!0}function Oe(e,t,n=5){return Math.abs(e-t)<=n}var _s=[",","\\.","\uFF0C","\u3002"];function Hm(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Oe(a.left,u.left,7)&&Oe(a.nextTop,u.top,10)&&Vo(a,u)}function Um({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Km(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Gm({prevLineP:e,prevP:t},n){return Oe(e.left,n.left,1)&&Oe(e.right,t.right,1)&&t.mergedTimes>=1}function Bs(e,t){let{prevLineP:n}=e;return Km(e,t)&&(Oe(n.bottom,t.bottom)||Oe(n.nextTop,t.top)&&Oe(n.left,t.left))}function Vm(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return Km(e,t)&&n.width0&&a/u<.1&&n.left!Ms(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Je({text:n.map(r=>r.str).join(` -`).slice(0,1e3)});yr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await rn({sentences:u},e,(r,o,i)=>{let s=i.id,l=n[s];r?(l.translatedStr=r.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),e1(l)})}var Os={};async function Q6(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Os).filter(n=>!!n);await Jo(Qm,t)}function e1(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Os[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",Q6)):e.translateStatus=="success"&&(Os[e.id]=void 0,t.innerHTML=De.sanitize(e.translatedStr)))}function eg(e,t){let n=[],a=n1(e,t);return a1(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){Zm(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{Zm(e,n,o,!1)}),n.push("
")}}),` +`))),i&&In(e,i,"immersive-translate-dynamic-injected-css")}async function Ld(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Ve({text:_a(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=Kn(document.documentElement.lang)),e}function Fd(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function W0(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=W9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let d=n.substring(s+i.length,c),m=Object.keys(o).filter(g=>g!=="tag").map(g=>`${g}="${o[g]}"`).join(" ");n=n.replace(`${i}${d}`,`<${l} ${m}>${d}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function vu(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function ta(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=vu(e,n,t);return r===t&&n!==a&&(r=vu(e,a,t)),W0(r,u)}function W9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function bo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function q0(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(A4),e&&(r.push(`${z}-target-translation-theme-${e}`),t?r.push(`${Bi}-theme-${e}`):r.push(`${_i}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(Bi):(r.push(_i),u&&r.push(k4)),r}function $0(e){let t=["notranslate",w4];return e&&t.push(`${z}-target-translation-theme-${e}-inner`),t}function Pd(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,d=Ra(n),m="afterend",g=d[0].replace(/\//g,"/");g=g.replace(/"/g,'\\"'),g=g.replace(//g,">");let f=d[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let w=`${g}(\\d+)${f}`,T=new RegExp(w,"g"),p=bo(s);p=Ce.sanitize(p),o.length>0&&(p=p.replace(T,A=>{let y=p.indexOf(A),S=p[y-1]===" ",D=p[y+A.length]===" ",x=A.slice(d[0].length,-d[1].length),F=Number(x);if(isNaN(F))return A;let O=o[Number(F)];if(O&&O.type==="element"){let k=O.value.outerHTML;return S||(k=" "+k),D||(k=k+" "),k}else v.error("variable type not supported",O,A);return A}));let C=q0(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&C.push(v4);let M=$0(r),L="";return a.translationBlockStyle&&(L=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${L} class="${C.join(" ")}" ${an}="1"><${a.targetWrapperTag} class="${M.join(" ")}" ${an}="1">${p}`,e.inline||(l==="smart"?p=`
${p}`:p=`${l}${p}`),e.inline&&(l!=="smart"?p=`${l}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${an}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:m}}function Eo(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let s=0;s2&&(T=`<${u[2]}${w}>`),i[w]=l,o.push({text:T,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";d&&(f=jn(K0(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Bt(l,a)){let w=Object.keys(i).length,T=`${u[0]}${w}${u[1]}`;u.length>2&&(T=`<${u[2]}${w}>`),i[w]=l;let p=G0(o).endsWith(" ")?" ":"",C=jn(l.innerText||l.textContent),M=jn(l.nextSibling).startsWith(" ")?" ":"",L=Cu(p+C+M),A=L[0]+T+L[1];if(p===" ")A=A.trimStart();else if(!A.startsWith(" ")){let y=Cu(l.previousSibling)[1];y===""&&(y=" "),A=y+A}o.push({text:A,type:"variable"})}else{let f=G0(o).endsWith(" ")?" ":"",w=jn(l.innerText||l.textContent);d&&(w=jn(K0(l)));let T=jn(l.nextSibling).startsWith(" ")?" ":"",p=Cu(f+w+T),C=p[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+p[1];if(f===" ")C=C.trimStart();else{let M=Cu(l.previousSibling)[1];M===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(M=" "),C=M+C}o.push({text:C,type:"text"})}else{let f=G0(o).endsWith(" ")?" ":"",w="";l.textContent&&(w=jn(K0(l))),f===" "&&(w=w.trimStart()),o.push({text:w,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(d=o[l-1].text),l2){let c=l[2];return q9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=Pd(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function K0(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function q9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:d}=e;o=o||[];let m=bo(e.targetText);m=Ce.sanitize(m);let g=m,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),w=new RegExp(`<${t}(\\d+)>`);o.length>0&&(g=g.replace(f,M=>{let L=g.indexOf(M),A=g[L-1]===" ",y=g[L+M.length]===" ",S=M.match(w);if(!S)return M;let D=S[1],x=Number(D);if(isNaN(x))return M;let F=o[Number(x)];if(F&&F.type==="element"){let O=F.value.outerHTML;return A||(O=" "+O),y||(O=O+" "),O}else if(F&&F.type==="text"){let O=F.value;return A||(O=" "+O),y||(O=O+" "),O}else v.error("variable type not supported",F,M);return M}));let T=q0(l,n,a||[],i,c),p=$0(l),C="";return d&&(C=`style="${d}"`),g=`<${u} ${C} class="${T.join(" ")}" ${an}="1"><${u} class="${p.join(" ")}" ${an}="1">${g}`,n||(r==="smart"?g=`
${g}`:g=`${r}${g}`),n&&(r!=="smart"?g=`${r}${g}`:g=`<${u} class="notranslate" ${an}="1"> ${g}`),s==="smart"?g=`${g}`:g=`${g}${s}`,{html:g,position:"afterend"}}function G0(e){let t=e[e.length-1];return t?t.text:""}function $t(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var $9={sanitize:e=>e};function To(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:$t(e.ctx),onParagraph:ku.bind(null,e),onFrame:n=>{J0(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),ca&&Ye(t,"consumeContainer",e.id))}function J0(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Oa(t))return;v.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ha(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else v.debug("onFrame shadowRoot",t.host),Ha(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ha(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=$t(t.ctx),r=0;if(s(t,e,n))return;if(sn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(sn(c)&&(a&&I0(c,a),u&&z0(c,u)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(Lt.mark(l.currentNode,t.id);l.nextNode();){Lt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let d=l.currentNode;if(Lt.mark(l.currentNode,t.id),i(d)){o(d);continue}else break}if(!l.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){Lt.clearMark(l),r++,t.immediateTranslateCapacity>=0?To(t,l):(ca&&Ye(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return J0(t,l.shadowRoot,n),!1;if(c==="iframe")return J0(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let d=t.containerRule;if(d.selectors&&d.selectors?.length>0)return ho(l,d.selectors);if(d.pageHeight){let m=l.scrollHeight;if(m>0&&m0)return!0}return!1}function s(l,c,d){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||d&&Lt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let g=$t(l.ctx);return!!H0(c,{excludeSelectors:g.excludeSelectors,selectors:g.selectors,stayOriginalSelectors:g.stayOriginalSelectors})}}function Y0(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!Lt.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(yo(e.rootNodes),_d(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=V0(e.rootNodes);yo(e.rootNodes),za(o,a,e.targetNodes||[]),_d(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];za(o,a,e.rootNodes||[]),Bd(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=V0(e.rootNodes);za(o,a,e.targetNodes||[]),Bd(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=V0(e.targetNodes);yo(e.targetNodes),za(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&yo(e.targetNodes)}catch(o){v.error(o)}}}function _d(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Ye(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function Bd(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=Ba(a,"immersiveTranslateClassBak");go(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function V0(e){return e?e[e.length-1].nextSibling:null}function yo(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function za(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var K9=ct(Z0,300);async function ku(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||G9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,ca&&Ye(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Ra(u),i=Eo(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await Q0(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:po(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(s){if(v.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(V9(e,t.text),X0(e,t)):(ca&&Ye(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function G9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?sn(t)&&t.classList.contains(jt):!1}function V9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function X0(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),ca&&Ye(t.commonAncestorContainer,"consumeParagraph",e.id),K9.call(e,e.ctx)}async function Z0(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await on(a,t,(u,r,o)=>{let i=o.id,s=J9(e,i.toString());s&&Y9.call(null,u,r,o,s,t,n)})}catch(u){v.error("translateCurrentQueue error",u);return}}function J9(e,t){return e.find(n=>n.id===t)}function Y9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${z}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Na(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(v.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=u,l=n.id,c=document.createElement(s.targetWrapperTag);Ye(c,y4,l.toString()),c.classList.add("notranslate",jt,jt+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let d=a.rootNodes[a.rootNodes.length-1].nextSibling;za(d,a.commonAncestorContainer,[c]);let m=e.message.replaceAll(` +`,"");if(m=m.replaceAll('"',"""),i&&(i.error=new Error(m)),c){let g=ta(It,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=ta(It,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),w=`<${s.targetWrapperTag} class="${z}-error notranslate"><${s.targetWrapperTag} class="${z}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=Ce.sanitize(w)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=Md(a,u),l=document.createElement(u.rule.targetWrapperTag);l.classList.add("notranslate",jt),l.setAttribute("lang",u.targetLanguage),l.setAttribute(an,"1");let c=$9.sanitize(s);l.innerHTML=c,a.targetNodes=[l],Y0(a,r),o=!0}else v.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function Q0(e,t){let{text:n}=e,a=await Ve({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!bd({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Ea());let s=un(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return Ln(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(g=>Ln(c,g,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var X9=[];function Rd(e){X9.push(e)}function Od(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(ar)||es(e).catch(r=>{v.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var Co="";async function es(e){let t=document.title;if(!t||t.includes(ar))return;Co!==t&&(Co=t);let n=await en(e,t);if(!fo(e,n))try{let a=await Pa({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=Co+ar+a.text)}catch(a){throw a}}function Nd(e){e.rule.isTranslateTitle&&(document.title=Co)}var ts;function Id(e){let t=e.ctx.rule.aiRule;if(v.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=$t(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{wo(e,l,a)}),ts=new MutationObserver(l=>{l.forEach(function(c){if(sn(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(d=>{d===r&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,v.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),wo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(d=>{let m=d.previousSibling;!m||m.translated||(m.translated=!0,setTimeout(()=>{m.childNodes[0]?.translated||(v.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",m),wo(e,m,a))},100))})}})}),ts.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){En(l,[t.streamingSelector])&&(r=l,v.debug("streamingNode",r)),En(l,[t.messageWrapperSelector])&&(o=l,v.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),v.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),wo(e,o,a),r=void 0,o=null}}function wo(e,t,n){zn({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{ku(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function jd(){ts?.disconnect()}var j=null;function ko(){return j||null}function Ao(e){Z9(e),r6(e),n6(e),u6(e),ja(document,e),Tt("Translated"),a6(j),t6(j),Rd(Hn),Q9(j)}function Z9(e){e.rule.initialSelectorGlobalAttributes&&wd(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function Q9(e){Id(e)}function e6(){jd()}function t6(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ha(n,e)})}async function n6(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await mu({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function a6(e){e.ctx.rule.isTranslateTitle&&(es(e.ctx),e.titleDynamicObserver=Od(e.ctx))}function u6(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function r6(e){let t=_t();j&&(t=j.id),j=j||{},j.ctx=e,j.id=t,j.paragraphQueue=j.paragraphQueue||[],j.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},j.currentUrl=window.location.href,j.containerRule={pageHeight:screen.availHeight,selectors:j.rule.selectors},j.paragraphEntities=j.paragraphEntities||{},j.autoIncreaseParagraphId=j.autoIncreaseParagraphId||1,j.interruptEffectDOM=!1,j.urlChangeDelay=e.rule.urlChangeDelay,j.immediateTranslateCapacity=e.state.immediateTranslationTextCount,j.observeContainers=j.observeContainers||[],j.observeParagraphs=j.observeParagraphs||[],j.dynamicContainerObserver=j.dynamicContainerObserver||c6(j),j.ignoreResizeObserver=j.ignoreResizeObserver||d6(j),j.containerVisibleObserver=j.containerVisibleObserver||i6(j),j.paragraphVisibleObserver=j.paragraphVisibleObserver||s6(j),j.injectCssToDocument=vo,j.walkContainer=zn,j.translateState=e.state.translationMode||e.config.translationMode||"dual",j.allInlineWindows=[window],window.onerror=o6(j,e),window.immersiveTranslateSwitchTranslateState=as.bind(j)}function Hd(e,t){t.getRootNode()instanceof ShadowRoot?vo(t.getRootNode(),e):vo(t.ownerDocument,e),ns(e)}function ns(e){j||(j={},j.ctx=e,j.id=_t(),j.paragraphQueue=[],j.injectCssToDocument=vo,j.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},j.currentUrl=window.location.href,j.paragraphEntities={},j.autoIncreaseParagraphId=1,j.interruptEffectDOM=!1,j.urlChangeDelay=e.rule.urlChangeDelay,j.translateState=e.config.translationMode||"dual",j.observeContainers=[],j.observeParagraphs=[],j.allInlineWindows=[window],window.switchTranslateState=as.bind(j))}function Hn(e=!0){j&&(Tt("Original"),e6(),j.interruptEffectDOM=!0,j.ignoreResizeObserver?.disconnect(),j.dynamicContainerObserver?.disconnect(),j.containerVisibleObserver?.disconnect(),j.paragraphVisibleObserver?.disconnect(),j.titleDynamicObserver?.disconnect(),Nd(j.ctx),pd(),fd(),e&&as.call(j,"original"),Object.values(j.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),j=null)}function o6(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{Ao(t)},e.urlChangeDelay||2e3)),!0}}function i6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(To(e,a.target),n.unobserve(a.target))})})}function s6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{X0(e,o)}),n.unobserve(u)}})})}var zd;function l6(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(zd),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),zd=setTimeout(()=>{let u=e.ctx;Ao(u)},e.urlChangeDelay),!0)):!1}function c6(e){return new MutationObserver(t=>{if(!l6(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!Lt.isSkipMarkEle(n.target)&&!Lt.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...r,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&En(n.target,e.ctx.rule.mutationObserverContainerSelectors)){Lt.clearMark(n.target),n.target.paragraphs=void 0,To(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Ha(r,e))})}})}function d6(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);j0(r)||(n.unobserve(a.target),Ha(u,e))}})}function as(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{Y0(t,e)}),e=="original"&&document.querySelectorAll(`.${jt}`).forEach(t=>t.remove())}function vo(e,t){if(e instanceof HTMLIFrameElement){ja(e.contentDocument,t);return}ja(e,t)}async function Ud(e){let t=Qe(),n="auto";if(ne()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=R0(e.mainFrame):a=_a(e.mainFrame).slice(0,1e3),n=await Ve({text:a})}else if(t)n=await Ve({text:_a(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=R0(e.mainFrame),n=await Ve({text:a})}else n=await Hc();return n==="auto"&&(n=await Ld()),yr(n),n}async function Wd(){if(!j)return;document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=j.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){j.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${er}='${n}']`);r&&r.remove()}}Z0.call(j,j.ctx)}var qd={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},$d={...It,"zh-CN":{...qd["zh-CN"],...It["zh-CN"]},"zh-TW":{...qd["zh-TW"],...It["zh-TW"]}},Kd=$d;function Ua(e,t,n){return ta($d,e,t,ur,n)}var So=(e,t,n,a)=>{let u=D4[e]||e,r=L4[e],o=F4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${u})`}else return u};function Wa(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{v.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:Yu,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function us(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&je(o,i=>{i.preventDefault(),Wa({method:a[r]})})}}var _o,me,Xd,m6,Au,Gd,Zd,Fo={},Qd=[],g6=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Un(e,t){for(var n in t)e[n]=t[n];return e}function em(e){var t=e.parentNode;t&&t.removeChild(e)}function tm(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?_o.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return Do(e,o,a,u,null)}function Do(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++Xd};return u==null&&me.vnode!=null&&me.vnode(r),r}function ln(e){return e.children}function Lo(e,t){this.props=e,this.context=t}function qa(e,t){if(t==null)return e.__?qa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Do(g.type,g.props,g.key,g.ref?g.ref:null,g.__v):g)!=null){if(g.__=n,g.__b=n.__b+1,(m=p[c])===null||m&&g.key==m.key&&g.type===m.type)p[c]=void 0;else for(d=0;d=n.__.length&&n.__.push({__V:Ro}),n.__[e]}function Ae(e){return Su=1,b6(ym,e)}function b6(e,t,n){var a=No(Du++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):ym(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Ke,!Ke.u)){Ke.u=!0;var u=Ke.shouldComponentUpdate;Ke.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var d=c.__[0];c.__=c.__N,c.__N=void 0,d!==c.__[0]&&(l=!0)}}),!!l&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function Ct(e,t){var n=No(Du++,3);!me.__s&&Em(n.__H,t)&&(n.__=e,n.i=t,Ke.__H.__h.push(n))}function cs(e){return Su=5,bm(function(){return{current:e}},[])}function bm(e,t){var n=No(Du++,7);return Em(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function na(e,t){return Su=8,bm(function(){return e},t)}function ds(e){var t=Ke.context[e.__c],n=No(Du++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Ke)),t.props.value):e.__}function E6(){for(var e;e=hm.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Oo),e.__H.__h.forEach(ls),e.__H.__h=[]}catch(t){e.__H.__h=[],me.__e(t,e.__v)}}me.__b=function(e){typeof e.type!="function"||e.o||e.type===ln?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Ke=null,cm&&cm(e)},me.__r=function(e){dm&&dm(e),Du=0;var t=(Ke=e.__c).__H;t&&(ss===Ke?(t.__h=[],Ke.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Ro,n.__N=n.i=void 0})):(t.__h.forEach(Oo),t.__h.forEach(ls),t.__h=[])),ss=Ke},me.diffed=function(e){mm&&mm(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(hm.push(t)!==1&&lm===me.requestAnimationFrame||((lm=me.requestAnimationFrame)||y6)(E6)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Ro&&(n.__=n.__V),n.i=void 0,n.__V=Ro})),ss=Ke=null},me.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Oo),n.__h=n.__h.filter(function(a){return!a.__||ls(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],me.__e(a,n.__v)}}),gm&&gm(e,t)},me.unmount=function(e){pm&&pm(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Oo(a)}catch(u){t=u}}),n.__H=void 0,t&&me.__e(t,n.__v))};var fm=typeof requestAnimationFrame=="function";function y6(e){var t,n=function(){clearTimeout(a),fm&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);fm&&(t=requestAnimationFrame(n))}function Oo(e){var t=Ke,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Ke=t}function ls(e){var t=Ke;e.__c=e.__(),Ke=t}function Em(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function ym(e,t){return typeof t=="function"?t(e):t}var $a={},T6={root:"",lang:"en",fallbackLang:"en"};function ms(e,t){let n=Object.assign({},T6,e);$a=t||$a;let[a,u]=Ae(n.lang),[r,o]=Ae($a),[i,s]=Ae(!1),l=d=>{if(r.hasOwnProperty(d))return;s(!1);let m=Fd(n.root||"",d);n.getUrl&&(m=n.getUrl(n.root||"",d),fetch(m).then(g=>g.json()).then(g=>{$a[d]=g,o({...$a}),s(!0)}).catch(g=>{o({...$a}),s(!0)}))};return Ct(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:u,t:(d,m)=>{if(!r.hasOwnProperty(a))return d;let g=vu(r,a,d);return g===d&&a!==n.fallbackLang&&(g=vu(r,n.fallbackLang,d)),W0(g,m)},isReady:i}}var x6=0;function U(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--x6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return me.vnode&&me.vnode(s),s}var ps=is(null),gs={root:"assets",lang:"en",fallbackLang:"en"},Tm=e=>{let{t,setLang:n,lang:a,isReady:u}=ms({root:e.root||gs.root,lang:e.lang||gs.lang,fallbackLang:e.fallbackLang||gs.fallbackLang,getUrl:e.getUrl},e.translations);return U(ps.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function xm(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let l of r){let d=n[l].matches;for(let m of d)u[m]||(u[m]=[]),u[m].push(l)}let o=u[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(d=>d!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Cm(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function wm(e){let t;try{t=new URL(e)}catch{return!1}let n=Kc(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(C6(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function C6(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function vm(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function km(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function yn(e){let{items:t,maxWidth:n}=e;return n=n||128,U("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>U("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var Io="DROP_DOWN_DEFAULT_VALUE";function fs(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=cs(null);return U("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:Io,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==Io){o.current.value=Io,o.current?.dispatchEvent(new Event("change"));let l=u.find(c=>c.value===s);l&&n(l)}},children:[{value:Io,label:e.label}].concat(u).map((i,s)=>U("option",{value:i.value,children:i.label},"option-"+s))})}function cn(){return ds(ps)}function hs(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=cn(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[r,"\uFF1A"]}),U(yn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Lu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var w6=({date:e})=>{let{t}=cn(),[n,a]=Ae(!1);return Ct(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:U("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},v6=({minVersion:e})=>{let{t}=cn();return U("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},k6=()=>{let{t:e}=cn();return U("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},A6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=cn();return U("p",{class:"text-sm",children:[a("failToSyncRules")," ",U("a",{onClick:t,children:a("retry")}),U("br",{}),a("failedReason"),"\uFF1A",e,U("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function bs(e){let{isShowError:t,request:n}=e,[a,u]=Ae(null),{t:r}=cn(),[o,i]=Ae(null),[s,l]=Ae(null),[c,d]=Ae(""),[m,g]=Ae(!1),[f,w]=Ae(!1),[T,p]=Ae(!1),[C,M]=Ae(null),[L,A]=Ae(null),y=Fn(),S=async()=>{d("");let D=o;if(o===null)try{let x=await n({url:ru});x?(i(x),D=x,g(!0)):(d(r("unknownError")),l(null))}catch(x){l(null),d(x.message);return}D!==null?(e.setStorageBuildinConfig(D),l(!1),u(D.buildinConfigUpdatedAt)):(d(r("canNotFetchRemoteRule")),l(null))};return Ct(()=>{Gn().then(D=>{let x=D.buildinConfigUpdatedAt;M(D);let F=new Date(x);if(u(x),y==="0.0.0"){p(!0);return}n({url:ru}).then(O=>{let k=O,B=k.minVersion,J=y;i(k);let N=k.latestVersion;if(N&&(Lu(J,N)?A(!0):A(!1)),Lu(J,B)){let ge=k.buildinConfigUpdatedAt;new Date(ge)>F?(l(!0),S()):l(!1)}else w(!0),l(null)}).catch(O=>{l(null),d(O.message)})})},[]),Ct(()=>{Gn().then(D=>{M(D)})},[a]),C?U("div",{class:"text-sm mt-2",style:{maxWidth:218},children:T?U(k6,{}):c?t===!1?null:U(A6,{handleSyncing:S,message:c,date:a||""}):f?t===!1?null:U(v6,{minVersion:o.minVersion}):s===null||s===!0?null:m?U(w6,{date:a}):null}):null}function Es(e){let t=Fn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:d,config:m,openAboutPage:g,onTranslateTheWholePage:f,onToggleEnabled:w,openOptionsPage:T,ontranslateToThePageEndImmediately:p,onSetPageLanguage:C,onToggleTranslate:M,onTranslateLocalPdfFile:L,onTranslatePdf:A,onRestorePage:y,ctx:S,currentUrl:D,currentLang:x,onClose:F,onTranslatePage:O,onSetLocalConfig:k,onMouseTriggerChanged:B,errorMsg:J,disabledButton:N,noPermissionPDF:ge}=e,pe=a,[Ne,be]=Ae(""),[vt,ye]=Ae(J),{t:b,lang:I}=cn(),G=60;I.startsWith("zh")||(G=65);let le=null,V=null,Se=null,Q=null,Te=null,Z=null,ue=null,ce=null,Y=null,H=null,ee=null,Le=null,De=!0;if(m){Rt()&&m&&(De=m.generalRule.showSponsorOnSafari);let{translationService:_,translationServices:X,translationUrlPattern:we}=m;fn[_]&&(ce=Vi(_,S)),X&&X[_]?Le=X[_]||{}:Le={};try{Y=new URL(D||"")}catch{}if(D&&wm(D)){H=vm(Y.hostname),ee=km(D);let{matches:fe,excludeMatches:Ee}=we;V=fe.includes(H),le=fe.includes(Y.hostname),Q=Ee.includes(H),Se=Ee.includes(Y.hostname),Z=fe.includes(ee),ue=Ee.includes(ee)}}if(m&&x&&x!=="auto"){let{translationLanguagePattern:_}=m,{matches:X}=_;X.includes(x)?Te=!0:Te=!1}let te=_=>{_.preventDefault(),T()},He=_=>{pe(X=>(X.alpha?be("Success disable alpha!"):be("Success enable alpha!"),{...X,alpha:!X.alpha}))},tt=_=>{pe(X=>({...X,translationMode:_})),o(_)},Me=()=>{pe(_=>({..._,translationArea:"body"})),f()},_e=()=>{pe(_=>({..._,translationArea:"main"})),n()},Be=(_,X,we,fe)=>{if(_==="default"){pe(ot=>{let xe={...ot.translationUrlPattern};return{...ot,translationUrlPattern:{...ot.translationUrlPattern,matches:An([Y?.hostname,H,D],xe.matches),excludeMatches:An([Y?.hostname,H,D],xe.excludeMatches)}}});return}let Ee=_,Ie=Ee==="matches"?"excludeMatches":"matches";Y&&pe(ot=>{let xe={...ot.translationUrlPattern};return xe[Ee]=Wi(X,xe[Ee]),fe.length>0&&(xe[Ee]=An(fe,xe[Ee])),xe[Ie]=An(we,xe[Ie]),{...ot,translationUrlPattern:{...ot.translationUrlPattern,...xe}}}),Ee==="matches"&&l==="Original"?setTimeout(()=>{O(),F()},100):Ee==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{y(),F()},100)},kt=_=>{if(!_){pe(fe=>{let Ee={...fe.translationLanguagePattern};return{...fe,translationLanguagePattern:{...fe.translationLanguagePattern,matches:An(x,Ee.matches),excludeMatches:An(x,Ee.excludeMatches)}}});return}let X=_,we=X==="matches"?"excludeMatches":"matches";x&&pe(fe=>{let Ee={...fe.translationLanguagePattern};return Ee[X]=Wi(x,Ee[X]),Ee[we]=An(x,Ee[we]),{...fe,translationLanguagePattern:{...fe.translationLanguagePattern,...Ee}}}),X==="matches"&&l==="Original"&&setTimeout(()=>{O(),F()},100)},xn=Y?.pathname.toLowerCase().endsWith(".pdf"),Ue=b("translate");l==="Translated"||l==="Error"?Ue=b("show-original"):l==="Original"?xn?lr()&&Y.protocol==="file:"||ge?Ue=b("translate-firefox-local-pdf"):ne()?Ue=b("noSupportTranslate-pdf"):Ue=b("translate-pdf"):Ue=b("translate"):Ue=b(l);let tn=b("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(m.shortcuts.toggleTranslatePage&&(G4()&&S.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ue+=` (${b(`fingers.${S.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ue+=` (${m.shortcuts.toggleTranslatePage})`),m.shortcuts.toggleTranslateToThePageEndImmediately&&(tn+=` (${m.shortcuts.toggleTranslateToThePageEndImmediately})`));let Kt=[];S&&(Kt=Cc(S));let nt=_=>{_.preventDefault(),F()},Ft=nd(S.config.translationService,S.config.targetLanguage);return U("div",{class:"p-3",children:[U("div",{class:"text-sm",children:[U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),U(yn,{items:zt.map(_=>({label:So(_,m.interfaceLanguage),value:_,selected:_===S.sourceLanguage,onSelected:X=>{C(X.value)}}))})]}),m&&m.targetLanguage&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),U(yn,{items:Ft.filter(_=>_!=="auto").map(_=>({label:So(_,m.interfaceLanguage),value:_,selected:_===m.targetLanguage,onSelected:X=>{pe(we=>({...we,targetLanguage:X.value}))}}))})]}),ce&&Kt.length>0&&U(ln,{children:[U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),U(yn,{items:Kt.map(_=>({label:`${b("translationServices."+_.id)}${_.ok?"":" "+b("needAction")}`,value:_.id,selected:_.selected,onSelected:X=>{let we=Kt.find(fe=>fe.id===X.value);we.ok?(pe(fe=>({...fe,translationService:we.id})),we.props.length===0?setTimeout(()=>{O()},1):setTimeout(()=>{y()},1)):(pe(fe=>({...fe,translationService:we.id})),setTimeout(()=>{T()},100))}}))})]}),Le&&ce.props.length>0&&ce.props.map((_,X)=>U("div",{class:"pl-4 text-sm",children:U(hs,{field:_,value:Le[_.name],onChange:we=>{pe(fe=>{let Ee=fe.translationServices||{},Ie=Ee[ce.id]||{};return setTimeout(()=>{y()},1),{...fe,translationServices:{...Ee,[ce.id]:{...Ie,[_.name]:we}}}})}},"field-"+X)},"service"+X))]}),Y&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:b("forThisSite")}),U(yn,{items:[{label:b("default"),value:"default",selected:le===!1&&Se===!1&&!V&&!Q&&!Z&&!ue,onSelected:()=>{Be("default",Y.hostname,[],[]);let _=Y.hostname,X=S.localConfig.tempTranslationUrlMatches||[],we=X.filter(Ee=>Ee.match!==_),fe=!1;we.length!==X.length&&(fe=!0),fe&&k({...S.localConfig,tempTranslationUrlMatches:[...we]})}},ee&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:Z,onSelected:()=>{Be("matches",ee,[ee],[])}},{label:b("alwaysTranslateSomeSite",{hostname:Y.hostname}),value:"matches",selected:le,onSelected:_=>{Be(_.value,Y.hostname,[Y.hostname,H,ee],[H])}},H&&{label:b("alwaysTranslateSomeSite",{hostname:H}),value:"matchesWild",selected:V,onSelected:()=>{Be("matches",H,[ee,Y.hostname,H],[Y.hostname])}},ee&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:ue,onSelected:()=>{Be("excludeMatches",ee,[ee],[])}},{label:b("neverTranslateSomeSite",{hostname:Y.hostname}),value:"excludeMatches",selected:Se,onSelected:_=>{Be(_.value,Y.hostname,[Y.hostname,H,ee],[H])}},H&&{label:b("neverTranslateSomeSite",{hostname:H}),value:"excludeMatchesWild",selected:Q,onSelected:()=>{Be("excludeMatches",H,[Y.hostname,ee,H],[Y.hostname])}}].filter(Boolean)})]}),B&&lu()&&U("div",{class:"flex justify-between mb-2",children:[U("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),U(yn,{items:rr.filter(_=>!(rr.includes(m.generalRule.mouseHoverHoldKey)&&_==="OtherCustom")).map(_=>{let X=b("mouseHoldKey",{key:_}),we=rr.includes(m.generalRule.mouseHoverHoldKey),fe=_===m.generalRule.mouseHoverHoldKey;return _==="Auto"?X=b("mouseHoldKeyAuto"):_==="Off"?X=b("mouseHoldKeyOff"):_==="OtherCustom"?X=we?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:m.generalRule.mouseHoverHoldKey}):_==="Other"&&(X=b("mouseHoldKeyOther")),we||_==="OtherCustom"&&(fe=!0),{label:X,value:_,selected:fe,onSelected:Ee=>{Ee.value==="Other"?T("#interface"):B(Ee.value)}}})})]})]}),U("div",{class:"",children:U("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{xn?A&&A():M()},"aria-busy":l==="Translating",disabled:N||l==="Translating",children:Ue})}),U("div",{class:"text-sm",children:Ne}),U("div",{class:"text-sm",children:vt}),U("div",{class:"flex justify-between flex-wrap",children:[x&&x!=="auto"?U("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[U("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Te,onChange:_=>{let X=_.target.checked;kt(X?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:So(x,m.interfaceLanguage,!1,!0)})]}):U("span",{}),U("div",{class:"flex flex-end flex-grow",children:U(fs,{label:b("more"),showArrow:!0,maxWidth:G,onSelected:_=>{_.value==="changeToOnlyTranslationMode"?tt("translation"):_.value==="changeToDualTranslationMode"?tt("dual"):_.value==="translateTheWholePage"?f():_.value==="translateToThePageEndImmediately"?p():_.value==="translateTheMainPage"?n():_.value==="showTranslationOnly"||(_.value==="translateLocalPdfFile"?L&&L():_.value==="translateLocalHtmlFile"?r&&r():_.value==="translateLocalSubtitleFile"?i&&i():_.value==="donate"?(globalThis.open(m.donateUrl),F()):_.value==="feedback"?(globalThis.open(m.feedbackUrl),F()):_.value==="options"?(T(),F()):_.value==="changeToTranslateTheWholePage"?Me():_.value==="changeToTranslateTheMainPage"?_e():_.value==="about"?g():_.value==="toggleEnabled"?w():_.value==="openEbookViewer"?d():_.value==="openEbookBuilder"&&c())},menus:[m.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},m.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},m.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},m.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+tn,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!ne()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!ne()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(m.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(m.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(De?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),U("footer",{children:[U(bs,{isShowError:!1,request:u,setStorageBuildinConfig:s}),U("div",{class:"mt-3 text-sm flex justify-between",children:[U("a",{href:"#",class:"secondary",onClick:te,children:b("options")}),ne()&&U("a",{href:"#",class:"secondary",onClick:nt,children:b("close")}),U("span",{class:"immersive-translate-no-select muted",onClick:Cm(7)(He),children:["V",t,m.enabled?null:U("a",{href:"#",onClick:w,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var ys={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return q.storage[n].get(a)},set:(e,t,n)=>q.storage[n].set({[e]:t})};function jo(e,t,n){let[a]=Ae(()=>typeof t=="function"?t():t),[u]=Ae(n),[r,o]=Ae(a),[i,s]=Ae(!1),[l,c]=Ae("");Ct(()=>{ys.get(e,a,u).then(m=>{m[e]&&o(m[e]),s(!0),c("")}).catch(m=>{s(!1),c(m)})},[e,a,u]);let d=na(m=>{let g=typeof m=="function"?m(r):m;v.debug("new settings",g),ys.set(e,g,u).then(()=>{o(g),s(!0),c("")}).catch(f=>{o(g),s(!1),c(f)})},[u,e,r]);return[r,d,i,l]}function Ts(e,t,n){let a=[];return function(){let[r,o,i,s]=jo(e,t,n),l=na(c=>{for(let d of a)d(c)},[]);return Ct(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,l,i,s]}}function Am(e,t){return Ts(e,t,"sync")}var S6="userConfig",D6={},L6=Am(S6,D6);function Sm(e){let[t,n,a,u]=L6(),r=na(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function zo(e){try{let t=new Date;v.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await q.storage.local.set({[iu]:t.toISOString()}),await F6(),ne()||await Yc()}catch(t){v.error("run cron task failed",t)}}async function Dm(){let t=(await xt()).interval;if(t){let n=await q.storage.local.get(iu);if(n&&n[iu]){let a=n[iu];if(Date.now()-new Date(a).getTime()a?(await q.storage.local.set({buildinConfig:t}),v.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):v.debug(`no need to sync rules, latest: ${a}`):v.info(`local version is too old, please update to ${o} or later`)}catch(e){v.error("sync rules error: ",e)}}function xs(e){let{onClose:t}=e,[n,a]=Ae("Original"),[u,r,o,i]=Sm(()=>{setTimeout(()=>{M("updateGlobalContext",!1)()},250)}),[s,l]=Ae(null),[c,d]=Ae(globalThis.location.href),[m,g]=Ae("auto"),[f,w]=Ae(null),T=N=>{a(N.detail)},p=N=>{g(N);let ge=xm(c,N,s.sourceLanguageUrlPattern);r(pe=>({...pe,sourceLanguageUrlPattern:ge})),Ut(N)},C=()=>{d(globalThis.location.href)};Ct(()=>(document.addEventListener(Qu,T,!1),xt().then(N=>{l(N);let ge=un();g(ge);let pe=Re();a(pe),zo(N.interval)}),document.addEventListener("urlChange",C),()=>{document.removeEventListener("pageTranslatedStatus",T),document.removeEventListener("urlChange",C)}),[]),Ct(()=>{xt().then(N=>{l(N)})},[u]),Ct(()=>{c&&s&&qt({url:c,config:s}).then(N=>{w(N)})},[c,s]);let M=(N,ge,pe={})=>()=>{Wa({method:N,data:pe||{}}),ge&&t()},L=()=>{t()},A=()=>{r(N=>({...N,enabled:!N.enabled})),setTimeout(()=>{L()},50)},y=()=>{t0(),setTimeout(()=>{L()},50)},S=()=>{t0(),setTimeout(()=>{L()},50)},D=(N="")=>{Lr(!0,N),setTimeout(()=>{t()},50)},x=()=>{Fr(),setTimeout(()=>{t()},50)},F=()=>{Pr(),setTimeout(()=>{t()},50)},O=()=>{Vc(),setTimeout(()=>{t()},50)},k=()=>{Mr(),setTimeout(()=>{t()},50)},B=()=>{Jc(),setTimeout(()=>{t()},50)},J=N=>{r(ge=>({...ge,generalRule:{...ge.generalRule,mouseHoverHoldKey:N}}))};return!s||!f?null:U(Es,{openEbookViewerPage:F,openEbookBuilderPage:k,onSwitchTranslationMode:N=>{M("switchTranslationMode",!0,{mode:N})()},onTranslateLocalHtmlFile:O,onTranslateLocalSubtitleFile:B,request:$,onClose:L,onToggleEnabled:A,onTranslateTheWholePage:M("translateTheWholePage",!0),openOptionsPage:D,onToggleTranslate:M("toggleTranslatePage",!0),onTranslateTheMainPage:M("translateTheMainPage",!0),ontranslateToThePageEndImmediately:M("translateToThePageEndImmediately",!0),onTranslatePage:M("translatePage",!0),onRestorePage:M("restorePage",!1),onTranslatePdf:y,openAboutPage:x,onTranslateLocalPdfFile:S,onSetPageLanguage:p,onUserConfigChange:r,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:m,onSetLocalConfig:Dr,onSetBuildinConfig:zc,onMouseTriggerChanged:J})}function P6(e,t){for(let n of t){if(ne()&&!lr()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Cs={position:"right",right:0,top:335},wt={...Cs},Wo=!1,aa=null,dn=null,qo=null,ws=null,Ka=null,vs=null,Lm=6,Ho,Uo,Pm=null,Mm=null;async function As(){let e=lt();vs=await jc(),wt=vs.pagePopupConfig||wt;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});ws=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` +`);P6(n,[a]);let u=document.createElement("div");u.innerHTML=Ce.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),aa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");dn=o,qo=n.querySelector("#mount"),aa.setAttribute("style",ks(wt)),Fs(),o.addEventListener("mousedown",_m),o.addEventListener("touchstart",B6),globalThis.addEventListener("resize",s=>{aa.setAttribute("style",ks(wt))})}function M6(){Bo(null,qo),qo.style.display="none",dn.style.display="block",Ka=setTimeout(()=>{Fs(!0)},2e3)}function Fm(e){let t=e.querySelector("#mount"),n=()=>{M6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await xt();Bo(U(Tm,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:Kd,children:U("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:U("div",{class:"immersive-translate-popup-wrapper",style:_6(),children:U(xs,{onClose:n})})})}),t)})().then(()=>{dn.style.display="none",qo.style.display="block"})}function _6(){let e=Ss(),t=e.height,{position:n,top:a,left:u}=wt,r={position:"fixed"},o=300,i=300,s=100;return bl()&&(n=Cs.position,a=Cs.top),n==="right"||n==="left"?(r.top=a-s,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-s,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function Ss(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function _m(e){Mm=aa.getAttribute("style"),Ho=e.pageX,Uo=e.pageY,Ka&&clearTimeout(Ka),Wo=!1,dn.style.opacity="1",dn.style.transform="none",Pm=dn.getAttribute("style"),globalThis.addEventListener("mousemove",Ds),globalThis.addEventListener("mouseup",Ls),globalThis.addEventListener("touchmove",Bm),globalThis.addEventListener("touchend",$o),globalThis.addEventListener("touchcancel",$o)}function B6(e){e.preventDefault&&e.preventDefault(),_m(e.changedTouches[0])}function Bm(e){Ds(e.changedTouches[0])}function $o(e){e.preventDefault&&e.preventDefault(),Ls(e.changedTouches[0])}function Ds(e){e.preventDefault&&e.preventDefault(),Wo=!0,aa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Ls(e){e.preventDefault&&e.preventDefault(),O6(),Ka&&clearTimeout(Ka),Ho=Ho||0,Uo=Uo||0;let t=Math.abs(e.pageX-Ho),n=Math.abs(e.pageY-Uo);t{Fs(!0)},2e3)}function Fs(e=!1){dn.style.opacity="0.4";let t="";wt.position==="left"?t="translateX(-40%)":wt.position==="right"?t="translateX(40%)":wt.position==="top"?t="translateY(-40%)":wt.position==="bottom"&&(t="translateY(40%)"),dn.style.transform=t,e&&(dn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function O6(){globalThis.removeEventListener("mousemove",Ds),globalThis.removeEventListener("mouseup",Ls),globalThis.removeEventListener("touchmove",Bm),globalThis.removeEventListener("touchend",$o),globalThis.removeEventListener("touchcancel",$o)}function ks(e){let t=N6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function N6(e){let{position:t,...n}=e,a=Ss(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var Ko=!1;async function Rm(e){if(!e){let t=await xt(),n={url:globalThis.location.href,config:t};e=await qt(n)}e.config.debug&&v.setLevel("debug"),e.isTranslateExcludeUrl?v.debug("detect exclude url, do not inject anything."):(ha().any||ne())&&e.rule.isShowUserscriptPagePopup&&(Ko||(Ko=!0,As().catch(t=>{v.error("init popup error",t)})))}async function Om(){Ko||(Ko=!0,As().catch(e=>{v.error("init popup error",e)}))}var Nm=!1,zm=[()=>{je.unbind()}],Ms=[...zm],I6=ct(async()=>{await Lr()},50),j6=ct(async()=>{await Fr()},50),z6=ct(async()=>{await Mr()},50),H6=ct(async()=>{await Pr()},50),Hm=ct(e=>{Wa({method:e})},50),U6=ct(()=>{wr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),W6=ct(()=>{Sr();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),q6=ct(()=>{kr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function $6(e,t){let n=e.document;if(Nm)return;if(Nm=!0,ne()||Fc(),n.addEventListener("securitypolicyviolation",t1),n.addEventListener("immersiveTranslateEbookLoaded",e1),n.addEventListener(g4,Q6),n.addEventListener("click",u=>{J6(u,t)}),ne()&&(globalThis.top!=globalThis.self?e.addEventListener("message",G6,!1):n.addEventListener(kn,K6)),globalThis.top===globalThis.self){let u=rn.rootIframe(Ri);u.handleAsk("getRateLimitDelay",s3),u.handleAsk("throttleRequest",S3)}}function Fu(e,t){n1(),$6(t,e);let n=t.document,a=V6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Ms.push(()=>{n.removeEventListener("touchstart",a)}),ne()&&globalThis.top===globalThis.self&&(us(e.config),a1(e.config)),Rt()&&us(e.config)}function K6(e){Om()}function G6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===Yu&&Ta(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function V6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?U6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?q6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&W6()}function J6(e,t){let n=e.target;if(!n||!n.getAttribute){Ps(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&Je(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${z}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),vr(),Ps(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${z}-tooltip-text`);jm(X6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),jm(Y6.bind(null,t)));Ps(n)}async function Im(e=!1){let t=document.querySelector(`.${z}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await Ic();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Nc(n)}function jm(e){let t=`${z}-modal`,n=`${z}-modal-title`,a=`${z}-modal-body`,u=`${z}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),s=r.querySelector(`.${a}`);e(r,o,s,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=z+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=z+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(d){d.target==r&&(r.style.display="none")},e(r,s,l,c)}setTimeout(()=>{Z6()},100)}function Y6(e,t,n,a,u){let r=Um.bind(null,e);n.innerHTML=`
${M4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.querySelector(`div[data-${z}-cancel-desc]`),i=document.createElement("p");i.innerHTML=o?Ce.sanitize(o.textContent||""):Ce.sanitize(r("searchEnhancementNotes")),i.style.cssText="margin-bottom:12px",a.appendChild(i);let s=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let g=0;g${r("option")}`})),a.appendChild(l);let c=a.querySelector(`.${z}-open-enhancement`);c&&(c.onclick=function(){Gc(!0)});let d=document.createElement("button");d.innerText=r("closeModal"),d.className=`${z}-btn ${z}-cancel-btn`;let m=document.createElement("button");m.className=`${z}-btn`,m.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(d),u.appendChild(m),d.onclick=function(){t.style.display="none"},m.onclick=function(){let g=a.getElementsByTagName("input"),f="";for(let w=0;w{Go()},10)}function t1(e){de.HAS_CSP_ERROR="1"}function n1(){Ms.forEach(e=>{e()}),Ms=zm}function a1(e){if(ne()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Rr.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=Ua(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:Fi,title:Ua("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:Pi,title:Ua("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:Di,title:Ua("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:Li,title:Ua("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===Di?I6():r.id===Li?j6():r.id===Pi?z6():r.id===Fi?H6():Hm(r.id)},r.key)}}function u1(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{v.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function Wm(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Oe(i.left,r)&&Oe(i.width,u.width));return{prevP:u,curP:o}}function _s(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function qm(e){return e?e==e[0].repeat(e.length):!0}function Oe(e,t,n=5){return Math.abs(e-t)<=n}var Bs=[",","\\.","\uFF0C","\u3002"];function $m(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Oe(a.left,u.left,7)&&Oe(a.nextTop,u.top,10)&&Vo(a,u)}function Km({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Ym(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Xm({prevLineP:e,prevP:t},n){return Oe(e.left,n.left,1)&&Oe(e.right,t.right,1)&&t.mergedTimes>=1}function Rs(e,t){let{prevLineP:n}=e;return Ym(e,t)&&(Oe(n.bottom,t.bottom)||Oe(n.nextTop,t.top)&&Oe(n.left,t.left))}function Zm(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return Ym(e,t)&&n.width0&&a/u<.1&&n.left!_s(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Ve({text:n.map(r=>r.str).join(` +`).slice(0,1e3)});yr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=n[s];r?(l.translatedStr=r.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),o1(l)})}var Ns={};async function r1(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Ns).filter(n=>!!n);await Jo(ag,t)}function o1(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Ns[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",r1)):e.translateStatus=="success"&&(Ns[e.id]=void 0,t.innerHTML=Ce.sanitize(e.translatedStr)))}function ug(e,t){let n=[],a=s1(e,t);return l1(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){ng(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{ng(e,n,o,!1)}),n.push("
")}}),`
${n.join("")} -
`}function Zm(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(u*o)+1).toFixed(2)}%`:"auto",d=`${(l.left*100/(u*o)).toFixed(2)}%`,m=`${(l.top*100/(r*o)).toFixed(2)}%`,g=H4()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,v=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${d};top: ${m};width:${c};max-width:${s};`,!g&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let T=Ms(l.str)?"":"translate-pending",p=l.str;l.translateStatus=="success"&&(p=l.translatedStr,T=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function t1(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(m=>{m[0].width>o&&(o=m[0].width)});let l=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,d=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${d};height:${s-i}px;overflow:auto;`}function n1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,Rs(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function a1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],Hm(e,a)){r.push(a);return}n.push([a])}),n}var tg="immersive-translate",Ga,Tn=[];async function ug(e){let t=globalThis.PDFViewerApplication;if(!t)return;if($e("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await ng(1);await Jo(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Tn=[],Ga=void 0,s1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await ng(a);await Jo(e,u||[])})}}function u1(e){if(Ga)return{...Ga,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ga={...i},i}async function ng(e){let t=u1(e);if(!t)return;Tn[e]||(Tn[e]=await r1(t,e,Tn[e-1]||[]));let n=Tn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${tg}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${tg}-page`);let r=eg(t,n);return u.innerHTML=De.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function r1(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,s]=a._pageInfo.view;Ga.pageWidth=i,Ga.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=i1(e,u);e.origLineParagraphs=l;let{prevP:c,curP:d}=jm(e,l);return d&&rg(c,void 0,d),o1(e,l)}function o1(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,qm(e,o)){if($m(e,o)){r(l,o);return}if(Gm(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},r(l,o);return}if(Vm(e,o)){r(l,o);return}if(Bs(e,o)){r(l,o);return}if(Jm(e,o)){r(l,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],s=r.transform[5],l=r.width*n,c=t.styles[r.fontName].fontFamily,d=r.transform[3],m=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+m)*d;isNaN(f)&&(f=d);let v=i*n,T=v+l,p=(a-s-f)*n,C=p+d*n,M=C+d*n*.2,L=T+d*n*.3,A={str:o,left:v,nextLeft:L,top:p,nextTop:M,id:`pageNum-${_t()}`,width:l,originFontName:r.fontName,fontName:c,fontSize:d,right:T,bottom:C,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(A);else{let y=u[u.length-1];if(e.prevLineP=y,Ym(e,A)){Wm(e,A)?y.str+=o:y.str+=" "+o,y.right=T,y.fontName=c,y.width=Math.max(y.width+l,T-y.left),y.nextLeft=L;return}if(Xm(e,A)){y.width=Math.max(y.width+l,T-y.left),y.right=T,y.nextLeft=L,y.attachList.push(A);return}u.push(A)}}),u}function rg(e,t,n){if(!Vo(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function s1(e){setTimeout(()=>{let t="";for(let n=1;n<=Tn.length;n++){let a=!1;if(Tn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Je({text:t}).then(n=>{$e("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ua={};async function Ns(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await on(e,n,1e3);return Ut(a),a}async function og(e){Tt("Translating");let t=an(),n=Ea(),a=[...document.querySelectorAll(".source-text")];if(fo(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Ye(r,"id",o+""),i&&(Na(i,o)?.remove(),i.appendChild(wu(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await rn({sentences:u},e,(r,o,i)=>{let s=i.id,l=Na(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),r?(c.innerHTML=De.sanitize(`${r.message}`),ua[s]={ok:!1,sentence:i}):o&&(c.innerHTML=De.sanitize(o.text),ua[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Tt("Translated")}}async function ig(e){Tt("Translating"),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ua),n=[],a=[];for(let u of t){let r=ua[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let s=i.parentElement;i.remove(),s&&(delete ua[u],s.appendChild(wu(e,u)),a.push(r.sentence))}}}try{await rn({sentences:a},e,(u,r,o)=>{let i=o.id,s=Na(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),u?(l.innerHTML=De.sanitize(`${u.message}`),ua[i]={ok:!1,sentence:o}):r&&(l.innerHTML=De.sanitize(r.text),ua[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Tt("Translated")}}function Is(){Tt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var js={};async function sg(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await on(e,n,1e3);return Ut(a),a}async function lg(e){Tt("Translating"),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(js),n=[];for(let a of t){let u=js[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${er}='${a}']`);o&&o.remove(),n.push(u)}}try{await xo(n,e,e.config.translationMode)}catch{}finally{Tt("Translated")}}function cg(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+jt);for(let u of a)u.remove()}Tt("Original")}async function dg(e){Tt("Translating");let t=_t(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ja(s,e);let l=s.body;if(!l)continue;let c=$t(e);c.isModifyImage=!1,zn({id:t,container:l,filterRule:c,onParagraph:d=>{a.push(d)}})}let r=po(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=Eo(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await Zi(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(u.push(l),js[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await xo(u,e,e.config.translationMode)}catch{}finally{Tt("Translated")}}var l1=new AbortController,{signal:c1}=l1,qs=0,$s=0,zs=!1,Hs=0,Pu=!1,ra,mg=0,oa=[];function Yo(e,t){d1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=ct(d=>{if(zs==!1&&Math.abs(d.clientX-qs)+Math.abs(d.clientY-$s)>3&&(Hs<2?Hs+=1:zs=!0),qs=d.clientX,$s=d.clientY,o||Pu&&!ra){let m=bg(a.rule,t);if(m){if(Ks(m))return;pg(a,m)}}},o?700:300),s=d=>{let m=d.target;Ks(m)||pg(a)},l=d=>{let m=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=je.getPressedKeyCodes();if(g.length>1&&je[m]&&(mg=Date.now(),Pu=!1),g.length===1&&je[m]){let f=Date.now();Pu=!0,ra&&clearTimeout(ra),ra=setTimeout(()=>{let v=mg-f;v>0&&v<=150?Pu=!1:s(d),ra=void 0},150)}};if(oa.push(()=>{ra&&clearTimeout(ra)}),r)return;Us("mousemove",i,t),oa.push(()=>{t.removeEventListener("mousemove",i)});function c(){zs=!1,Hs=0,i.cancel()}if(o)Us("blur",c,t),oa.push(()=>{t.removeEventListener("blur",c)});else{let d=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=["ctrl","alt","shift","cmd","command","option","control"];Us("keyup",gg,t),oa.push(()=>{t.removeEventListener("keyup",gg)}),m.includes(d)?je("*","mouseHover",l):je(u.generalRule.mouseHoverHoldKey,"mouseHover",s),je.setScope("mouseHover"),oa.push(()=>{je.deleteScope("mouseHover")})}}function d1(){oa.forEach(e=>e()),oa=[]}function gg(e){Pu=!1}function Us(e,t,n=window){return n.addEventListener(e,t,{signal:c1})}function pg(e,t,n=window){if(t=t||bg(e.rule,n),!t){k.debug("can not find selection part!");return}if(Ks(t)){k.debug("exclude dom");return}Nd(e,t);let a=ko();a?.currentUrl!==window.location.href&&(Hn(),ts(e)),a&&(a.setupMouseHoverListener=Yo);let u=$t(e);u.excludeSelectors=[],u.selectors=[];let r=!1;zn({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{ku(a,o,!0).then(i=>{if(i&&!r){r=!0;let s=Date.now();et(d4,s),$e("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function bg(e,t){return m1(qs,$s,e,t)}function m1(e,t,n,a){let u=sd(e,t,n,a);if(u==null)return;let r=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=ld(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:hg(l,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(l){k.debug("get mouse over word fail",l)}let s=u.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Xo&&self.removeEventListener("keydown",Xo),Xo=i,self.addEventListener("keydown",Xo);function i(l){if(Va)return;let c=l,d=c.target||c.srcElement,m=d?.tagName;(d?.isContentEditable||m=="INPUT"||m=="SELECT"||m=="TEXTAREA")&&(D1(l,u.triggerKey,u.codePrefixAlias)?s(l):r=0)}function s(l){Date.now()-o=u.triggerTimes&&(h1(e,u),r=0)}}function g1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let s=r+i;return u.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function Eg(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Ja;function p1(e){let t=e.parentElement;if(!t)return;Ja=document.createElement("div"),Ja.className=H+"-input",Ja.innerHTML=`
`,t.appendChild(Ja);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function f1(){Ja&&Ja.remove()}async function h1(e,t){if(!Va)try{let d=function(){o=e.config.inputTargetLanguage;let g=r.split(" ")[0];g&&g[0]&&(g=g[0].toLowerCase()+g.slice(1)),g.trim()&&t.flatAlias.includes(g)?(o=Eg(g,t.codeAlias),u=r.slice(g.length+1)):u=r},m=function(){o="";let g=g1(t),f=r.split(g);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let T=r.lastIndexOf(u),p=r.slice(0,T).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let v=r.slice(a.length+1,r.indexOf(u)).trim();if(o=Eg(v,t.codeAlias),!o){k.warn("not found alias",v);return}},n=document.activeElement;Va=!0,p1(n);let a="",u="",r=Mu(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?d():(m(),o||d()),S1(e);let i=b1(u,t),s=await on(e,i);k.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;et(m4,Date.now());let c=await Pa(l,e);A1(n,a+c.text),Va=!1}catch(n){throw Va=!1,n}finally{Va=!1,f1()}}function b1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function E1(e,t){let n=t.innerHTML,a=Mu(t);return{html:n.replace(a,e),text:e}}function yg(e,t,n=!1){let a=Mu(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function Mu(e){return e.value||e.innerText||e.textContent}async function ia(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function y1(e,t,n){await ia(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await ia(10)}async function T1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await ia(10))}async function x1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await ia(20),(t.value||t.value==="")&&(t.value=e.text)}async function C1(e,t){Tg(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await ia(20))}var w1=[y1.bind(null,["plain"])];function v1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function Tg(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function k1(e){if(Tg(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function A1(e,t){await k1(e),await ia(50);let n=E1(t,e);v1(e),k.debug("clearContnet",Mu(e)),await ia(50);for(let a of[...w1,C1,x1,T1])if(await a(n,e),k.debug("setContent",a.name,yg(n,e),Mu(e),n),yg(n,e))break}function S1(e){$e("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function D1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function vg(e){if(ha().any||!e.rule.enableSearchEnhancement||!/https:\/\/www\.google\..+\/search/.test(e.url))return;let t=_1(e.url);if(!t)return;let n=await on(e,t);if($e("detect_search_action",[{name:"detect_search_action"}],{...e,sourceLanguage:n}),!["zh-CN","zh-TW"].includes(n))return;k.debug("use dual search");let a=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")a=!0;else if(!wg(document.body))return;let r=document.querySelector(e.rule.searchEnhancementSelector);if(!r){let o=document.querySelector("#rcnt");if(!o)return;let i=o.children;if(i&&i.length>1)r=i[1];else{let s=i[0];r=document.createElement("div"),r.id="rhs",r.style.maxWidth="372px",r.style.marginLeft="50px",o.insertBefore(r,s.nextSibling)}}if(a||wg(document.body)){k.debug("find story");let o=await B1(e,t,n);k.debug("enKeyword",o);let i=await F1(o);if(k.debug("news list",i),i&&i.length<=0)return;let s=await M1(i,t,o);if(!s)return;$e("show_search_enhancement",[{name:"show_search_enhancement"}],{...e,sourceLanguage:"search_enhancement"}),L1(e,s,n),r.insertBefore(s,r?.firstChild)}}async function L1(e,t,n){let a=t.querySelectorAll('[translate="true"]');return R1(e,[...a],n),t}async function F1(e){let n=(await $({url:P1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,u=new DOMParser().parseFromString(n,"text/xml"),r=[],o=u.querySelectorAll("item");for(let i=0;i\u82F1\u6587\u641C\u7D22 ${n} \u7684\u76F8\u5173\u65B0\u95FB:
-
${r}
`,{ADD_ATTR:["target"]});let i=a.querySelector(`.${H}-search-more`);return i&&(i.onclick=()=>{let s=a.querySelector(`.${H}-expand-items`);s.style.display=="none"?(s.style.display="block",i.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(xg(n))}),a}function Cg(e){return e.map((t,n)=>{let a=t.title||"",u=t.source||"",r=a.split("-");return r.length>1&&(u=r[r.length-1].trim(),r=r.slice(0,r.length-1)),a=r.join("-"),a=a.trim(),`
${u}
`}function ng(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(u*o)+1).toFixed(2)}%`:"auto",d=`${(l.left*100/(u*o)).toFixed(2)}%`,m=`${(l.top*100/(r*o)).toFixed(2)}%`,g=$4()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,w=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${d};top: ${m};width:${c};max-width:${s};`,!g&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let T=_s(l.str)?"":"translate-pending",p=l.str;l.translateStatus=="success"&&(p=l.translatedStr,T=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function i1(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(m=>{m[0].width>o&&(o=m[0].width)});let l=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,d=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${d};height:${s-i}px;overflow:auto;`}function s1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,Os(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function l1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],$m(e,a)){r.push(a);return}n.push([a])}),n}var rg="immersive-translate",Ga,Tn=[];async function sg(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(Je("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await og(1);await Jo(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Tn=[],Ga=void 0,p1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await og(a);await Jo(e,u||[])})}}function c1(e){if(Ga)return{...Ga,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ga={...i},i}async function og(e){let t=c1(e);if(!t)return;Tn[e]||(Tn[e]=await d1(t,e,Tn[e-1]||[]));let n=Tn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${rg}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${rg}-page`);let r=ug(t,n);return u.innerHTML=Ce.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function d1(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,s]=a._pageInfo.view;Ga.pageWidth=i,Ga.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=g1(e,u);e.origLineParagraphs=l;let{prevP:c,curP:d}=Wm(e,l);return d&&lg(c,void 0,d),m1(e,l)}function m1(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,Vm(e,o)){if(Jm(e,o)){r(l,o);return}if(Xm(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},r(l,o);return}if(Zm(e,o)){r(l,o);return}if(Rs(e,o)){r(l,o);return}if(Qm(e,o)){r(l,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],s=r.transform[5],l=r.width*n,c=t.styles[r.fontName].fontFamily,d=r.transform[3]||r.height,m=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+m)*d;isNaN(f)&&(f=d);let w=i*n,T=w+l,p=(a-s-f)*n,C=p+d*n,M=C+d*n*.2,L=T+d*n*.3,A={str:o,left:w,nextLeft:L,top:p,nextTop:M,id:`pageNum-${_t()}`,width:l,originFontName:r.fontName,fontName:c,fontSize:d,right:T,bottom:C,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(A);else{let y=u[u.length-1];if(e.prevLineP=y,eg(e,A)){Gm(e,A)?y.str+=o:y.str+=" "+o,y.right=T,y.fontName=c,y.width=Math.max(y.width+l,T-y.left),y.nextLeft=L;return}if(tg(e,A)){y.width=Math.max(y.width+l,T-y.left),y.right=T,y.nextLeft=L,y.attachList.push(A);return}u.push(A)}}),u}function lg(e,t,n){if(!Vo(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function p1(e){setTimeout(()=>{let t="";for(let n=1;n<=Tn.length;n++){let a=!1;if(Tn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Ve({text:t}).then(n=>{Je("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ua={};async function Is(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await en(e,n,1e3);return Ut(a),a}async function cg(e){Tt("Translating");let t=un(),n=Ea(),a=[...document.querySelectorAll(".source-text")];if(fo(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Ye(r,"id",o+""),i&&(Na(i,o)?.remove(),i.appendChild(wu(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=Na(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),r?(c.innerHTML=Ce.sanitize(`${r.message}`),ua[s]={ok:!1,sentence:i}):o&&(c.innerHTML=Ce.sanitize(o.text),ua[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Tt("Translated")}}async function dg(e){Tt("Translating"),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ua),n=[],a=[];for(let u of t){let r=ua[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let s=i.parentElement;i.remove(),s&&(delete ua[u],s.appendChild(wu(e,u)),a.push(r.sentence))}}}try{await on({sentences:a},e,(u,r,o)=>{let i=o.id,s=Na(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),u?(l.innerHTML=Ce.sanitize(`${u.message}`),ua[i]={ok:!1,sentence:o}):r&&(l.innerHTML=Ce.sanitize(r.text),ua[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Tt("Translated")}}function js(){Tt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var zs={};async function mg(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await en(e,n,1e3);return Ut(a),a}async function gg(e){Tt("Translating"),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(zs),n=[];for(let a of t){let u=zs[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${er}='${a}']`);o&&o.remove(),n.push(u)}}try{await xo(n,e,e.config.translationMode)}catch{}finally{Tt("Translated")}}function pg(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+jt);for(let u of a)u.remove()}Tt("Original")}async function fg(e){Tt("Translating");let t=_t(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ja(s,e);let l=s.body;if(!l)continue;let c=$t(e);c.isModifyImage=!1,zn({id:t,container:l,filterRule:c,onParagraph:d=>{a.push(d)}})}let r=po(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=Eo(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await Q0(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(u.push(l),zs[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await xo(u,e,e.config.translationMode)}catch{}finally{Tt("Translated")}}var f1=new AbortController,{signal:h1}=f1,$s=0,Ks=0,Hs=!1,Us=0,Pu=!1,ra,hg=0,oa=[];function Yo(e,t){b1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=ct(d=>{if(Hs==!1&&Math.abs(d.clientX-$s)+Math.abs(d.clientY-Ks)>3&&(Us<2?Us+=1:Hs=!0),$s=d.clientX,Ks=d.clientY,o||Pu&&!ra){let m=xg(a.rule,t);if(m){if(Gs(m))return;Eg(a,m)}}},o?700:300),s=d=>{let m=d.target;Gs(m)||Eg(a)},l=d=>{let m=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=je.getPressedKeyCodes();if(g.length>1&&je[m]&&(hg=Date.now(),Pu=!1),g.length===1&&je[m]){let f=Date.now();Pu=!0,ra&&clearTimeout(ra),ra=setTimeout(()=>{let w=hg-f;w>0&&w<=150?Pu=!1:s(d),ra=void 0},150)}};if(oa.push(()=>{ra&&clearTimeout(ra)}),r)return;Ws("mousemove",i,t),oa.push(()=>{t.removeEventListener("mousemove",i)});function c(){Hs=!1,Us=0,i.cancel()}if(o)Ws("blur",c,t),oa.push(()=>{t.removeEventListener("blur",c)});else{let d=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=["ctrl","alt","shift","cmd","command","option","control"];Ws("keyup",bg,t),oa.push(()=>{t.removeEventListener("keyup",bg)}),m.includes(d)?je("*","mouseHover",l):je(u.generalRule.mouseHoverHoldKey,"mouseHover",s),je.setScope("mouseHover"),oa.push(()=>{je.deleteScope("mouseHover")})}}function b1(){oa.forEach(e=>e()),oa=[]}function bg(e){Pu=!1}function Ws(e,t,n=window){return n.addEventListener(e,t,{signal:h1})}function Eg(e,t,n=window){if(t=t||xg(e.rule,n),!t){v.debug("can not find selection part!");return}if(Gs(t)){v.debug("exclude dom");return}Hd(e,t);let a=ko();a?.currentUrl!==window.location.href&&(Hn(),ns(e)),a&&(a.setupMouseHoverListener=Yo);let u=$t(e);u.excludeSelectors=[],u.selectors=[];let r=!1;zn({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{ku(a,o,!0).then(i=>{if(i&&!r){r=!0;let s=Date.now();et(f4,s),Je("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function xg(e,t){return E1($s,Ks,e,t)}function E1(e,t,n,a){let u=md(e,t,n,a);if(u==null)return;let r=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=gd(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:Tg(l,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(l){v.debug("get mouse over word fail",l)}let s=u.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Xo&&self.removeEventListener("keydown",Xo),Xo=i,self.addEventListener("keydown",Xo);function i(l){if(Va)return;let c=l,d=c.target||c.srcElement,m=d?.tagName;(d?.isContentEditable||m=="INPUT"||m=="SELECT"||m=="TEXTAREA")&&(B1(l,u.triggerKey,u.codePrefixAlias)?s(l):r=0)}function s(l){Date.now()-o=u.triggerTimes&&(C1(e,u),r=0)}}function y1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let s=r+i;return u.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function Cg(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Ja;function T1(e){let t=e.parentElement;if(!t)return;Ja=document.createElement("div"),Ja.className=z+"-input",Ja.innerHTML=`
`,t.appendChild(Ja);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function x1(){Ja&&Ja.remove()}async function C1(e,t){if(!Va)try{let d=function(){o=e.config.inputTargetLanguage;let g=r.split(" ")[0];g&&g[0]&&(g=g[0].toLowerCase()+g.slice(1)),g.trim()&&t.flatAlias.includes(g)?(o=Cg(g,t.codeAlias),u=r.slice(g.length+1)):u=r},m=function(){o="";let g=y1(t),f=r.split(g);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let T=r.lastIndexOf(u),p=r.slice(0,T).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let w=r.slice(a.length+1,r.indexOf(u)).trim();if(o=Cg(w,t.codeAlias),!o){v.warn("not found alias",w);return}},n=document.activeElement;Va=!0,T1(n);let a="",u="",r=Mu(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?d():(m(),o||d()),_1(e);let i=w1(u,t),s=await en(e,i);v.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;et(h4,Date.now());let c=await Pa(l,e);M1(n,a+c.text),Va=!1}catch(n){throw Va=!1,n}finally{Va=!1,x1()}}function w1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function v1(e,t){let n=t.innerHTML,a=Mu(t);return{html:n.replace(a,e),text:e}}function wg(e,t,n=!1){let a=Mu(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function Mu(e){return e.value||e.innerText||e.textContent}async function ia(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function k1(e,t,n){await ia(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await ia(10)}async function A1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await ia(10))}async function S1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await ia(20),(t.value||t.value==="")&&(t.value=e.text)}async function D1(e,t){vg(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await ia(20))}var L1=[k1.bind(null,["plain"])];function F1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function vg(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function P1(e){if(vg(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function M1(e,t){await P1(e),await ia(50);let n=v1(t,e);F1(e),v.debug("clearContnet",Mu(e)),await ia(50);for(let a of[...L1,D1,S1,A1])if(await a(n,e),v.debug("setContent",a.name,wg(n,e),Mu(e),n),wg(n,e))break}function _1(e){Je("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function B1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function Sg(e,t,n){return(await Pa({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}function R1(e,t,n,a){let u=[],r="en";for(let o of n)u.push({text:o.textContent||"",id:u.length,from:r,to:a,url:"https://google.com",fromByClient:r});return new Promise((o,i)=>{on({sentences:u},{...e,translationService:"google"},(s,l,c)=>{if(s)return o([]);let d=l?.id||0,m=n[d];m&&m.className==z+"-search-title-wrapper"&&(m.innerHTML+=Ce.sanitize(`
${l?.text}
`,{ADD_ATTR:["target"]}))})})}function Zo(e,t,n){t&&Je(t.key,[{name:t.key}],{...e,sourceLanguage:t.sourceLanguage||n})}function Js(e,t,n,a){let u=n.querySelectorAll('[translate="true"]');return R1(e,t,[...u],a),n}async function Ys(e,t){let a=(await $({url:O1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,r=new DOMParser().parseFromString(a,"text/xml"),o=[],i=r.querySelectorAll("item");for(let s=0;s${e.cancelDescription}
`:""} +

\u82F1\u6587\u641C\u7D22 + ${n} \u7684\u76F8\u5173\u65B0\u95FB:
+

+
${o}
+ + `.replaceAll(` +`,""),{ADD_ATTR:["target"]});let l=u.querySelector(`.${z}-search-more`);return l&&(l.onclick=()=>{let c=u.querySelector(`.${z}-expand-items`);c.style.display=="none"?(c.style.display="block",l.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(kg(n))}),u}function Ag(e,t){let n=e.style;return t.map((a,u)=>{let r=a.title||"",o=a.source||"",i=r.split("-");return i.length>1&&(o=i[i.length-1].trim(),i=i.slice(0,i.length-1)),r=i.join("-"),r=r.trim(),`
${o}
+
+ ${a}
${fd(t.pubDate||"")}
+ >${r} +
+
${yd(a.pubDate||"")}
`}).join(` -`)}function wg(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}function _1(e){let n=new URL(e).searchParams.get("q");return n||""}async function B1(e,t,n){return(await Pa({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}async function R1(e,t,n){let a=[],u="en";for(let r of t)a.push({text:r.textContent||"",id:a.length,from:u,to:n,url:"https://google.com",fromByClient:u});return new Promise((r,o)=>{rn({sentences:a},{...e,translationService:"google"},(i,s,l)=>{if(i)return r([]);let c=s?.id||0,d=t[c];d&&d.className==H+"-search-title-wrapper"&&(d.innerHTML+=De.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}var se=null,Zo={},Ya,Qo;async function wr(){if(Re()==="Original"){let e={};Qo&&(e.translationMode=Qo),Ya&&(e.translationTheme=Ya),se&&(e={...se.state,...e}),await ft(ze(),e),await Jt(se)}else(Re()==="Translated"||Re()==="Error")&&Vn()}async function vr(){if(se=await ft(ze(),{}),se.rule.isEbookBuilder)return lg(se);if(se.rule.isSubtitleBuilder)return ig(se);jd()}async function kr(){if(Re()==="Original")se=await ft(ze(),{}),Ya||(Ya=se.state.translationTheme),se=await ft(ze(),{translationTheme:"mask"}),await Jt(se);else if(Re()==="Translated"){let e=md().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[se.mainFrame,...e],n=se?.state.translationTheme;for(let a of t){let u=Ba(a,ga,!0);n==="mask"?u!=="none"?Ye(a,ga,"none",!0):Ye(a,ga,"mask",!0):u!=="mask"?Ye(a,ga,"mask",!0):Ye(a,ga,"none",!0)}}}async function Z0(){let e=await ft(ze(),{});return e.rule.isSubtitleBuilder?Ns(e):Id(e)}function O1(e){Re()==="Original"?og(e):Is()}function N1(e){Re()==="Original"?Ao(e):Hn()}async function Vn(){let e=await ft(ze(),{});if(e.rule.isSubtitleBuilder){Is();return}else e.rule.isEbookBuilder&&cg();Hn()}async function Jt(e){if(Re()!=="Original"&&await Vn(),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Zo[e.translationService]||(Zo[e.translationService]=!0,Qe()||Fi(e).catch(t=>{k.warn("init translation engine error",t)})),$e("translage_page_daily",[{name:"translage_page_daily"}],e),$e("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:an()}),e.rule.isSubtitleBuilder)return O1(e);if(e.rule.isEbookBuilder)return dg(e);e.rule.isPdf||N1(e)}async function Sc(){Re()==="Original"?await Ar():(Re()==="Translated"||Re()==="Error")&&(se=await ft(ze(),{}),se.state.translationArea!=="main"?await Ar():Vn())}async function Ar(){se=await ft(ze(),{translationArea:"main"}),await Jt(se)}async function Q0(){se=await ft(ze(),{translationArea:"body"}),await Jt(se)}async function Sr(){if(Re()==="Original"){let e=await ft(ze(),{translationMode:"translation"});await Jt(e)}else(Re()==="Translated"||Re()==="Error")&&await Vn()}async function Dc(e){if(se=await ft(ze(),{}),$e("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...se,sourceLanguage:"unknown"}),Re()==="Original"){Jt(se);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function Lc(){if(Re()==="Original")await Q0();else if(Re()==="Translated"||Re()==="Error"){let e={};se&&se.state&&(e=se.state),se=await ft(ze(),e),se.state.translationArea!=="body"?(se.state.translationArea="body",se=await ft(ze(),se.state),await Jt(se)):Vn()}}async function Fc(){se=await ft(ze(),{translationStartMode:"immediate"}),await Jt(se)}async function kg(){let e=await ft(ze(),{});if(!(e.rule.isPdf||e.rule.isSubtitleBuilder||e.rule.isEbookBuilder||e.rule.isEbook)&&e.config.enableInputTranslation){if(!Wt(e.url,e.config.inputStyleBlockUrls)){let n=lt().IMMERSIVE_TRANSLATE_INPUT_INJECTED_CSS;In(document,n,"immersive-translate-input-injected-css")}Gs(e)}}async function Go(){let e=await ft(ze(),{});if(k.debug("init page ctx",e),e.rule.isSubtitleBuilder){Ns(e);return}if(e.rule.isEbookBuilder){sg(e);return}if(e.rule.isPdf){await ug(e);return}if(vg(e),Qo||(Qo=e.state.translationMode),Ya||(Ya=e.state.translationTheme),e.rule.urlChangeDelay&&await Xa(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await I1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=Hc(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){k.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Fn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){k.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&Ed(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await Z0():Ut(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(k.debug(`detect page language: ${e.url} ${t}`),Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||Yc(t,e.config.translationLanguagePattern)&&(n=!0,k.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&lu()&&Yo(e,window),n)se.state.isAutoTranslate=!0,Jt(se);else if(k.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Zo[e.translationService]||(Zo[e.translationService]=!0,Qe()||Fi(e).catch(a=>{k.warn("init translation engine error",a)})))}}async function ft(e,t){let n=Object.keys(t);if(se){let a={url:e,config:se.config,state:{...se.state,...t}};se=await qt(a)}else{let a=await xt(),u=t;n.length===0&&(u=void 0),se=await qt({url:e,config:a,state:u})}return se}async function Pc(){let e=await xt(),t;se&&se.state&&(t=se.state);let n={url:ze(),config:e,state:t},a=await qt(n);se=a;let u=ko(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Fu(a,o),lu()&&Yo(a,o),Gs(a)}),a}function I1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}async function Ag(e){if(!e){let n=await xt();e=await qt({config:n,url:ze()})}e.config.debug?k.setLevel("debug"):k.setLevel("info"),globalThis.top!=globalThis.self||await Pm().catch(n=>{k.error(`init popup page error: ${n}`)}),e.isTranslateExcludeUrl||(e.rule.isEbook||e.rule.isEbookBuilder||await Go(),globalThis.top===globalThis.self&&vm()),await kg()}var _u={capture:!0,once:!0,passive:!0},Lg=()=>document.readyState==="interactive"||document.readyState==="complete",j1=e=>document.readyState===e,Bu=(e,t)=>j1(e)||Lg()?(t(e),!0):!1,z1=()=>new Promise(e=>{Bu("loading",e)||document.addEventListener("readystatechange",()=>{document.readyState==="loading"&&e("loading")},_u)}),H1=()=>new Promise(e=>{Bu("interactive",e)||document.addEventListener("readystatechange",()=>{document.readyState==="interactive"&&e("interactive")},_u)}),U1=()=>new Promise(e=>{Bu("complete",e)||document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e("complete")},_u)}),Sg=()=>new Promise(e=>{Bu("domready",e)||document.addEventListener("DOMContentLoaded",()=>{e("domready")},_u)}),Dg=()=>new Promise(e=>{Bu("load",e)||window.addEventListener("load",()=>{e("load")},_u)}),Fg={};Object.defineProperties(Fg,{state:{get:function(){return document.readyState}},loading:{get:function(){return z1()}},interactive:{get:function(){return H1()}},complete:{get:function(){return U1()}},window:{get:function(){return Dg()}},load:{get:function(){return Dg()}},domready:{get:function(){return Sg()}},dom:{get:function(){return Sg()}},ready:{get:function(){return Lg()}}});var Pg=Fg;var Mg={NOT_FUNCTION:"Your executor is not a function. functions and promises are valid.",FAILED_TO_WAIT:"Failed to wait"};function W1(e){return async()=>await e()}function q1(e){if(typeof e!="function")throw new Error(Mg.NOT_FUNCTION)}var Vs=class{constructor({interval:t=100,timeout:n=1e3,stopOnFailure:a=!1,verbose:u=!1,backoffFactor:r=1,backoffMaxInterval:o,message:i=""}={}){this._interval=t,this._timeout=n,this._stopOnFailure=a,this._isWaiting=!1,this._isResolved=!1,this._verbose=u,this._userMessage=i,this.originalStacktraceError=new Error,this._Console=console,this._backoffFactor=r,this._backoffMaxInterval=o||n,this.start=+Date.now()}tryEvery(t){return this._interval=t,this}stopAfter(t){return this._timeout=t,this}execute(t){return this._applyPromiseHandlers(),q1(t),this._executeFn=W1(t),this.start=Date.now(),this._isWaiting=!0,this._log("starting to execute"),this._runFunction(),this.promise}getPromise(){return this.promise}isResolved(){return this._isResolved}isWaiting(){return this._isWaiting}stopOnFailure(t){return this._stopOnFailure=t,this}_applyPromiseHandlers(){this.promise=new Promise((t,n)=>{this.resolve=t,this.reject=n})}_timeFromStart(){return Date.now()-this.start}_shouldStopTrying(){return this._timeFromStart()>this._timeout}_executeAgain(){this._log("executing again");let t=this._interval,n=t*this._backoffFactor;this._interval=n>this._backoffMaxInterval?this._backoffMaxInterval:n,setTimeout(this._runFunction.bind(this),t)}_failedToWait(){let t=`${Mg.FAILED_TO_WAIT} after ${this._timeFromStart()}ms`;if(this._userMessage&&(t=`${t}: ${this._userMessage}`),this._lastError){this._lastError.message=`${t} +`)}function Dg(e,t){if(!e.keyword)return;let n=e.keyword.value||"";for(let a=0;anew RegExp(a.urlMatch).test(t))}async function Fg(e){if(ha().any)return;if(!e.rule.enableSearchEnhancement){v.debug("enable is false");return}let t=N1(e.rule.searchEnhancementConfig||[],e.url);if(!t){v.debug("not found siteConfig",e.url);return}let n=Dg(t,e.url);if(!n){v.debug("not found keyword",e.url);return}t.id=="google"?j1(e,t,n):I1(e,t,n)}async function I1(e,t,n){let a=await en(e,document.title);t.selector&&setTimeout(async()=>{let u=document.querySelector(t.selector);if(!u){v.debug("selector node not found",t.selector);return}let r=await Ys(n,t.showCount);if(r&&r.length<=0){v.debug("list not found");return}let o=await Xs(t,r,n,t.showCount);if(!o){v.debug("getInseredNode none");return}o.style.cssText=t.style.container||"";let i=t.selectorAction||"appendChild";i=="insertBefore"?u.parentElement?.insertBefore(o,u):i=="appendChild"?u.appendChild(o):i=="replace"&&u?.replaceWith(o),Js(e,t,o,a),Zo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a)},t.delayTime||0)}async function j1(e,t,n){let a=await en(e,n);if(Zo(e,{key:"detect_search_action"},a),!["zh-CN","zh-TW"].includes(a))return;v.debug("use dual search");let u=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")u=!0;else if(!Lg(document.body))return;let o=document.querySelector("#rhs");if(!o){let i=document.querySelector("#rcnt");if(!i)return;let s=i.children;if(s&&s.length>1)o=s[1];else{let l=s[0];o=document.createElement("div"),o.id="rhs",o.style.maxWidth="372px",o.style.marginLeft="50px",i.insertBefore(o,l.nextSibling)}}if(u||Lg(document.body)){v.debug("find story");let i=await Sg(e,n,a);v.debug("enKeyword",i);let s=await Ys(i,t.showCount);if(v.debug("news list",s),s&&s.length<=0)return;let l=await Xs(t,s,i,t.showCount);if(!l)return;Zo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a),Js(e,t,l,a),o.insertBefore(l,o?.firstChild)}}function Lg(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}var se=null,Qo={},Ya,ei;async function wr(){if(Re()==="Original"){let e={};ei&&(e.translationMode=ei),Ya&&(e.translationTheme=Ya),se&&(e={...se.state,...e}),await ft(ze(),e),await Jt(se)}else(Re()==="Translated"||Re()==="Error")&&Vn()}async function vr(){if(se=await ft(ze(),{}),se.rule.isEbookBuilder)return gg(se);if(se.rule.isSubtitleBuilder)return dg(se);Wd()}async function kr(){if(Re()==="Original")se=await ft(ze(),{}),Ya||(Ya=se.state.translationTheme),se=await ft(ze(),{translationTheme:"mask"}),await Jt(se);else if(Re()==="Translated"){let e=hd().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[se.mainFrame,...e],n=se?.state.translationTheme;for(let a of t){let u=Ba(a,ga,!0);n==="mask"?u!=="none"?Ye(a,ga,"none",!0):Ye(a,ga,"mask",!0):u!=="mask"?Ye(a,ga,"mask",!0):Ye(a,ga,"none",!0)}}}async function Qi(){let e=await ft(ze(),{});return e.rule.isSubtitleBuilder?Is(e):Ud(e)}function z1(e){Re()==="Original"?cg(e):js()}function H1(e){Re()==="Original"?Ao(e):Hn()}async function Vn(){let e=await ft(ze(),{});if(e.rule.isSubtitleBuilder){js();return}else e.rule.isEbookBuilder&&pg();Hn()}async function Jt(e){if(Re()!=="Original"&&await Vn(),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(yt,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Qo[e.translationService]||(Qo[e.translationService]=!0,Qe()||P0(e).catch(t=>{v.warn("init translation engine error",t)})),Je("translage_page_daily",[{name:"translage_page_daily"}],e),Je("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:un()}),e.rule.isSubtitleBuilder)return z1(e);if(e.rule.isEbookBuilder)return fg(e);e.rule.isPdf||H1(e)}async function Pc(){Re()==="Original"?await Ar():(Re()==="Translated"||Re()==="Error")&&(se=await ft(ze(),{}),se.state.translationArea!=="main"?await Ar():Vn())}async function Ar(){se=await ft(ze(),{translationArea:"main"}),await Jt(se)}async function e0(){se=await ft(ze(),{translationArea:"body"}),await Jt(se)}async function Sr(){if(Re()==="Original"){let e=await ft(ze(),{translationMode:"translation"});await Jt(e)}else(Re()==="Translated"||Re()==="Error")&&await Vn()}async function Mc(e){if(se=await ft(ze(),{}),Je("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...se,sourceLanguage:"unknown"}),Re()==="Original"){Jt(se);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function _c(){if(Re()==="Original")await e0();else if(Re()==="Translated"||Re()==="Error"){let e={};se&&se.state&&(e=se.state),se=await ft(ze(),e),se.state.translationArea!=="body"?(se.state.translationArea="body",se=await ft(ze(),se.state),await Jt(se)):Vn()}}async function Bc(){se=await ft(ze(),{translationStartMode:"immediate"}),await Jt(se)}async function Pg(){let e=await ft(ze(),{});if(!(e.rule.isPdf||e.rule.isSubtitleBuilder||e.rule.isEbookBuilder||e.rule.isEbook)&&e.config.enableInputTranslation){if(!Wt(e.url,e.config.inputStyleBlockUrls)){let n=lt().IMMERSIVE_TRANSLATE_INPUT_INJECTED_CSS;In(document,n,"immersive-translate-input-injected-css")}Vs(e)}}async function Go(){let e=await ft(ze(),{});if(v.debug("init page ctx",e),e.rule.isSubtitleBuilder){Is(e);return}if(e.rule.isEbookBuilder){mg(e);return}if(e.rule.isPdf){await sg(e);return}if(Fg(e),ei||(ei=e.state.translationMode),Ya||(Ya=e.state.translationTheme),e.rule.urlChangeDelay&&await Xa(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await U1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=$c(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){v.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Fn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){v.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&Cd(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await Qi():Ut(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(v.debug(`detect page language: ${e.url} ${t}`),Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||e3(t,e.config.translationLanguagePattern)&&(n=!0,v.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&lu()&&Yo(e,window),n)se.state.isAutoTranslate=!0,Jt(se);else if(v.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Qo[e.translationService]||(Qo[e.translationService]=!0,Qe()||P0(e).catch(a=>{v.warn("init translation engine error",a)})))}}async function ft(e,t){let n=Object.keys(t);if(se){let a={url:e,config:se.config,state:{...se.state,...t}};se=await qt(a)}else{let a=await xt(),u=t;n.length===0&&(u=void 0),se=await qt({url:e,config:a,state:u})}return se}async function Rc(){let e=await xt(),t;se&&se.state&&(t=se.state);let n={url:ze(),config:e,state:t},a=await qt(n);se=a;let u=ko(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Fu(a,o),lu()&&Yo(a,o),Vs(a)}),a}function U1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}async function Mg(e){if(!e){let n=await xt();e=await qt({config:n,url:ze()})}e.config.debug?v.setLevel("debug"):v.setLevel("info"),globalThis.top!=globalThis.self||await Rm().catch(n=>{v.error(`init popup page error: ${n}`)}),e.isTranslateExcludeUrl||(e.rule.isEbook||e.rule.isEbookBuilder||await Go(),globalThis.top===globalThis.self&&Dm()),await Pg()}var _u={capture:!0,once:!0,passive:!0},Rg=()=>document.readyState==="interactive"||document.readyState==="complete",W1=e=>document.readyState===e,Bu=(e,t)=>W1(e)||Rg()?(t(e),!0):!1,q1=()=>new Promise(e=>{Bu("loading",e)||document.addEventListener("readystatechange",()=>{document.readyState==="loading"&&e("loading")},_u)}),$1=()=>new Promise(e=>{Bu("interactive",e)||document.addEventListener("readystatechange",()=>{document.readyState==="interactive"&&e("interactive")},_u)}),K1=()=>new Promise(e=>{Bu("complete",e)||document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e("complete")},_u)}),_g=()=>new Promise(e=>{Bu("domready",e)||document.addEventListener("DOMContentLoaded",()=>{e("domready")},_u)}),Bg=()=>new Promise(e=>{Bu("load",e)||window.addEventListener("load",()=>{e("load")},_u)}),Og={};Object.defineProperties(Og,{state:{get:function(){return document.readyState}},loading:{get:function(){return q1()}},interactive:{get:function(){return $1()}},complete:{get:function(){return K1()}},window:{get:function(){return Bg()}},load:{get:function(){return Bg()}},domready:{get:function(){return _g()}},dom:{get:function(){return _g()}},ready:{get:function(){return Rg()}}});var Ng=Og;var Ig={NOT_FUNCTION:"Your executor is not a function. functions and promises are valid.",FAILED_TO_WAIT:"Failed to wait"};function G1(e){return async()=>await e()}function V1(e){if(typeof e!="function")throw new Error(Ig.NOT_FUNCTION)}var Zs=class{constructor({interval:t=100,timeout:n=1e3,stopOnFailure:a=!1,verbose:u=!1,backoffFactor:r=1,backoffMaxInterval:o,message:i=""}={}){this._interval=t,this._timeout=n,this._stopOnFailure=a,this._isWaiting=!1,this._isResolved=!1,this._verbose=u,this._userMessage=i,this.originalStacktraceError=new Error,this._Console=console,this._backoffFactor=r,this._backoffMaxInterval=o||n,this.start=+Date.now()}tryEvery(t){return this._interval=t,this}stopAfter(t){return this._timeout=t,this}execute(t){return this._applyPromiseHandlers(),V1(t),this._executeFn=G1(t),this.start=Date.now(),this._isWaiting=!0,this._log("starting to execute"),this._runFunction(),this.promise}getPromise(){return this.promise}isResolved(){return this._isResolved}isWaiting(){return this._isWaiting}stopOnFailure(t){return this._stopOnFailure=t,this}_applyPromiseHandlers(){this.promise=new Promise((t,n)=>{this.resolve=t,this.reject=n})}_timeFromStart(){return Date.now()-this.start}_shouldStopTrying(){return this._timeFromStart()>this._timeout}_executeAgain(){this._log("executing again");let t=this._interval,n=t*this._backoffFactor;this._interval=n>this._backoffMaxInterval?this._backoffMaxInterval:n,setTimeout(this._runFunction.bind(this),t)}_failedToWait(){let t=`${Ig.FAILED_TO_WAIT} after ${this._timeFromStart()}ms`;if(this._userMessage&&(t=`${t}: ${this._userMessage}`),this._lastError){this._lastError.message=`${t} ${this._lastError.message}`;let n=this.originalStacktraceError.stack;n&&(this._lastError.stack+=n.substring(n.indexOf(` -`)+1))}else this._lastError=this.originalStacktraceError,this._lastError.message=t;return this._log(this._lastError),this._lastError}_runFunction(){if(this._shouldStopTrying()){this._isWaiting=!1,this.reject?.(this._failedToWait());return}this._executeFn().then(t=>{if(t===!1){this._log(`then execute again with result: ${t}`),this._executeAgain();return}this.resolve?.(t),this._isWaiting=!1,this._isResolved=!0,this._log(`then done waiting with result: ${t}`)}).catch(t=>this._stopOnFailure?(this._log(`stopped on failure with err: ${t}`),this.reject?.(t)):(this._lastError=t,this._log(`catch with err: ${t}`),this._executeAgain()))}_log(t){this._verbose&&this._Console&&this._Console.log&&this._Console.log(t)}},_g=(e,t)=>new Vs(t).execute(e);async function Bg(e){try{return await _g(()=>{let n=e.mainFrame.innerText||"";if(Ma(n,e.rule.mainFrameMinTextCount,e.rule.mainFrameMinWordCount))return!0;throw new Error("there is no main text")},{timeout:5e3}),!0}catch(t){if(Qe())throw t;return k.debug("check dom element ready failed:",t,e),!0}}function Rg(){let e=document.querySelector("meta[name=immersive-translate-options]");return!!(e&&e.getAttribute("content")==="true")}async function Ng(){if(!document.getElementById("immersive-translate-status")){k.error("Could not find status element");return}await Og("local"),await Og("sync"),K1();let t=document.getElementById("immersive-translate-page-ready");t&&setTimeout(()=>{t.value="true",t.dispatchEvent(new Event("change"))},100)}async function $1(e,t){let n;try{n=JSON.parse(e.detail)}catch(u){k.error("parse detail failed",u);return}let a=n.id||"default";try{let u=n.data||{},r=await t(u),o={id:a,ok:!0,data:r};document.dispatchEvent(new CustomEvent(Zu,{detail:JSON.stringify({...o,type:"answer"})}))}catch(u){let r={ok:!1,errorName:u.name,errorMessage:u.message,errorDetails:u.details||u.detail};document.dispatchEvent(new CustomEvent(Zu,{detail:JSON.stringify({...r,id:a,type:"answer"})}))}}function K1(){document.addEventListener(Xu,a=>{let u=a;if(k.debug("document message",u),u&&u.detail){let r;try{r=JSON.parse(u.detail)}catch(o){k.error("parse detail failed",o);return}r.type==="ask"?r.method==="request"&&$1(u,$):r.type==="tell"&&r.method==="updateCommands"&&_r(r.data)}});let e=document.getElementById("immersive-translate-manifest");if(!e){k.error("Could not find manifest element");return}let t=q.runtime.getManifest();Rt()&&(t._isSafari=!0),e.value=JSON.stringify(t),e.dispatchEvent(new Event("change")),document.getElementById("immersive-translate-message").addEventListener("change",a=>{try{let u=JSON.parse(a.target.value);u&&u.method==="removeStorageKey"&&u.data&&u.data.area&&u.data.keys&&q.storage[u.data.area].remove(u.data.keys)}catch(u){k.error("parse message error",u)}})}async function Og(e){let t=document.getElementById("immersive-translate-status"),n=document.getElementById(`immersive-translate-${e}-storage`);if(n){k.debug("init storage");let a=await q.storage[e].get(null);n.value=JSON.stringify(a),n.dispatchEvent(new Event("change")),n.addEventListener("change",u=>{try{let r=JSON.parse(u.target.value);q.storage[e].set(r)}catch(r){k.error("save to storage error",r)}})}else{k.error(`Could not find storage ${e} element`),t.innerText="Could not find storage local input element";return}}async function G1(){let e=await Gn(),t=ze(),n=await qt({config:e,url:t});$e("init_page_daily",[{name:"init_page_daily"}],n),Pg.domready.then(()=>{if(n.isTranslateExcludeUrl&&Rg())k.debug("detect web options page"),Fu(n,window),Ng();else{if(!n.config.enabled||Wt(n.url,n.config.blockUrls))return;Fu(n,window),Bg(n).then(()=>{Ag(n).catch(u=>{u&&k.error("translate page error",u.name,u.message,u.details||"",u)})}).catch(u=>{k.debug("can not detect a valid body: ",u)})}}).catch(a=>{a&&k.error("translate dom ready detect error",a)})}G1().catch(e=>{k.error("init error",e)});})(); +`)+1))}else this._lastError=this.originalStacktraceError,this._lastError.message=t;return this._log(this._lastError),this._lastError}_runFunction(){if(this._shouldStopTrying()){this._isWaiting=!1,this.reject?.(this._failedToWait());return}this._executeFn().then(t=>{if(t===!1){this._log(`then execute again with result: ${t}`),this._executeAgain();return}this.resolve?.(t),this._isWaiting=!1,this._isResolved=!0,this._log(`then done waiting with result: ${t}`)}).catch(t=>this._stopOnFailure?(this._log(`stopped on failure with err: ${t}`),this.reject?.(t)):(this._lastError=t,this._log(`catch with err: ${t}`),this._executeAgain()))}_log(t){this._verbose&&this._Console&&this._Console.log&&this._Console.log(t)}},jg=(e,t)=>new Zs(t).execute(e);async function zg(e){try{return await jg(()=>{let n=e.mainFrame.innerText||"";if(Ma(n,e.rule.mainFrameMinTextCount,e.rule.mainFrameMinWordCount))return!0;throw new Error("there is no main text")},{timeout:5e3}),!0}catch(t){if(Qe())throw t;return v.debug("check dom element ready failed:",t,e),!0}}function Hg(){let e=document.querySelector("meta[name=immersive-translate-options]");return!!(e&&e.getAttribute("content")==="true")}async function Wg(){if(!document.getElementById("immersive-translate-status")){v.error("Could not find status element");return}await Ug("local"),await Ug("sync"),Y1();let t=document.getElementById("immersive-translate-page-ready");t&&setTimeout(()=>{t.value="true",t.dispatchEvent(new Event("change"))},100)}async function J1(e,t){let n;try{n=JSON.parse(e.detail)}catch(u){v.error("parse detail failed",u);return}let a=n.id||"default";try{let u=n.data||{},r=await t(u),o={id:a,ok:!0,data:r};document.dispatchEvent(new CustomEvent(Zu,{detail:JSON.stringify({...o,type:"answer"})}))}catch(u){let r={ok:!1,errorName:u.name,errorMessage:u.message,errorDetails:u.details||u.detail};document.dispatchEvent(new CustomEvent(Zu,{detail:JSON.stringify({...r,id:a,type:"answer"})}))}}function Y1(){document.addEventListener(Xu,a=>{let u=a;if(v.debug("document message",u),u&&u.detail){let r;try{r=JSON.parse(u.detail)}catch(o){v.error("parse detail failed",o);return}r.type==="ask"?r.method==="request"&&J1(u,$):r.type==="tell"&&r.method==="updateCommands"&&_r(r.data)}});let e=document.getElementById("immersive-translate-manifest");if(!e){v.error("Could not find manifest element");return}let t=q.runtime.getManifest();Rt()&&(t._isSafari=!0),e.value=JSON.stringify(t),e.dispatchEvent(new Event("change")),document.getElementById("immersive-translate-message").addEventListener("change",a=>{try{let u=JSON.parse(a.target.value);u&&u.method==="removeStorageKey"&&u.data&&u.data.area&&u.data.keys&&q.storage[u.data.area].remove(u.data.keys)}catch(u){v.error("parse message error",u)}})}async function Ug(e){let t=document.getElementById("immersive-translate-status"),n=document.getElementById(`immersive-translate-${e}-storage`);if(n){v.debug("init storage");let a=await q.storage[e].get(null);n.value=JSON.stringify(a),n.dispatchEvent(new Event("change")),n.addEventListener("change",u=>{try{let r=JSON.parse(u.target.value);q.storage[e].set(r)}catch(r){v.error("save to storage error",r)}})}else{v.error(`Could not find storage ${e} element`),t.innerText="Could not find storage local input element";return}}async function X1(){let e=await Gn(),t=ze(),n=await qt({config:e,url:t});Je("init_page_daily",[{name:"init_page_daily"}],n),Ng.domready.then(()=>{if(n.isTranslateExcludeUrl&&Hg())v.debug("detect web options page"),Fu(n,window),Wg();else{if(!n.config.enabled||Wt(n.url,n.config.blockUrls))return;Fu(n,window),zg(n).then(()=>{Mg(n).catch(u=>{u&&v.error("translate page error",u.name,u.message,u.details||"",u)})}).catch(u=>{v.debug("can not detect a valid body: ",u)})}}).catch(a=>{a&&v.error("translate dom ready detect error",a)})}X1().catch(e=>{v.error("init error",e)});})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/dist/firefox/libs/foliate-js/make.js b/dist/firefox/libs/foliate-js/make.js index 655fc1342..5b1f0563a 100644 --- a/dist/firefox/libs/foliate-js/make.js +++ b/dist/firefox/libs/foliate-js/make.js @@ -1,4 +1,4 @@ -(()=>{var Nd=Object.defineProperty;var zd=(t,e)=>{for(var n in e)Nd(t,n,{get:e[n],enumerable:!0})};var te={BUILD_TIME:"2023-07-04T16:25:28.017Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Nd=Object.defineProperty;var zd=(t,e)=>{for(var n in e)Nd(t,n,{get:e[n],enumerable:!0})};var te={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,7 +4067,7 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var Ud=(t,e)=>t.map((n,r,i)=>e(n,r,i)?r:null).filter(n=>n!=null),Ss=(t,e)=>[-1,...e,t.length].reduce(({xs:n,a:r},i)=>({xs:n?.concat([t.slice(r+1,i)])??[],a:i}),{}).xs,$d=(t,e)=>t.slice(0,-1).concat([t[t.length-1].concat(e[0])]).concat(e.slice(1)),ta=/\d/,Qn=/^epubcfi\((.*)\)$/,Cs=t=>t.replace(/[\^[\](),;=]/g,"^$&"),jd=t=>Qn.test(t)?t:`epubcfi(${t})`,Hd=t=>t.match(Qn)?.[1]??t,Wd=t=>(...e)=>`epubcfi(${t(...e.map(n=>n.match(Qn)?.[1]??n))})`,Es=Wd((...t)=>t.join("!")),qd=t=>{let e=[],n,r,i="",a=s=>(e.push(s),n=null,i=""),o=s=>(i+=s,r=!1);for(let s of Array.from(t.trim()).concat("")){if(s==="^"&&!r){r=!0;continue}if(n==="!")a(["!"]);else if(n===",")a([","]);else if(n==="/"||n===":")if(ta.test(s)){o(s);continue}else a([n,parseInt(i)]);else if(n==="~")if(ta.test(s)||s==="."){o(s);continue}else a(["~",parseFloat(i)]);else if(n==="@"){if(s===":"){a(["@",parseFloat(i)]),n="@";continue}if(ta.test(s)||s==="."){o(s);continue}else a(["@",parseFloat(i)])}else if(n==="["){s===";"&&!r?(a(["[",i]),n=";"):s===","&&!r?(a(["[",i]),n="["):s==="]"&&!r?a(["[",i]):o(s);continue}else if(n?.startsWith(";")){s==="="&&!r?(n=`;${i}`,i=""):s===";"&&!r?(a([n,i]),n=";"):s==="]"&&!r?a([n,i]):o(s);continue}(s==="/"||s===":"||s==="~"||s==="@"||s==="["||s==="!"||s===",")&&(n=s)}return e},As=(t,e)=>Ud(t,([n])=>n===e),Vd=t=>{let e=[],n;for(let[r,i]of t){if(r==="/")e.push({index:i});else{let a=e[e.length-1];if(r===":")a.offset=i;else if(r==="~")a.temporal=i;else if(r==="@")a.spatial=(a.spatial??[]).concat(i);else if(r===";s")a.side=i;else if(r==="[")if(n==="/"&&i)a.id=i;else{a.text=(a.text??[]).concat(i);continue}}n=r}return e},ks=t=>Ss(t,As(t,"!")).map(Vd),Zt=t=>{let e=qd(Hd(t)),n=As(e,",");if(!n.length)return ks(e);let[r,i,a]=Ss(e,n).map(ks);return{parent:r,start:i,end:a}},Kd=({index:t,id:e,offset:n,temporal:r,spatial:i,text:a,side:o})=>{let s=o?`;s=${o}`:"";return`/${t}`+(e?`[${Cs(e)}${s}]`:"")+(n!=null&&t%2?`:${n}`:"")+(r?`~${r}`:"")+(i?`@${i.join(":")}`:"")+(a||!e&&o?"["+(a?.map(Cs)?.join(",")??"")+s+"]":"")},Ms=t=>t.parent?[t.parent,t.start,t.end].map(Ms).join(","):t.map(e=>e.map(Kd).join("")).join("!"),Ir=t=>jd(Ms(t)),Ut=(t,e)=>typeof t=="string"?Ir(Ut(Zt(t),e)):t.parent?$d(t.parent,t[e?"end":"start"]):t,Gd=(t,e)=>{typeof t=="string"&&(t=Zt(t)),typeof e=="string"&&(e=Zt(e)),t=Ut(t),e=Ut(e,!0);let n=t[t.length-1],r=e[e.length-1],i=[],a=[],o=[],s=!0,l=Math.max(n.length,r.length);for(let c=0;c{if(typeof t=="string"&&(t=Zt(t)),typeof e=="string"&&(e=Zt(e)),t.start||e.start)return Jn(Ut(t),Ut(e))||Jn(Ut(t,!0),Ut(e,!0));for(let n=0;nl.index)return 1;if(s.indexl.offset)return 1;if(s.offsett===3||t===4,Dr=({nodeType:t})=>t===1,ia=t=>{let e=Array.from(t.childNodes).filter(n=>na(n)||Dr(n)).reduce((n,r)=>{let i=n[n.length-1];return i?na(r)?Array.isArray(i)?i.push(r):na(i)?n[n.length-1]=[i,r]:n.push(r):Dr(i)?n.push(null,r):n.push(r):n.push(r),n},[]);return Dr(e[0])&&e.unshift("first"),Dr(e[e.length-1])&&e.push("last"),e.unshift("before"),e.push("after"),e},Xd=(t,e)=>t?ia(t)[e]:null,ra=(t,e)=>{let{id:n}=e[e.length-1];if(n){let a=t.ownerDocument.getElementById(n);if(a)return{node:a,offset:0}}for(let{index:a}of e){let o=Xd(t,a);if(o==="first")return{node:t.firstChild??t};if(o==="last")return{node:t.lastChild??t};if(o==="before")return{node:t,before:!0};if(o==="after")return{node:t,after:!0};t=o}let{offset:r}=e[e.length-1];if(!Array.isArray(t))return{node:t,offset:r};let i=0;for(let a of t){let{length:o}=a.nodeValue;if(i+o>=r)return{node:a,offset:r-i};i+=o}},Fr=(t,e)=>{let{parentNode:n,id:r}=t,i=ia(n),a=i.findIndex(l=>Array.isArray(l)?l.some(u=>u===t):l===t),o=i[a];if(Array.isArray(o)){let l=0;for(let u of o)if(u===t){l+=e;break}else l+=u.nodeValue.length;e=l}let s={id:r,index:a,offset:e};return n!==t.ownerDocument.documentElement?Fr(n).concat(s):[s]},Ls=t=>{let{startContainer:e,startOffset:n,endContainer:r,endOffset:i}=t,a=Fr(e,n);if(t.collapsed)return Ir([a]);let o=Fr(r,i);return Gd([a],[o])},Pr=(t,e)=>{let n=Ut(e),r=Ut(e,!0),i=t.documentElement,a=ra(i,n[0]),o=ra(i,r[0]),s=t.createRange();return a.before?s.setStartBefore(a.node):a.after?s.setStartAfter(a.node):s.setStart(a.node,a.offset),o.before?s.setEndBefore(o.node):o.after?s.setEndAfter(o.node):s.setEnd(o.node,o.offset),s},Rs=t=>{let e=[],{parentNode:n}=t[0],r=Fr(n);for(let[i,a]of ia(n).entries()){let o=t[e.length];a===o&&e.push(Ir([r.concat({id:o.id,index:i})]))}return e},aa=(t,e)=>ra(t.documentElement,Ut(e)).node,oa={fromIndex:t=>`/6/${(t+1)*2}`,toIndex:t=>t?.at(-1).index/2-1};var Yd=t=>{let e=0,n=r=>{if(r.id=e++,r.subitems)for(let i of r.subitems)n(i)};for(let r of t)n(r);return t},Ds=t=>t.map(e=>e.subitems?.length?[e,Ds(e.subitems)].flat():e).flat(),er=class{constructor({toc:e,ids:n,splitHref:r,getFragment:i}){Yd(e);let a=Ds(e),o=new Map;for(let[l,u]of a.entries()){let[c,d]=r(u?.href)??[],f={fragment:d,item:u};o.has(c)?o.get(c).items.push(f):o.set(c,{prev:a[l-1],items:[f]})}let s=new Map;for(let[l,u]of n.entries())o.has(u)?s.set(u,o.get(u)):s.set(u,s.get(n[l-1]));this.ids=n,this.map=s,this.getFragment=i}getProgress(e,n){let r=this.ids[e],i=this.map.get(r);if(!i)return null;let{prev:a,items:o}=i;if(!o)return a;if(!n||o.length===1&&!o[0].fragment)return o[0].item;let s=n.startContainer.getRootNode();for(let[l,{fragment:u}]of o.entries()){let c=this.getFragment(s,u);if(c&&n.comparePoint(c,0)>0)return o[l-1]?.item??a}return o[o.length-1].item}},Nr=class{constructor(e,n,r){this.sizes=e.map(i=>i.linear==="no"?0:i.size),this.sizePerLoc=n,this.sizePerTimeUnit=r,this.sizeTotal=this.sizes.reduce((i,a)=>i+a,0)}getProgress(e,n){let{sizes:r,sizePerLoc:i,sizePerTimeUnit:a,sizeTotal:o}=this,s=r[e]??0,u=r.slice(0,e).reduce((f,p)=>f+p,0)+n*s,c=o-u,d=(1-n)*s;return{fraction:u/o,section:{current:e,total:r.length},location:{current:Math.floor(u/i),total:Math.ceil(o/i)},time:{section:d/a,total:c/a}}}getSection(e){let{sizes:n,sizeTotal:r}=this,i=e*r,a=-1,o=0,s=0;for(let[l,u]of n.entries()){let c=s+u;if(c>i){a=l,o=(i-s)/u;break}s=c}return[a,o]}};var Mn=t=>document.createElementNS("http://www.w3.org/2000/svg",t),zr=class{#e=Mn("svg");#t=new Map;constructor(){Object.assign(this.#e.style,{position:"absolute",top:"0",left:"0",width:"100%",height:"100%",pointerEvents:"none"});let e=matchMedia("(prefers-color-scheme: dark)"),n=()=>this.#e.style.mixBlendMode=e.matches?"normal":"multiply";e.addEventListener("change",n),n()}get element(){return this.#e}add(e,n,r,i){this.#t.has(e)&&this.remove(e),typeof n=="function"&&(n=n(this.#e.getRootNode()));let a=n.getClientRects(),o=r(a,i);this.#e.append(o),this.#t.set(e,{range:n,draw:r,options:i,element:o,rects:a})}remove(e){this.#t.has(e)&&(this.#e.removeChild(this.#t.get(e).element),this.#t.delete(e))}redraw(){for(let e of this.#t.values()){let{range:n,draw:r,options:i,element:a}=e;this.#e.removeChild(a);let o=n.getClientRects(),s=r(o,i);this.#e.append(s),e.element=s,e.rects=o}}hitTest({x:e,y:n}){let r=Array.from(this.#t.entries());for(let i=r.length-1;i>=0;i--){let[a,o]=r[i];for(let{left:s,top:l,right:u,bottom:c}of o.rects)if(l<=n&&s<=e&&c>n&&u>e)return[a,o.range]}return[]}static underline(e,n={}){let{color:r="red",width:i=2}=n,a=Mn("g");a.setAttribute("fill",r);for(let{left:o,bottom:s,width:l}of e){let u=Mn("rect");u.setAttribute("x",o),u.setAttribute("y",s-i),u.setAttribute("height",i),u.setAttribute("width",l),a.append(u)}return a}static highlight(e,n={}){let{color:r="red"}=n,i=Mn("g");i.setAttribute("fill",r),i.setAttribute("fill-opacity",.3);for(let{left:a,top:o,height:s,width:l}of e){let u=Mn("rect");u.setAttribute("x",a),u.setAttribute("y",o),u.setAttribute("height",s),u.setAttribute("width",l),i.append(u)}return i}static copyImage([e],n={}){let{src:r}=n,i=Mn("image"),{left:a,top:o,height:s,width:l}=e;return i.setAttribute("href",r),i.setAttribute("x",a),i.setAttribute("y",o),i.setAttribute("height",s),i.setAttribute("width",l),i}};var Br=class{#e=new Map;#t=new Map;#n=new Map;#r=new Map;constructor({resolve:e,compare:n,onAdd:r,onDelete:i,onUpdate:a}){this.resolve=e,this.compare=n,this.onAdd=r,this.onDelete=i,this.onUpdate=a}async add(e,n){let{value:r}=e;if(this.#t.has(r))return;let{index:i,anchor:a}=await this.resolve(r);if(this.#t.set(r,e),this.#r.set(r,i),this.#n.set(r,a),this.#e.has(i)){let o=this.#e.get(i);if(n)o.push(e),this.onAdd?.(e,i,o.length-1);else{let s=0;for(let l=0;la.value===e);r.splice(i,1),this.#t.delete(e),this.#r.delete(e),this.#n.delete(e),this.onDelete?.(e,n,i)}getByIndex(e){return this.#e.get(e)??[]}getAnchor(e){return this.#n.get(e)}};var Zd=t=>new Promise(e=>setTimeout(e,t)),Jd=(t,e,n)=>{let r;return(...i)=>{let a=()=>{r=null,n||t(...i)},o=n&&!r;r&&clearTimeout(r),r=setTimeout(a,e),o&&t(...i)}},Qd=t=>{if(!t?.collapsed)return t;let{endOffset:e,endContainer:n}=t;if(n.nodeType===1)return n;if(e+11)t.setStart(n,e-1);else return n.parentNode;return t},Ur=(t,e,n,r=n)=>{let i=t.createRange();return i.setStart(e,n),i.setEnd(e,r),i},$r=(t,e,n,r=0,i=e.nodeValue.length)=>{if(i-r===1)return n(Ur(t,e,r),Ur(t,e,i))<0?r:i;let a=Math.floor(r+(i-r)/2),o=n(Ur(t,e,r,a),Ur(t,e,a,i));return o<0?$r(t,e,n,r,a):o>0?$r(t,e,n,a,i):a},{SHOW_ELEMENT:ef,SHOW_TEXT:tf,SHOW_CDATA_SECTION:nf,FILTER_ACCEPT:Fs,FILTER_REJECT:Is,FILTER_SKIP:Ps}=NodeFilter,rf=ef|tf|nf,af=(t,e,n,r)=>{let i=f=>{let p=f.localName?.toLowerCase();if(p==="script"||p==="style")return Is;if(f.nodeType===1){let{left:b,right:g}=r(f.getBoundingClientRect());if(gn)return Is;if(b>=e&&g<=n)return Fs}else{if(!f.nodeValue?.trim())return Ps;let b=t.createRange();b.selectNodeContents(f);let{left:g,right:m}=r(b.getBoundingClientRect());if(m>=e&&g<=n)return Fs}return Ps},a=t.createTreeWalker(t.body,rf,{acceptNode:i}),o=[];for(let f=a.nextNode();f;f=a.nextNode())o.push(f);let s=o[0]??t.body,l=o[o.length-1]??s,u=s.nodeType===1?0:$r(t,s,(f,p)=>{let b=r(f.getBoundingClientRect()),g=r(p.getBoundingClientRect());return b.righte?0:g.left>e?-1:1}),c=l.nodeType===1?0:$r(t,l,(f,p)=>{let b=r(f.getBoundingClientRect()),g=r(p.getBoundingClientRect());return b.rightn?0:g.left>n?-1:1}),d=t.createRange();return d.setStart(s,u),d.setEnd(l,c),d},of=t=>{let{defaultView:e}=t,{writingMode:n,direction:r}=e.getComputedStyle(t.body),i=n==="vertical-rl"||n==="vertical-lr",a=t.body.dir==="rtl"||r==="rtl"||t.documentElement.dir==="rtl";return{vertical:i,rtl:a}},sf=t=>{let e=t.defaultView.getComputedStyle(t.body);return e.backgroundColor==="rgba(0, 0, 0, 0)"&&e.backgroundImage==="none"?t.defaultView.getComputedStyle(t.documentElement).background:e.background},sa=class{#e=document.createElement("div");#t=document.createElement("iframe");#n=document.createRange();#r;#i=!1;#a=!1;#o=!0;#s;#l={};constructor({container:e}){this.container=e,this.#t.classList.add("filter"),this.#e.append(this.#t),Object.assign(this.#e.style,{position:"relative",overflow:"hidden",flex:"0 0 auto",width:"100%",height:"100%"}),Object.assign(this.#t.style,{overflow:"hidden",border:"0",display:"none",width:"100%",height:"100%"}),this.#t.setAttribute("sandbox","allow-same-origin allow-scripts"),this.#t.setAttribute("scrolling","no")}get element(){return this.#e}get document(){return this.#t.contentDocument}async load(e,n,r){if(typeof e!="string")throw new Error(`${e} is not string`);return new Promise(i=>{this.#t.addEventListener("load",()=>{let a=this.document;n?.(a),this.#t.style.display="block";let{vertical:o,rtl:s}=of(a),l=sf(a);this.#t.style.display="none",this.#i=o,this.#a=s,this.#n.selectNodeContents(a.body);let u=r?.({vertical:o,rtl:s,background:l});this.#t.style.display="block",this.render(u),new ResizeObserver(()=>this.expand()).observe(a.body),i()},{once:!0}),this.#t.src=e})}render(e){this.#o=e.flow!=="scrolled",this.#l=e,this.#o?this.columnize(e):this.scrolled(e)}scrolled({gap:e,columnWidth:n}){let r=this.#i,i=this.document;Object.assign(i.documentElement.style,{boxSizing:"border-box",padding:r?`${e}px 0`:`0 ${e}px`,columnWidth:"auto",height:"auto",width:"auto"}),Object.assign(i.body.style,{[r?"maxHeight":"maxWidth"]:`${n}px`,margin:"auto"}),this.setImageSize(),this.expand()}columnize({width:e,height:n,gap:r,columnWidth:i}){let a=this.#i;this.#s=a?n:e;let o=this.document;Object.assign(o.documentElement.style,{boxSizing:"border-box",columnWidth:`${i}px`,columnGap:`${r}px`,columnFill:"auto",...a?{width:`${e}px`}:{height:`${n}px`},padding:a?`${r/2}px 0`:`0 ${r/2}px`,overflow:"hidden",overflowWrap:"anywhere",position:"static",border:"0",margin:"0",maxHeight:"none",maxWidth:"none",minHeight:"none",minWidth:"none",webkitLineBoxContain:"block glyphs replaced"}),Object.assign(o.body.style,{maxHeight:"none",maxWidth:"none",margin:"0"}),this.setImageSize(),this.expand()}setImageSize(){let{width:e,height:n,margin:r}=this.#l,i=this.#i,a=this.document;for(let o of a.body.querySelectorAll("img, svg, video")){let{maxHeight:s,maxWidth:l}=a.defaultView.getComputedStyle(o);Object.assign(o.style,{maxHeight:i?s!=="none"&&s!=="0px"?s:"100%":`${n-r*2}px`,maxWidth:i?`${e-r*2}px`:l!=="none"&&l!=="0px"?l:"100%",objectFit:"contain",pageBreakInside:"avoid",breakInside:"avoid",boxSizing:"border-box"})}}expand(){if(this.#o){let e=this.#i?"height":"width",n=this.#i?"width":"height",r=this.#n.getBoundingClientRect()[e],a=Math.ceil(r/this.#s)*this.#s;this.#e.style.padding="0",this.#t.style[e]=`${a}px`,this.#e.style[e]=`${a}px`,this.#t.style[n]="100%",this.#e.style[n]="100%",this.document&&(this.document.documentElement.style[e]=`${a}px`),this.#r&&(this.#r.element.style.margin="0",this.#r.element.style[e]=`${a}px`,this.#r.redraw())}else{let e=this.#i?"width":"height",n=this.#i?"height":"width",a=this.document?.documentElement?.getBoundingClientRect()?.[e],{margin:o}=this.#l,s=this.#i?`0 ${o}px`:`${o}px 0`;this.#e.style.padding=s,this.#t.style[e]=`${a}px`,this.#e.style[e]=`${a}px`,this.#t.style[n]="100%",this.#e.style[n]="100%",this.#r&&(this.#r.element.style.margin=s,this.#r.element.style[e]=`${a}px`,this.#r.redraw())}}set overlayer(e){this.#r=e,this.#e.append(e.element)}get overlayer(){return this.#r}},jr=class{#e=document.createElement("div");#t=document.createElement("div");#n;#r=!1;#i=!1;#a=-1;#o=0;#s=!1;#l=new WeakMap;layout={margin:48,gap:40,maxColumnWidth:700};constructor({book:e,onLoad:n,onRelocated:r,createOverlayer:i}){this.sections=e.sections,this.onLoad=n,this.onRelocated=r,this.createOverlayer=i,Object.assign(this.#e.style,{boxSizing:"border-box",width:"100%",height:"100%",position:"absolute"}),this.#e.append(this.#t),Object.assign(this.#t.style,{width:"100%",height:"100%"}),new ResizeObserver(()=>this.render()).observe(this.#e),this.#t.addEventListener("scroll",Jd(()=>{this.scrolled&&this.#b("scroll")},250))}get element(){return this.#e}#d(){return this.#n&&this.#t.removeChild(this.#n.element),this.#n=new sa({container:this.#e}),this.#t.append(this.#n.element),this.#n}#c({vertical:e,rtl:n,background:r}){this.#r=e,this.#i=n,this.#e.style.background=r;let{flow:i,margin:a,gap:o,maxColumnWidth:s}=this.layout;if(i==="scrolled"){this.#e.setAttribute("dir",e?"rtl":"ltr"),this.#e.style.padding="0",this.#t.style.overflow="scroll";let g=this.layout.maxColumnWidth;return{flow:i,margin:a,gap:o,columnWidth:g}}let{width:l,height:u}=this.#t.getBoundingClientRect(),c=e?u:l,d=Math.ceil(c/s),f=c/d-o;this.#e.setAttribute("dir",n?"rtl":"ltr");let p=`${e?o:o/2}px`,b=`${e?a-o/2:a}px`;return this.#e.style.padding=`${b} ${p}`,this.#t.style.overflow="hidden",{height:u,width:l,margin:a,gap:o,columnWidth:f}}render(){this.#n&&(this.#n.render(this.#c({vertical:this.#r,rtl:this.#i})),this.#g())}get scrolled(){return this.layout.flow==="scrolled"}get scrollProp(){let{scrolled:e}=this;return this.#r?e?"scrollLeft":"scrollTop":e?"scrollTop":"scrollLeft"}get sideProp(){let{scrolled:e}=this;return this.#r?e?"width":"height":e?"height":"width"}get size(){return this.#t.getBoundingClientRect()[this.sideProp]}get viewSize(){return this.#n.element.getBoundingClientRect()[this.sideProp]}get start(){return Math.abs(this.#t[this.scrollProp])}get end(){return this.start+this.size}get page(){return Math.floor((this.start+this.end)/2/this.size)}get pages(){return Math.round(this.viewSize/this.size)}#u(){if(this.scrolled){let n=this.viewSize,r=this.layout.margin;return this.#r?({left:i,right:a})=>({left:n-a-r,right:n-i-r}):({top:i,bottom:a})=>({left:i+r,right:a+r})}let e=this.pages*this.size;return this.#i?({left:n,right:r})=>({left:e-r,right:e-n}):this.#r?({top:n,bottom:r})=>({left:n,right:r}):n=>n}async#h(e,n){if(this.scrolled){let i=this.#u()(e).left;return this.#f(i,n)}let r=this.#u()(e).left+this.layout.margin/2;return this.#p(Math.floor(r/this.size),n)}async#f(e,n){let r=this.#t,{scrollProp:i}=this;if(r[i]===e){this.#b(n);return}this.scrolled&&this.#r&&(e=-e),r[i]=e,this.#b(n)}async#p(e,n){let r=this.size*(this.#i?-e:e);return this.#f(r,n)}async#g(e){let n=Qd(this.#o).getBoundingClientRect?.();if(n){await this.#h(n,"anchor"),e&&this.#T();return}if(this.scrolled){await this.#f(this.#o*this.viewSize,"anchor");return}let{pages:r}=this;if(!r)return;let i=Math.round(this.#o*(r-1));await this.#p(i,"anchor")}#T(){let{defaultView:e}=this.#n.document;if(this.#o instanceof e.Range){let n=e.getSelection();n.removeAllRanges(),n.addRange(this.#o)}}#_(){return af(this.#n.document,this.start,this.end,this.#u(),this.scrolled)}#b(e){let n=this.#_();e!=="anchor"&&(this.#o=n);let r=this.#a;this.scrolled?this.onRelocated?.(n,r,this.end/this.viewSize):this.pages>0&&this.onRelocated?.(n,r,(this.page+1)/this.pages)}async#w(e){let{index:n,src:r,anchor:i,onLoad:a,select:o}=await e;if(this.#a=n,r){let s=this.#d(),l=d=>{if(d.head){let f=d.createElement("style");d.head.append(f),this.#l.set(d,f)}a?.(d,n)},u=this.#c.bind(this);await s.load(r,l,u);let c=this.createOverlayer?.(s.document,n);c&&(s.overlayer=c),this.#n=s}this.#o=(typeof i=="function"?i(this.#n.document):i)??0,await this.#g(o)}#v(e){return e>-1&&e0?this.#f(Math.max(0,this.start-this.size)):null;let e=this.page-1;return this.#v(e)?this.#p(e):null}scrollNext(){if(!this.#n)return null;if(this.scrolled)return this.viewSize-this.end>2?this.#f(Math.min(this.viewSize,this.end)):null;let e=this.page+1;return this.#v(e)?this.#p(e):null}#x(e){return e>=0&&e<=this.sections.length-1}async#y(e,n,r){if(this.#s)return;r&&(this.#s=!0);let i=e?.();if(i)await i;else{let{index:a,anchor:o,select:s}=await n;if(!this.#x(a))return this.#s=!1,null;if(a===this.#a)await this.#w({index:a,anchor:o,select:s});else{let l=this.#a,u=(...c)=>{this.sections[l]?.unload?.(),this.onLoad?.(...c)};await this.#w(Promise.resolve(this.sections[a].load()).then(c=>({index:a,src:c,anchor:o,onLoad:u,select:s})).catch(c=>({})))}}r&&(await Zd(100),this.#s=!1)}async goTo(e){return this.#y(null,e)}#m(e){for(let n=this.#a+e;this.#x(n);n+=e)if(this.sections[n]?.linear!=="no")return n}prev(){let e=this.#m(-1);return this.#y(()=>this.scrollPrev(),{index:e,anchor:()=>1},!0)}next(){let e=this.#m(1);return this.#y(()=>this.scrollNext(),{index:e},!0)}prevSection(){return this.goTo({index:this.#m(-1)})}nextSection(){return this.goTo({index:this.#m(1)})}firstSection(){let e=this.sections.findIndex(n=>n.linear!=="no");return this.goTo({index:e})}lastSection(){let e=this.sections.findLastIndex(n=>n.linear!=="no");return this.goTo({index:e})}getOverlayer(){if(this.#n)return{index:this.#a,overlayer:this.#n.overlayer,doc:this.#n.document}}setStyle(e){let n=this.#l.get(this.#n?.document);n&&(n.textContent=e)}async#C(e,n){this.#o=e,await this.#g(n)}};var Ns=t=>t?.split(/[,;\s]/)?.filter(e=>e)?.map(e=>e.split("=").map(n=>n.trim())),lf=(t,e)=>{if(t.documentElement.nodeName==="svg"){let[,,i,a]=t.documentElement.getAttribute("viewBox")?.split(/\s/)??[];return{width:i,height:a}}let n=Ns(t.querySelector('meta[name="viewport"]')?.getAttribute("content"));if(n)return Object.fromEntries(n);if(typeof e=="string")return Ns(e);if(e)return e;let r=t.querySelector("img");return r?{width:r.naturalWidth,height:r.naturalHeight}:{width:1e3,height:2e3}},la=class{#e=document.createElement("div");defaultViewport;spread;#t=!1;#n;#r;#i;#a;constructor(){Object.assign(this.#e.style,{width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"}),new ResizeObserver(()=>this.render()).observe(this.#e)}get element(){return this.#e}get side(){return this.#a}async#o(e){let n=document.createElement("div"),r=document.createElement("iframe");return n.append(r),Object.assign(r.style,{border:"0",display:"none",overflow:"hidden"}),r.setAttribute("scrolling","no"),r.classList.add("filter"),this.#e.append(n),e?new Promise(i=>{let a=()=>{r.removeEventListener("load",a),this.onLoad?.(r);let o=r.contentDocument,{width:s,height:l}=lf(o,this.defaultViewport);i({element:n,iframe:r,width:parseFloat(s),height:parseFloat(l)})};r.addEventListener("load",a),r.src=e}):{blank:!0,element:n,iframe:r}}render(e=this.#a){if(!e)return;let n=this.#n??{},r=this.#i??this.#r,i=e==="left"?n:r,{width:a,height:o}=this.#e.getBoundingClientRect(),s=this.spread!=="both"&&this.spread!=="portrait"&&o>a;this.#t=s;let l=n.width??r.width,u=n.height??r.height,c=s?Math.min(a/(i.width??l),o/(i.height??u)):Math.min(a/((n.width??l)+(r.width??l)),o/Math.max(n.height??u,r.height??u)),d=f=>{let{element:p,iframe:b,width:g,height:m}=f;Object.assign(b.style,{width:`${g}px`,height:`${m}px`,transform:`scale(${c})`,transformOrigin:"top left",display:"block"}),Object.assign(p.style,{width:`${(g??l)*c}px`,height:`${(m??u)*c}px`,overflow:"hidden",display:"block"}),s&&f!==i&&(p.style.display="none")};this.#i?d(this.#i):(d(n),d(r))}async showSpread({left:e,right:n,center:r,side:i}){this.#e.replaceChildren(),this.#n=null,this.#r=null,this.#i=null,r?(this.#i=await this.#o(r),this.#a="center",this.render()):(this.#n=await this.#o(e),this.#r=await this.#o(n),this.#a=i,this.render())}goLeft(){if(!this.#i){if(this.#n?.blank)return!0;if(this.#t&&this.#n?.element?.style?.display==="none")return this.#r.element.style.display="none",this.#n.element.style.display="block",this.#a="left",!0}}goRight(){if(!this.#i){if(this.#r?.blank)return!0;if(this.#t&&this.#r?.element?.style?.display==="none")return this.#n.element.style.display="none",this.#r.element.style.display="block",this.#a="right",!0}}},Hr=class{#e;#t=-1;#n=new la;constructor({book:e,onLoad:n,onRelocated:r}){this.book=e,this.onLoad=n,this.onRelocated=r;let{rendition:i}=e;this.#n.spread=i?.spread,this.#n.defaultViewport=i?.viewport;let a=e.dir==="rtl",o=!a;this.rtl=a,i?.spread==="none"?this.#e=e.sections.map(s=>({center:s})):this.#e=e.sections.reduce((s,l)=>{let u=s[s.length-1],{linear:c,pageSpread:d}=l;if(c==="no")return s;let f=()=>{let p={};return s.push(p),p};if(d==="center")f().center=l;else if(d==="left"){let p=u.center||u.left||o?f():u;p.left=l}else if(d==="right"){let p=u.center||u.right||a?f():u;p.right=l}else o?u.center||u.right?f().left=l:u.left?u.right=l:u.left=l:u.center||u.left?f().right=l:u.right?u.left=l:u.right=l;return s},[{}])}get element(){return this.#n.element}get index(){let e=this.#e[this.#t],n=e?.center??(this.#n.side==="left"?e.left??e.right:e.right??e.left);return this.book.sections.indexOf(n)}getSpreadOf(e){let n=this.#e;for(let r=0;rthis.#e.length-1)return;if(e===this.#t){this.#n.render(n);return}this.#t=e;let r=this.#e[e];if(r.center){let i=await r.center?.load?.();await this.#n.showSpread({center:i})}else{let i=await r.left?.load?.(),a=await r.right?.load?.();await this.#n.showSpread({left:i,right:a,side:n})}this.onRelocated?.(null,this.index,0,1)}async select(e){await this.goTo(e)}async goTo(e){let{book:n}=this,r=await e,i=n.sections[r.index];if(!i)return;let{index:a,side:o}=this.getSpreadOf(i);await this.goToSpread(a,o)}async next(){if(this.rtl?this.#n.goLeft():this.#n.goRight())this.onRelocated?.(null,this.index,0,1);else return this.goToSpread(this.#t+1,this.rtl?"right":"left")}async prev(){if(this.rtl?this.#n.goRight():this.#n.goLeft())this.onRelocated?.(null,this.index,0,1);else return this.goToSpread(this.#t-1,this.rtl?"left":"right")}};var zs=t=>t.replace(/\s+/g," "),cf=(t,{startIndex:e,startOffset:n,endIndex:r,endOffset:i})=>{let a=t[e],o=t[r],s=a===o?a.slice(n,i):a.slice(n)+t.slice(a+1,o).join("")+o.slice(0,i),l=zs(a.slice(0,n)).trimStart(),u=zs(o.slice(i)).trimEnd(),c=l.length<50?"":"\u2026",d=u.length<50?"":"\u2026",f=`${c}${l.slice(-50)}`,p=`${u.slice(0,50)}${d}`;return{pre:f,match:s,post:p}},uf=function*(t,e,n={}){let{locales:r="en",granularity:i="word",sensitivity:a="base"}=n,o,s;try{o=new Intl.Segmenter(r,{usage:"search",granularity:i}),s=new Intl.Collator(r,{sensitivity:a})}catch{o=new Intl.Segmenter("en",{usage:"search",granularity:i}),s=new Intl.Collator("en",{sensitivity:a})}let l=Array.from(o.segment(e)).length,u=[],c=0,d=o.segment(t[c])[Symbol.iterator]();e:for(;cp.segment).join("");if(s.compare(e,f)===0){let p=c,b=u[u.length-1],g=b.index+b.segment.length,m=u[0].strIndex,h=u[0].index,y={startIndex:m,startOffset:h,endIndex:p,endOffset:g};yield{range:y,excerpt:cf(t,y)}}u.shift()}},Bs=(t,e)=>{let{defalutLocale:n,matchCase:r,matchDiacritics:i,matchWholeWords:a}=e;return function*(o,s){let l=t(o,function*(u,c){for(let d of uf(u,s,{locales:o.body.lang||o.documentElement.lang||n||"en",granularity:a?"word":"grapheme",sensitivity:i&&r?"variant":i&&!r?"accent":!i&&r?"case":"base"})){let{startIndex:f,startOffset:p,endIndex:b,endOffset:g}=d.range;d.range=c(f,p,b,g),yield d}});for(let u of l)yield u}};var df=function*(t,e){let n=NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT|NodeFilter.SHOW_CDATA_SECTION,{FILTER_ACCEPT:r,FILTER_REJECT:i,FILTER_SKIP:a}=NodeFilter,o=d=>{let f=d.localName?.toLowerCase();return f==="script"||f==="style"?i:d.nodeType===1?a:r},s=t.createTreeWalker(t.body,n,{acceptNode:o}),l=[];for(let d=s.nextNode();d;d=s.nextNode())l.push(d);let u=l.map(d=>d.nodeValue),c=(d,f,p,b)=>{let g=t.createRange();return g.setStart(l[d],f),g.setEnd(l[p],b),g};for(let d of e(u,c))yield d};var Us=Object.fromEntries(Array.from(Object.entries({isRef:["annoref","biblioref","glossref","noteref"],isLink:["backlink"],isNote:["annotation","note","footnote","endnote","rearnote"]}),([t,e])=>[t,n=>n.getAttributeNS("http://www.idpf.org/2007/ops","type")?.split(/s/)?.some(r=>e.includes(r))])),Wr=class{#e;#t;#n;#r;language="en";textDirection="";isCJK=!1;isFixedLayout=!1;annotations=new Br({resolve:e=>this.resolveCFI(e),compare:Jn,onAdd:(e,n,r)=>{let i=this.#s(n);i&&this.#o(i.doc,i.overlayer,e);let a=this.#t.getProgress(n)?.label??"";this?.emit({type:"add-annotation",annotation:e,label:a,index:n,position:r})},onDelete:(e,n,r)=>{this.#s(n)?.overlayer?.remove(e),this?.emit({type:"delete-annotation",index:n,position:r})},onUpdate:(e,n)=>{let r=this.#s(n);r&&(r.overlayer.remove(e.value),this.#o(r.doc,r.overlayer,e))}});constructor(e,n){if(this.book=e,this.emit=n,e.metadata?.language)try{let r=e.metadata.language;e.metadata.language=Intl.getCanonicalLocales(r)[0];let i=typeof r=="string"?r:r[0],a=new Intl.Locale(i);this.isCJK=["zh","ja","kr"].includes(a.language),a.textInfo&&a.textInfo.direction&&(this.textDirection=a.textInfo.direction)}catch{}if(e.splitTOCHref&&e.getTOCFragment){let r=e.sections.map(o=>o.id);this.#e=new Nr(e.sections,150,1600);let i=e.splitTOCHref.bind(e),a=e.getTOCFragment.bind(e);this.#t=new er({toc:e.toc??[],ids:r,splitHref:i,getFragment:a}),this.#n=new er({toc:e.pageList??[],ids:r,splitHref:i,getFragment:a})}}async display(){let e={book:this.book,onLoad:this.#a.bind(this),onRelocated:this.#i.bind(this),createOverlayer:this.#l.bind(this)};return this.isFixedLayout=this.book.rendition?.layout==="pre-paginated",this.isFixedLayout?this.renderer=new Hr(e):this.renderer=new jr(e),this.renderer.element}async init({lastLocation:e,annotations:n}){if(e){let r=this.resolveNavigation(e);r?await this.renderer.goTo(r):await this.renderer.next()}else await this.renderer.next();if(n){n.sort((r,i)=>Jn(r.value,i.value));for(let r of n)await this.annotations.add(r,!0)}}#i(e,n,r){if(!this.#e)return;let i=this.#e.getProgress(n,r),a=this.#t.getProgress(n,e),o=this.#n.getProgress(n,e),s=this.getCFI(n,e);this.emit?.({type:"relocated",...i,tocItem:a,pageItem:o,cfi:s})}#a(e,n){let{book:r}=this;e.documentElement.lang||=this.language,e.documentElement.dir||=this.isCJK?"":this.textDirection,this.renderer.setStyle(this.#r);let i=r.sections[n];for(let a of e.querySelectorAll("a[href]"))a.addEventListener("click",o=>{o.preventDefault();let s=a.getAttribute("href"),l=i?.resolveHref?.(s)??s;if(r?.isExternal?.(l))this.emit?.({type:"external-link",uri:l});else if(Us.isRef(a)){let{index:u,anchor:c}=r.resolveHref(l);Promise.resolve(r.sections[u].createDocument()).then(d=>[c(d),d.contentType]).then(([d,f])=>[d?.innerHTML,f,Us.isNote(d)]).then(([d,f,p])=>d?this.emit?.({type:"reference",href:p?null:l,content:d,contentType:f,element:a}):null).catch(d=>{});return}else this.goTo(l)});this.emit?.({type:"loaded",doc:e,index:n})}#o(e,n,r){let{value:i}=r,a=this.annotations.getAnchor(i),o=e?a(e):a,[s,l]=this.emit({type:"draw-annotation",annotation:r});n.add(i,o,s,l)}#s(e){let n=this.renderer.getOverlayer();if(n.index===e)return n}#l(e,n){let r=new zr;for(let i of this.annotations.getByIndex(n))this.#o(e,r,i);return e.addEventListener("click",i=>{let[a,o]=r.hitTest(i);a&&this.emit?.({type:"show-annotation",value:a,range:o})},!1),r}async showAnnotation(e){let{value:n}=e,{index:r,anchor:i}=await this.goTo(n),{doc:a}=this.#s(r),o=i(a);this.emit?.({type:"show-annotation",value:n,range:o})}getCFI(e,n){if(!n)return"";let r=this.book.sections[e].cfi??oa.fromIndex(e);return Es(r,Ls(n))}resolveCFI(e){if(this.book.resolveCFI)return this.book.resolveCFI(e);{let n=Zt(e);return{index:oa.toIndex((n.parent??n).shift()),anchor:a=>Pr(a,n)}}}resolveNavigation(e){try{return typeof e=="number"?{index:e}:Qn.test(e)?this.resolveCFI(e):this.book.resolveHref(e)}catch{}}async goTo(e){let n=this.resolveNavigation(e);try{return await this.renderer.goTo(n),n}catch{}}async goToFraction(e){let[n,r]=this.#e.getSection(e);return this.renderer.goTo({index:n,anchor:r})}async select(e){try{let n=await this.resolveNavigation(e);await this.renderer.goTo({...n,select:!0})}catch{}}goLeft(){return this.book.dir==="rtl"?this.renderer.next():this.renderer.prev()}goRight(){return this.book.dir==="rtl"?this.renderer.prev():this.renderer.next()}setAppearance({layout:e,css:n}){this.isFixedLayout||(Object.assign(this.renderer.layout,e),this.#r=n,this.renderer.setStyle(n),this.renderer.render())}async*#d(e,n,r){let i=await this.book.sections[r].createDocument();for(let{range:a,excerpt:o}of e(i,n))yield{cfi:this.getCFI(r,a),excerpt:o}}async*#c(e,n){let{sections:r}=this.book;for(let[i,{createDocument:a}]of r.entries()){if(!a)continue;let o=await a(),s=Array.from(e(o,n),({range:u,excerpt:c})=>({cfi:this.getCFI(i,u),excerpt:c}));yield{progress:(i+1)/r.length},s.length&&(yield{index:i,subitems:s})}}async*search(e){let{query:n,index:r}=e,i=Bs(df,{defaultLocale:this.language,...e}),a=r!=null?this.#d(i,n,r):this.#c(i,n);for await(let o of a)yield"subitems"in o?{label:this.#t.getProgress(o.index)?.label??"",subitems:o.subitems}:o}};var ff=(t,e,n)=>{let r=document.createElement("ul");r.setAttribute("role","group"),r.setAttribute("aria-label",t);let i=new Map,a=o=>{n(o);let s=i.get(o);for(let l of r.children)l.setAttribute("aria-checked",l===s?"true":"false")};for(let[o,s]of e){let l=document.createElement("li");l.setAttribute("role","menuitemradio"),l.innerText=o,l.onclick=()=>a(s),i.set(s,l),r.append(l)}return{element:r,select:a}},$s=t=>{let e={},n=document.createElement("ul");n.setAttribute("role","menu");let r=()=>n.classList.remove("show"),i=a=>(...o)=>(r(),a(...o));for(let{name:a,label:o,type:s,items:l,onclick:u}of t){let c=s==="radio"?ff(o,l,i(u)):null;a&&(e[a]=c),n.append(c.element)}return window.addEventListener("blur",()=>r()),window.addEventListener("click",a=>{n.parentNode.contains(a.target)||r()}),{element:n,groups:e}};function tr(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():te}var Rg=tr();var Og=tr().PROD==="1",Dg=tr().PROD!=="1";var js=({entries:t,loadBlob:e,getSize:n},r)=>{let i=new Map,a=new Map,o=async d=>{if(i.has(d))return i.get(d);let f=URL.createObjectURL(await e(d)),p=URL.createObjectURL(new Blob([``],{type:"text/html"}));return a.set(d,[f,p]),i.set(d,p),p},s=d=>{a.get(d)?.forEach?.(f=>URL.revokeObjectURL(f)),a.delete(d),i.delete(d)},l=[".jpg",".jpeg",".png",".gif",".bmp",".webp",".svg"],u=t.map(d=>d.filename).filter(d=>l.some(f=>d.endsWith(f))).sort(),c={};return c.getCover=()=>e(u[0]),c.metadata={title:r.name},c.sections=u.map(d=>({id:d,load:()=>o(d),unload:()=>s(d),size:n(d)})),c.toc=u.map(d=>({label:d,href:d})),c.rendition={layout:"pre-paginated"},c.resolveHref=d=>({index:c.sections.findIndex(f=>f.id===d)}),c.splitTOCHref=d=>[d,null],c.getTOCFragment=d=>d.documentElement,c};var Hs=t=>t?.trim()?.replace(/\s{2,}/g," "),_t=t=>Hs(t?.textContent),qr={XLINK:"http://www.w3.org/1999/xlink",EPUB:"http://www.idpf.org/2007/ops"},Vr={XML:"application/xml",XHTML:"application/xhtml+xml"},Ot={strong:["strong","self"],emphasis:["em","self"],style:["span","self"],a:"anchor",strikethrough:["s","self"],sub:["sub","self"],sup:["sup","self"],code:["code","self"],image:"image"},hf={tr:["tr",["align"]],th:["th",["colspan","rowspan","align","valign"]],td:["td",["colspan","rowspan","align","valign"]]},Ws={epigraph:["blockquote"],subtitle:["h2",Ot],"text-author":["p",Ot],date:["p",Ot],stanza:"stanza"},Kr={title:["header",{p:["h1",Ot],"empty-line":["br"]}],epigraph:["blockquote","self"],image:"image",annotation:["aside"],section:["section","self"],p:["p",Ot],poem:["blockquote",Ws],subtitle:["h2",Ot],cite:["blockquote","self"],"empty-line":["br"],table:["table",hf],"text-author":["p",Ot]};Ws.epigraph.push(Kr);var pf={image:"image",title:["section",{p:["h1",Ot],"empty-line":["br"]}],epigraph:["section",Kr],section:["section",Kr]},qs=t=>{let e=t.getAttributeNS(qr.XLINK,"href"),[,n]=e.split("#"),r=t.getRootNode().getElementById(n);return r?`data:${r.getAttribute("content-type")};base64,${r.textContent}`:e},ua=class{constructor(e){this.fb2=e,this.doc=document.implementation.createDocument(qr.XHTML,"html")}image(e){let n=this.doc.createElement("img");return n.alt=e.getAttribute("alt"),n.title=e.getAttribute("title"),n.setAttribute("src",qs(e)),n}anchor(e){let n=this.convert(e,{a:["a",Ot]});return n.setAttribute("href",e.getAttributeNS(qr.XLINK,"href")),e.getAttribute("type")==="note"&&n.setAttributeNS(qr.EPUB,"epub:type","noteref"),n}stanza(e){let n=this.convert(e,{stanza:["p",{title:["header",{p:["strong",Ot],"empty-line":["br"]}],subtitle:["p",Ot]}]});for(let r of e.children)r.nodeName==="v"&&(n.append(this.doc.createTextNode(r.textContent)),n.append(this.doc.createElement("br")));return n}convert(e,n){if(e.nodeType===3)return this.doc.createTextNode(e.textContent);if(e.nodeType===4)return this.doc.createCDATASection(e.textContent);if(e.nodeType===8)return this.doc.createComment(e.textContent);let r=n?.[e.nodeName];if(!r)return null;if(typeof r=="string")return this[r](e);let[i,a]=r,o=this.doc.createElement(i);if(e.id&&(o.id=e.id),o.classList.add(e.nodeName),Array.isArray(a))for(let u of a)o.setAttribute(u,e.getAttribute(u));let s=a==="self"?n:Array.isArray(a)?null:a,l=e.firstChild;for(;l;){let u=this.convert(l,s);u&&o.append(u),l=l.nextSibling}return o}},mf=async t=>{let e=await t.arrayBuffer(),n=new TextDecoder("utf-8").decode(e),r=new DOMParser,i=r.parseFromString(n,Vr.XML),a=i.xmlEncoding||n.match(/^<\?xml\s+version\s*=\s*["']1.\d+"\s+encoding\s*=\s*["']([A-Za-z0-9._-]*)["']/)?.[1];if(a&&a.toLowerCase()!=="utf-8"){let o=new TextDecoder(a).decode(e);return r.parseFromString(o,Vr.XML)}return i},gf=URL.createObjectURL(new Blob([` +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"firefox_zip"};var Ud=(t,e)=>t.map((n,r,i)=>e(n,r,i)?r:null).filter(n=>n!=null),Ss=(t,e)=>[-1,...e,t.length].reduce(({xs:n,a:r},i)=>({xs:n?.concat([t.slice(r+1,i)])??[],a:i}),{}).xs,$d=(t,e)=>t.slice(0,-1).concat([t[t.length-1].concat(e[0])]).concat(e.slice(1)),ta=/\d/,Qn=/^epubcfi\((.*)\)$/,Cs=t=>t.replace(/[\^[\](),;=]/g,"^$&"),jd=t=>Qn.test(t)?t:`epubcfi(${t})`,Hd=t=>t.match(Qn)?.[1]??t,Wd=t=>(...e)=>`epubcfi(${t(...e.map(n=>n.match(Qn)?.[1]??n))})`,Es=Wd((...t)=>t.join("!")),qd=t=>{let e=[],n,r,i="",a=s=>(e.push(s),n=null,i=""),o=s=>(i+=s,r=!1);for(let s of Array.from(t.trim()).concat("")){if(s==="^"&&!r){r=!0;continue}if(n==="!")a(["!"]);else if(n===",")a([","]);else if(n==="/"||n===":")if(ta.test(s)){o(s);continue}else a([n,parseInt(i)]);else if(n==="~")if(ta.test(s)||s==="."){o(s);continue}else a(["~",parseFloat(i)]);else if(n==="@"){if(s===":"){a(["@",parseFloat(i)]),n="@";continue}if(ta.test(s)||s==="."){o(s);continue}else a(["@",parseFloat(i)])}else if(n==="["){s===";"&&!r?(a(["[",i]),n=";"):s===","&&!r?(a(["[",i]),n="["):s==="]"&&!r?a(["[",i]):o(s);continue}else if(n?.startsWith(";")){s==="="&&!r?(n=`;${i}`,i=""):s===";"&&!r?(a([n,i]),n=";"):s==="]"&&!r?a([n,i]):o(s);continue}(s==="/"||s===":"||s==="~"||s==="@"||s==="["||s==="!"||s===",")&&(n=s)}return e},As=(t,e)=>Ud(t,([n])=>n===e),Vd=t=>{let e=[],n;for(let[r,i]of t){if(r==="/")e.push({index:i});else{let a=e[e.length-1];if(r===":")a.offset=i;else if(r==="~")a.temporal=i;else if(r==="@")a.spatial=(a.spatial??[]).concat(i);else if(r===";s")a.side=i;else if(r==="[")if(n==="/"&&i)a.id=i;else{a.text=(a.text??[]).concat(i);continue}}n=r}return e},ks=t=>Ss(t,As(t,"!")).map(Vd),Zt=t=>{let e=qd(Hd(t)),n=As(e,",");if(!n.length)return ks(e);let[r,i,a]=Ss(e,n).map(ks);return{parent:r,start:i,end:a}},Kd=({index:t,id:e,offset:n,temporal:r,spatial:i,text:a,side:o})=>{let s=o?`;s=${o}`:"";return`/${t}`+(e?`[${Cs(e)}${s}]`:"")+(n!=null&&t%2?`:${n}`:"")+(r?`~${r}`:"")+(i?`@${i.join(":")}`:"")+(a||!e&&o?"["+(a?.map(Cs)?.join(",")??"")+s+"]":"")},Ms=t=>t.parent?[t.parent,t.start,t.end].map(Ms).join(","):t.map(e=>e.map(Kd).join("")).join("!"),Ir=t=>jd(Ms(t)),Ut=(t,e)=>typeof t=="string"?Ir(Ut(Zt(t),e)):t.parent?$d(t.parent,t[e?"end":"start"]):t,Gd=(t,e)=>{typeof t=="string"&&(t=Zt(t)),typeof e=="string"&&(e=Zt(e)),t=Ut(t),e=Ut(e,!0);let n=t[t.length-1],r=e[e.length-1],i=[],a=[],o=[],s=!0,l=Math.max(n.length,r.length);for(let c=0;c{if(typeof t=="string"&&(t=Zt(t)),typeof e=="string"&&(e=Zt(e)),t.start||e.start)return Jn(Ut(t),Ut(e))||Jn(Ut(t,!0),Ut(e,!0));for(let n=0;nl.index)return 1;if(s.indexl.offset)return 1;if(s.offsett===3||t===4,Dr=({nodeType:t})=>t===1,ia=t=>{let e=Array.from(t.childNodes).filter(n=>na(n)||Dr(n)).reduce((n,r)=>{let i=n[n.length-1];return i?na(r)?Array.isArray(i)?i.push(r):na(i)?n[n.length-1]=[i,r]:n.push(r):Dr(i)?n.push(null,r):n.push(r):n.push(r),n},[]);return Dr(e[0])&&e.unshift("first"),Dr(e[e.length-1])&&e.push("last"),e.unshift("before"),e.push("after"),e},Xd=(t,e)=>t?ia(t)[e]:null,ra=(t,e)=>{let{id:n}=e[e.length-1];if(n){let a=t.ownerDocument.getElementById(n);if(a)return{node:a,offset:0}}for(let{index:a}of e){let o=Xd(t,a);if(o==="first")return{node:t.firstChild??t};if(o==="last")return{node:t.lastChild??t};if(o==="before")return{node:t,before:!0};if(o==="after")return{node:t,after:!0};t=o}let{offset:r}=e[e.length-1];if(!Array.isArray(t))return{node:t,offset:r};let i=0;for(let a of t){let{length:o}=a.nodeValue;if(i+o>=r)return{node:a,offset:r-i};i+=o}},Fr=(t,e)=>{let{parentNode:n,id:r}=t,i=ia(n),a=i.findIndex(l=>Array.isArray(l)?l.some(u=>u===t):l===t),o=i[a];if(Array.isArray(o)){let l=0;for(let u of o)if(u===t){l+=e;break}else l+=u.nodeValue.length;e=l}let s={id:r,index:a,offset:e};return n!==t.ownerDocument.documentElement?Fr(n).concat(s):[s]},Ls=t=>{let{startContainer:e,startOffset:n,endContainer:r,endOffset:i}=t,a=Fr(e,n);if(t.collapsed)return Ir([a]);let o=Fr(r,i);return Gd([a],[o])},Pr=(t,e)=>{let n=Ut(e),r=Ut(e,!0),i=t.documentElement,a=ra(i,n[0]),o=ra(i,r[0]),s=t.createRange();return a.before?s.setStartBefore(a.node):a.after?s.setStartAfter(a.node):s.setStart(a.node,a.offset),o.before?s.setEndBefore(o.node):o.after?s.setEndAfter(o.node):s.setEnd(o.node,o.offset),s},Rs=t=>{let e=[],{parentNode:n}=t[0],r=Fr(n);for(let[i,a]of ia(n).entries()){let o=t[e.length];a===o&&e.push(Ir([r.concat({id:o.id,index:i})]))}return e},aa=(t,e)=>ra(t.documentElement,Ut(e)).node,oa={fromIndex:t=>`/6/${(t+1)*2}`,toIndex:t=>t?.at(-1).index/2-1};var Yd=t=>{let e=0,n=r=>{if(r.id=e++,r.subitems)for(let i of r.subitems)n(i)};for(let r of t)n(r);return t},Ds=t=>t.map(e=>e.subitems?.length?[e,Ds(e.subitems)].flat():e).flat(),er=class{constructor({toc:e,ids:n,splitHref:r,getFragment:i}){Yd(e);let a=Ds(e),o=new Map;for(let[l,u]of a.entries()){let[c,d]=r(u?.href)??[],f={fragment:d,item:u};o.has(c)?o.get(c).items.push(f):o.set(c,{prev:a[l-1],items:[f]})}let s=new Map;for(let[l,u]of n.entries())o.has(u)?s.set(u,o.get(u)):s.set(u,s.get(n[l-1]));this.ids=n,this.map=s,this.getFragment=i}getProgress(e,n){let r=this.ids[e],i=this.map.get(r);if(!i)return null;let{prev:a,items:o}=i;if(!o)return a;if(!n||o.length===1&&!o[0].fragment)return o[0].item;let s=n.startContainer.getRootNode();for(let[l,{fragment:u}]of o.entries()){let c=this.getFragment(s,u);if(c&&n.comparePoint(c,0)>0)return o[l-1]?.item??a}return o[o.length-1].item}},Nr=class{constructor(e,n,r){this.sizes=e.map(i=>i.linear==="no"?0:i.size),this.sizePerLoc=n,this.sizePerTimeUnit=r,this.sizeTotal=this.sizes.reduce((i,a)=>i+a,0)}getProgress(e,n){let{sizes:r,sizePerLoc:i,sizePerTimeUnit:a,sizeTotal:o}=this,s=r[e]??0,u=r.slice(0,e).reduce((f,p)=>f+p,0)+n*s,c=o-u,d=(1-n)*s;return{fraction:u/o,section:{current:e,total:r.length},location:{current:Math.floor(u/i),total:Math.ceil(o/i)},time:{section:d/a,total:c/a}}}getSection(e){let{sizes:n,sizeTotal:r}=this,i=e*r,a=-1,o=0,s=0;for(let[l,u]of n.entries()){let c=s+u;if(c>i){a=l,o=(i-s)/u;break}s=c}return[a,o]}};var Mn=t=>document.createElementNS("http://www.w3.org/2000/svg",t),zr=class{#e=Mn("svg");#t=new Map;constructor(){Object.assign(this.#e.style,{position:"absolute",top:"0",left:"0",width:"100%",height:"100%",pointerEvents:"none"});let e=matchMedia("(prefers-color-scheme: dark)"),n=()=>this.#e.style.mixBlendMode=e.matches?"normal":"multiply";e.addEventListener("change",n),n()}get element(){return this.#e}add(e,n,r,i){this.#t.has(e)&&this.remove(e),typeof n=="function"&&(n=n(this.#e.getRootNode()));let a=n.getClientRects(),o=r(a,i);this.#e.append(o),this.#t.set(e,{range:n,draw:r,options:i,element:o,rects:a})}remove(e){this.#t.has(e)&&(this.#e.removeChild(this.#t.get(e).element),this.#t.delete(e))}redraw(){for(let e of this.#t.values()){let{range:n,draw:r,options:i,element:a}=e;this.#e.removeChild(a);let o=n.getClientRects(),s=r(o,i);this.#e.append(s),e.element=s,e.rects=o}}hitTest({x:e,y:n}){let r=Array.from(this.#t.entries());for(let i=r.length-1;i>=0;i--){let[a,o]=r[i];for(let{left:s,top:l,right:u,bottom:c}of o.rects)if(l<=n&&s<=e&&c>n&&u>e)return[a,o.range]}return[]}static underline(e,n={}){let{color:r="red",width:i=2}=n,a=Mn("g");a.setAttribute("fill",r);for(let{left:o,bottom:s,width:l}of e){let u=Mn("rect");u.setAttribute("x",o),u.setAttribute("y",s-i),u.setAttribute("height",i),u.setAttribute("width",l),a.append(u)}return a}static highlight(e,n={}){let{color:r="red"}=n,i=Mn("g");i.setAttribute("fill",r),i.setAttribute("fill-opacity",.3);for(let{left:a,top:o,height:s,width:l}of e){let u=Mn("rect");u.setAttribute("x",a),u.setAttribute("y",o),u.setAttribute("height",s),u.setAttribute("width",l),i.append(u)}return i}static copyImage([e],n={}){let{src:r}=n,i=Mn("image"),{left:a,top:o,height:s,width:l}=e;return i.setAttribute("href",r),i.setAttribute("x",a),i.setAttribute("y",o),i.setAttribute("height",s),i.setAttribute("width",l),i}};var Br=class{#e=new Map;#t=new Map;#n=new Map;#r=new Map;constructor({resolve:e,compare:n,onAdd:r,onDelete:i,onUpdate:a}){this.resolve=e,this.compare=n,this.onAdd=r,this.onDelete=i,this.onUpdate=a}async add(e,n){let{value:r}=e;if(this.#t.has(r))return;let{index:i,anchor:a}=await this.resolve(r);if(this.#t.set(r,e),this.#r.set(r,i),this.#n.set(r,a),this.#e.has(i)){let o=this.#e.get(i);if(n)o.push(e),this.onAdd?.(e,i,o.length-1);else{let s=0;for(let l=0;la.value===e);r.splice(i,1),this.#t.delete(e),this.#r.delete(e),this.#n.delete(e),this.onDelete?.(e,n,i)}getByIndex(e){return this.#e.get(e)??[]}getAnchor(e){return this.#n.get(e)}};var Zd=t=>new Promise(e=>setTimeout(e,t)),Jd=(t,e,n)=>{let r;return(...i)=>{let a=()=>{r=null,n||t(...i)},o=n&&!r;r&&clearTimeout(r),r=setTimeout(a,e),o&&t(...i)}},Qd=t=>{if(!t?.collapsed)return t;let{endOffset:e,endContainer:n}=t;if(n.nodeType===1)return n;if(e+11)t.setStart(n,e-1);else return n.parentNode;return t},Ur=(t,e,n,r=n)=>{let i=t.createRange();return i.setStart(e,n),i.setEnd(e,r),i},$r=(t,e,n,r=0,i=e.nodeValue.length)=>{if(i-r===1)return n(Ur(t,e,r),Ur(t,e,i))<0?r:i;let a=Math.floor(r+(i-r)/2),o=n(Ur(t,e,r,a),Ur(t,e,a,i));return o<0?$r(t,e,n,r,a):o>0?$r(t,e,n,a,i):a},{SHOW_ELEMENT:ef,SHOW_TEXT:tf,SHOW_CDATA_SECTION:nf,FILTER_ACCEPT:Fs,FILTER_REJECT:Is,FILTER_SKIP:Ps}=NodeFilter,rf=ef|tf|nf,af=(t,e,n,r)=>{let i=f=>{let p=f.localName?.toLowerCase();if(p==="script"||p==="style")return Is;if(f.nodeType===1){let{left:b,right:g}=r(f.getBoundingClientRect());if(gn)return Is;if(b>=e&&g<=n)return Fs}else{if(!f.nodeValue?.trim())return Ps;let b=t.createRange();b.selectNodeContents(f);let{left:g,right:m}=r(b.getBoundingClientRect());if(m>=e&&g<=n)return Fs}return Ps},a=t.createTreeWalker(t.body,rf,{acceptNode:i}),o=[];for(let f=a.nextNode();f;f=a.nextNode())o.push(f);let s=o[0]??t.body,l=o[o.length-1]??s,u=s.nodeType===1?0:$r(t,s,(f,p)=>{let b=r(f.getBoundingClientRect()),g=r(p.getBoundingClientRect());return b.righte?0:g.left>e?-1:1}),c=l.nodeType===1?0:$r(t,l,(f,p)=>{let b=r(f.getBoundingClientRect()),g=r(p.getBoundingClientRect());return b.rightn?0:g.left>n?-1:1}),d=t.createRange();return d.setStart(s,u),d.setEnd(l,c),d},of=t=>{let{defaultView:e}=t,{writingMode:n,direction:r}=e.getComputedStyle(t.body),i=n==="vertical-rl"||n==="vertical-lr",a=t.body.dir==="rtl"||r==="rtl"||t.documentElement.dir==="rtl";return{vertical:i,rtl:a}},sf=t=>{let e=t.defaultView.getComputedStyle(t.body);return e.backgroundColor==="rgba(0, 0, 0, 0)"&&e.backgroundImage==="none"?t.defaultView.getComputedStyle(t.documentElement).background:e.background},sa=class{#e=document.createElement("div");#t=document.createElement("iframe");#n=document.createRange();#r;#i=!1;#a=!1;#o=!0;#s;#l={};constructor({container:e}){this.container=e,this.#t.classList.add("filter"),this.#e.append(this.#t),Object.assign(this.#e.style,{position:"relative",overflow:"hidden",flex:"0 0 auto",width:"100%",height:"100%"}),Object.assign(this.#t.style,{overflow:"hidden",border:"0",display:"none",width:"100%",height:"100%"}),this.#t.setAttribute("sandbox","allow-same-origin allow-scripts"),this.#t.setAttribute("scrolling","no")}get element(){return this.#e}get document(){return this.#t.contentDocument}async load(e,n,r){if(typeof e!="string")throw new Error(`${e} is not string`);return new Promise(i=>{this.#t.addEventListener("load",()=>{let a=this.document;n?.(a),this.#t.style.display="block";let{vertical:o,rtl:s}=of(a),l=sf(a);this.#t.style.display="none",this.#i=o,this.#a=s,this.#n.selectNodeContents(a.body);let u=r?.({vertical:o,rtl:s,background:l});this.#t.style.display="block",this.render(u),new ResizeObserver(()=>this.expand()).observe(a.body),i()},{once:!0}),this.#t.src=e})}render(e){this.#o=e.flow!=="scrolled",this.#l=e,this.#o?this.columnize(e):this.scrolled(e)}scrolled({gap:e,columnWidth:n}){let r=this.#i,i=this.document;Object.assign(i.documentElement.style,{boxSizing:"border-box",padding:r?`${e}px 0`:`0 ${e}px`,columnWidth:"auto",height:"auto",width:"auto"}),Object.assign(i.body.style,{[r?"maxHeight":"maxWidth"]:`${n}px`,margin:"auto"}),this.setImageSize(),this.expand()}columnize({width:e,height:n,gap:r,columnWidth:i}){let a=this.#i;this.#s=a?n:e;let o=this.document;Object.assign(o.documentElement.style,{boxSizing:"border-box",columnWidth:`${i}px`,columnGap:`${r}px`,columnFill:"auto",...a?{width:`${e}px`}:{height:`${n}px`},padding:a?`${r/2}px 0`:`0 ${r/2}px`,overflow:"hidden",overflowWrap:"anywhere",position:"static",border:"0",margin:"0",maxHeight:"none",maxWidth:"none",minHeight:"none",minWidth:"none",webkitLineBoxContain:"block glyphs replaced"}),Object.assign(o.body.style,{maxHeight:"none",maxWidth:"none",margin:"0"}),this.setImageSize(),this.expand()}setImageSize(){let{width:e,height:n,margin:r}=this.#l,i=this.#i,a=this.document;for(let o of a.body.querySelectorAll("img, svg, video")){let{maxHeight:s,maxWidth:l}=a.defaultView.getComputedStyle(o);Object.assign(o.style,{maxHeight:i?s!=="none"&&s!=="0px"?s:"100%":`${n-r*2}px`,maxWidth:i?`${e-r*2}px`:l!=="none"&&l!=="0px"?l:"100%",objectFit:"contain",pageBreakInside:"avoid",breakInside:"avoid",boxSizing:"border-box"})}}expand(){if(this.#o){let e=this.#i?"height":"width",n=this.#i?"width":"height",r=this.#n.getBoundingClientRect()[e],a=Math.ceil(r/this.#s)*this.#s;this.#e.style.padding="0",this.#t.style[e]=`${a}px`,this.#e.style[e]=`${a}px`,this.#t.style[n]="100%",this.#e.style[n]="100%",this.document&&(this.document.documentElement.style[e]=`${a}px`),this.#r&&(this.#r.element.style.margin="0",this.#r.element.style[e]=`${a}px`,this.#r.redraw())}else{let e=this.#i?"width":"height",n=this.#i?"height":"width",a=this.document?.documentElement?.getBoundingClientRect()?.[e],{margin:o}=this.#l,s=this.#i?`0 ${o}px`:`${o}px 0`;this.#e.style.padding=s,this.#t.style[e]=`${a}px`,this.#e.style[e]=`${a}px`,this.#t.style[n]="100%",this.#e.style[n]="100%",this.#r&&(this.#r.element.style.margin=s,this.#r.element.style[e]=`${a}px`,this.#r.redraw())}}set overlayer(e){this.#r=e,this.#e.append(e.element)}get overlayer(){return this.#r}},jr=class{#e=document.createElement("div");#t=document.createElement("div");#n;#r=!1;#i=!1;#a=-1;#o=0;#s=!1;#l=new WeakMap;layout={margin:48,gap:40,maxColumnWidth:700};constructor({book:e,onLoad:n,onRelocated:r,createOverlayer:i}){this.sections=e.sections,this.onLoad=n,this.onRelocated=r,this.createOverlayer=i,Object.assign(this.#e.style,{boxSizing:"border-box",width:"100%",height:"100%",position:"absolute"}),this.#e.append(this.#t),Object.assign(this.#t.style,{width:"100%",height:"100%"}),new ResizeObserver(()=>this.render()).observe(this.#e),this.#t.addEventListener("scroll",Jd(()=>{this.scrolled&&this.#b("scroll")},250))}get element(){return this.#e}#d(){return this.#n&&this.#t.removeChild(this.#n.element),this.#n=new sa({container:this.#e}),this.#t.append(this.#n.element),this.#n}#c({vertical:e,rtl:n,background:r}){this.#r=e,this.#i=n,this.#e.style.background=r;let{flow:i,margin:a,gap:o,maxColumnWidth:s}=this.layout;if(i==="scrolled"){this.#e.setAttribute("dir",e?"rtl":"ltr"),this.#e.style.padding="0",this.#t.style.overflow="scroll";let g=this.layout.maxColumnWidth;return{flow:i,margin:a,gap:o,columnWidth:g}}let{width:l,height:u}=this.#t.getBoundingClientRect(),c=e?u:l,d=Math.ceil(c/s),f=c/d-o;this.#e.setAttribute("dir",n?"rtl":"ltr");let p=`${e?o:o/2}px`,b=`${e?a-o/2:a}px`;return this.#e.style.padding=`${b} ${p}`,this.#t.style.overflow="hidden",{height:u,width:l,margin:a,gap:o,columnWidth:f}}render(){this.#n&&(this.#n.render(this.#c({vertical:this.#r,rtl:this.#i})),this.#g())}get scrolled(){return this.layout.flow==="scrolled"}get scrollProp(){let{scrolled:e}=this;return this.#r?e?"scrollLeft":"scrollTop":e?"scrollTop":"scrollLeft"}get sideProp(){let{scrolled:e}=this;return this.#r?e?"width":"height":e?"height":"width"}get size(){return this.#t.getBoundingClientRect()[this.sideProp]}get viewSize(){return this.#n.element.getBoundingClientRect()[this.sideProp]}get start(){return Math.abs(this.#t[this.scrollProp])}get end(){return this.start+this.size}get page(){return Math.floor((this.start+this.end)/2/this.size)}get pages(){return Math.round(this.viewSize/this.size)}#u(){if(this.scrolled){let n=this.viewSize,r=this.layout.margin;return this.#r?({left:i,right:a})=>({left:n-a-r,right:n-i-r}):({top:i,bottom:a})=>({left:i+r,right:a+r})}let e=this.pages*this.size;return this.#i?({left:n,right:r})=>({left:e-r,right:e-n}):this.#r?({top:n,bottom:r})=>({left:n,right:r}):n=>n}async#h(e,n){if(this.scrolled){let i=this.#u()(e).left;return this.#f(i,n)}let r=this.#u()(e).left+this.layout.margin/2;return this.#p(Math.floor(r/this.size),n)}async#f(e,n){let r=this.#t,{scrollProp:i}=this;if(r[i]===e){this.#b(n);return}this.scrolled&&this.#r&&(e=-e),r[i]=e,this.#b(n)}async#p(e,n){let r=this.size*(this.#i?-e:e);return this.#f(r,n)}async#g(e){let n=Qd(this.#o).getBoundingClientRect?.();if(n){await this.#h(n,"anchor"),e&&this.#T();return}if(this.scrolled){await this.#f(this.#o*this.viewSize,"anchor");return}let{pages:r}=this;if(!r)return;let i=Math.round(this.#o*(r-1));await this.#p(i,"anchor")}#T(){let{defaultView:e}=this.#n.document;if(this.#o instanceof e.Range){let n=e.getSelection();n.removeAllRanges(),n.addRange(this.#o)}}#_(){return af(this.#n.document,this.start,this.end,this.#u(),this.scrolled)}#b(e){let n=this.#_();e!=="anchor"&&(this.#o=n);let r=this.#a;this.scrolled?this.onRelocated?.(n,r,this.end/this.viewSize):this.pages>0&&this.onRelocated?.(n,r,(this.page+1)/this.pages)}async#w(e){let{index:n,src:r,anchor:i,onLoad:a,select:o}=await e;if(this.#a=n,r){let s=this.#d(),l=d=>{if(d.head){let f=d.createElement("style");d.head.append(f),this.#l.set(d,f)}a?.(d,n)},u=this.#c.bind(this);await s.load(r,l,u);let c=this.createOverlayer?.(s.document,n);c&&(s.overlayer=c),this.#n=s}this.#o=(typeof i=="function"?i(this.#n.document):i)??0,await this.#g(o)}#v(e){return e>-1&&e0?this.#f(Math.max(0,this.start-this.size)):null;let e=this.page-1;return this.#v(e)?this.#p(e):null}scrollNext(){if(!this.#n)return null;if(this.scrolled)return this.viewSize-this.end>2?this.#f(Math.min(this.viewSize,this.end)):null;let e=this.page+1;return this.#v(e)?this.#p(e):null}#x(e){return e>=0&&e<=this.sections.length-1}async#y(e,n,r){if(this.#s)return;r&&(this.#s=!0);let i=e?.();if(i)await i;else{let{index:a,anchor:o,select:s}=await n;if(!this.#x(a))return this.#s=!1,null;if(a===this.#a)await this.#w({index:a,anchor:o,select:s});else{let l=this.#a,u=(...c)=>{this.sections[l]?.unload?.(),this.onLoad?.(...c)};await this.#w(Promise.resolve(this.sections[a].load()).then(c=>({index:a,src:c,anchor:o,onLoad:u,select:s})).catch(c=>({})))}}r&&(await Zd(100),this.#s=!1)}async goTo(e){return this.#y(null,e)}#m(e){for(let n=this.#a+e;this.#x(n);n+=e)if(this.sections[n]?.linear!=="no")return n}prev(){let e=this.#m(-1);return this.#y(()=>this.scrollPrev(),{index:e,anchor:()=>1},!0)}next(){let e=this.#m(1);return this.#y(()=>this.scrollNext(),{index:e},!0)}prevSection(){return this.goTo({index:this.#m(-1)})}nextSection(){return this.goTo({index:this.#m(1)})}firstSection(){let e=this.sections.findIndex(n=>n.linear!=="no");return this.goTo({index:e})}lastSection(){let e=this.sections.findLastIndex(n=>n.linear!=="no");return this.goTo({index:e})}getOverlayer(){if(this.#n)return{index:this.#a,overlayer:this.#n.overlayer,doc:this.#n.document}}setStyle(e){let n=this.#l.get(this.#n?.document);n&&(n.textContent=e)}async#C(e,n){this.#o=e,await this.#g(n)}};var Ns=t=>t?.split(/[,;\s]/)?.filter(e=>e)?.map(e=>e.split("=").map(n=>n.trim())),lf=(t,e)=>{if(t.documentElement.nodeName==="svg"){let[,,i,a]=t.documentElement.getAttribute("viewBox")?.split(/\s/)??[];return{width:i,height:a}}let n=Ns(t.querySelector('meta[name="viewport"]')?.getAttribute("content"));if(n)return Object.fromEntries(n);if(typeof e=="string")return Ns(e);if(e)return e;let r=t.querySelector("img");return r?{width:r.naturalWidth,height:r.naturalHeight}:{width:1e3,height:2e3}},la=class{#e=document.createElement("div");defaultViewport;spread;#t=!1;#n;#r;#i;#a;constructor(){Object.assign(this.#e.style,{width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"}),new ResizeObserver(()=>this.render()).observe(this.#e)}get element(){return this.#e}get side(){return this.#a}async#o(e){let n=document.createElement("div"),r=document.createElement("iframe");return n.append(r),Object.assign(r.style,{border:"0",display:"none",overflow:"hidden"}),r.setAttribute("scrolling","no"),r.classList.add("filter"),this.#e.append(n),e?new Promise(i=>{let a=()=>{r.removeEventListener("load",a),this.onLoad?.(r);let o=r.contentDocument,{width:s,height:l}=lf(o,this.defaultViewport);i({element:n,iframe:r,width:parseFloat(s),height:parseFloat(l)})};r.addEventListener("load",a),r.src=e}):{blank:!0,element:n,iframe:r}}render(e=this.#a){if(!e)return;let n=this.#n??{},r=this.#i??this.#r,i=e==="left"?n:r,{width:a,height:o}=this.#e.getBoundingClientRect(),s=this.spread!=="both"&&this.spread!=="portrait"&&o>a;this.#t=s;let l=n.width??r.width,u=n.height??r.height,c=s?Math.min(a/(i.width??l),o/(i.height??u)):Math.min(a/((n.width??l)+(r.width??l)),o/Math.max(n.height??u,r.height??u)),d=f=>{let{element:p,iframe:b,width:g,height:m}=f;Object.assign(b.style,{width:`${g}px`,height:`${m}px`,transform:`scale(${c})`,transformOrigin:"top left",display:"block"}),Object.assign(p.style,{width:`${(g??l)*c}px`,height:`${(m??u)*c}px`,overflow:"hidden",display:"block"}),s&&f!==i&&(p.style.display="none")};this.#i?d(this.#i):(d(n),d(r))}async showSpread({left:e,right:n,center:r,side:i}){this.#e.replaceChildren(),this.#n=null,this.#r=null,this.#i=null,r?(this.#i=await this.#o(r),this.#a="center",this.render()):(this.#n=await this.#o(e),this.#r=await this.#o(n),this.#a=i,this.render())}goLeft(){if(!this.#i){if(this.#n?.blank)return!0;if(this.#t&&this.#n?.element?.style?.display==="none")return this.#r.element.style.display="none",this.#n.element.style.display="block",this.#a="left",!0}}goRight(){if(!this.#i){if(this.#r?.blank)return!0;if(this.#t&&this.#r?.element?.style?.display==="none")return this.#n.element.style.display="none",this.#r.element.style.display="block",this.#a="right",!0}}},Hr=class{#e;#t=-1;#n=new la;constructor({book:e,onLoad:n,onRelocated:r}){this.book=e,this.onLoad=n,this.onRelocated=r;let{rendition:i}=e;this.#n.spread=i?.spread,this.#n.defaultViewport=i?.viewport;let a=e.dir==="rtl",o=!a;this.rtl=a,i?.spread==="none"?this.#e=e.sections.map(s=>({center:s})):this.#e=e.sections.reduce((s,l)=>{let u=s[s.length-1],{linear:c,pageSpread:d}=l;if(c==="no")return s;let f=()=>{let p={};return s.push(p),p};if(d==="center")f().center=l;else if(d==="left"){let p=u.center||u.left||o?f():u;p.left=l}else if(d==="right"){let p=u.center||u.right||a?f():u;p.right=l}else o?u.center||u.right?f().left=l:u.left?u.right=l:u.left=l:u.center||u.left?f().right=l:u.right?u.left=l:u.right=l;return s},[{}])}get element(){return this.#n.element}get index(){let e=this.#e[this.#t],n=e?.center??(this.#n.side==="left"?e.left??e.right:e.right??e.left);return this.book.sections.indexOf(n)}getSpreadOf(e){let n=this.#e;for(let r=0;rthis.#e.length-1)return;if(e===this.#t){this.#n.render(n);return}this.#t=e;let r=this.#e[e];if(r.center){let i=await r.center?.load?.();await this.#n.showSpread({center:i})}else{let i=await r.left?.load?.(),a=await r.right?.load?.();await this.#n.showSpread({left:i,right:a,side:n})}this.onRelocated?.(null,this.index,0,1)}async select(e){await this.goTo(e)}async goTo(e){let{book:n}=this,r=await e,i=n.sections[r.index];if(!i)return;let{index:a,side:o}=this.getSpreadOf(i);await this.goToSpread(a,o)}async next(){if(this.rtl?this.#n.goLeft():this.#n.goRight())this.onRelocated?.(null,this.index,0,1);else return this.goToSpread(this.#t+1,this.rtl?"right":"left")}async prev(){if(this.rtl?this.#n.goRight():this.#n.goLeft())this.onRelocated?.(null,this.index,0,1);else return this.goToSpread(this.#t-1,this.rtl?"left":"right")}};var zs=t=>t.replace(/\s+/g," "),cf=(t,{startIndex:e,startOffset:n,endIndex:r,endOffset:i})=>{let a=t[e],o=t[r],s=a===o?a.slice(n,i):a.slice(n)+t.slice(a+1,o).join("")+o.slice(0,i),l=zs(a.slice(0,n)).trimStart(),u=zs(o.slice(i)).trimEnd(),c=l.length<50?"":"\u2026",d=u.length<50?"":"\u2026",f=`${c}${l.slice(-50)}`,p=`${u.slice(0,50)}${d}`;return{pre:f,match:s,post:p}},uf=function*(t,e,n={}){let{locales:r="en",granularity:i="word",sensitivity:a="base"}=n,o,s;try{o=new Intl.Segmenter(r,{usage:"search",granularity:i}),s=new Intl.Collator(r,{sensitivity:a})}catch{o=new Intl.Segmenter("en",{usage:"search",granularity:i}),s=new Intl.Collator("en",{sensitivity:a})}let l=Array.from(o.segment(e)).length,u=[],c=0,d=o.segment(t[c])[Symbol.iterator]();e:for(;cp.segment).join("");if(s.compare(e,f)===0){let p=c,b=u[u.length-1],g=b.index+b.segment.length,m=u[0].strIndex,h=u[0].index,y={startIndex:m,startOffset:h,endIndex:p,endOffset:g};yield{range:y,excerpt:cf(t,y)}}u.shift()}},Bs=(t,e)=>{let{defalutLocale:n,matchCase:r,matchDiacritics:i,matchWholeWords:a}=e;return function*(o,s){let l=t(o,function*(u,c){for(let d of uf(u,s,{locales:o.body.lang||o.documentElement.lang||n||"en",granularity:a?"word":"grapheme",sensitivity:i&&r?"variant":i&&!r?"accent":!i&&r?"case":"base"})){let{startIndex:f,startOffset:p,endIndex:b,endOffset:g}=d.range;d.range=c(f,p,b,g),yield d}});for(let u of l)yield u}};var df=function*(t,e){let n=NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT|NodeFilter.SHOW_CDATA_SECTION,{FILTER_ACCEPT:r,FILTER_REJECT:i,FILTER_SKIP:a}=NodeFilter,o=d=>{let f=d.localName?.toLowerCase();return f==="script"||f==="style"?i:d.nodeType===1?a:r},s=t.createTreeWalker(t.body,n,{acceptNode:o}),l=[];for(let d=s.nextNode();d;d=s.nextNode())l.push(d);let u=l.map(d=>d.nodeValue),c=(d,f,p,b)=>{let g=t.createRange();return g.setStart(l[d],f),g.setEnd(l[p],b),g};for(let d of e(u,c))yield d};var Us=Object.fromEntries(Array.from(Object.entries({isRef:["annoref","biblioref","glossref","noteref"],isLink:["backlink"],isNote:["annotation","note","footnote","endnote","rearnote"]}),([t,e])=>[t,n=>n.getAttributeNS("http://www.idpf.org/2007/ops","type")?.split(/s/)?.some(r=>e.includes(r))])),Wr=class{#e;#t;#n;#r;language="en";textDirection="";isCJK=!1;isFixedLayout=!1;annotations=new Br({resolve:e=>this.resolveCFI(e),compare:Jn,onAdd:(e,n,r)=>{let i=this.#s(n);i&&this.#o(i.doc,i.overlayer,e);let a=this.#t.getProgress(n)?.label??"";this?.emit({type:"add-annotation",annotation:e,label:a,index:n,position:r})},onDelete:(e,n,r)=>{this.#s(n)?.overlayer?.remove(e),this?.emit({type:"delete-annotation",index:n,position:r})},onUpdate:(e,n)=>{let r=this.#s(n);r&&(r.overlayer.remove(e.value),this.#o(r.doc,r.overlayer,e))}});constructor(e,n){if(this.book=e,this.emit=n,e.metadata?.language)try{let r=e.metadata.language;e.metadata.language=Intl.getCanonicalLocales(r)[0];let i=typeof r=="string"?r:r[0],a=new Intl.Locale(i);this.isCJK=["zh","ja","kr"].includes(a.language),a.textInfo&&a.textInfo.direction&&(this.textDirection=a.textInfo.direction)}catch{}if(e.splitTOCHref&&e.getTOCFragment){let r=e.sections.map(o=>o.id);this.#e=new Nr(e.sections,150,1600);let i=e.splitTOCHref.bind(e),a=e.getTOCFragment.bind(e);this.#t=new er({toc:e.toc??[],ids:r,splitHref:i,getFragment:a}),this.#n=new er({toc:e.pageList??[],ids:r,splitHref:i,getFragment:a})}}async display(){let e={book:this.book,onLoad:this.#a.bind(this),onRelocated:this.#i.bind(this),createOverlayer:this.#l.bind(this)};return this.isFixedLayout=this.book.rendition?.layout==="pre-paginated",this.isFixedLayout?this.renderer=new Hr(e):this.renderer=new jr(e),this.renderer.element}async init({lastLocation:e,annotations:n}){if(e){let r=this.resolveNavigation(e);r?await this.renderer.goTo(r):await this.renderer.next()}else await this.renderer.next();if(n){n.sort((r,i)=>Jn(r.value,i.value));for(let r of n)await this.annotations.add(r,!0)}}#i(e,n,r){if(!this.#e)return;let i=this.#e.getProgress(n,r),a=this.#t.getProgress(n,e),o=this.#n.getProgress(n,e),s=this.getCFI(n,e);this.emit?.({type:"relocated",...i,tocItem:a,pageItem:o,cfi:s})}#a(e,n){let{book:r}=this;e.documentElement.lang||=this.language,e.documentElement.dir||=this.isCJK?"":this.textDirection,this.renderer.setStyle(this.#r);let i=r.sections[n];for(let a of e.querySelectorAll("a[href]"))a.addEventListener("click",o=>{o.preventDefault();let s=a.getAttribute("href"),l=i?.resolveHref?.(s)??s;if(r?.isExternal?.(l))this.emit?.({type:"external-link",uri:l});else if(Us.isRef(a)){let{index:u,anchor:c}=r.resolveHref(l);Promise.resolve(r.sections[u].createDocument()).then(d=>[c(d),d.contentType]).then(([d,f])=>[d?.innerHTML,f,Us.isNote(d)]).then(([d,f,p])=>d?this.emit?.({type:"reference",href:p?null:l,content:d,contentType:f,element:a}):null).catch(d=>{});return}else this.goTo(l)});this.emit?.({type:"loaded",doc:e,index:n})}#o(e,n,r){let{value:i}=r,a=this.annotations.getAnchor(i),o=e?a(e):a,[s,l]=this.emit({type:"draw-annotation",annotation:r});n.add(i,o,s,l)}#s(e){let n=this.renderer.getOverlayer();if(n.index===e)return n}#l(e,n){let r=new zr;for(let i of this.annotations.getByIndex(n))this.#o(e,r,i);return e.addEventListener("click",i=>{let[a,o]=r.hitTest(i);a&&this.emit?.({type:"show-annotation",value:a,range:o})},!1),r}async showAnnotation(e){let{value:n}=e,{index:r,anchor:i}=await this.goTo(n),{doc:a}=this.#s(r),o=i(a);this.emit?.({type:"show-annotation",value:n,range:o})}getCFI(e,n){if(!n)return"";let r=this.book.sections[e].cfi??oa.fromIndex(e);return Es(r,Ls(n))}resolveCFI(e){if(this.book.resolveCFI)return this.book.resolveCFI(e);{let n=Zt(e);return{index:oa.toIndex((n.parent??n).shift()),anchor:a=>Pr(a,n)}}}resolveNavigation(e){try{return typeof e=="number"?{index:e}:Qn.test(e)?this.resolveCFI(e):this.book.resolveHref(e)}catch{}}async goTo(e){let n=this.resolveNavigation(e);try{return await this.renderer.goTo(n),n}catch{}}async goToFraction(e){let[n,r]=this.#e.getSection(e);return this.renderer.goTo({index:n,anchor:r})}async select(e){try{let n=await this.resolveNavigation(e);await this.renderer.goTo({...n,select:!0})}catch{}}goLeft(){return this.book.dir==="rtl"?this.renderer.next():this.renderer.prev()}goRight(){return this.book.dir==="rtl"?this.renderer.prev():this.renderer.next()}setAppearance({layout:e,css:n}){this.isFixedLayout||(Object.assign(this.renderer.layout,e),this.#r=n,this.renderer.setStyle(n),this.renderer.render())}async*#d(e,n,r){let i=await this.book.sections[r].createDocument();for(let{range:a,excerpt:o}of e(i,n))yield{cfi:this.getCFI(r,a),excerpt:o}}async*#c(e,n){let{sections:r}=this.book;for(let[i,{createDocument:a}]of r.entries()){if(!a)continue;let o=await a(),s=Array.from(e(o,n),({range:u,excerpt:c})=>({cfi:this.getCFI(i,u),excerpt:c}));yield{progress:(i+1)/r.length},s.length&&(yield{index:i,subitems:s})}}async*search(e){let{query:n,index:r}=e,i=Bs(df,{defaultLocale:this.language,...e}),a=r!=null?this.#d(i,n,r):this.#c(i,n);for await(let o of a)yield"subitems"in o?{label:this.#t.getProgress(o.index)?.label??"",subitems:o.subitems}:o}};var ff=(t,e,n)=>{let r=document.createElement("ul");r.setAttribute("role","group"),r.setAttribute("aria-label",t);let i=new Map,a=o=>{n(o);let s=i.get(o);for(let l of r.children)l.setAttribute("aria-checked",l===s?"true":"false")};for(let[o,s]of e){let l=document.createElement("li");l.setAttribute("role","menuitemradio"),l.innerText=o,l.onclick=()=>a(s),i.set(s,l),r.append(l)}return{element:r,select:a}},$s=t=>{let e={},n=document.createElement("ul");n.setAttribute("role","menu");let r=()=>n.classList.remove("show"),i=a=>(...o)=>(r(),a(...o));for(let{name:a,label:o,type:s,items:l,onclick:u}of t){let c=s==="radio"?ff(o,l,i(u)):null;a&&(e[a]=c),n.append(c.element)}return window.addEventListener("blur",()=>r()),window.addEventListener("click",a=>{n.parentNode.contains(a.target)||r()}),{element:n,groups:e}};function tr(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():te}var Rg=tr();var Og=tr().PROD==="1",Dg=tr().PROD!=="1";var js=({entries:t,loadBlob:e,getSize:n},r)=>{let i=new Map,a=new Map,o=async d=>{if(i.has(d))return i.get(d);let f=URL.createObjectURL(await e(d)),p=URL.createObjectURL(new Blob([``],{type:"text/html"}));return a.set(d,[f,p]),i.set(d,p),p},s=d=>{a.get(d)?.forEach?.(f=>URL.revokeObjectURL(f)),a.delete(d),i.delete(d)},l=[".jpg",".jpeg",".png",".gif",".bmp",".webp",".svg"],u=t.map(d=>d.filename).filter(d=>l.some(f=>d.endsWith(f))).sort(),c={};return c.getCover=()=>e(u[0]),c.metadata={title:r.name},c.sections=u.map(d=>({id:d,load:()=>o(d),unload:()=>s(d),size:n(d)})),c.toc=u.map(d=>({label:d,href:d})),c.rendition={layout:"pre-paginated"},c.resolveHref=d=>({index:c.sections.findIndex(f=>f.id===d)}),c.splitTOCHref=d=>[d,null],c.getTOCFragment=d=>d.documentElement,c};var Hs=t=>t?.trim()?.replace(/\s{2,}/g," "),_t=t=>Hs(t?.textContent),qr={XLINK:"http://www.w3.org/1999/xlink",EPUB:"http://www.idpf.org/2007/ops"},Vr={XML:"application/xml",XHTML:"application/xhtml+xml"},Ot={strong:["strong","self"],emphasis:["em","self"],style:["span","self"],a:"anchor",strikethrough:["s","self"],sub:["sub","self"],sup:["sup","self"],code:["code","self"],image:"image"},hf={tr:["tr",["align"]],th:["th",["colspan","rowspan","align","valign"]],td:["td",["colspan","rowspan","align","valign"]]},Ws={epigraph:["blockquote"],subtitle:["h2",Ot],"text-author":["p",Ot],date:["p",Ot],stanza:"stanza"},Kr={title:["header",{p:["h1",Ot],"empty-line":["br"]}],epigraph:["blockquote","self"],image:"image",annotation:["aside"],section:["section","self"],p:["p",Ot],poem:["blockquote",Ws],subtitle:["h2",Ot],cite:["blockquote","self"],"empty-line":["br"],table:["table",hf],"text-author":["p",Ot]};Ws.epigraph.push(Kr);var pf={image:"image",title:["section",{p:["h1",Ot],"empty-line":["br"]}],epigraph:["section",Kr],section:["section",Kr]},qs=t=>{let e=t.getAttributeNS(qr.XLINK,"href"),[,n]=e.split("#"),r=t.getRootNode().getElementById(n);return r?`data:${r.getAttribute("content-type")};base64,${r.textContent}`:e},ua=class{constructor(e){this.fb2=e,this.doc=document.implementation.createDocument(qr.XHTML,"html")}image(e){let n=this.doc.createElement("img");return n.alt=e.getAttribute("alt"),n.title=e.getAttribute("title"),n.setAttribute("src",qs(e)),n}anchor(e){let n=this.convert(e,{a:["a",Ot]});return n.setAttribute("href",e.getAttributeNS(qr.XLINK,"href")),e.getAttribute("type")==="note"&&n.setAttributeNS(qr.EPUB,"epub:type","noteref"),n}stanza(e){let n=this.convert(e,{stanza:["p",{title:["header",{p:["strong",Ot],"empty-line":["br"]}],subtitle:["p",Ot]}]});for(let r of e.children)r.nodeName==="v"&&(n.append(this.doc.createTextNode(r.textContent)),n.append(this.doc.createElement("br")));return n}convert(e,n){if(e.nodeType===3)return this.doc.createTextNode(e.textContent);if(e.nodeType===4)return this.doc.createCDATASection(e.textContent);if(e.nodeType===8)return this.doc.createComment(e.textContent);let r=n?.[e.nodeName];if(!r)return null;if(typeof r=="string")return this[r](e);let[i,a]=r,o=this.doc.createElement(i);if(e.id&&(o.id=e.id),o.classList.add(e.nodeName),Array.isArray(a))for(let u of a)o.setAttribute(u,e.getAttribute(u));let s=a==="self"?n:Array.isArray(a)?null:a,l=e.firstChild;for(;l;){let u=this.convert(l,s);u&&o.append(u),l=l.nextSibling}return o}},mf=async t=>{let e=await t.arrayBuffer(),n=new TextDecoder("utf-8").decode(e),r=new DOMParser,i=r.parseFromString(n,Vr.XML),a=i.xmlEncoding||n.match(/^<\?xml\s+version\s*=\s*["']1.\d+"\s+encoding\s*=\s*["']([A-Za-z0-9._-]*)["']/)?.[1];if(a&&a.toLowerCase()!=="utf-8"){let o=new TextDecoder(a).decode(e);return r.parseFromString(o,Vr.XML)}return i},gf=URL.createObjectURL(new Blob([` @namespace epub "http://www.idpf.org/2007/ops"; body > img, section > img { display: block; @@ -4116,7 +4124,7 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph { margin-inline-end: 0; }`)),await this.replaceResources(n);let i=this.serializer.serializeToString(n),a=URL.createObjectURL(new Blob([i],{type:this.#a}));return this.#n.set(e,a),a}resolveHref(e){let n=e.match(/filepos:(.*)/)[1],r=Number(n);return{index:this.#r.findIndex(o=>o.end>r),anchor:o=>o.getElementById(`filepos${n}`)}}splitTOCHref(e){let n=e.match(/filepos:(.*)/)[1],r=Number(n);return[this.#r.findIndex(a=>a.end>r),`filepos${n}`]}getTOCFragment(e,n){return e.getElementById(n)}isExternal(e){return/^(?!blob|filepos)\w+:/i.test(e)}},tl=/kindle:(flow|embed):(\w+)(?:\?mime=(\w+\/[-+.\w]+))?/,Uf=/kindle:pos:fid:(\w+):off:(\w+)/,$f=t=>{let[e,n,r]=t.match(tl).slice(1);return{resourceType:e,id:parseInt(n,32),type:r}},Xs=t=>{let[e,n]=t.match(Uf).slice(1);return{fid:parseInt(e,32),off:parseInt(n,32)}},Ys=(t=0,e=0)=>`kindle:pos:fid:${t.toString(32).toUpperCase().padStart(4,"0")}:off:${e.toString(32).toUpperCase().padStart(10,"0")}`,Zs=t=>{let e=t.match(/\s(id|name|aid)\s*=\s*['"]([^'"]*)['"]/i);if(!e)return;let[,n,r]=e;return`[${n}="${CSS.escape(r)}"]`},jf=async(t,e,n)=>{let r=[];t.replace(e,(...a)=>(r.push(a),null));let i=[];for(let a of r)i.push(await n(...a));return t.replace(e,()=>i.shift())},pa=class{parser=new DOMParser;#e=new Map;#t=new Map;#n=new Map;#r={};#i;#a;#o=new Uint8Array;#s=new Uint8Array;#l=-1;#d=-1;#c=!0;#u=vn.XHTML;constructor(e){this.mobi=e}async init(){let e=this.mobi.loadRecord.bind(this.mobi),{kf8:n}=this.mobi.headers;try{let s=await e(n.fdst),l=Ct(Sf,s);if(l.magic!=="FDST")throw new Error("Missing FDST record");let u=Array.from({length:l.numEntries},(c,d)=>12+d*8).map(c=>[it(s.slice(c,c+4)),it(s.slice(c+4,c+8))]);this.#r.fdstTable=u,this.#a=u[u.length-1][1]}catch{}let r=(await Xr(n.skel,e)).table.map(({name:s,tagMap:l},u)=>({index:u,name:s,numFrag:l[1][0],offset:l[6][0],length:l[6][1]})),i=await Xr(n.frag,e),a=i.table.map(({name:s,tagMap:l})=>({insertOffset:parseInt(s),selector:i.cncx[l[2][0]],index:l[4][0],offset:l[6][0],length:l[6][1]}));this.#r.skelTable=r,this.#r.fragTable=a,this.#i=r.reduce((s,l)=>{let u=s[s.length-1],c=u?.fragEnd??0,d=c+l.numFrag,f=a.slice(c,d),p=l.length+f.map(g=>g.length).reduce((g,m)=>g+m),b=(u?.totalLength??0)+p;return s.concat({skel:l,frags:f,fragEnd:d,length:p,totalLength:b})},[]),this.#i.unshift({frags:[]}),this.sections=this.#i.map((s,l)=>s.frags.length?{id:l,load:()=>this.loadSection(s),createDocument:()=>this.createDocument(s),size:s.length}:{linear:"no"});try{let s=await this.mobi.getNCX(),l=({label:u,pos:c,children:d})=>{let[f,p]=c,b=Ys(f,p),g=this.#t.get(f);return g?g.push(p):this.#t.set(f,[p]),{label:an(u),href:b,subitems:d?.map(l)}};this.toc=s?.map(l),this.landmarks=await this.getGuide()}catch{}let{exth:o}=this.mobi.headers;return this.dir=o.pageProgressionDirection,this.rendition={layout:o.fixedLayout==="true"?"pre-paginated":"reflowable",viewport:Object.fromEntries(o.originalResolution?.split("x")?.slice(0,2)?.map((s,l)=>[l?"height":"width",s])??[])},this.metadata=this.mobi.getMetadata(),this.getCover=this.mobi.getCover.bind(this.mobi),this}async getResourcesByMagic(e){let n={},r=this.mobi.headers.kf8.resourceStart,i=this.mobi.pdb.numRecords;for(let a=r;al===o);s&&(n[s]=a)}catch{}return n}async getGuide(){let e=this.mobi.headers.kf8.guide;if(e<4294967295){let n=this.mobi.loadRecord.bind(this.mobi),{table:r,cncx:i}=await Xr(e,n);return r.map(({name:a,tagMap:o})=>({label:i[o[1][0]]??"",type:a?.split(/\s/),href:Ys(o[6]?.[0]??o[3]?.[0])}))}}async loadResourceBlob(e){let{resourceType:n,id:r,type:i}=$f(e),a=n==="flow"?await this.loadFlow(r):await this.mobi.loadResource(r-1),o=[vn.XHTML,vn.HTML,vn.CSS,vn.SVG].includes(i)?await this.replaceResources(this.mobi.decode(a)):a;return new Blob([o],{type:i})}async loadResource(e){if(this.#e.has(e))return this.#e.get(e);let n=await this.loadResourceBlob(e),r=URL.createObjectURL(n);return this.#e.set(e,r),r}replaceResources(e){let n=new RegExp(tl,"g");return jf(e,n,this.loadResource.bind(this))}async loadRaw(e,n){let r=n-this.#o.length,i=this.#a==null?1/0:this.#a-this.#s.length-e;if(r<0||re;){let o=this.mobi.headers.palmdoc.numTextRecords-1-++this.#d,s=await this.mobi.loadText(o);this.#s=Yr(s,this.#s)}let a=this.#a-this.#s.length;return this.#s.slice(e-a,n-a)}loadFlow(e){if(e<4294967295)return this.loadRaw(...this.#r.fdstTable[e])}async loadText(e){let{skel:n,frags:r,length:i}=e,a=await this.loadRaw(n.offset,n.offset+i),o=a.slice(0,n.length);for(let s of r){let l=s.insertOffset-n.offset,u=n.length+s.offset,c=a.slice(u,u+s.length);o=Js(o.slice(0,l),c,o.slice(l));let d=this.#t.get(s.index);if(d)for(let f of d){let p=this.mobi.decode(c).slice(f),b=Zs(p);this.#h(s.index,f,b)}}return this.mobi.decode(o)}async createDocument(e){let n=await this.loadText(e);return this.parser.parseFromString(n,this.#u)}async loadSection(e){if(this.#e.has(e))return this.#e.get(e);let n=await this.loadText(e);this.#c&&this.parser.parseFromString(n,this.#u).querySelector("parsererror")&&(this.#u=vn.HTML),this.#c&&(this.#c=!1);let r=await this.replaceResources(n),i=URL.createObjectURL(new Blob([r],{type:this.#u}));return this.#e.set(e,i),i}getIndexByFID(e){return this.#i.findIndex(n=>n.frags.some(r=>r.index===e))}#h(e,n,r){let i=this.#n.get(e);if(i)i.set(n,r);else{let a=new Map;this.#n.set(e,a),a.set(n,r)}}async resolveHref(e){let{fid:n,off:r}=Xs(e),i=this.getIndexByFID(n);if(i<0)return;let a=this.#n.get(n)?.get(r);if(a)return{index:i,anchor:b=>b.querySelector(a)};let{skel:o,frags:s}=this.#i[i],l=s.find(b=>b.index===n),u=o.offset+o.length+l.offset,c=await this.loadRaw(u,u+l.length),d=this.mobi.decode(c).slice(r),f=Zs(d);return this.#h(n,r,f),{index:i,anchor:b=>b.querySelector(f)}}splitTOCHref(e){let n=Xs(e);return[this.getIndexByFID(n.fid),n]}getTOCFragment(e,{fid:n,off:r}){let i=this.#n.get(n)?.get(r);return e.querySelector(i)}isExternal(e){return/^(?!blob|kindle)\w+:/i.test(e)}};var Ge={CONTAINER:"urn:oasis:names:tc:opendocument:xmlns:container",XHTML:"http://www.w3.org/1999/xhtml",OPF:"http://www.idpf.org/2007/opf",EPUB:"http://www.idpf.org/2007/ops",DC:"http://purl.org/dc/elements/1.1/",DCTERMS:"http://purl.org/dc/terms/",ENC:"http://www.w3.org/2001/04/xmlenc#",NCX:"http://www.daisy.org/z3986/2005/ncx/",XLINK:"http://www.w3.org/1999/xlink",SMIL:"http://www.w3.org/ns/SMIL"},at={XML:"application/xml",NCX:"application/x-dtbncx+xml",XHTML:"application/xhtml+xml",HTML:"text/html",CSS:"text/css",SVG:"image/svg+xml",JS:/\/(x-)?(javascript|ecmascript)/},Qr=t=>t.toLowerCase().replace(/[-:](.)/g,(e,n)=>n.toUpperCase()),Hf=t=>t?t.trim().replace(/\s{2,}/g," "):"",rr=(t,e,n)=>n?r=>r.getAttribute(t)?.split(/\s/)?.includes(e):typeof e=="function"?r=>e(r.getAttribute(t)):r=>r.getAttribute(t)===e,ei=(...t)=>e=>e?Object.fromEntries(t.map(n=>[Qr(n),e.getAttribute(n)])):null,sn=t=>Hf(t?.textContent),ar=(t,e)=>{let n=t.lookupNamespaceURI(null)===e||t.lookupPrefix(e),r=n?(i,a)=>o=>o.namespaceURI===e&&o.localName===a:(i,a)=>o=>o.localName===a;return{$:(i,a)=>[...i.children].find(r(i,a)),$$:(i,a)=>[...i.children].filter(r(i,a)),$$$:n?(i,a)=>[...i.getElementsByTagNameNS(e,a)]:(i,a)=>[...i.getElementsByTagName(e,a)]}},Ln=(t,e)=>{try{if(e.includes(":"))return new URL(t,e);let n="file:///";return decodeURI(new URL(t,n+e).href.replace(n,""))}catch{return t}},il=t=>/^(?!blob)\w+:/i.test(t),Wf=(t,e)=>{if(!t)return e;let n=t.replace(/\/$/,"").split("/"),r=e.replace(/\/$/,"").split("/"),i=(n.length>r.length?n:r).findIndex((a,o)=>n[o]!==r[o]);return i<0?"":Array(n.length-i).fill("..").concat(r.slice(i)).join("/")},qf=t=>t.slice(0,t.lastIndexOf("/")+1),Jr=async(t,e,n)=>{let r=[];t.replace(e,(...a)=>(r.push(a),null));let i=[];for(let a of r)i.push(await n(...a));return t.replace(e,()=>i.shift())},Vf=t=>t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),on={attrs:["dir","xml:lang"]},xn={name:"alternate-script",many:!0,...on,props:["file-as"]},nl={many:!0,...on,props:[{name:"role",many:!0,attrs:["scheme"]},"file-as",xn]},Kf=[{name:"title",many:!0,...on,props:["title-type","display-seq","file-as",xn]},{name:"identifier",many:!0,props:[{name:"identifier-type",attrs:["scheme"]}]},{name:"language",many:!0},{name:"creator",...nl},{name:"contributor",...nl},{name:"publisher",...on,props:["file-as",xn]},{name:"description",...on,props:[xn]},{name:"rights",...on,props:[xn]},{name:"date"},{name:"dcterms:modified",type:"meta"},{name:"subject",many:!0,...on,props:["term","authority",xn]},{name:"belongs-to-collection",type:"meta",many:!0,...on,props:["collection-type","group-position","dcterms:identifier","file-as",xn,{name:"belongs-to-collection",recursive:!0}]}],Gf=t=>{let{$:e,$$:n}=ar(t,Ge.OPF),r=e(t.documentElement,"metadata"),i=Array.from(r.children),a=(d,f)=>{if(!f)return null;let{props:p=[],attrs:b=[]}=d,g=sn(f);if(!p.length&&!b.length)return g;let m=f.getAttribute("id"),h=m?i.filter(rr("refines","#"+m)):[];return Object.fromEntries([["value",g]].concat(p.map(y=>{let{many:w,recursive:S}=y,_=typeof y=="string"?y:y.name,x=rr("property",_),k=S?d:y;return[Qr(_),w?h.filter(x).map(v=>a(k,v)):a(k,h.find(x))]})).concat(b.map(y=>[Qr(y),f.getAttribute(y)])))},o=i.filter(rr("refines",null)),s=Object.fromEntries(Kf.map(d=>{let{type:f,name:p,many:b}=d,g=f==="meta"?m=>m.namespaceURI===Ge.OPF&&m.getAttribute("property")===p:m=>m.namespaceURI===Ge.DC&&m.localName===p;return[Qr(p),b?o.filter(g).map(m=>a(d,m)):a(d,o.find(g))]})),l=d=>Object.fromEntries(n(r,"meta").filter(rr("property",f=>f?.startsWith(d))).map(f=>[f.getAttribute("property").replace(d,""),sn(f)])),u=l("rendition:"),c=l("media:");return{metadata:s,rendition:u,media:c}},Xf=(t,e=n=>n)=>{let{$:n,$$:r,$$$:i}=ar(t,Ge.XHTML),a=b=>b?decodeURI(e(b)):null,o=b=>g=>{let m=n(g,"a")??n(g,"span"),h=n(g,"ol"),y=a(m?.getAttribute("href")),S={label:sn(m)||m?.getAttribute("title"),href:y,subitems:s(h)};return b&&(S.type=m?.getAttributeNS(Ge.EPUB,"type")?.split(/\s/)),S},s=(b,g)=>b?r(b,"li").map(o(g)):null,l=(b,g)=>s(n(b,"ol"),g),u=i(t,"nav"),c=null,d=null,f=null,p=[];for(let b of u){let g=b.getAttributeNS(Ge.EPUB,"type")?.split(/\s/)??[];g.includes("toc")?c??=l(b):g.includes("page-list")?d??=l(b):g.includes("landmarks")?f??=l(b,!0):p.push({label:sn(b.firstElementChild),type:g,list:l(b)})}return{toc:c,pageList:d,landmarks:f,others:p}},Yf=(t,e=n=>n)=>{let{$:n,$$:r}=ar(t,Ge.NCX),i=l=>l?decodeURI(e(l)):null,a=l=>{let u=n(l,"navLabel"),c=n(l,"content"),d=sn(u),f=i(c.getAttribute("src"));if(l.localName==="navPoint"){let p=r(l,"navPoint");return{label:d,href:f,subitems:p.length?p.map(a):null}}return{label:d,href:f}},o=(l,u)=>r(l,u).map(a),s=(l,u)=>{let c=n(t.documentElement,l);return c?o(c,u):null};return{toc:s("navMap","navPoint"),pageList:s("pageList","pageTarget"),others:r(t.documentElement,"navList").map(l=>({label:sn(n(l,"navLabel")),list:o(l,"navTarget")}))}},ga=t=>{if(!t)return;let e=t.split(":").map(o=>parseFloat(o));if(e.length===3){let[o,s,l]=e;return o*60*60+s*60+l}if(e.length===2){let[o,s]=e;return o*60+s}let[n,r]=t.split(/(?=[^\d.])/),i=parseFloat(n),a=r==="h"?60*60:r==="min"?60:r==="ms"?.001:1;return i*a},Zf=(t,e=n=>n)=>{let{$:n,$$$:r}=ar(t,Ge.SMIL),i=a=>a?decodeURI(e(a)):null;return r(t,"par").map(a=>{let o=n(a,"text")?.getAttribute("src")?.split("#")?.[1],s=n(a,"audio");return s?{id:o,audio:{src:i(s.getAttribute("src")),clipBegin:ga(s.getAttribute("clipBegin")),clipEnd:ga(s.getAttribute("clipEnd"))}}:{id:o}})},Jf=/([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})/,Qf=t=>{for(let e of t.getElementsByTagNameNS(Ge.DC,"identifier")){let[n]=sn(e).split(":").slice(-1);if(Jf.test(n))return n}return""},al=t=>sn(t.getElementById(t.documentElement.getAttribute("unique-identifier"))??t.getElementsByTagNameNS(Ge.DC,"identifier")[0]),rl=async(t,e,n)=>{let r=new Uint8Array(await n.slice(0,e).arrayBuffer());e=Math.min(e,r.length);for(var i=0;i{let e=new TextEncoder().encode(t),n=await globalThis.crypto.subtle.digest("SHA-1",e);return new Uint8Array(n)},th=(t=eh)=>({"http://www.idpf.org/2008/embedding":{key:e=>t(al(e).replaceAll(/[\u0020\u0009\u000d\u000a]/g,"")),decode:(e,n)=>rl(e,1040,n)},"http://ns.adobe.com/pdf/enc#RC":{key:e=>{let n=Qf(e).replaceAll("-","");return Uint8Array.from({length:16},(r,i)=>parseInt(n.slice(i*2,i*2+2),16))},decode:(e,n)=>rl(e,1024,n)}}),ba=class{#e=new Map;#t=new Map;#n;constructor(e){this.#n=e}async init(e,n){if(!e)return;let r=Array.from(e.getElementsByTagNameNS(Ge.ENC,"EncryptedData"),i=>({algorithm:i.getElementsByTagNameNS(Ge.ENC,"EncryptionMethod")[0]?.getAttribute("Algorithm"),uri:i.getElementsByTagNameNS(Ge.ENC,"CipherReference")[0]?.getAttribute("URI")}));for(let{algorithm:i,uri:a}of r){if(!this.#t.has(i)){let o=this.#n[i];if(!o)continue;let s=await o.key(n);this.#t.set(i,l=>o.decode(s,l))}this.#e.set(a,i)}}getDecoder(e){return this.#t.get(this.#e.get(e))??(n=>n)}},ya=class{constructor({opf:e,resolveHref:n}){this.opf=e;let{$:r,$$:i,$$$:a}=ar(e,Ge.OPF),o=r(e.documentElement,"manifest"),s=r(e.documentElement,"spine"),l=i(s,"itemref");this.manifest=i(o,"item").map(ei("href","id","media-type","properties","media-overlay")).map(c=>(c.href=n(c.href),c.properties=c.properties?.split(/\s/),c)),this.spine=l.map(ei("idref","id","linear","properties")).map(c=>(c.properties=c.properties?.split(/\s/),c)),this.pageProgressionDirection=s.getAttribute("page-progression-direction"),this.navPath=this.getItemByProperty("nav")?.href,this.ncxPath=(this.getItemByID(s.getAttribute("toc"))??this.manifest.find(c=>c.mediaType===at.NCX))?.href;let u=r(e.documentElement,"guide");u&&(this.guide=i(u,"reference").map(ei("type","title","href")).map(({type:c,title:d,href:f})=>({label:d,type:c.split(/\s/),href:n(f)}))),this.cover=this.getItemByProperty("cover-image")??this.getItemByID(a(e,"meta").find(rr("name","cover"))?.getAttribute("content"))??this.getItemByHref(this.guide?.find(c=>c.type.includes("cover"))?.href),this.cfis=Rs(l)}getItemByID(e){return this.manifest.find(n=>n.id===e)}getItemByHref(e){return this.manifest.find(n=>n.href===e)}getItemByProperty(e){return this.manifest.find(n=>n.properties?.includes(e))}resolveCFI(e){let n=Zt(e),r=(n.parent??n).shift(),i=aa(this.opf,r);i&&i.nodeName!=="idref"&&(r.at(-1).id=null,i=aa(this.opf,r));let a=i?.getAttribute("idref");return{index:this.spine.findIndex(l=>l.idref===a),anchor:l=>Pr(l,n)}}},wa=class{#e=new Map;#t=new Map;#n=new Map;allowScript=!1;constructor({loadText:e,loadBlob:n,resources:r}){this.loadText=e,this.loadBlob=n,this.manifest=r.manifest,this.assets=r.manifest}createURL(e,n,r,i){if(!n)return"";let a=URL.createObjectURL(new Blob([n],{type:r}));if(this.#e.set(e,a),this.#n.set(e,1),i){let o=this.#t.get(i);o?o.push(e):this.#t.set(i,[e])}return a}ref(e,n){let r=this.#t.get(n);return r?.includes(e)||(this.#n.set(e,this.#n.get(e)+1),r?r.push(e):this.#t.set(n,[e])),this.#e.get(e)}unref(e){if(!this.#n.has(e))return;let n=this.#n.get(e)-1;if(n<1){URL.revokeObjectURL(this.#e.get(e)),this.#e.delete(e),this.#n.delete(e);let r=this.#t.get(e);if(r)for(;r.length;)this.unref(r.pop());this.#t.delete(e)}else this.#n.set(e,n)}async loadItem(e,n=[]){if(!e)return null;let{href:r,mediaType:i}=e,a=at.JS.test(e.mediaType);if(a&&!this.allowScript)return null;let o=n.at(-1);return this.#e.has(r)?this.ref(r,o):(a||[at.XHTML,at.HTML,at.CSS,at.SVG].includes(i))&&n.every(l=>l!==r)?this.loadReplaced(e,n):this.createURL(r,await this.loadBlob(r),i,o)}async loadHref(e,n,r=[]){if(il(e))return e;let i=Ln(e,n),a=this.manifest.find(o=>o.href===i);return a?this.loadItem(a,r.concat(n)):e}async loadReplaced(e,n=[]){let{href:r,mediaType:i}=e,a=n.at(-1),o=await this.loadText(r);if(!o)return null;if([at.XHTML,at.HTML,at.SVG].includes(i)){let l=new DOMParser().parseFromString(o,i);if(i===at.XHTML&&l.querySelector("parsererror")&&(e.mediaType=at.HTML,l=new DOMParser().parseFromString(o,e.mediaType)),[at.XHTML,at.SVG].includes(e.mediaType)){let d=l.firstChild;for(;d instanceof ProcessingInstruction;){if(d.data){let f=await Jr(d.data,/(?:^|\s*)(href\s*=\s*['"])([^'"]*)(['"])/i,(p,b,g,m)=>this.loadHref(g,r,n).then(h=>`${b}${h}${m}`));d.replaceWith(l.createProcessingInstruction(d.target,f))}d=d.nextSibling}}let u=async(d,f)=>d.setAttribute(f,await this.loadHref(d.getAttribute(f),r,n));for(let d of l.querySelectorAll("link[href]"))await u(d,"href");for(let d of l.querySelectorAll("[src]"))await u(d,"src");for(let d of l.querySelectorAll("[poster]"))await u(d,"poster");for(let d of l.querySelectorAll("object[data]"))await u(d,"data");for(let d of l.querySelectorAll("[*|href]:not([href]"))d.setAttributeNS(Ge.XLINK,"href",await this.loadHref(d.getAttributeNS(Ge.XLINK,"href"),r,n));for(let d of l.querySelectorAll("style"))d.textContent&&(d.textContent=await this.replaceCSS(d.textContent,r,n));for(let d of l.querySelectorAll("[style]"))d.setAttribute("style",await this.replaceCSS(d.getAttribute("style"),r,n));let c=new XMLSerializer().serializeToString(l);return this.createURL(r,c,e.mediaType,a)}let s=i===at.CSS?await this.replaceCSS(o,r,n):await this.replaceString(o,r,n);return this.createURL(r,s,i,a)}async replaceCSS(e,n,r=[]){let i=await Jr(e,/url\(\s*["']?([^'"\n]*?)\s*["']?\s*\)/gi,(l,u)=>this.loadHref(u,n,r).then(c=>`url("${c}")`)),a=await Jr(i,/@import\s*["']([^"'\n]*?)["']/gi,(l,u)=>this.loadHref(u,n,r).then(c=>`@import "${c}"`)),o=window?.innerWidth??800,s=window?.innerHeight??600;return a.replace(/-epub-/gi,"").replace(/(\d*\.?\d+)vw/gi,(l,u)=>parseFloat(u)*o/100+"px").replace(/(\d*\.?\d+)vh/gi,(l,u)=>parseFloat(u)*s/100+"px").replace(/page-break-(after|before|inside)/gi,(l,u)=>`-webkit-column-break-${u}`)}replaceString(e,n,r=[]){let i=new Map,a=this.assets.map(s=>{if(s.href===n)return;let l=Wf(qf(n),s.href),u=encodeURI(l),c="/"+s.href,d=encodeURI(c),f=new Set([l,u,c,d]);for(let p of f)i.set(p,s);return Array.from(f)}).flat().filter(s=>s);if(!a.length)return e;let o=new RegExp(a.map(Vf).join("|"),"g");return Jr(e,o,async s=>this.loadItem(i.get(s.replace(/^\//,"")),r.concat(n)))}unloadItem(e){this.unref(e?.href)}},nh=(t,e)=>t.getElementById(e)??t.querySelector(`[name="${CSS.escape(e)}"]`),rh=t=>{for(let e of t){if(e==="page-spread-left"||e==="rendition:page-spread-left")return"left";if(e==="page-spread-right"||e==="rendition:page-spread-right")return"right";if(e==="rendition:page-spread-center")return"center"}},ir=class{parser=new DOMParser;#e;constructor({loadText:e,loadBlob:n,getSize:r,sha1:i}){this.loadText=e,this.loadBlob=n,this.getSize=r,this.#e=new ba(th(i))}#t(e){return e?this.parser.parseFromString(e,at.XML):null}async#n(e){return this.#t(await this.loadText(e))}opfPath=null;async init(){let e=await this.#n("META-INF/container.xml");if(!e)throw new Error("Failed to load container file");let n=Array.from(e.getElementsByTagNameNS(Ge.CONTAINER,"rootfile"),ei("full-path","media-type")).filter(g=>g.mediaType==="application/oebps-package+xml");if(!n.length)throw new Error("No package document defined in container");let r=n[0].fullPath;this.opfPath=r;let i=await this.#n(r);if(!i)throw new Error("Failed to load package document");let a=await this.#n("META-INF/encryption.xml");await this.#e.init(a,i),this.resources=new ya({opf:i,resolveHref:g=>Ln(g,r)});let o=new wa({loadText:this.loadText,loadBlob:g=>Promise.resolve(this.loadBlob(g)).then(this.#e.getDecoder(g)),resources:this.resources});this.sections=this.resources.spine.map((g,m)=>{let{idref:h,linear:y,properties:w=[]}=g,S=this.resources.getItemByID(h);return S?{id:this.resources.getItemByID(h)?.href,load:()=>o.loadItem(S),unload:()=>o.unloadItem(S),createDocument:()=>this.loadDocument(S),size:this.getSize(S.href),cfi:this.resources.cfis[m],linear:y,pageSpread:rh(w),resolveHref:_=>Ln(_,S.href),loadMediaOverlay:()=>this.loadMediaOverlay(S)}:null}).filter(g=>g);let{navPath:s,ncxPath:l}=this.resources;if(s)try{let g=h=>Ln(h,s),m=Xf(await this.#n(s),g);this.toc=m.toc,this.pageList=m.pageList,this.landmarks=m.landmarks}catch{}if(!this.toc&&l)try{let g=h=>Ln(h,l),m=Yf(await this.#n(l),g);this.toc=m.toc,this.pageList=m.pageList}catch{}this.landmarks??=this.resources.guide;let{metadata:u,rendition:c,media:d}=Gf(i);this.rendition=c,this.media=d,d.duration=ga(d.duration),this.dir=this.resources.pageProgressionDirection,this.rawMetadata=u;let f=u?.title?.[0];this.metadata={title:f?.value,sortAs:f?.fileAs,language:u?.language,identifier:al(i),description:u?.description?.value,publisher:u?.publisher?.value,published:u?.date,modified:u?.dctermsModified,subject:u?.subject?.filter(({value:g,code:m})=>g||m)?.map(({value:g,code:m,scheme:h})=>({name:g,code:m,scheme:h})),rights:u?.rights?.value};let p={art:"artist",aut:"author",bkp:"producer",clr:"colorist",edt:"editor",ill:"illustrator",trl:"translator",pbl:"publisher"},b=g=>m=>{let h=[...new Set(m.role?.map(({value:w,scheme:S})=>(!S||S==="marc:relators"?p[w]:null)??g))],y={name:m.value,sortAs:m.fileAs};return[h?.length?h:[g],y]};return u?.creator?.map(b("author"))?.concat(u?.contributor?.map?.(b("contributor")))?.forEach(([g,m])=>g.forEach(h=>{this.metadata[h]?this.metadata[h].push(m):this.metadata[h]=[m]})),this}async loadDocument(e){let n=await this.loadText(e.href);return this.parser.parseFromString(n,e.mediaType)}async loadMediaOverlay(e){let n=e.mediaOverlay;if(!n)return null;let r=this.resources.getItemByID(n),i=await this.#n(r.href);return Zf(i,o=>Ln(o,r.href))}resolveCFI(e){return this.resources.resolveCFI(e)}resolveHref(e){let[n,r]=e.split("#"),i=this.resources.getItemByHref(decodeURI(n));return i?{index:this.resources.spine.findIndex(({idref:s})=>s===i.id),anchor:r?s=>nh(s,r):()=>0}:null}splitTOCHref(e){return e?.split("#")??[]}getTOCFragment(e,n){return e.getElementById(n)??e.querySelector(`[name="${CSS.escape(n)}"]`)}isExternal(e){return il(e)}async getCover(){let e=this.resources?.cover;return e?.href?new Blob([await this.loadBlob(e.href)],{type:e.mediaType}):null}async getCalibreBookmarks(){let e=await this.loadText("META-INF/calibre_bookmarks.txt"),n="encoding=json+base64:";if(e?.startsWith(n)){let r=atob(e.slice(n.length));return JSON.parse(r)}}};var so={};zd(so,{BlobReader:()=>Ja,BlobWriter:()=>Qa,Data64URIReader:()=>M2,Data64URIWriter:()=>L2,ERR_BAD_FORMAT:()=>fi,ERR_CENTRAL_DIRECTORY_NOT_FOUND:()=>Kc,ERR_DUPLICATED_NAME:()=>e0,ERR_ENCRYPTED:()=>Yc,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:()=>Vc,ERR_EOCDR_NOT_FOUND:()=>Wc,ERR_EOCDR_ZIP64_NOT_FOUND:()=>qc,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:()=>Xc,ERR_HTTP_RANGE:()=>mr,ERR_INVALID_COMMENT:()=>t0,ERR_INVALID_ENCRYPTION_STRENGTH:()=>i0,ERR_INVALID_ENTRY_COMMENT:()=>n0,ERR_INVALID_ENTRY_NAME:()=>r0,ERR_INVALID_EXTRAFIELD_DATA:()=>o0,ERR_INVALID_EXTRAFIELD_TYPE:()=>a0,ERR_INVALID_PASSWORD:()=>qa,ERR_INVALID_SIGNATURE:()=>Va,ERR_INVALID_VERSION:()=>Ha,ERR_ITERATOR_COMPLETED_TOO_SOON:()=>_c,ERR_LOCAL_FILE_HEADER_NOT_FOUND:()=>Gc,ERR_SPLIT_ZIP_FILE:()=>ja,ERR_UNSUPPORTED_COMPRESSION:()=>$a,ERR_UNSUPPORTED_ENCRYPTION:()=>Zc,ERR_UNSUPPORTED_FORMAT:()=>Ci,HttpRangeReader:()=>I2,HttpReader:()=>Lc,Reader:()=>pn,SplitDataReader:()=>to,SplitDataWriter:()=>hr,SplitZipReader:()=>B2,SplitZipWriter:()=>U2,TextReader:()=>R2,TextWriter:()=>O2,Uint8ArrayReader:()=>P2,Uint8ArrayWriter:()=>N2,Writer:()=>Za,ZipReader:()=>G2,ZipWriter:()=>rp,configure:()=>xi,getMimeType:()=>Ph,initReader:()=>no,initStream:()=>Jt,initWriter:()=>ro,readUint8Array:()=>et,terminateWorkers:()=>v2});function wi(t){return vi(t.map(([e,n])=>new Array(e).fill(n,0,e)))}function vi(t){return t.reduce((e,n)=>e.concat(Array.isArray(n)?vi(n):n),[])}var ol=[0,1,2,3].concat(...wi([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function Ae(){let t=this;function e(i){let a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.extra_bits,l=t.stat_desc.extra_base,u=t.stat_desc.max_length,c,d,f,p,b,g,m=0;for(p=0;p<=15;p++)i.bl_count[p]=0;for(a[i.heap[i.heap_max]*2+1]=0,c=i.heap_max+1;c<573;c++)d=i.heap[c],p=a[a[d*2+1]*2+1]+1,p>u&&(p=u,m++),a[d*2+1]=p,!(d>t.max_code)&&(i.bl_count[p]++,b=0,d>=l&&(b=s[d-l]),g=a[d*2],i.opt_len+=g*(p+b),o&&(i.static_len+=g*(o[d*2+1]+b)));if(m!==0){do{for(p=u-1;i.bl_count[p]===0;)p--;i.bl_count[p]--,i.bl_count[p+1]+=2,i.bl_count[u]--,m-=2}while(m>0);for(p=u;p!==0;p--)for(d=i.bl_count[p];d!==0;)f=i.heap[--c],!(f>t.max_code)&&(a[f*2+1]!=p&&(i.opt_len+=(p-a[f*2+1])*a[f*2],a[f*2+1]=p),d--)}}function n(i,a){let o=0;do o|=i&1,i>>>=1,o<<=1;while(--a>0);return o>>>1}function r(i,a,o){let s=[],l=0,u,c,d;for(u=1;u<=15;u++)s[u]=l=l+o[u-1]<<1;for(c=0;c<=a;c++)d=i[c*2+1],d!==0&&(i[c*2]=n(s[d]++,d))}t.build_tree=function(i){let a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.elems,l,u,c=-1,d;for(i.heap_len=0,i.heap_max=573,l=0;l=1;l--)i.pqdownheap(a,l);d=s;do l=i.heap[1],i.heap[1]=i.heap[i.heap_len--],i.pqdownheap(a,1),u=i.heap[1],i.heap[--i.heap_max]=l,i.heap[--i.heap_max]=u,a[d*2]=a[l*2]+a[u*2],i.depth[d]=Math.max(i.depth[l],i.depth[u])+1,a[l*2+1]=a[u*2+1]=d,i.heap[1]=d++,i.pqdownheap(a,1);while(i.heap_len>=2);i.heap[--i.heap_max]=i.heap[1],e(i),r(a,t.max_code,i.bl_count)}}Ae._length_code=[0,1,2,3,4,5,6,7].concat(...wi([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]]));Ae.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0];Ae.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576];Ae.d_code=function(t){return t<256?ol[t]:ol[256+(t>>>7)]};Ae.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0];Ae.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];Ae.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];Ae.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function Xe(t,e,n,r,i){let a=this;a.static_tree=t,a.extra_bits=e,a.extra_base=n,a.elems=r,a.max_length=i}var ih=[12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227],ah=wi([[144,8],[112,9],[24,7],[8,8]]);Xe.static_ltree=vi(ih.map((t,e)=>[t,ah[e]]));var oh=[0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23],sh=wi([[30,5]]);Xe.static_dtree=vi(oh.map((t,e)=>[t,sh[e]]));Xe.static_l_desc=new Xe(Xe.static_ltree,Ae.extra_lbits,256+1,286,15);Xe.static_d_desc=new Xe(Xe.static_dtree,Ae.extra_dbits,0,30,15);Xe.static_bl_desc=new Xe(null,Ae.extra_blbits,0,19,7);var lh=9,ch=8;function $t(t,e,n,r,i){let a=this;a.good_length=t,a.max_lazy=e,a.nice_length=n,a.max_chain=r,a.func=i}var Gl=0,ci=1,_n=2,Dt=[new $t(0,0,0,0,Gl),new $t(4,4,8,4,ci),new $t(4,5,16,8,ci),new $t(4,6,32,32,ci),new $t(4,4,16,16,_n),new $t(8,16,32,32,_n),new $t(8,16,128,128,_n),new $t(8,32,128,256,_n),new $t(32,128,258,1024,_n),new $t(32,258,258,4096,_n)],ti=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Ft=0,ni=1,or=2,ri=3,uh=32,va=42,ii=113,sr=666,xa=8,dh=0,Ta=1,fh=2,Oe=3,ui=258,mt=ui+Oe+1;function sl(t,e,n,r){let i=t[e*2],a=t[n*2];return i=3&&z[Ae.bl_order[D]*2+1]===0;D--);return t.opt_len+=3*(D+1)+5+5+4,D}function oe(D){t.pending_buf[t.pending++]=D}function le(D){oe(D&255),oe(D>>>8&255)}function J(D){oe(D>>8&255),oe(D&255&255)}function ae(D,B){let F,U=B;G>16-U?(F=D,q|=F<>>16-G,G+=U-16):(q|=D<=8&&(oe(q&255),q>>>=8,G-=8)}function Ie(){ae(Ta<<1,3),de(256,Xe.static_ltree),Le(),1+$+10-G<9&&(ae(Ta<<1,3),de(256,Xe.static_ltree),Le()),$=7}function ve(D,B){let F,U,j;if(t.dist_buf[M]=D,t.lc_buf[M]=B&255,M++,D===0?O[B*2]++:(I++,D--,O[(Ae._length_code[B]+256+1)*2]++,N[Ae.d_code(D)*2]++),!(M&8191)&&E>2){for(F=M*8,U=_-h,j=0;j<30;j++)F+=N[j*2]*(5+Ae.extra_dbits[j]);if(F>>>=3,I8?le(q):G>0&&oe(q&255),q=0,G=0}function ct(D,B,F){Ue(),$=8,F&&(le(B),le(~B)),t.pending_buf.set(l.subarray(D,D+B),t.pending),t.pending+=B}function rn(D,B,F){ae((dh<<1)+(F?1:0),3),ct(D,B,!0)}function Tt(D,B,F){let U,j,X=0;E>0?(Y.build_tree(t),ne.build_tree(t),X=ie(),U=t.opt_len+3+7>>>3,j=t.static_len+3+7>>>3,j<=U&&(U=j)):U=j=B+5,B+4<=U&&D!=-1?rn(D,B,F):j==U?(ae((Ta<<1)+(F?1:0),3),Re(Xe.static_ltree,Xe.static_dtree)):(ae((fh<<1)+(F?1:0),3),re(Y.max_code+1,ne.max_code+1,X+1),Re(O,N)),pe(),F&&Ue()}function Qe(D){Tt(h>=0?h:-1,_-h,D),h=_,e.flush_pending()}function Bt(){let D,B,F,U;do{if(U=u-k-_,U===0&&_===0&&k===0)U=a;else if(U==-1)U--;else if(_>=a+a-mt){l.set(l.subarray(a,a+a),0),x-=a,_-=a,h-=a,D=p,F=D;do B=d[--F]&65535,d[F]=B>=a?B-a:0;while(--D!==0);D=a,F=D;do B=c[--F]&65535,c[F]=B>=a?B-a:0;while(--D!==0);U+=a}if(e.avail_in===0)return;D=e.read_buf(l,_+k,U),k+=D,k>=Oe&&(f=l[_]&255,f=(f<r-5&&(B=r-5);;){if(k<=1){if(Bt(),k===0&&D==0)return Ft;if(k===0)break}if(_+=k,k=0,F=h+B,(_===0||_>=F)&&(k=_-F,_=F,Qe(!1),e.avail_out===0)||_-h>=a-mt&&(Qe(!1),e.avail_out===0))return Ft}return Qe(D==4),e.avail_out===0?D==4?or:Ft:D==4?ri:ni}function ut(D){let B=A,F=_,U,j,X=v,se=_>a-mt?_-(a-mt):0,Ke=P,dt=s,wn=_+ui,Yn=l[F+X-1],Zn=l[F+X];v>=L&&(B>>=2),Ke>k&&(Ke=k);do if(U=D,!(l[U+X]!=Zn||l[U+X-1]!=Yn||l[U]!=l[F]||l[++U]!=l[F+1])){F+=2,U++;do;while(l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&l[++F]==l[++U]&&FX){if(x=D,X=j,j>=Ke)break;Yn=l[F+X-1],Zn=l[F+X]}}while((D=c[D&dt]&65535)>se&&--B!==0);return X<=k?X:k}function je(D){let B=0,F;for(;;){if(k=Oe&&(f=(f<=Oe)if(F=ve(_-x,y-Oe),k-=y,y<=C&&k>=Oe){y--;do _++,f=(f<=Oe&&(f=(f<4096)&&(y=Oe-1)),v>=Oe&&y<=v){U=_+k-Oe,F=ve(_-1-w,v-Oe),k-=v-1,v-=2;do++_<=U&&(f=(f<lh||U!=xa||F<9||F>15||B<0||B>9||X<0||X>2?-2:(D.dstate=t,o=F,a=1<9||F<0||F>2?-2:(Dt[E].func!=Dt[B].func&&D.total_in!==0&&(U=D.deflate(1)),E!=B&&(E=B,C=Dt[E].max_lazy,L=Dt[E].good_length,P=Dt[E].nice_length,A=Dt[E].max_chain),R=F,U)},t.deflateSetDictionary=function(D,B,F){let U=F,j,X=0;if(!B||n!=va)return-2;if(Ua-mt&&(U=a-mt,X=F-U),l.set(B.subarray(X,X+U),0),_=U,h=U,f=l[0]&255,f=(f<4||B<0)return-2;if(!D.next_out||!D.next_in&&D.avail_in!==0||n==sr&&B!=4)return D.msg=ti[2- -2],-2;if(D.avail_out===0)return D.msg=ti[2- -5],-5;if(e=D,X=i,i=B,n==va&&(U=xa+(o-8<<4)<<8,j=(E-1&255)>>1,j>3&&(j=3),U|=j<<6,_!==0&&(U|=uh),U+=31-U%31,n=ii,J(U)),t.pending!==0){if(e.flush_pending(),e.avail_out===0)return i=-1,0}else if(e.avail_in===0&&B<=X&&B!=4)return e.msg=ti[2- -5],-5;if(n==sr&&e.avail_in!==0)return D.msg=ti[2- -5],-5;if(e.avail_in!==0||k!==0||B!=0&&n!=sr){switch(se=-1,Dt[E].func){case Gl:se=$e(B);break;case ci:se=je(B);break;case _n:se=nt(B);break;default:}if((se==or||se==ri)&&(n=sr),se==Ft||se==or)return e.avail_out===0&&(i=-1),0;if(se==ni){if(B==1)Ie();else if(rn(0,0,!1),B==3)for(F=0;Fn&&(i=n),i===0?0:(r.avail_in-=i,t.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),e),r.next_in_index+=i,r.total_in+=i,i)},flush_pending(){let t=this,e=t.dstate.pending;e>t.avail_out&&(e=t.avail_out),e!==0&&(t.next_out.set(t.dstate.pending_buf.subarray(t.dstate.pending_out,t.dstate.pending_out+e),t.next_out_index),t.next_out_index+=e,t.dstate.pending_out+=e,t.total_out+=e,t.avail_out-=e,t.dstate.pending-=e,t.dstate.pending===0&&(t.dstate.pending_out=0))}};function ph(t){let e=this,n=new Xl,r=mh(t&&t.chunkSize?t.chunkSize:64*1024),i=0,a=new Uint8Array(r),o=t?t.level:-1;typeof o>"u"&&(o=-1),n.deflateInit(o),n.next_out=a,e.append=function(s,l){let u,c,d=0,f=0,p=0,b=[];if(s.length){n.next_in_index=0,n.next_in=s,n.avail_in=s.length;do{if(n.next_out_index=0,n.avail_out=r,u=n.deflate(i),u!=0)throw new Error("deflating: "+n.msg);n.next_out_index&&(n.next_out_index==r?b.push(new Uint8Array(a)):b.push(a.slice(0,n.next_out_index))),p+=n.next_out_index,l&&n.next_in_index>0&&n.next_in_index!=d&&(l(n.next_in_index),d=n.next_in_index)}while(n.avail_in>0||n.avail_out===0);return b.length>1?(c=new Uint8Array(p),b.forEach(function(g){c.set(g,f),f+=g.length})):c=b[0]||new Uint8Array,c}},e.flush=function(){let s,l,u=0,c=0,d=[];do{if(n.next_out_index=0,n.avail_out=r,s=n.deflate(4),s!=1&&s!=0)throw new Error("deflating: "+n.msg);r-n.avail_out>0&&d.push(a.slice(0,n.next_out_index)),c+=n.next_out_index}while(n.avail_in>0||n.avail_out===0);return n.deflateEnd(),l=new Uint8Array(c),d.forEach(function(f){l.set(f,u),u+=f.length}),l}}function mh(t){return t+5*(Math.floor(t/16383)+1)}var gt=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],Yl=1440,gh=0,bh=4,yh=9,wh=5,vh=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],xh=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],Th=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],_h=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],Ch=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],kh=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],ln=15;function Oa(){let t=this,e,n,r,i,a,o;function s(u,c,d,f,p,b,g,m,h,y,w){let S,_,x,k,v,A,C,E,R,L,P,O,N,z,Y;L=0,v=d;do r[u[c+L]]++,L++,v--;while(v!==0);if(r[0]==d)return g[0]=-1,m[0]=0,0;for(E=m[0],A=1;A<=ln&&r[A]===0;A++);for(C=A,Ev&&(E=v),m[0]=E,z=1<O+E;){if(k++,O+=E,Y=x-O,Y=Y>E?E:Y,(_=1<<(A=C-O))>S+1&&(_-=S+1,N=C,AYl)return-3;a[k]=P=y[0],y[0]+=Y,k!==0?(o[k]=v,i[0]=A,i[1]=E,A=v>>>O-E,i[2]=P-a[k-1]-A,h.set(i,(a[k-1]+A)*3)):g[0]=P}for(i[1]=C-O,L>=d?i[0]=128+64:w[L]>>O;A>>=1)v^=A;for(v^=A,R=(1<257?(y==-3?h.msg="oversubscribed distance tree":y==-5?(h.msg="incomplete distance tree",y=-3):y!=-4&&(h.msg="empty distance tree with lengths",y=-3),y):0)}}Oa.inflate_trees_fixed=function(t,e,n,r){return t[0]=yh,e[0]=wh,n[0]=vh,r[0]=xh,0};var ai=0,ll=1,cl=2,ul=3,dl=4,fl=5,hl=6,_a=7,pl=8,oi=9;function Sh(){let t=this,e,n=0,r,i=0,a=0,o=0,s=0,l=0,u=0,c=0,d,f=0,p,b=0;function g(m,h,y,w,S,_,x,k){let v,A,C,E,R,L,P,O,N,z,Y,ne,K,ee,M,I;P=k.next_in_index,O=k.avail_in,R=x.bitb,L=x.bitk,N=x.write,z=N>=A[I+1],L-=A[I+1],x.win[N++]=A[I+2],z--;continue}do{if(R>>=A[I+1],L-=A[I+1],E&16){for(E&=15,K=A[I+2]+(R>[E]),R>>=E,L-=E;L<15;)O--,R|=(k.read_byte(P++)&255)<>=A[I+1],L-=A[I+1],E&16){for(E&=15;L>=E,L-=E,z-=K,N>=ee)M=N-ee,N-M>0&&2>N-M?(x.win[N++]=x.win[M++],x.win[N++]=x.win[M++],K-=2):(x.win.set(x.win.subarray(M,M+2),N),N+=2,M+=2,K-=2);else{M=N-ee;do M+=x.end;while(M<0);if(E=x.end-M,K>E){if(K-=E,N-M>0&&E>N-M)do x.win[N++]=x.win[M++];while(--E!==0);else x.win.set(x.win.subarray(M,M+E),N),N+=E,M+=E,E=0;M=0}}if(N-M>0&&K>N-M)do x.win[N++]=x.win[M++];while(--K!==0);else x.win.set(x.win.subarray(M,M+K),N),N+=K,M+=K,K=0;break}else if(!(E&64))v+=A[I+2],v+=R>[E],I=(C+v)*3,E=A[I];else return k.msg="invalid distance code",K=k.avail_in-O,K=L>>3>3:K,O+=K,P-=K,L-=K<<3,x.bitb=R,x.bitk=L,k.avail_in=O,k.total_in+=P-k.next_in_index,k.next_in_index=P,x.write=N,-3;while(!0);break}if(E&64)return E&32?(K=k.avail_in-O,K=L>>3>3:K,O+=K,P-=K,L-=K<<3,x.bitb=R,x.bitk=L,k.avail_in=O,k.total_in+=P-k.next_in_index,k.next_in_index=P,x.write=N,1):(k.msg="invalid literal/length code",K=k.avail_in-O,K=L>>3>3:K,O+=K,P-=K,L-=K<<3,x.bitb=R,x.bitk=L,k.avail_in=O,k.total_in+=P-k.next_in_index,k.next_in_index=P,x.write=N,-3);if(v+=A[I+2],v+=R>[E],I=(C+v)*3,(E=A[I])===0){R>>=A[I+1],L-=A[I+1],x.win[N++]=A[I+2],z--;break}}while(!0)}while(z>=258&&O>=10);return K=k.avail_in-O,K=L>>3>3:K,O+=K,P-=K,L-=K<<3,x.bitb=R,x.bitk=L,k.avail_in=O,k.total_in+=P-k.next_in_index,k.next_in_index=P,x.write=N,0}t.init=function(m,h,y,w,S,_){e=ai,u=m,c=h,d=y,f=w,p=S,b=_,r=null},t.proc=function(m,h,y){let w,S,_,x=0,k=0,v=0,A,C,E,R;for(v=h.next_in_index,A=h.avail_in,x=m.bitb,k=m.bitk,C=m.write,E=C=258&&A>=10&&(m.bitb=x,m.bitk=k,h.avail_in=A,h.total_in+=v-h.next_in_index,h.next_in_index=v,m.write=C,y=g(u,c,d,f,p,b,m,h),v=h.next_in_index,A=h.avail_in,x=m.bitb,k=m.bitk,C=m.write,E=C>>=r[S+1],k-=r[S+1],_=r[S],_===0){o=r[S+2],e=hl;break}if(_&16){s=_&15,n=r[S+2],e=cl;break}if(!(_&64)){a=_,i=S/3+r[S+2];break}if(_&32){e=_a;break}return e=oi,h.msg="invalid literal/length code",y=-3,m.bitb=x,m.bitk=k,h.avail_in=A,h.total_in+=v-h.next_in_index,h.next_in_index=v,m.write=C,m.inflate_flush(h,y);case cl:for(w=s;k>=w,k-=w,a=c,r=p,i=b,e=ul;case ul:for(w=a;k>=r[S+1],k-=r[S+1],_=r[S],_&16){s=_&15,l=r[S+2],e=dl;break}if(!(_&64)){a=_,i=S/3+r[S+2];break}return e=oi,h.msg="invalid distance code",y=-3,m.bitb=x,m.bitk=k,h.avail_in=A,h.total_in+=v-h.next_in_index,h.next_in_index=v,m.write=C,m.inflate_flush(h,y);case dl:for(w=s;k>=w,k-=w,e=fl;case fl:for(R=C-l;R<0;)R+=m.end;for(;n!==0;){if(E===0&&(C==m.end&&m.read!==0&&(C=0,E=C7&&(k-=8,A++,v--),m.write=C,y=m.inflate_flush(h,y),C=m.write,E=Cg.avail_out&&(h=g.avail_out),h!==0&&m==-5&&(m=0),g.avail_out-=h,g.total_out+=h,g.next_out.set(n.win.subarray(w,w+h),y),y+=h,w+=h,w==n.end&&(w=0,n.write==n.end&&(n.write=0),h=n.write-w,h>g.avail_out&&(h=g.avail_out),h!==0&&m==-5&&(m=0),g.avail_out-=h,g.total_out+=h,g.next_out.set(n.win.subarray(w,w+h),y),y+=h,w+=h),g.next_out_index=y,n.read=w,m},n.proc=function(g,m){let h,y,w,S,_,x,k,v;for(S=g.next_in_index,_=g.avail_in,y=n.bitb,w=n.bitk,x=n.write,k=x>>1){case 0:y>>>=3,w-=3,h=w&7,y>>>=h,w-=h,r=Ca;break;case 1:A=[],C=[],E=[[]],R=[[]],Oa.inflate_trees_fixed(A,C,E,R),c.init(A[0],C[0],E[0],0,R[0],0),y>>>=3,w-=3,r=si;break;case 2:y>>>=3,w-=3,r=bl;break;case 3:return y>>>=3,w-=3,r=Tn,g.msg="invalid block type",m=-3,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m)}break;case Ca:for(;w<32;){if(_!==0)m=0;else return n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);_--,y|=(g.read_byte(S++)&255)<>>16&65535)!=(y&65535))return r=Tn,g.msg="invalid stored block lengths",m=-3,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);i=y&65535,y=w=0,r=i!==0?gl:d!==0?li:Rn;break;case gl:if(_===0||k===0&&(x==n.end&&n.read!==0&&(x=0,k=x_&&(h=_),h>k&&(h=k),n.win.set(g.read_buf(S,h),x),S+=h,_-=h,x+=h,k-=h,(i-=h)!==0)break;r=d!==0?li:Rn;break;case bl:for(;w<14;){if(_!==0)m=0;else return n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);_--,y|=(g.read_byte(S++)&255)<29||(h>>5&31)>29)return r=Tn,g.msg="too many length or distance symbols",m=-3,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);if(h=258+(h&31)+(h>>5&31),!s||s.length>>=14,w-=14,o=0,r=yl;case yl:for(;o<4+(a>>>10);){for(;w<3;){if(_!==0)m=0;else return n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);_--,y|=(g.read_byte(S++)&255)<>>=3,w-=3}for(;o<19;)s[ml[o++]]=0;if(l[0]=7,h=b.inflate_trees_bits(s,l,u,f,g),h!=0)return m=h,m==-3&&(s=null,r=Tn),n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);o=0,r=wl;case wl:for(;h=a,!(o>=258+(h&31)+(h>>5&31));){let z,Y;for(h=l[0];w>>=h,w-=h,s[o++]=Y;else{for(v=Y==18?7:Y-14,z=Y==18?11:3;w>>=h,w-=h,z+=y>[v],y>>>=v,w-=v,v=o,h=a,v+z>258+(h&31)+(h>>5&31)||Y==16&&v<1)return s=null,r=Tn,g.msg="invalid bit length repeat",m=-3,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);Y=Y==16?s[v-1]:0;do s[v++]=Y;while(--z!==0);o=v}}if(u[0]=-1,L=[],P=[],O=[],N=[],L[0]=9,P[0]=6,h=a,h=b.inflate_trees_dynamic(257+(h&31),1+(h>>5&31),s,L,P,O,N,f,g),h!=0)return h==-3&&(s=null,r=Tn),m=h,n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,n.inflate_flush(g,m);c.init(L[0],P[0],f,O[0],f,N[0]),r=si;case si:if(n.bitb=y,n.bitk=w,g.avail_in=_,g.total_in+=S-g.next_in_index,g.next_in_index=S,n.write=x,(m=c.proc(n,g,m))!=1)return n.inflate_flush(g,m);if(m=0,c.free(g),S=g.next_in_index,_=g.avail_in,y=n.bitb,w=n.bitk,x=n.write,k=x15?(t.inflateEnd(n),-2):(t.wbits=r,n.istate.blocks=new Eh(n,1<>4)+8>o.wbits){o.mode=cn,n.msg="invalid win size",o.marker=5;break}o.mode=xl;case xl:if(n.avail_in===0)return i;if(i=r,n.avail_in--,n.total_in++,a=n.read_byte(n.next_in_index++)&255,((o.method<<8)+a)%31!==0){o.mode=cn,n.msg="incorrect header check",o.marker=5;break}if(!(a&Ah)){o.mode=lr;break}o.mode=Tl;case Tl:if(n.avail_in===0)return i;i=r,n.avail_in--,n.total_in++,o.need=(n.read_byte(n.next_in_index++)&255)<<24&4278190080,o.mode=_l;case _l:if(n.avail_in===0)return i;i=r,n.avail_in--,n.total_in++,o.need+=(n.read_byte(n.next_in_index++)&255)<<16&16711680,o.mode=Cl;case Cl:if(n.avail_in===0)return i;i=r,n.avail_in--,n.total_in++,o.need+=(n.read_byte(n.next_in_index++)&255)<<8&65280,o.mode=kl;case kl:return n.avail_in===0?i:(i=r,n.avail_in--,n.total_in++,o.need+=n.read_byte(n.next_in_index++)&255,o.mode=ka,2);case ka:return o.mode=cn,n.msg="need dictionary",o.marker=0,-2;case lr:if(i=o.blocks.proc(n,i),i==-3){o.mode=cn,o.marker=0;break}if(i==0&&(i=r),i!=1)return i;i=r,o.blocks.reset(n,o.was),o.mode=Sl;case Sl:return n.avail_in=0,1;case cn:return-3;default:return-2}},t.inflateSetDictionary=function(n,r,i){let a=0,o=i;if(!n||!n.istate||n.istate.mode!=ka)return-2;let s=n.istate;return o>=1<0&&n.next_in_index!=f&&(l(n.next_in_index),f=n.next_in_index)}while(n.avail_in>0||n.avail_out===0);return u.length>1?(d=new Uint8Array(b),u.forEach(function(g){d.set(g,p),p+=g.length})):d=u[0]||new Uint8Array,d}},e.flush=function(){n.inflateEnd()}}var di="/",El=new Date(2107,11,31),Al=new Date(1980,0,1),Ne=void 0,pi="undefined",Jl="function",Ml=class{constructor(t){return class extends TransformStream{constructor(e,n){let r=new t(n);super({transform(i,a){a.enqueue(r.append(i))},flush(i){let a=r.flush();a&&i.enqueue(a)}})}}}},Fh=64,Ql=2;try{typeof navigator!=pi&&navigator.hardwareConcurrency&&(Ql=navigator.hardwareConcurrency)}catch{}var Ih={chunkSize:512*1024,maxWorkers:Ql,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:Ne,CompressionStreamNative:typeof CompressionStream!=pi&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=pi&&DecompressionStream},hn=Object.assign({},Ih);function Wa(){return hn}function ec(t){return Math.max(t.chunkSize,Fh)}function xi(t){let{baseURL:e,chunkSize:n,maxWorkers:r,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:s,Inflate:l,CompressionStream:u,DecompressionStream:c,workerScripts:d}=t;if(un("baseURL",e),un("chunkSize",n),un("maxWorkers",r),un("terminateWorkerTimeout",i),un("useCompressionStream",a),un("useWebWorkers",o),s&&(hn.CompressionStream=new Ml(s)),l&&(hn.DecompressionStream=new Ml(l)),un("CompressionStream",u),un("DecompressionStream",c),d!==Ne){let{deflate:f,inflate:p}=d;if((f||p)&&(hn.workerScripts||(hn.workerScripts={})),f){if(!Array.isArray(f))throw new Error("workerScripts.deflate must be an array");hn.workerScripts.deflate=f}if(p){if(!Array.isArray(p))throw new Error("workerScripts.inflate must be an array");hn.workerScripts.inflate=p}}}function un(t,e){e!==Ne&&(hn[t]=e)}function Ph(){return"application/octet-stream"}var tc=[];for(let t=0;t<256;t++){let e=t;for(let n=0;n<8;n++)e&1?e=e>>>1^3988292384:e=e>>>1;tc[t]=e}var mi=class{constructor(t){this.crc=t||-1}append(t){let e=this.crc|0;for(let n=0,r=t.length|0;n>>8^tc[(e^t[n])&255];this.crc=e}get(){return~this.crc}},nc=class extends TransformStream{constructor(){let t=new mi;super({transform(e){t.append(e)},flush(e){let n=new Uint8Array(4);new DataView(n.buffer).setUint32(0,t.get()),e.enqueue(n)}})}};function Da(t){if(typeof TextEncoder>"u"){t=unescape(encodeURIComponent(t));let e=new Uint8Array(t.length);for(let n=0;n0&&e&&(t[n-1]=ot.partial(e,t[n-1]&2147483648>>e-1,1)),t},partial(t,e,n){return t===32?e:(n?e|0:e<<32-t)+t*1099511627776},getPartial(t){return Math.round(t/1099511627776)||32},_shiftRight(t,e,n,r){for(r===void 0&&(r=[]);e>=32;e-=32)r.push(n),n=0;if(e===0)return r.concat(t);for(let o=0;o>>e),n=t[o]<<32-e;let i=t.length?t[t.length-1]:0,a=ot.getPartial(i);return r.push(ot.partial(e+a&31,e+a>32?n:r.pop(),1)),r}},gi={bytes:{fromBits(t){let e=ot.bitLength(t)/8,n=new Uint8Array(e),r;for(let i=0;i>>24,r<<=8;return n},toBits(t){let e=[],n,r=0;for(n=0;n9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");let a=new Uint32Array(n),o=0;for(let s=e.blockSize+r-(e.blockSize+r&e.blockSize-1);s<=i;s+=e.blockSize)e._block(a.subarray(16*o,16*(o+1))),o+=1;return n.splice(0,16*o),e}finalize(){let t=this,e=t._buffer,n=t._h;e=ot.concat(e,[ot.partial(1,1)]);for(let r=e.length+2;r&15;r++)e.push(0);for(e.push(Math.floor(t._length/4294967296)),e.push(t._length|0);e.length;)t._block(e.splice(0,16));return t.reset(),n}_f(t,e,n,r){if(t<=19)return e&n|~e&r;if(t<=39)return e^n^r;if(t<=59)return e&n|e&r|n&r;if(t<=79)return e^n^r}_S(t,e){return e<>>32-t}_block(t){let e=this,n=e._h,r=Array(80);for(let u=0;u<16;u++)r[u]=t[u];let i=n[0],a=n[1],o=n[2],s=n[3],l=n[4];for(let u=0;u<=79;u++){u>=16&&(r[u]=e._S(1,r[u-3]^r[u-8]^r[u-14]^r[u-16]));let c=e._S(5,i)+e._f(u,a,o,s)+l+r[u]+e._key[Math.floor(u/20)]|0;l=s,s=o,o=e._S(30,a),a=i,i=c}n[0]=n[0]+i|0,n[1]=n[1]+a|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+l|0}};var ic={};ic.aes=class{constructor(t){let e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();let n=e._tables[0][4],r=e._tables[1],i=t.length,a,o,s,l=1;if(i!==4&&i!==6&&i!==8)throw new Error("invalid aes key size");for(e._key=[o=t.slice(0),s=[]],a=i;a<4*i+28;a++){let u=o[a-1];(a%i===0||i===8&&a%i===4)&&(u=n[u>>>24]<<24^n[u>>16&255]<<16^n[u>>8&255]<<8^n[u&255],a%i===0&&(u=u<<8^u>>>24^l<<24,l=l<<1^(l>>7)*283)),o[a]=o[a-i]^u}for(let u=0;a;u++,a--){let c=o[u&3?a:a-4];a<=4||u<4?s[u]=c:s[u]=r[0][n[c>>>24]]^r[1][n[c>>16&255]]^r[2][n[c>>8&255]]^r[3][n[c&255]]}}encrypt(t){return this._crypt(t,0)}decrypt(t){return this._crypt(t,1)}_precompute(){let t=this._tables[0],e=this._tables[1],n=t[4],r=e[4],i=[],a=[],o,s,l,u;for(let c=0;c<256;c++)a[(i[c]=c<<1^(c>>7)*283)^c]=c;for(let c=o=0;!n[c];c^=s||1,o=a[o]||1){let d=o^o<<1^o<<2^o<<3^o<<4;d=d>>8^d&255^99,n[c]=d,r[d]=c,u=i[l=i[s=i[c]]];let f=u*16843009^l*65537^s*257^c*16843008,p=i[d]*257^d*16843008;for(let b=0;b<4;b++)t[b][c]=p=p<<24^p>>>8,e[b][d]=f=f<<24^f>>>8}for(let c=0;c<5;c++)t[c]=t[c].slice(0),e[c]=e[c].slice(0)}_crypt(t,e){if(t.length!==4)throw new Error("invalid aes block size");let n=this._key[e],r=n.length/4-2,i=[0,0,0,0],a=this._tables[e],o=a[0],s=a[1],l=a[2],u=a[3],c=a[4],d=t[0]^n[0],f=t[e?3:1]^n[1],p=t[2]^n[2],b=t[e?1:3]^n[3],g=4,m,h,y;for(let w=0;w>>24]^s[f>>16&255]^l[p>>8&255]^u[b&255]^n[g],h=o[f>>>24]^s[p>>16&255]^l[b>>8&255]^u[d&255]^n[g+1],y=o[p>>>24]^s[b>>16&255]^l[d>>8&255]^u[f&255]^n[g+2],b=o[b>>>24]^s[d>>16&255]^l[f>>8&255]^u[p&255]^n[g+3],g+=4,d=m,f=h,p=y;for(let w=0;w<4;w++)i[e?3&-w:w]=c[d>>>24]<<24^c[f>>16&255]<<16^c[p>>8&255]<<8^c[b&255]^n[g++],m=d,d=f,f=p,p=b,b=m;return i}};var Nh={getRandomValues(t){let e=new Uint32Array(t.buffer),n=r=>{let i=987654321,a=4294967295;return function(){return i=36969*(i&65535)+(i>>16)&a,r=18e3*(r&65535)+(r>>16)&a,(((i<<16)+r&a)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let r=0,i;r>24&255)===255){let e=t>>16&255,n=t>>8&255,r=t&255;e===255?(e=0,n===255?(n=0,r===255?r=0:++r):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=r}else t+=1<<24;return t}incCounter(t){(t[0]=this.incWord(t[0]))===0&&(t[1]=this.incWord(t[1]))}calculate(t,e,n){let r;if(!(r=e.length))return[];let i=ot.bitLength(e);for(let a=0;a>5)+1<<2,a,o,s,l,u,c=new ArrayBuffer(i),d=new DataView(c),f=0,p=ot;for(e=gi.bytes.toBits(e),u=1;f<(i||1);u++){for(a=o=t.encrypt(p.concat(e,[u])),s=1;si&&(t=new n().update(t).finalize());for(let a=0;athis.resolveReady=r),password:t,signed:e,strength:n-1,pending:new Uint8Array})},async transform(r,i){let a=this,{password:o,strength:s,resolveReady:l,ready:u}=a;o?(await Yh(a,s,o,kt(r,0,ur[s]+2)),r=kt(r,ur[s]+2),l()):await u;let c=new Uint8Array(r.length-dn-(r.length-dn)%On);i.enqueue(dc(a,r,c,0,dn,!0))},async flush(r){let{signed:i,ctr:a,hmac:o,pending:s,ready:l}=this;await l;let u=kt(s,0,s.length-dn),c=kt(s,s.length-dn),d=new Uint8Array;if(u.length){let f=fr(Ht,u);o.update(f);let p=a.update(f);d=dr(Ht,p)}if(i){let f=kt(dr(Ht,o.digest()),0,dn);for(let p=0;pthis.resolveReady=r),password:t,strength:e-1,pending:new Uint8Array})},async transform(r,i){let a=this,{password:o,strength:s,resolveReady:l,ready:u}=a,c=new Uint8Array;o?(c=await Zh(a,s,o),l()):await u;let d=new Uint8Array(c.length+r.length-r.length%On);d.set(c,0),i.enqueue(dc(a,r,d,c.length,0))},async flush(r){let{ctr:i,hmac:a,pending:o,ready:s}=this;await s;let l=new Uint8Array;if(o.length){let u=i.update(fr(Ht,o));a.update(u),l=dr(Ht,u)}n.signature=dr(Ht,a.digest()).slice(0,dn),r.enqueue(Ka(l,n.signature))}}),n=this}};function dc(t,e,n,r,i,a){let{ctr:o,hmac:s,pending:l}=t,u=e.length-i;l.length&&(e=Ka(l,e),n=e2(n,u-u%On));let c;for(c=0;c<=u-On;c+=On){let d=fr(Ht,kt(e,c,c+On));a&&s.update(d);let f=o.update(d);a||s.update(f),n.set(dr(Ht,f),c+r)}return t.pending=kt(e,c),n}async function Yh(t,e,n,r){let i=await fc(t,e,n,kt(r,0,ur[e])),a=kt(r,ur[e]);if(i[0]!=a[0]||i[1]!=a[1])throw new Error(qa)}async function Zh(t,e,n){let r=oc(new Uint8Array(ur[e])),i=await fc(t,e,n,r);return Ka(r,i)}async function fc(t,e,n,r){t.password=null;let i=Da(n),a=await Jh(Bh,i,jh,!1,Hh),o=await Qh(Object.assign({salt:r},Fa),a,8*(cr[e]*2+2)),s=new Uint8Array(o),l=fr(Ht,kt(s,0,cr[e])),u=fr(Ht,kt(s,cr[e],cr[e]*2)),c=kt(s,cr[e]*2);return Object.assign(t,{keys:{key:l,authentication:u,passwordVerification:c},ctr:new Vh(new qh(l),Array.from(Wh)),hmac:new Kh(u)}),c}async function Jh(t,e,n,r,i){if(Ll)try{return await pr.importKey(t,e,n,r,i)}catch{return Ll=!1,Cn.importKey(e)}else return Cn.importKey(e)}async function Qh(t,e,n){if(Rl)try{return await pr.deriveBits(t,e,n)}catch{return Rl=!1,Cn.pbkdf2(e,t.salt,Fa.iterations,n)}else return Cn.pbkdf2(e,t.salt,Fa.iterations,n)}function Ka(t,e){let n=t;return t.length+e.length&&(n=new Uint8Array(t.length+e.length),n.set(t,0),n.set(e,t.length)),n}function e2(t,e){if(e&&e>t.length){let n=t;t=new Uint8Array(e),t.set(n,0)}return t}function kt(t,e,n){return t.subarray(e,n)}function dr(t,e){return t.fromBits(e)}function fr(t,e){return t.toBits(e)}var Dn=12,t2=class extends TransformStream{constructor({password:t,passwordVerification:e}){super({start(){Object.assign(this,{password:t,passwordVerification:e}),hc(this,t)},transform(n,r){let i=this;if(i.password){let a=Ol(i,n.subarray(0,Dn));if(i.password=null,a[Dn-1]!=i.passwordVerification)throw new Error(qa);n=n.subarray(Dn)}r.enqueue(Ol(i,n))}})}},n2=class extends TransformStream{constructor({password:t,passwordVerification:e}){super({start(){Object.assign(this,{password:t,passwordVerification:e}),hc(this,t)},transform(n,r){let i=this,a,o;if(i.password){i.password=null;let s=oc(new Uint8Array(Dn));s[Dn-1]=i.passwordVerification,a=new Uint8Array(n.length+s.length),a.set(Dl(i,s),0),o=Dn}else a=new Uint8Array(n.length),o=0;a.set(Dl(i,n),o),r.enqueue(a)}})}};function Ol(t,e){let n=new Uint8Array(e.length);for(let r=0;r>>24]),i=~t.crcKey2.get(),t.keys=[n,r,i]}function pc(t){let e=t.keys[2]|2;return mc(Math.imul(e,e^1)>>>8)}function mc(t){return t&255}function Fl(t){return t&4294967295}var Il="deflate-raw",r2=class extends TransformStream{constructor(t,{chunkSize:e,CompressionStream:n,CompressionStreamNative:r}){super({});let{compressed:i,encrypted:a,useCompressionStream:o,zipCrypto:s,signed:l,level:u}=t,c=this,d,f,p=gc(super.readable);(!a||s)&&l&&([p,d]=p.tee(),d=Wt(d,new nc)),i&&(p=yc(p,o,{level:u,chunkSize:e},r,n)),a&&(s?p=Wt(p,new n2(t)):(f=new Xh(t),p=Wt(p,f))),bc(c,p,async()=>{let b;a&&!s&&(b=f.signature),(!a||s)&&l&&(b=await d.getReader().read(),b=new DataView(b.value.buffer).getUint32(0)),c.signature=b})}},i2=class extends TransformStream{constructor(t,{chunkSize:e,DecompressionStream:n,DecompressionStreamNative:r}){super({});let{zipCrypto:i,encrypted:a,signed:o,signature:s,compressed:l,useCompressionStream:u}=t,c,d,f=gc(super.readable);a&&(i?f=Wt(f,new t2(t)):(d=new Gh(t),f=Wt(f,d))),l&&(f=yc(f,u,{chunkSize:e},r,n)),(!a||i)&&o&&([f,c]=f.tee(),c=Wt(c,new nc)),bc(this,f,async()=>{if((!a||i)&&o){let p=await c.getReader().read(),b=new DataView(p.value.buffer);if(s!=b.getUint32(0,!1))throw new Error(Va)}})}};function gc(t){return Wt(t,new TransformStream({transform(e,n){e&&e.length&&n.enqueue(e)}}))}function bc(t,e,n){e=Wt(e,new TransformStream({flush:n})),Object.defineProperty(t,"readable",{get(){return e}})}function yc(t,e,n,r,i){try{let a=e&&r?r:i;t=Wt(t,new a(Il,n))}catch(a){if(e)t=Wt(t,new i(Il,n));else throw a}return t}function Wt(t,e){return t.pipeThrough(e)}var a2="message",o2="start",s2="pull",Pl="data",l2="ack",c2="close",wc="deflate",vc="inflate",u2=class extends TransformStream{constructor(t,e){super({});let n=this,{codecType:r}=t,i;r.startsWith(wc)?i=r2:r.startsWith(vc)&&(i=i2);let a=0,o=new i(t,e),s=super.readable,l=new TransformStream({transform(u,c){u&&u.length&&(a+=u.length,c.enqueue(u))},flush(){let{signature:u}=o;Object.assign(n,{signature:u,size:a})}});Object.defineProperty(n,"readable",{get(){return s.pipeThrough(o).pipeThrough(l)}})}},d2=typeof Worker!=pi,Sa=class{constructor(t,{readable:e,writable:n},{options:r,config:i,streamOptions:a,useWebWorkers:o,transferStreams:s,scripts:l},u){let{signal:c}=a;return Object.assign(t,{busy:!0,readable:e.pipeThrough(new f2(e,a,i),{signal:c}),writable:n,options:Object.assign({},r),scripts:l,transferStreams:s,terminate(){let{worker:d,busy:f}=t;d&&!f&&(d.terminate(),t.interface=null)},onTaskFinished(){t.busy=!1,u(t)}}),(o&&d2?p2:h2)(t,i)}},f2=class extends TransformStream{constructor(t,{onstart:e,onprogress:n,size:r,onend:i},{chunkSize:a}){let o=0;super({start(){e&&Ea(e,r)},async transform(s,l){o+=s.length,n&&await Ea(n,o,r),l.enqueue(s)},flush(){t.size=o,i&&Ea(i,o)}},{highWaterMark:1,size:()=>a})}};async function Ea(t,...e){try{await t(...e)}catch{}}function h2(t,e){return{run:()=>m2(t,e)}}function p2(t,{baseURL:e,chunkSize:n}){return t.interface||Object.assign(t,{worker:y2(t.scripts[0],e,t),interface:{run:()=>g2(t,{chunkSize:n})}}),t.interface}async function m2({options:t,readable:e,writable:n,onTaskFinished:r},i){let a=new u2(t,i);try{await e.pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});let{signature:o,size:s}=a;return{signature:o,size:s}}finally{r()}}async function g2(t,e){let n,r,i=new Promise((d,f)=>{n=d,r=f});Object.assign(t,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});let{readable:a,options:o,scripts:s}=t,{writable:l,closed:u}=b2(t.writable);Ia({type:o2,scripts:s.slice(1),options:o,config:e,readable:a,writable:l},t)||Object.assign(t,{reader:a.getReader(),writer:l.getWriter()});let c=await i;try{await l.close()}catch{}return await u,c}function b2(t){let e=t.getWriter(),n,r=new Promise(i=>n=i);return{writable:new WritableStream({async write(i){await e.ready,await e.write(i)},close(){e.releaseLock(),n()},abort(i){return e.abort(i)}}),closed:r}}var Nl=!0,zl=!0;function y2(t,e,n){let r={type:"module"},i,a;typeof t==Jl&&(t=t());try{i=new URL(t,e)}catch{i=t}if(Nl)try{a=new Worker(i)}catch{Nl=!1,a=new Worker(i,r)}else a=new Worker(i,r);return a.addEventListener(a2,o=>w2(o,n)),a}function Ia(t,{worker:e,writer:n,onTaskFinished:r,transferStreams:i}){try{let{value:a,readable:o,writable:s}=t,l=[];if(a){let{buffer:u,length:c}=a;c!=u.byteLength&&(a=new Uint8Array(a)),t.value=a.buffer,l.push(t.value)}if(i&&zl?(o&&l.push(o),s&&l.push(s)):t.readable=t.writable=null,l.length)try{return e.postMessage(t,l),!0}catch{zl=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(a){throw n&&n.releaseLock(),r(),a}}async function w2({data:t},e){let{type:n,value:r,messageId:i,result:a,error:o}=t,{reader:s,writer:l,resolveResult:u,rejectResult:c,onTaskFinished:d}=e;try{if(o){let{message:p,stack:b,code:g,name:m}=o,h=new Error(p);Object.assign(h,{stack:b,code:g,name:m}),f(h)}else{if(n==s2){let{value:p,done:b}=await s.read();Ia({type:Pl,value:p,done:b,messageId:i},e)}n==Pl&&(await l.ready,await l.write(new Uint8Array(r)),Ia({type:l2,messageId:i},e)),n==c2&&f(null,a)}}catch(p){f(p)}function f(p,b){p?c(p):u(b),l&&l.releaseLock(),d()}}var fn=[],Aa=[],Bl=0;async function xc(t,e){let{options:n,config:r}=e,{transferStreams:i,useWebWorkers:a,useCompressionStream:o,codecType:s,compressed:l,signed:u,encrypted:c}=n,{workerScripts:d,maxWorkers:f,terminateWorkerTimeout:p}=r;e.transferStreams=i||i===Ne;let b=!l&&!u&&!c&&!e.transferStreams;e.useWebWorkers=!b&&(a||a===Ne&&r.useWebWorkers),e.scripts=e.useWebWorkers&&d?d[s]:[],n.useCompressionStream=o||o===Ne&&r.useCompressionStream;let g,m=fn.find(y=>!y.busy);if(m)Pa(m),g=new Sa(m,t,e,h);else if(fn.lengthAa.push({resolve:y,stream:t,workerOptions:e}));return g.run();function h(y){if(Aa.length){let[{resolve:w,stream:S,workerOptions:_}]=Aa.splice(0,1);w(new Sa(y,S,_,h))}else y.worker?(Pa(y),Number.isFinite(p)&&p>=0&&(y.terminateTimeout=setTimeout(()=>{fn=fn.filter(w=>w!=y),y.terminate()},p))):fn=fn.filter(w=>w!=y)}}function Pa(t){let{terminateTimeout:e}=t;e&&(clearTimeout(e),t.terminateTimeout=null)}function v2(){fn.forEach(t=>{Pa(t),t.terminate()})}var Tc="HTTP error ",mr="HTTP Range not supported",_c="Writer iterator completed too soon",x2="text/plain",T2="Content-Length",_2="Content-Range",C2="Accept-Ranges",k2="Range",S2="Content-Type",E2="HEAD",Xa="GET",Cc="bytes",A2=64*1024,Ya="writable",_i=class{constructor(){this.size=0}init(){this.initialized=!0}},pn=class extends _i{get readable(){let t=this,{chunkSize:e=A2}=t,n=new ReadableStream({start(){this.chunkOffset=0},async pull(r){let{offset:i=0,size:a,diskNumberStart:o}=n,{chunkOffset:s}=this;r.enqueue(await et(t,i+s,Math.min(e,a-s),o)),s+e>a?r.close():this.chunkOffset+=e}});return n}},Za=class extends _i{constructor(){super();let t=this,e=new WritableStream({write(n){return t.writeUint8Array(n)}});Object.defineProperty(t,Ya,{get(){return e}})}writeUint8Array(){}},M2=class extends pn{constructor(t){super();let e=t.length;for(;t.charAt(e-1)=="=";)e--;let n=t.indexOf(",")+1;Object.assign(this,{dataURI:t,dataStart:n,size:Math.floor((e-n)*.75)})}readUint8Array(t,e){let{dataStart:n,dataURI:r}=this,i=new Uint8Array(e),a=Math.floor(t/3)*4,o=atob(r.substring(a+n,Math.ceil((t+e)/3)*4+n)),s=t-Math.floor(a/4)*3;for(let l=s;l2?e.data+=btoa(r):e.pending=r}getData(){return this.data+btoa(this.pending)}},Ja=class extends pn{constructor(t){super(),Object.assign(this,{blob:t,size:t.size})}async readUint8Array(t,e){let n=this,r=t+e,i=t||r{Object.assign(r,{onload:({target:o})=>i(o.result),onerror:()=>a(r.error)}),r.readAsText(n,t)})}}},D2=class extends pn{constructor(t,e){super(),kc(this,t,e)}async init(){await Sc(this,Na,Ul),super.init()}readUint8Array(t,e){return Ec(this,t,e,Na,Ul)}},F2=class extends pn{constructor(t,e){super(),kc(this,t,e)}async init(){await Sc(this,za,$l),super.init()}readUint8Array(t,e){return Ec(this,t,e,za,$l)}};function kc(t,e,n){let{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:a}=n;n=Object.assign({},n),delete n.preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.useXHR,Object.assign(t,{url:e,options:n,preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:a})}async function Sc(t,e,n){let{url:r,useRangeHeader:i,forceRangeRequests:a}=t;if(z2(r)&&(i||a)){let{headers:o}=await e(Xa,t,Ac(t));if(!a&&o.get(C2)!=Cc)throw new Error(mr);{let s,l=o.get(_2);if(l){let u=l.trim().split(/\s*\/\s*/);if(u.length){let c=u[1];c&&c!="*"&&(s=Number(c))}}s===Ne?await jl(t,e,n):t.size=s}}else await jl(t,e,n)}async function Ec(t,e,n,r,i){let{useRangeHeader:a,forceRangeRequests:o,options:s}=t;if(a||o){let l=await r(Xa,t,Ac(t,e,n));if(l.status!=206)throw new Error(mr);return new Uint8Array(await l.arrayBuffer())}else{let{data:l}=t;return l||await i(t,s),new Uint8Array(t.data.subarray(e,e+n))}}function Ac(t,e=0,n=1){return Object.assign({},eo(t),{[k2]:Cc+"="+e+"-"+(e+n-1)})}function eo({options:t}){let{headers:e}=t;if(e)return Symbol.iterator in e?Object.fromEntries(e):e}async function Ul(t){await Mc(t,Na)}async function $l(t){await Mc(t,za)}async function Mc(t,e){let n=await e(Xa,t,eo(t));t.data=new Uint8Array(await n.arrayBuffer()),t.size||(t.size=t.data.length)}async function jl(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{let r=(await e(E2,t,eo(t))).headers.get(T2);r?t.size=Number(r):await n(t,t.options)}}async function Na(t,{options:e,url:n},r){let i=await fetch(n,Object.assign({},e,{method:t,headers:r}));if(i.status<400)return i;throw i.status==416?new Error(mr):new Error(Tc+(i.statusText||i.status))}function za(t,{url:e},n){return new Promise((r,i)=>{let a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status<400){let o=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(s=>{let l=s.trim().split(/\s*:\s*/);l[0]=l[0].trim().replace(/^[a-z]|-[a-z]/g,u=>u.toUpperCase()),o.push(l)}),r({status:a.status,arrayBuffer:()=>a.response,headers:new Map(o)})}else i(a.status==416?new Error(mr):new Error(Tc+(a.statusText||a.status)))},!1),a.addEventListener("error",o=>i(o.detail.error),!1),a.open(t,e),n)for(let o of Object.entries(n))a.setRequestHeader(o[0],o[1]);a.responseType="arraybuffer",a.send()})}var Lc=class extends pn{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR?new F2(t,e):new D2(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}},I2=class extends Lc{constructor(t,e={}){e.useRangeHeader=!0,super(t,e)}},P2=class extends pn{constructor(t){super(),Object.assign(this,{array:t,size:t.length})}readUint8Array(t,e){return this.array.slice(t,t+e)}},N2=class extends Za{init(t=0){Object.assign(this,{offset:0,array:new Uint8Array(t)}),super.init()}writeUint8Array(t){let e=this;if(e.offset+t.length>e.array.length){let n=e.array;e.array=new Uint8Array(n.length+t.length),e.array.set(n)}e.array.set(t,e.offset),e.offset+=t.length}getData(){return this.array}},to=class extends pn{constructor(t){super(),this.readers=t}async init(){let t=this,{readers:e}=t;t.lastDiskNumber=0,await Promise.all(e.map(async n=>{await n.init(),t.size+=n.size})),super.init()}async readUint8Array(t,e,n=0){let r=this,{readers:i}=this,a,o=n;o==-1&&(o=i.length-1);let s=t;for(;s>=i[o].size;)s-=i[o].size,o++;let l=i[o],u=l.size;if(s+e<=u)a=await et(l,s,e);else{let c=u-s;a=new Uint8Array(e),a.set(await et(l,s,c)),a.set(await r.readUint8Array(t+c,e-c,n),c)}return r.lastDiskNumber=Math.max(o,r.lastDiskNumber),a}},hr=class extends _i{constructor(t,e=4294967295){super();let n=this;Object.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});let r,i,a,o=new WritableStream({async write(u){let{availableSize:c}=n;if(a)u.length>=c?(await s(u.slice(0,c)),await l(),n.diskOffset+=r.size,n.diskNumber++,a=null,await this.write(u.slice(c))):await s(u);else{let{value:d,done:f}=await t.next();if(f&&!d)throw new Error(_c);r=d,r.size=0,r.maxSize&&(n.maxSize=r.maxSize),n.availableSize=n.maxSize,await Jt(r),i=d.writable,a=i.getWriter(),await this.write(u)}},async close(){await a.ready,await l()}});Object.defineProperty(n,Ya,{get(){return o}});async function s(u){let c=u.length;c&&(await a.ready,await a.write(u),r.size+=c,n.size+=c,n.availableSize-=c)}async function l(){i.size=r.size,await a.close()}}};function z2(t){let{baseURL:e}=Wa(),{protocol:n}=new URL(t,e);return n=="http:"||n=="https:"}async function Jt(t,e){t.init&&!t.initialized&&await t.init(e)}function no(t){return Array.isArray(t)&&(t=new to(t)),t instanceof ReadableStream&&(t={readable:t}),t}function ro(t){t.writable===Ne&&typeof t.next==Jl&&(t=new hr(t)),t instanceof WritableStream&&(t={writable:t});let{writable:e}=t;return e.size===Ne&&(e.size=0),t instanceof hr||Object.assign(t,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),t}function et(t,e,n,r){return t.readUint8Array(e,n,r)}var B2=to,U2=hr,Rc="\0\u263A\u263B\u2665\u2666\u2663\u2660\u2022\u25D8\u25CB\u25D9\u2642\u2640\u266A\u266B\u263C\u25BA\u25C4\u2195\u203C\xB6\xA7\u25AC\u21A8\u2191\u2193\u2192\u2190\u221F\u2194\u25B2\u25BC !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0 ".split(""),$2=Rc.length==256;function j2(t){if($2){let e="";for(let n=0;nthis[e]=t[e])}},fi="File format is not recognized",Wc="End of central directory not found",qc="End of Zip64 central directory not found",Vc="End of Zip64 central directory locator not found",Kc="Central directory header not found",Gc="Local file header not found",Xc="Zip64 extra field not found",Yc="File contains encrypted entry",Zc="Encryption method not supported",$a="Compression method not supported",ja="Split zip file",Hl="utf-8",Wl="cp437",V2=[[Pc,4294967295],[Nc,4294967295],[zc,4294967295],[Ua,65535]],K2={[65535]:{getValue:De,bytes:4},[4294967295]:{getValue:hi,bytes:8}},G2=class{constructor(t,e={}){Object.assign(this,{reader:no(t),options:e,config:Wa()})}async*getEntriesGenerator(t={}){let e=this,{reader:n}=e,{config:r}=e;if(await Jt(n),(n.size===Ne||!n.readUint8Array)&&(n=new Ja(await new Response(n.readable).blob()),await Jt(n)),n.size<22)throw new Error(fi);n.chunkSize=ec(r);let i=await ep(n,101010256,n.size,22,65535*16);if(!i){let v=await et(n,0,4),A=Ye(v);throw De(A)==134695760?new Error(ja):new Error(Wc)}let a=Ye(i),o=De(a,12),s=De(a,16),l=i.offset,u=We(a,20),c=l+22+u,d=We(a,4),f=n.lastDiskNumber||0,p=We(a,6),b=We(a,8),g=0,m=0;if(s==4294967295||o==4294967295||b==65535||p==65535){let v=await et(n,i.offset-20,20),A=Ye(v);if(De(A,0)!=117853008)throw new Error(qc);s=hi(A,8);let C=await et(n,s,56,-1),E=Ye(C),R=i.offset-20-56;if(De(E,0)!=101075792&&s!=R){let L=s;s=R,g=s-L,C=await et(n,s,56,-1),E=Ye(C)}if(De(E,0)!=101075792)throw new Error(Vc);d==65535&&(d=De(E,16)),p==65535&&(p=De(E,20)),b==65535&&(b=hi(E,32)),o==4294967295&&(o=hi(E,40)),s-=o}if(f!=d)throw new Error(ja);if(s<0||s>=n.size)throw new Error(fi);let h=0,y=await et(n,s,o,p),w=Ye(y);if(o){let v=i.offset-o;if(De(w,h)!=33639248&&s!=v){let A=s;s=v,g=s-A,y=await et(n,s,o,p),w=Ye(y)}}if(s<0||s>=n.size)throw new Error(fi);let S=It(e,t,"filenameEncoding"),_=It(e,t,"commentEncoding");for(let v=0;vA.getData(pe,G,me),h=Y;let{onprogress:ce}=t;if(ce)try{await ce(v+1,b,new bi(A))}catch{}yield G}let x=It(e,t,"extractPrependedData"),k=It(e,t,"extractAppendedData");return x&&(e.prependedData=m>0?await et(n,0,m):new Uint8Array),e.comment=u?await et(n,l+22,u):new Uint8Array,k&&(e.appendedData=c>>8&255:d>>>24&255),signature:d,compressed:l!=0,encrypted:w,useWebWorkers:It(r,n,"useWebWorkers"),useCompressionStream:It(r,n,"useCompressionStream"),transferStreams:It(r,n,"transferStreams")},config:u,streamOptions:{signal:v,size:k,onstart:C,onprogress:E,onend:R}};return A.size+=(await xc({readable:x,writable:A},L)).size,It(r,n,"preventClose")||await A.close(),t.getData?t.getData():A}};function Jc(t,e,n){let r=t.rawBitFlag=We(e,n+2),i=(r&1)==1,a=De(e,n+6);Object.assign(t,{encrypted:i,version:We(e,n),bitFlag:{level:(r&6)>>1,dataDescriptor:(r&8)==8,languageEncodingFlag:(r&2048)==2048},rawLastModDate:a,lastModDate:tp(a),filenameLength:We(e,n+22),extraFieldLength:We(e,n+24)})}async function Qc(t,e,n,r){let{rawExtraField:i}=e,a=e.extraField=new Map,o=Ye(new Uint8Array(i)),s=0;try{for(;se[i]==a);for(let i=0,a=0;i{if(t.data.length>=o+4){let u=De(n,o);e[s]=t[s]=new Date(u*1e3);let c=a[l];t[c]=u}o+=4})}async function ep(t,e,n,r,i){let a=new Uint8Array(4),o=Ye(a);np(o,0,e);let s=r+i;return await l(r)||await l(Math.min(s,n));async function l(u){let c=n-u,d=await et(t,c,u);for(let f=d.length-r;f>=0;f--)if(d[f]==a[0]&&d[f+1]==a[1]&&d[f+2]==a[2]&&d[f+3]==a[3])return{offset:c+f,buffer:d.slice(f,f+r).buffer}}}function It(t,e,n){return e[n]===Ne?t.options[n]:e[n]}function tp(t){let e=(t&4294901760)>>16,n=t&65535;try{return new Date(1980+((e&65024)>>9),((e&480)>>5)-1,e&31,(n&63488)>>11,(n&2016)>>5,(n&31)*2,0)}catch{}}function Ma(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function Fn(t,e){return t.getUint8(e)}function We(t,e){return t.getUint16(e,!0)}function De(t,e){return t.getUint32(e,!0)}function hi(t,e){return Number(t.getBigUint64(e,!0))}function np(t,e,n){t.setUint32(e,n,!0)}function Ye(t){return new DataView(t.buffer)}var e0="File already exists",t0="Zip file comment exceeds 64KB",n0="File entry comment exceeds 64KB",r0="File entry name exceeds 64KB",Ha="Version exceeds 65535",i0="The strength must equal 1, 2, or 3",a0="Extra field type exceeds 65535",o0="Extra field data exceeds 64KB",Ci="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Vl=new Uint8Array([7,0,2,0,65,69,3,0,0]),La=0,Kl=[],rp=class{constructor(t,e={}){t=ro(t),Object.assign(this,{writer:t,addSplitZipSignature:t instanceof hr,options:e,config:Wa(),files:new Map,filenames:new Set,offset:t.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new Set,bufferedWrites:0})}async add(t="",e,n={}){let r=this,{pendingAddFileCalls:i,config:a}=r;LaKl.push(s));let o;try{if(t=t.trim(),r.filenames.has(t))throw new Error(e0);return r.filenames.add(t),o=ip(r,t,e,n),i.add(o),await o}catch(s){throw r.filenames.delete(t),s}finally{i.delete(o);let s=Kl.shift();s?s():La--}}async close(t=new Uint8Array,e={}){let n=this,{pendingAddFileCalls:r,writer:i}=this,{writable:a}=i;for(;r.size;)await Promise.all(Array.from(r));return await fp(this,t,e),Ee(n,e,"preventClose")||await a.close(),i.getData?i.getData():a}};async function ip(t,e,n,r){e=e.trim(),r.directory&&!e.endsWith(di)?e+=di:r.directory=e.endsWith(di);let i=Da(e);if(Te(i)>65535)throw new Error(r0);let a=r.comment||"",o=Da(a);if(Te(o)>65535)throw new Error(n0);let s=Ee(t,r,"version",20);if(s>65535)throw new Error(Ha);let l=Ee(t,r,"versionMadeBy",20);if(l>65535)throw new Error(Ha);let u=Ee(t,r,io,new Date),c=Ee(t,r,ao),d=Ee(t,r,oo),f=Ee(t,r,jc,!0),p=Ee(t,r,Uc,0),b=Ee(t,r,$c,0),g=Ee(t,r,"password"),m=Ee(t,r,"encryptionStrength",3),h=Ee(t,r,"zipCrypto"),y=Ee(t,r,"extendedTimestamp",!0),w=Ee(t,r,"keepOrder",!0),S=Ee(t,r,"level"),_=Ee(t,r,"useWebWorkers"),x=Ee(t,r,"bufferedWrite"),k=Ee(t,r,"dataDescriptorSignature",!1),v=Ee(t,r,"signal"),A=Ee(t,r,"useCompressionStream"),C=Ee(t,r,"dataDescriptor",!0),E=Ee(t,r,Hc);if(g!==Ne&&m!==Ne&&(m<1||m>3))throw new Error(i0);let R=new Uint8Array,{extraField:L}=r;if(L){let pe=0,me=0;L.forEach(Z=>pe+=4+Te(Z)),R=new Uint8Array(pe),L.forEach((Z,ie)=>{if(ie>65535)throw new Error(a0);if(Te(Z)>65535)throw new Error(o0);qe(R,new Uint16Array([ie]),me),qe(R,new Uint16Array([Te(Z)]),me+2),qe(R,Z,me+4),me+=4+Te(Z)})}let P=0,O=0,N=0,z=E===!0;n&&(n=no(n),await Jt(n),n.size===Ne?(C=!0,(E||E===Ne)&&(E=!0,P=4294967295)):(N=n.size,P=pp(N)));let{diskOffset:Y,diskNumber:ne,maxSize:K}=t.writer,ee=z||N>=4294967295,M=z||P>=4294967295,I=z||t.offset+t.pendingEntriesSize-Y>=4294967295,$=Ee(t,r,"supportZip64SplitFile",!0)&&z||ne+Math.ceil(t.pendingEntriesSize/K)>=65535;if(I||ee||M||$){if(E===!1||!w)throw new Error(Ci);E=!0}E=E||!1,r=Object.assign({},r,{rawFilename:i,rawComment:o,version:s,versionMadeBy:l,lastModDate:u,lastAccessDate:c,creationDate:d,rawExtraField:R,zip64:E,zip64UncompressedSize:ee,zip64CompressedSize:M,zip64Offset:I,zip64DiskNumberStart:$,password:g,level:S,useWebWorkers:_,encryptionStrength:m,extendedTimestamp:y,zipCrypto:h,bufferedWrite:x,keepOrder:w,dataDescriptor:C,dataDescriptorSignature:k,signal:v,msDosCompatible:f,internalFileAttribute:p,externalFileAttribute:b,useCompressionStream:A});let q=sp(r),G=lp(r);O=Te(q.localHeaderArray,G.dataDescriptorArray)+P,t.pendingEntriesSize+=O;let ce;try{ce=await ap(t,e,n,{headerInfo:q,dataDescriptorInfo:G},r)}finally{t.pendingEntriesSize-=O}return Object.assign(ce,{name:e,comment:a,extraField:L}),new bi(ce)}async function ap(t,e,n,r,i){let{files:a,writer:o}=t,{keepOrder:s,dataDescriptor:l,signal:u}=i,{headerInfo:c}=r,d=Array.from(a.values()).pop(),f={},p,b,g,m,h,y;a.set(e,f);try{let x;s&&(x=d&&d.lock,w()),i.bufferedWrite||t.writerLocked||t.bufferedWrites&&s||!l?(y=new Qa,y.writable.size=0,p=!0,t.bufferedWrites++,await Jt(o)):(y=o,await S()),await Jt(y);let{writable:k}=o,{diskOffset:v}=o;if(t.addSplitZipSignature){delete t.addSplitZipSignature;let C=new Uint8Array(4),E=pt(C);ye(E,0,134695760),await jt(k,C),t.offset+=4}p||(await x,await _(k));let{diskNumber:A}=o;if(h=!0,f.diskNumberStart=A,f=await op(n,y,f,r,t.config,i),h=!1,a.set(e,f),f.filename=e,p){await y.writable.close();let C=await y.getData();await x,await S(),m=!0,l||(C=await up(f,C,k,i)),await _(k),f.diskNumberStart=o.diskNumber,v=o.diskOffset,await C.stream().pipeTo(k,{preventClose:!0,preventAbort:!0,signal:u}),k.size+=C.size,m=!1}if(f.offset=t.offset-v,f.zip64)dp(f,i);else if(f.offset>=4294967295)throw new Error(Ci);return t.offset+=f.length,f}catch(x){if(p&&m||!p&&h){if(t.hasCorruptedEntries=!0,x)try{x.corruptedEntry=!0}catch{}p?t.offset+=y.writable.size:t.offset=y.writable.size}throw a.delete(e),x}finally{p&&t.bufferedWrites--,g&&g(),b&&b()}function w(){f.lock=new Promise(x=>g=x)}async function S(){t.writerLocked=!0;let{lockWriter:x}=t;t.lockWriter=new Promise(k=>b=()=>{t.writerLocked=!1,k()}),await x}async function _(x){c.localHeaderArray.length>o.availableSize&&(o.availableSize=0,await jt(x,new Uint8Array))}}async function op(t,e,{diskNumberStart:n,lock:r},i,a,o){let{headerInfo:s,dataDescriptorInfo:l}=i,{localHeaderArray:u,headerArray:c,lastModDate:d,rawLastModDate:f,encrypted:p,compressed:b,version:g,compressionMethod:m,rawExtraFieldExtendedTimestamp:h,rawExtraFieldNTFS:y,rawExtraFieldAES:w}=s,{dataDescriptorArray:S}=l,{rawFilename:_,lastAccessDate:x,creationDate:k,password:v,level:A,zip64:C,zip64UncompressedSize:E,zip64CompressedSize:R,zip64Offset:L,zip64DiskNumberStart:P,zipCrypto:O,dataDescriptor:N,directory:z,versionMadeBy:Y,rawComment:ne,rawExtraField:K,useWebWorkers:ee,onstart:M,onprogress:I,onend:$,signal:q,encryptionStrength:G,extendedTimestamp:ce,msDosCompatible:pe,internalFileAttribute:me,externalFileAttribute:Z,useCompressionStream:ie}=o,oe={lock:r,versionMadeBy:Y,zip64:C,directory:!!z,filenameUTF8:!0,rawFilename:_,commentUTF8:!0,rawComment:ne,rawExtraFieldExtendedTimestamp:h,rawExtraFieldNTFS:y,rawExtraFieldAES:w,rawExtraField:K,extendedTimestamp:ce,msDosCompatible:pe,internalFileAttribute:me,externalFileAttribute:Z,diskNumberStart:n},le=0,J=0,ae,{writable:de}=e;if(t){t.chunkSize=ec(a),await jt(de,u);let re=t.readable,Le=re.size=t.size,Ie={options:{codecType:wc,level:A,password:v,encryptionStrength:G,zipCrypto:p&&O,passwordVerification:p&&O&&f>>8&255,signed:!0,compressed:b,encrypted:p,useWebWorkers:ee,useCompressionStream:ie,transferStreams:!1},config:a,streamOptions:{signal:q,size:Le,onstart:M,onprogress:I,onend:$}},ve=await xc({readable:re,writable:de},Ie);de.size+=ve.size,ae=ve.signature,J=t.size=re.size,le=ve.size}else await jt(de,u);let be;if(C){let re=4;E&&(re+=8),R&&(re+=8),L&&(re+=8),P&&(re+=4),be=new Uint8Array(re)}else be=new Uint8Array;return t&&cp({signature:ae,rawExtraFieldZip64:be,compressedSize:le,uncompressedSize:J,headerInfo:s,dataDescriptorInfo:l},o),N&&await jt(de,S),Object.assign(oe,{uncompressedSize:J,compressedSize:le,lastModDate:d,rawLastModDate:f,creationDate:k,lastAccessDate:x,encrypted:p,length:Te(u,S)+le,compressionMethod:m,version:g,headerArray:c,signature:ae,rawExtraFieldZip64:be,zip64UncompressedSize:E,zip64CompressedSize:R,zip64Offset:L,zip64DiskNumberStart:P}),oe}function sp(t){let{rawFilename:e,lastModDate:n,lastAccessDate:r,creationDate:i,password:a,level:o,zip64:s,zipCrypto:l,dataDescriptor:u,directory:c,rawExtraField:d,encryptionStrength:f,extendedTimestamp:p}=t,b=o!==0&&!c,g=!!(a&&Te(a)),m=t.version,h;if(g&&!l){h=new Uint8Array(Te(Vl)+2);let O=pt(h);Ce(O,0,39169),qe(h,Vl,2),yi(O,8,f)}else h=new Uint8Array;let y,w;if(p){w=new Uint8Array(9+(r?4:0)+(i?4:0));let O=pt(w);Ce(O,0,21589),Ce(O,2,Te(w)-4);let N=1+(r?2:0)+(i?4:0);yi(O,4,N),ye(O,5,Math.floor(n.getTime()/1e3)),r&&ye(O,9,Math.floor(r.getTime()/1e3)),i&&ye(O,13,Math.floor(i.getTime()/1e3));try{y=new Uint8Array(36);let z=pt(y),Y=Ra(n);Ce(z,0,10),Ce(z,2,32),Ce(z,8,1),Ce(z,10,24),ht(z,12,Y),ht(z,20,Ra(r)||Y),ht(z,28,Ra(i)||Y)}catch{y=new Uint8Array}}else y=w=new Uint8Array;let S=2048;u&&(S=S|8);let _=0;b&&(_=8),s&&(m=m>45?m:45),g&&(S=S|1,l||(m=m>51?m:51,_=99,b&&(h[9]=8)));let x=new Uint8Array(26),k=pt(x);Ce(k,0,m),Ce(k,2,S),Ce(k,4,_);let v=new Uint32Array(1),A=pt(v),C;nEl?C=El:C=n,Ce(A,0,(C.getHours()<<6|C.getMinutes())<<5|C.getSeconds()/2),Ce(A,2,(C.getFullYear()-1980<<4|C.getMonth()+1)<<5|C.getDate());let E=v[0];ye(k,6,E),Ce(k,22,Te(e));let R=Te(h,w,y,d);Ce(k,24,R);let L=new Uint8Array(30+Te(e)+R),P=pt(L);return ye(P,0,67324752),qe(L,x,4),qe(L,e,30),qe(L,h,30+Te(e)),qe(L,w,30+Te(e,h)),qe(L,y,30+Te(e,h,w)),qe(L,d,30+Te(e,h,w,y)),{localHeaderArray:L,headerArray:x,headerView:k,lastModDate:n,rawLastModDate:E,encrypted:g,compressed:b,version:m,compressionMethod:_,rawExtraFieldExtendedTimestamp:w,rawExtraFieldNTFS:y,rawExtraFieldAES:h}}function lp(t){let{zip64:e,dataDescriptor:n,dataDescriptorSignature:r}=t,i=new Uint8Array,a,o=0;return n&&(i=new Uint8Array(e?r?24:20:r?16:12),a=pt(i),r&&(o=4,ye(a,0,134695760))),{dataDescriptorArray:i,dataDescriptorView:a,dataDescriptorOffset:o}}function cp(t,e){let{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:s}=t,{headerView:l,encrypted:u}=o,{dataDescriptorView:c,dataDescriptorOffset:d}=s,{zip64:f,zip64UncompressedSize:p,zip64CompressedSize:b,zipCrypto:g,dataDescriptor:m}=e;if((!u||g)&&n!==Ne&&(ye(l,10,n),m&&ye(c,d,n)),f){let h=pt(r);Ce(h,0,1),Ce(h,2,r.length-4);let y=4;p&&(ye(l,18,4294967295),ht(h,y,BigInt(a)),y+=8),b&&(ye(l,14,4294967295),ht(h,y,BigInt(i))),m&&(ht(c,d+4,BigInt(i)),ht(c,d+12,BigInt(a)))}else ye(l,14,i),ye(l,18,a),m&&(ye(c,d+4,i),ye(c,d+8,a))}async function up(t,e,n,{zipCrypto:r}){let i=await hp(e,0,26),a=new DataView(i);return(!t.encrypted||r)&&ye(a,14,t.signature),t.zip64?(ye(a,18,4294967295),ye(a,22,4294967295)):(ye(a,18,t.compressedSize),ye(a,22,t.uncompressedSize)),await jt(n,new Uint8Array(i)),e.slice(i.byteLength)}function dp(t,e){let{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=t,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:s,zip64DiskNumberStart:l}=e,u=pt(n),c=4;a&&(c+=8),o&&(c+=8),s&&(ht(u,c,BigInt(r)),c+=8),l&&ye(u,c,i)}async function fp(t,e,n){let{files:r,writer:i}=t,{diskOffset:a,writable:o}=i,{diskNumber:s}=i,l=0,u=0,c=t.offset-a,d=r.size;for(let[,{rawFilename:_,rawExtraFieldZip64:x,rawExtraFieldAES:k,rawExtraField:v,rawComment:A,rawExtraFieldExtendedTimestamp:C,rawExtraFieldNTFS:E}]of r)u+=46+Te(_,A,x,k,C,E,v);let f=new Uint8Array(u),p=pt(f);await Jt(i);let b=0;for(let[_,x]of Array.from(r.values()).entries()){let{offset:k,rawFilename:v,rawExtraFieldZip64:A,rawExtraFieldAES:C,rawExtraFieldNTFS:E,rawExtraField:R,rawComment:L,versionMadeBy:P,headerArray:O,directory:N,zip64:z,zip64UncompressedSize:Y,zip64CompressedSize:ne,zip64DiskNumberStart:K,zip64Offset:ee,msDosCompatible:M,internalFileAttribute:I,externalFileAttribute:$,extendedTimestamp:q,lastModDate:G,diskNumberStart:ce,uncompressedSize:pe,compressedSize:me}=x,Z;if(q){Z=new Uint8Array(9);let J=pt(Z);Ce(J,0,21589),Ce(J,2,Te(Z)-4),yi(J,4,1),ye(J,5,Math.floor(G.getTime()/1e3))}else Z=new Uint8Array;let ie=Te(A,C,Z,E,R);ye(p,l,33639248),Ce(p,l+4,P);let oe=pt(O);Y||ye(oe,18,pe),ne||ye(oe,14,me),qe(f,O,l+6),Ce(p,l+30,ie),Ce(p,l+32,Te(L)),Ce(p,l+34,z&&K?65535:ce),Ce(p,l+36,I),$?ye(p,l+38,$):N&&M&&yi(p,l+38,16),ye(p,l+42,z&&ee?4294967295:k),qe(f,v,l+46),qe(f,A,l+46+Te(v)),qe(f,C,l+46+Te(v,A)),qe(f,Z,l+46+Te(v,A,C)),qe(f,E,l+46+Te(v,A,C,Z)),qe(f,R,l+46+Te(v,A,C,Z,E)),qe(f,L,l+46+Te(v)+ie);let le=46+Te(v,L)+ie;if(l-b>i.availableSize&&(i.availableSize=0,await jt(o,f.slice(b,l)),b=l),l+=le,n.onprogress)try{await n.onprogress(_+1,r.size,new bi(x))}catch{}}await jt(o,b?f.slice(b):f);let g=i.diskNumber,{availableSize:m}=i;m<22&&g++;let h=Ee(t,n,"zip64");if(c>=4294967295||u>=4294967295||d>=65535||g>=65535){if(h===!1)throw new Error(Ci);h=!0}let y=new Uint8Array(h?98:22),w=pt(y);l=0,h&&(ye(w,0,101075792),ht(w,4,BigInt(44)),Ce(w,12,45),Ce(w,14,45),ye(w,16,g),ye(w,20,s),ht(w,24,BigInt(d)),ht(w,32,BigInt(d)),ht(w,40,BigInt(u)),ht(w,48,BigInt(c)),ye(w,56,117853008),ht(w,64,BigInt(c)+BigInt(u)),ye(w,72,g+1),Ee(t,n,"supportZip64SplitFile",!0)&&(g=65535,s=65535),d=65535,c=4294967295,u=4294967295,l+=56+20),ye(w,l,101010256),Ce(w,l+4,g),Ce(w,l+6,s),Ce(w,l+8,d),Ce(w,l+10,d),ye(w,l+12,u),ye(w,l+16,c);let S=Te(e);if(S)if(S<=65535)Ce(w,l+20,S);else throw new Error(t0);await jt(o,y),S&&await jt(o,e)}function hp(t,e,n){return e||n?t.slice(e,n).arrayBuffer():t.arrayBuffer()}async function jt(t,e){let n=t.getWriter();await n.ready,t.size+=Te(e),await n.write(e),n.releaseLock()}function Ra(t){if(t)return(BigInt(t.getTime())+BigInt(116444736e5))*BigInt(1e4)}function Ee(t,e,n,r){let i=e[n]===Ne?t.options[n]:e[n];return i===Ne?r:i}function pp(t){return t+5*(Math.floor(t/16383)+1)}function yi(t,e,n){t.setUint8(e,n)}function Ce(t,e,n){t.setUint16(e,n,!0)}function ye(t,e,n){t.setUint32(e,n,!0)}function ht(t,e,n){t.setBigUint64(e,n,!0)}function qe(t,e,n){t.set(e,n)}function pt(t){return new DataView(t.buffer)}function Te(...t){let e=0;return t.forEach(n=>n&&(e+=n.length)),e}xi({Deflate:ph,Inflate:Dh});var s0={},mp=function(t,e,n,r,i){var a=new Worker(s0[e]||(s0[e]=URL.createObjectURL(new Blob([t+';addEventListener("error",function(e){e=e.error;postMessage({$e$:[e.message,e.code,e.stack]})})'],{type:"text/javascript"}))));return a.onmessage=function(o){var s=o.data,l=s.$e$;if(l){var u=new Error(l[0]);u.code=l[1],u.stack=l[2],i(u,null)}else i(null,s)},a.postMessage(n,r),a},ke=Uint8Array,tt=Uint16Array,Un=Uint32Array,$n=new ke([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),jn=new ke([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),gr=new ke([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),h0=function(t,e){for(var n=new tt(31),r=0;r<31;++r)n[r]=e+=1<>>1|(_e&21845)<<1,Qt=(Qt&52428)>>>2|(Qt&13107)<<2,Qt=(Qt&61680)>>>4|(Qt&3855)<<4,br[_e]=((Qt&65280)>>>8|(Qt&255)<<8)>>>1;var Qt,_e,Et=function(t,e,n){for(var r=t.length,i=0,a=new tt(e);i>>l]=u}else for(s=new tt(r),i=0;i>>15-t[i]);return s},tn=new ke(288);for(_e=0;_e<144;++_e)tn[_e]=8;var _e;for(_e=144;_e<256;++_e)tn[_e]=9;var _e;for(_e=256;_e<280;++_e)tn[_e]=7;var _e;for(_e=280;_e<288;++_e)tn[_e]=8;var _e,Bn=new ke(32);for(_e=0;_e<32;++_e)Bn[_e]=5;var _e,b0=Et(tn,9,0),y0=Et(tn,9,1),w0=Et(Bn,5,0),v0=Et(Bn,5,1),Si=function(t){for(var e=t[0],n=1;ne&&(e=t[n]);return e},St=function(t,e,n){var r=e/8|0;return(t[r]|t[r+1]<<8)>>(e&7)&n},Ei=function(t,e){var n=e/8|0;return(t[n]|t[n+1]<<8|t[n+2]<<16)>>(e&7)},yr=function(t){return(t+7)/8|0},Vt=function(t,e,n){(e==null||e<0)&&(e=0),(n==null||n>t.length)&&(n=t.length);var r=new(t.BYTES_PER_ELEMENT==2?tt:t.BYTES_PER_ELEMENT==4?Un:ke)(n-e);return r.set(t.subarray(e,n)),r};var x0=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],fe=function(t,e,n){var r=new Error(e||x0[t]);if(r.code=t,Error.captureStackTrace&&Error.captureStackTrace(r,fe),!n)throw r;return r},Fi=function(t,e,n){var r=t.length;if(!r||n&&n.f&&!n.l)return e||new ke(0);var i=!e||n,a=!n||n.i;n||(n={}),e||(e=new ke(r*3));var o=function(G){var ce=e.length;if(G>ce){var pe=new ke(Math.max(ce*2,G));pe.set(e),e=pe}},s=n.f||0,l=n.p||0,u=n.b||0,c=n.l,d=n.d,f=n.m,p=n.n,b=r*8;do{if(!c){s=St(t,l,1);var g=St(t,l+1,3);if(l+=3,g)if(g==1)c=y0,d=v0,f=9,p=5;else if(g==2){var m=St(t,l,31)+257,h=St(t,l+10,15)+4,y=m+St(t,l+5,31)+1;l+=14;for(var w=new ke(y),S=new ke(19),_=0;_>>4;if(C<16)w[_++]=C;else{var E=0,R=0;for(C==16?(R=3+St(t,l,3),l+=2,E=w[_-1]):C==17?(R=3+St(t,l,7),l+=3):C==18&&(R=11+St(t,l,127),l+=7);R--;)w[_++]=E}}var L=w.subarray(0,m),P=w.subarray(m);f=Si(L),p=Si(P),c=Et(L,f,1),d=Et(P,p,1)}else fe(1);else{var C=yr(l)+4,O=t[C-4]|t[C-3]<<8,N=C+O;if(N>r){a&&fe(0);break}i&&o(u+O),e.set(t.subarray(C,N),u),n.b=u+=O,n.p=l=N*8,n.f=s;continue}if(l>b){a&&fe(0);break}}i&&o(u+131072);for(var z=(1<>>4;if(l+=E&15,l>b){a&&fe(0);break}if(E||fe(2),K<256)e[u++]=K;else if(K==256){ne=l,c=null;break}else{var ee=K-254;if(K>264){var _=K-257,M=$n[_];ee=St(t,l,(1<>>4;I||fe(3),l+=I&15;var P=g0[$];if($>3){var M=jn[$];P+=Ei(t,l)&(1<b){a&&fe(0);break}i&&o(u+131072);for(var q=u+ee;u>>8},In=function(t,e,n){n<<=e&7;var r=e/8|0;t[r]|=n,t[r+1]|=n>>>8,t[r+2]|=n>>>16},Ai=function(t,e){for(var n=[],r=0;rf&&(f=a[r].s);var p=new tt(f+1),b=Ri(n[c-1],p,0);if(b>e){var r=0,g=0,m=b-e,h=1<e)g+=h-(1<>>=m;g>0;){var w=a[r].s;p[w]=0&&g;--r){var S=a[r].s;p[S]==e&&(--p[S],++g)}b=e}return[new ke(p),b]},Ri=function(t,e,n){return t.s==-1?Math.max(Ri(t.l,e,n+1),Ri(t.r,e,n+1)):e[t.s]=n},uo=function(t){for(var e=t.length;e&&!t[--e];);for(var n=new tt(++e),r=0,i=t[0],a=1,o=function(l){n[r++]=l},s=1;s<=e;++s)if(t[s]==i&&s!=e)++a;else{if(!i&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(i),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(i);a=1,i=t[s]}return[n.subarray(0,r),e]},Pn=function(t,e){for(var n=0,r=0;r>>8,t[i+2]=t[i]^255,t[i+3]=t[i+1]^255;for(var a=0;a4&&!C[gr[R-1]];--R);var L=u+5<<3,P=Pn(i,tn)+Pn(a,Bn)+o,O=Pn(i,f)+Pn(a,g)+o+14+3*R+Pn(k,C)+(2*k[16]+3*k[17]+7*k[18]);if(L<=P&&L<=O)return Oi(e,c,t.subarray(l,l+u));var N,z,Y,ne;if(qt(e,c,1+(O15&&(qt(e,c,I[v]>>>5&127),c+=I[v]>>>12)}}else N=b0,z=tn,Y=w0,ne=Bn;for(var v=0;v255){var $=r[v]>>>18&31;In(e,c,N[$+257]),c+=z[$+257],$>7&&(qt(e,c,r[v]>>>23&31),c+=$n[$]);var q=r[v]&31;In(e,c,Y[q]),c+=ne[q],q>3&&(In(e,c,r[v]>>>5&8191),c+=jn[q])}else In(e,c,N[r[v]]),c+=z[r[v]];return In(e,c,N[256]),c+z[256]},T0=new Un([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),en=new ke(0),_0=function(t,e,n,r,i,a){var o=t.length,s=new ke(r+o+5*(1+Math.ceil(o/7e3))+i),l=s.subarray(r,s.length-i),u=0;if(!e||o<8)for(var c=0;c<=o;c+=65535){var d=c+65535;d>=o&&(l[u>>3]=a),u=Oi(l,u+1,t.subarray(c,d))}else{for(var f=T0[e-1],p=f>>>13,b=f&8191,g=(1<7e3||C>24576)&&N>423){u=fo(t,l,0,_,x,k,A,C,R,c-R,u),C=v=A=0,R=c;for(var z=0;z<286;++z)x[z]=0;for(var z=0;z<30;++z)k[z]=0}var Y=2,ne=0,K=b,ee=P-O&32767;if(N>2&&L==S(c-ee))for(var M=Math.min(p,N)-1,I=Math.min(32767,c),$=Math.min(258,N);ee<=I&&--K&&P!=O;){if(t[c+Y]==t[c+Y-ee]){for(var q=0;q<$&&t[c+q]==t[c+q-ee];++q);if(q>Y){if(Y=q,ne=ee,q>M)break;for(var G=Math.min(ee,q-2),ce=0,z=0;zce&&(ce=Z,O=pe)}}}P=O,O=m[P],ee+=P-O+32768&32767}if(ne){_[C++]=268435456|Li[Y]<<18|co[ne];var ie=Li[Y]&31,oe=co[ne]&31;A+=$n[ie]+jn[oe],++x[257+ie],++k[oe],E=c+Y,++v}else _[C++]=t[c],++x[t[c]]}}u=fo(t,l,a,_,x,k,A,C,R,c-R,u),!a&&u&7&&(u=Oi(l,u+1,en))}return Vt(s,0,r+yr(u)+i)},C0=function(){for(var t=new Int32Array(256),e=0;e<256;++e){for(var n=e,r=9;--r;)n=(n&1&&-306674912)^n>>>1;t[e]=n}return t}(),yo=function(){var t=-1;return{p:function(e){for(var n=t,r=0;r>>8;t=n},d:function(){return~t}}},k0=function(){var t=1,e=0;return{p:function(n){for(var r=t,i=e,a=n.length|0,o=0;o!=a;){for(var s=Math.min(o+2655,a);o>16),i=(i&65535)+15*(i>>16)}t=r,e=i},d:function(){return t%=65521,e%=65521,(t&255)<<24|t>>>8<<16|(e&255)<<8|e>>>8}}},wr=function(t,e,n,r,i){return _0(t,e.level==null?6:e.level,e.mem==null?Math.ceil(Math.max(8,Math.min(13,Math.log(t.length)))*1.5):12+e.mem,n,r,!i)},S0=function(t,e){var n={};for(var r in t)n[r]=t[r];for(var r in e)n[r]=e[r];return n},l0=function(t,e,n){for(var r=t(),i=t.toString(),a=i.slice(i.indexOf("[")+1,i.lastIndexOf("]")).replace(/\s+/g,"").split(","),o=0;o>>0},lo=function(t,e){return zn(t,e)+zn(t,e+4)*4294967296},Se=function(t,e,n){for(;n;++e)t[e]=n,n>>>=8},A0=function(t,e){var n=e.filename;if(t[0]=31,t[1]=139,t[2]=8,t[8]=e.level<2?4:e.level==9?2:0,t[9]=3,e.mtime!=0&&Se(t,4,Math.floor(new Date(e.mtime||Date.now())/1e3)),n){t[3]=8;for(var r=0;r<=n.length;++r)t[r+10]=n.charCodeAt(r)}},M0=function(t){(t[0]!=31||t[1]!=139||t[2]!=8)&&fe(6,"invalid gzip data");var e=t[3],n=10;e&4&&(n+=t[10]|(t[11]<<8)+2);for(var r=(e>>3&1)+(e>>4&1);r>0;r-=!t[n++]);return n+(e&2)},_p=function(t){var e=t.length;return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0},L0=function(t){return 10+(t.filename&&t.filename.length+1||0)},R0=function(t,e){var n=e.level,r=n==0?0:n<6?1:n==9?3:2;t[0]=120,t[1]=r<<6|(r?32-2*r:1)},O0=function(t){((t[0]&15)!=8||t[0]>>>4>7||(t[0]<<8|t[1])%31)&&fe(6,"invalid zlib data"),t[1]&32&&fe(6,"invalid zlib data: preset dictionaries not supported")};function xo(t,e){return!e&&typeof t=="function"&&(e=t,t={}),this.ondata=e,t}var nn=function(){function t(e,n){!n&&typeof e=="function"&&(n=e,e={}),this.ondata=n,this.o=e||{}}return t.prototype.p=function(e,n){this.ondata(wr(e,this.o,0,0,!n),n)},t.prototype.push=function(e,n){this.ondata||fe(5),this.d&&fe(4),this.d=n,this.p(e,n||!1)},t}(),Cp=function(){function t(e,n){Hn([vo,function(){return[At,nn]}],this,xo.call(this,e,n),function(r){var i=new nn(r.data);onmessage=At(i)},6)}return t}();function kp(t,e){return wr(t,e||{},0,0)}var bt=function(){function t(e){this.s={},this.p=new ke(0),this.ondata=e}return t.prototype.e=function(e){this.ondata||fe(5),this.d&&fe(4);var n=this.p.length,r=new ke(n+e.length);r.set(this.p),r.set(e,n),this.p=r},t.prototype.c=function(e){this.d=this.s.i=e||!1;var n=this.s.b,r=Fi(this.p,this.o,this.s);this.ondata(Vt(r,n,this.s.b),this.d),this.o=Vt(r,this.s.b-32768),this.s.b=this.o.length,this.p=Vt(this.p,this.s.p/8|0),this.s.p&=7},t.prototype.push=function(e,n){this.e(e),this.c(n)},t}(),D0=function(){function t(e){this.ondata=e,Hn([wo,function(){return[At,bt]}],this,0,function(){var n=new bt;onmessage=At(n)},7)}return t}();function Sp(t,e){return Fi(t,e)}var c0=function(){function t(e,n){this.c=yo(),this.l=0,this.v=1,nn.call(this,e,n)}return t.prototype.push=function(e,n){nn.prototype.push.call(this,e,n)},t.prototype.p=function(e,n){this.c.p(e),this.l+=e.length;var r=wr(e,this.o,this.v&&L0(this.o),n&&8,!n);this.v&&(A0(r,this.o),this.v=0),n&&(Se(r,r.length-8,this.c.d()),Se(r,r.length-4,this.l)),this.ondata(r,n)},t}(),O3=function(){function t(e,n){Hn([vo,yp,function(){return[At,nn,c0]}],this,xo.call(this,e,n),function(r){var i=new c0(r.data);onmessage=At(i)},8)}return t}();var ho=function(){function t(e){this.v=1,bt.call(this,e)}return t.prototype.push=function(e,n){if(bt.prototype.e.call(this,e),this.v){var r=this.p.length>3?M0(this.p):4;if(r>=this.p.length&&!n)return;this.p=this.p.subarray(r),this.v=0}n&&(this.p.length<8&&fe(6,"invalid gzip data"),this.p=this.p.subarray(0,-8)),bt.prototype.c.call(this,n)},t}(),Ep=function(){function t(e){this.ondata=e,Hn([wo,wp,function(){return[At,bt,ho]}],this,0,function(){var n=new ho;onmessage=At(n)},9)}return t}();var u0=function(){function t(e,n){this.c=k0(),this.v=1,nn.call(this,e,n)}return t.prototype.push=function(e,n){nn.prototype.push.call(this,e,n)},t.prototype.p=function(e,n){this.c.p(e);var r=wr(e,this.o,this.v&&2,n&&4,!n);this.v&&(R0(r,this.o),this.v=0),n&&Se(r,r.length-4,this.c.d()),this.ondata(r,n)},t}(),D3=function(){function t(e,n){Hn([vo,vp,function(){return[At,nn,u0]}],this,xo.call(this,e,n),function(r){var i=new u0(r.data);onmessage=At(i)},10)}return t}();var po=function(){function t(e){this.v=1,bt.call(this,e)}return t.prototype.push=function(e,n){if(bt.prototype.e.call(this,e),this.v){if(this.p.length<2&&!n)return;this.p=this.p.subarray(2),this.v=0}n&&(this.p.length<4&&fe(6,"invalid zlib data"),this.p=this.p.subarray(0,-4)),bt.prototype.c.call(this,n)},t}(),Ap=function(){function t(e){this.ondata=e,Hn([wo,xp,function(){return[At,bt,po]}],this,0,function(){var n=new po;onmessage=At(n)},11)}return t}();function F0(t,e){return Fi((O0(t),t.subarray(2,-4)),e)}var Mp=function(){function t(e){this.G=ho,this.I=bt,this.Z=po,this.ondata=e}return t.prototype.push=function(e,n){if(this.ondata||fe(5),this.s)this.s.push(e,n);else{if(this.p&&this.p.length){var r=new ke(this.p.length+e.length);r.set(this.p),r.set(e,this.p.length)}else this.p=e;if(this.p.length>2){var i=this,a=function(){i.ondata.apply(i,arguments)};this.s=this.p[0]==31&&this.p[1]==139&&this.p[2]==8?new this.G(a):(this.p[0]&15)!=8||this.p[0]>>4>7||(this.p[0]<<8|this.p[1])%31?new this.I(a):new this.Z(a),this.s.push(this.p,n),this.p=null}}},t}(),F3=function(){function t(e){this.G=Ep,this.I=D0,this.Z=Ap,this.ondata=e}return t.prototype.push=function(e,n){Mp.prototype.push.call(this,e,n)},t}();var d0=typeof TextEncoder<"u"&&new TextEncoder,mo=typeof TextDecoder<"u"&&new TextDecoder,I0=0;try{mo.decode(en,{stream:!0}),I0=1}catch{}var P0=function(t){for(var e="",n=0;;){var r=t[n++],i=(r>127)+(r>223)+(r>239);if(n+i>t.length)return[e,Vt(t,n-1)];i?i==3?(r=((r&15)<<18|(t[n++]&63)<<12|(t[n++]&63)<<6|t[n++]&63)-65536,e+=String.fromCharCode(55296|r>>10,56320|r&1023)):i&1?e+=String.fromCharCode((r&31)<<6|t[n++]&63):e+=String.fromCharCode((r&15)<<12|(t[n++]&63)<<6|t[n++]&63):e+=String.fromCharCode(r)}},I3=function(){function t(e){this.ondata=e,I0?this.t=new TextDecoder:this.p=en}return t.prototype.push=function(e,n){if(this.ondata||fe(5),n=!!n,this.t){this.ondata(this.t.decode(e,{stream:!0}),n),n&&(this.t.decode().length&&fe(8),this.t=null);return}this.p||fe(4);var r=new ke(this.p.length+e.length);r.set(this.p),r.set(e,this.p.length);var i=P0(r),a=i[0],o=i[1];n?(o.length&&fe(8),this.p=null):this.p=o,this.ondata(a,n)},t}(),P3=function(){function t(e){this.ondata=e}return t.prototype.push=function(e,n){this.ondata||fe(5),this.d&&fe(4),this.ondata(go(e),this.d=n||!1)},t}();function go(t,e){if(e){for(var n=new ke(t.length),r=0;r>1)),o=0,s=function(d){a[o++]=d},r=0;ra.length){var l=new ke(o+8+(i-r<<1));l.set(a),a=l}var u=t.charCodeAt(r);u<128||e?s(u):u<2048?(s(192|u>>6),s(128|u&63)):u>55295&&u<57344?(u=65536+(u&1047552)|t.charCodeAt(++r)&1023,s(240|u>>18),s(128|u>>12&63),s(128|u>>6&63),s(128|u&63)):(s(224|u>>12),s(128|u>>6&63),s(128|u&63))}return Vt(a,0,o)}function Lp(t,e){if(e){for(var n="",r=0;r65535&&fe(9),e+=r+4}return e},f0=function(t,e,n,r,i,a,o,s){var l=r.length,u=n.extra,c=s&&s.length,d=Mi(u);Se(t,e,o!=null?33639248:67324752),e+=4,o!=null&&(t[e++]=20,t[e++]=n.os),t[e]=20,e+=2,t[e++]=n.flag<<1|(a<0&&8),t[e++]=i&&8,t[e++]=n.compression&255,t[e++]=n.compression>>8;var f=new Date(n.mtime==null?Date.now():n.mtime),p=f.getFullYear()-1980;if((p<0||p>119)&&fe(10),Se(t,e,p<<25|f.getMonth()+1<<21|f.getDate()<<16|f.getHours()<<11|f.getMinutes()<<5|f.getSeconds()>>>1),e+=4,a!=-1&&(Se(t,e,n.crc),Se(t,e+4,a<0?-a-2:a),Se(t,e+8,n.size)),Se(t,e+12,l),Se(t,e+14,d),e+=16,o!=null&&(Se(t,e,c),Se(t,e+6,n.attrs),Se(t,e+10,o),e+=14),t.set(r,e),e+=l,d)for(var b in u){var g=u[b],m=g.length;Se(t,e,+b),Se(t,e+2,m),t.set(g,e+4),e+=4+m}return c&&(t.set(s,e),e+=c),e},Op=function(t,e,n,r,i){Se(t,e,101010256),Se(t,e+8,n),Se(t,e+10,n),Se(t,e+12,r),Se(t,e+16,i)},Di=function(){function t(e){this.filename=e,this.c=yo(),this.size=0,this.compression=0}return t.prototype.process=function(e,n){this.ondata(null,e,n)},t.prototype.push=function(e,n){this.ondata||fe(5),this.c.p(e),this.size+=e.length,n&&(this.crc=this.c.d()),this.process(e,n||!1)},t}(),N3=function(){function t(e,n){var r=this;n||(n={}),Di.call(this,e),this.d=new nn(n,function(i,a){r.ondata(null,i,a)}),this.compression=8,this.flag=N0(n.level)}return t.prototype.process=function(e,n){try{this.d.push(e,n)}catch(r){this.ondata(r,null,n)}},t.prototype.push=function(e,n){Di.prototype.push.call(this,e,n)},t}(),z3=function(){function t(e,n){var r=this;n||(n={}),Di.call(this,e),this.d=new Cp(n,function(i,a,o){r.ondata(i,a,o)}),this.compression=8,this.flag=N0(n.level),this.terminate=this.d.terminate}return t.prototype.process=function(e,n){this.d.push(e,n)},t.prototype.push=function(e,n){Di.prototype.push.call(this,e,n)},t}(),B3=function(){function t(e){this.ondata=e,this.u=[],this.d=1}return t.prototype.add=function(e){var n=this;if(this.ondata||fe(5),this.d&2)this.ondata(fe(4+(this.d&1)*8,0,1),null,!1);else{var r=go(e.filename),i=r.length,a=e.comment,o=a&&go(a),s=i!=e.filename.length||o&&a.length!=o.length,l=i+Mi(e.extra)+30;i>65535&&this.ondata(fe(11,0,1),null,!1);var u=new ke(l);f0(u,0,e,r,s,-1);var c=[u],d=function(){for(var m=0,h=c;m0){var i=Math.min(this.c,e.length),a=e.subarray(0,i);if(this.c-=i,this.d?this.d.push(a,!this.c):this.k[0].push(a),e=e.subarray(i),e.length)return this.push(e,n)}else{var o=0,s=0,l=void 0,u=void 0;this.p.length?e.length?(u=new ke(this.p.length+e.length),u.set(this.p),u.set(e,this.p.length)):u=this.p:u=e;for(var c=u.length,d=this.c,f=d&&this.d,p=function(){var h,y=zn(u,s);if(y==67324752){o=1,l=s,b.d=null,b.c=0;var w=Nn(u,s+6),S=Nn(u,s+8),_=w&2048,x=w&8,k=Nn(u,s+26),v=Nn(u,s+28);if(c>s+30+k+v){var A=[];b.k.unshift(A),o=2;var C=zn(u,s+18),E=zn(u,s+22),R=Lp(u.subarray(s+30,s+=30+k),!_);C==4294967295?(h=x?[-2]:Rp(u,s),C=h[0],E=h[1]):x&&(C=-1),s+=v,b.c=C;var L,P={name:R,compression:S,start:function(){if(P.ondata||fe(5),!C)P.ondata(null,en,!0);else{var O=r.o[S];O||P.ondata(fe(14,"unknown compression type "+S,1),null,!1),L=C<0?new O(R):new O(R,C,E),L.ondata=function(ne,K,ee){P.ondata(ne,K,ee)};for(var N=0,z=A;N=0&&(P.size=C,P.originalSize=E),b.onfile(P)}return"break"}else if(d){if(y==134695760)return l=s+=12+(d==-2&&8),o=3,b.c=0,"break";if(y==33639248)return l=s-=4,o=3,b.c=0,"break"}},b=this;st.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function Pi(t){for(var e=9,n=t.length;n--;)e=Math.imul(e^t.charCodeAt(n),1597334677);return"#"+((e^e>>>9)>>>0).toString(36)}function Ni(t,e="@media "){return e+yt(t).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(r=>`(${r}-width:${n[r]})`).join(" and "))).join(",")}function yt(t=[]){return Array.isArray(t)?t:t==null?[]:[t]}function Ip(){}var Ze={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function G0(t){return t.match(/[-=:;]/g)?.length||0}function Ao(t){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(t)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(G0(t),15)<<18}var Pp=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function Do({n:t,i:e,v:n=[]},r,i,a){t&&(t=Oo({n:t,i:e,v:n})),a=[...yt(a)];for(let s of n){let l=r.theme("screens",s);for(let u of yt(l&&Ni(l)||r.v(s))){var o;a.push(u),i|=l?67108864|Ao(u):s=="dark"?1073741824:u[0]=="@"?Ao(u):(o=u,1<<~(/:([a-z-]+)/.test(o)&&~Pp.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:t,p:i,r:a,i:e}}var Fo=new Map;function z0(t){if(t.d){let e=[],n=_o(t.r.reduce((r,i)=>i[0]=="@"?(e.push(i),r):i?_o(r,a=>_o(i,o=>{let s=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(s){let l=a.indexOf(s[1]);return~l?a.slice(0,l)+s[0]+a.slice(l+s[1].length):Co(a,o)}return Co(o,a)})):r,"&"),r=>Co(r,t.n?"."+K0(t.n):""));return n&&e.push(n.replace(/:merge\((.+?)\)/g,"$1")),e.reduceRight((r,i)=>i+"{"+r+"}",t.d)}}function _o(t,e){return t.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,r,i)=>e(r)+i)}function Co(t,e){return t.replace(/&/g,e)}var B0=new Intl.Collator("en",{numeric:!0});function Np(t,e){for(var n=0,r=t.length;n>1;0>=X0(t[i],e)?n=i+1:r=i}return r}function X0(t,e){let n=t.p&Ze.o;return n==(e.p&Ze.o)&&(n==Ze.b||n==Ze.o)?0:t.p-e.p||t.o-e.o||B0.compare(U0(t.n),U0(e.n))||B0.compare($0(t.n),$0(e.n))}function U0(t){return(t||"").split(/:/).pop().split("/").pop()||"\0"}function $0(t){return(t||"").replace(/\W/g,e=>String.fromCharCode(127+e.charCodeAt(0)))+"\0"}function ko(t,e){return Math.round(parseInt(t,16)*e)}function mn(t,e={}){if(typeof t=="function")return t(e);let{opacityValue:n="1",opacityVariable:r}=e,i=r?`var(${r})`:n;if(t.includes(""))return t.replace("",i);if(t[0]=="#"&&(t.length==4||t.length==7)){let a=(t.length-1)/3,o=[17,1,.062272][a-1];return`rgba(${[ko(t.substr(1,a),o),ko(t.substr(1+a,a),o),ko(t.substr(1+2*a,a),o),i]})`}return i=="1"?t:i=="0"?"#0000":t.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${i})`)}function Y0(t,e,n,r,i=[]){return function a(o,{n:s,p:l,r:u=[],i:c},d){let f=[],p="",b=0,g=0;for(let y in o||{}){var m,h;let w=o[y];if(y[0]=="@"){if(!w)continue;if(y[1]=="a"){f.push(...J0(s,l,Po(""+w),d,l,u,c,!0));continue}if(y[1]=="l"){for(let S of yt(w))f.push(...a(S,{n:s,p:(m=Ze[y[7]],l&~Ze.o|m),r:y[7]=="d"?[]:u,i:c},d));continue}if(y[1]=="i"){f.push(...yt(w).map(S=>({p:-1,o:0,r:[],d:y+" "+S})));continue}if(y[1]=="k"){f.push({p:Ze.d,o:0,r:[y],d:a(w,{p:Ze.d},d).map(z0).join("")});continue}if(y[1]=="f"){f.push(...yt(w).map(S=>({p:Ze.d,o:0,r:[y],d:a(S,{p:Ze.d},d).map(z0).join("")})));continue}}if(typeof w!="object"||Array.isArray(w))y=="label"&&w?s=w+Pi(JSON.stringify([l,c,o])):(w||w===0)&&(y=y.replace(/[A-Z]/g,S=>"-"+S.toLowerCase()),g+=1,b=Math.max(b,(h=y)[0]=="-"?0:G0(h)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(h)?+!!RegExp.$1||-!!RegExp.$2:0)+1),p+=(p?";":"")+yt(w).map(S=>d.s(y,Z0(""+S,d.theme)+(c?" !important":""))).join(";"));else if(y[0]=="@"||y.includes("&")){let S=l;y[0]=="@"&&(y=y.replace(/\bscreen\(([^)]+)\)/g,(_,x)=>{let k=d.theme("screens",x);return k?(S|=67108864,Ni(k,"")):_}),S|=Ao(y)),f.push(...a(w,{n:s,p:S,r:[...u,y],i:c},d))}else f.push(...a(w,{p:l,r:[...u,y]},d))}return f.unshift({n:s,p:l,o:Math.max(0,15-g)+1.5*Math.min(b||15,15),r:u,d:p}),f.sort(X0)}(t,Do(e,n,r,i),n)}function Z0(t,e){return t.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,r,i,a,o="")=>{let s=e(i,o);return typeof s=="function"&&/color|fill|stroke/i.test(i)?mn(s):""+yt(s).filter(l=>Object(l)!==l)})}function Io(t,e){let n,r=[];for(let i of t)i.d&&i.n?n?.p==i.p&&""+n.r==""+i.r?(n.c=[n.c,i.c].filter(Boolean).join(" "),n.d=n.d+";"+i.d):r.push(n={...i,n:i.n&&e}):r.push({...i,n:i.n&&e});return r}function Mo(t,e,n=Ze.u,r,i){let a=[];for(let o of t)for(let s of function(l,u,c,d,f){l={...l,i:l.i||f};let p=function(b,g){let m=Fo.get(b.n);return m?m(b,g):g.r(b.n,b.v[0]=="dark")}(l,u);return p?typeof p=="string"?({r:d,p:c}=Do(l,u,c,d),Io(Mo(Po(p),u,c,d,l.i),l.n)):Array.isArray(p)?p.map(b=>{var g,m;return{o:0,...b,r:[...yt(d),...yt(b.r)],p:(g=c,m=b.p??c,g&~Ze.o|m)}}):Y0(p,l,u,c,d):[{c:Oo(l),p:0,o:0,r:[]}]}(o,e,n,r,i))a.splice(Np(a,s),0,s);return a}function J0(t,e,n,r,i,a,o,s){return Io((s?n.flatMap(l=>Mo([l],r,i,a,o)):Mo(n,r,i,a,o)).map(l=>l.p&Ze.o&&(l.n||e==Ze.b)?{...l,p:l.p&~Ze.o|e,o:0}:l),t)}function zp(t,e,n,r){var i;return i=(a,o)=>{let{n:s,p:l,r:u,i:c}=Do(a,o,e);return n&&J0(s,e,n,o,l,u,c,r)},Fo.set(t,i),t}function So(t,e,n){if(t[t.length-1]!="("){let r=[],i=!1,a=!1,o="";for(let s of t)if(!(s=="("||/[~@]$/.test(s))){if(s[0]=="!"&&(s=s.slice(1),i=!i),s.endsWith(":")){r[s=="dark:"?"unshift":"push"](s.slice(0,-1));continue}s[0]=="-"&&(s=s.slice(1),a=!a),s.endsWith("-")&&(s=s.slice(0,-1)),s&&s!="&"&&(o+=(o&&"-")+s)}o&&(a&&(o="-"+o),e[0].push({n:o,v:r.filter(Bp),i}))}}function Bp(t,e,n){return n.indexOf(t)==e}var j0=new Map;function Po(t){let e=j0.get(t);if(!e){let n=[],r=[[]],i=0,a=0,o=null,s=0,l=(u,c=0)=>{i!=s&&(n.push(t.slice(i,s+c)),u&&So(n,r)),i=s+1};for(;s1?d.slice(0,-1)+Pi(JSON.stringify([d,f])):d+"("+V0(f)+")",Ze.a,f,/@$/.test(d))],r)}c=n.lastIndexOf("(",c-1)}n.length=c+1}else/[~@]/.test(u)&&t[s+1]=="("&&r.unshift([])}l(!0),j0.set(t,e=r[0])}return e}function Q0(t,e,n){return e.reduce((r,i,a)=>r+n(i)+t[a+1],t[0])}function eu(t,e){return Array.isArray(t)&&Array.isArray(t.raw)?Q0(t,e,n=>Eo(n).trim()):e.filter(Boolean).reduce((n,r)=>n+Eo(r),t?Eo(t):"")}function Eo(t){let e,n="";if(t&&typeof t=="object")if(Array.isArray(t))(e=eu(t[0],t.slice(1)))&&(n+=" "+e);else for(let r in t)t[r]&&(n+=" "+r);else t!=null&&typeof t!="boolean"&&(n+=" "+t);return n}var K3=tu("@"),G3=tu("~");function tu(t){return new Proxy(function(n,...r){return e("",n,r)},{get(n,r){return r in n?n[r]:function(i,...a){return e(r,i,a)}}});function e(n,r,i){return V0(Po(n+t+"("+eu(r,i)+")"))}}function Lo(t,e){return Array.isArray(t)?H0(Q0(t,e,n=>n!=null&&typeof n!="boolean"?n:"")):typeof t=="string"?H0(t):[t]}var Up=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function H0(t){let e;t=t.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],r=[n[0]],i=[];for(;e=Up.exec(t);)e[4]&&(n.shift(),i.shift()),e[3]?(i.unshift(e[3]),n.unshift({}),r.push(i.reduce((a,o)=>({[o]:a}),n[0]))):e[4]||(n[0][e[1]]&&(n.unshift({}),r.push(i.reduce((a,o)=>({[o]:a}),n[0]))),n[0][e[1]]=e[2]);return r}function nu(t,...e){var n;let r=Lo(t,e),i=(r.find(a=>a.label)?.label||"css")+Pi(JSON.stringify(r));return n=(a,o)=>Io(r.flatMap(s=>Y0(s,a,o,Ze.o)),i),Fo.set(i,n),i}var X3=new Proxy(function(t,e){return W0("animation",t,e)},{get(t,e){return e in t?t[e]:function(n,r){return W0(e,n,r)}}});function W0(t,e,n){return{toString(){return nu({label:t,"@layer components":{...typeof e=="object"?e:{animation:e},animationName:""+n}})}}}function W(t,e,n){return[t,$p(e,n)]}function $p(t,e){return typeof t=="function"?t:typeof t=="string"&&/^[\w-]+$/.test(t)?(n,r)=>({[t]:e?e(n,r):Ro(n,1)}):n=>t||{[n[1]]:Ro(n,2)}}function Ro(t,e,n=t.slice(e).find(Boolean)||t.$$||t.input){return t.input[0]=="-"?`calc(${n} * -1)`:n}function V(t,e,n,r){return[t,jp(e,n,r)]}function jp(t,e,n){let r=typeof e=="string"?(i,a)=>({[e]:n?n(i,a):i._}):e||(({1:i,_:a},o,s)=>({[i||s]:a}));return(i,a)=>{let o=ru(t||i[1]),s=a.theme(o,i.$$)??Wn(i.$$,o,a);if(s!=null)return i._=Ro(i,0,s),r(i,a,o)}}function ze(t,e={},n){return[t,Hp(e,n)]}function Hp(t={},e){return(n,r)=>{let{section:i=ru(n[0]).replace("-","")+"Color"}=t,[a,o]=Wp(n.$$);if(!a)return;let s=r.theme(i,a)||Wn(a,i,r);if(!s||typeof s=="object")return;let{opacityVariable:l=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:u=i.replace("Color","Opacity"),property:c=i,selector:d}=t,f=r.theme(u,o||"DEFAULT")||o&&Wn(o,u,r),p=e||(({_:g})=>{let m=vr(c,g);return d?{[d]:m}:m});n._={value:mn(s,{opacityVariable:l||void 0,opacityValue:f||void 0}),color:g=>mn(s,g),opacityVariable:l||void 0,opacityValue:f||void 0};let b=p(n,r);if(!n.dark){let g=r.d(i,a,s);g&&g!==s&&(n._={value:mn(g,{opacityVariable:l||void 0,opacityValue:f||"1"}),color:m=>mn(g,m),opacityVariable:l||void 0,opacityValue:f||void 0},b={"&":b,[r.v("dark")]:p(n,r)})}return b}}function Wp(t){return(t.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function vr(t,e){let n={};return typeof e=="string"?n[t]=e:(e.opacityVariable&&e.value.includes(e.opacityVariable)&&(n[e.opacityVariable]=e.opacityValue||"1"),n[t]=e.value),n}function Wn(t,e,n){if(t[0]=="["&&t.slice(-1)=="]"){if(t=Ii(Z0(t.slice(1,-1),n.theme)),!e)return t;if(!(/color|fill|stroke/i.test(e)&&!(/^color:/.test(t)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(t))||/image/i.test(e)&&!(/^image:/.test(t)||/^[a-z-]+\(/.test(t))||/weight/i.test(e)&&!(/^(number|any):/.test(t)||/^\d+$/.test(t))||/position/i.test(e)&&/^(length|size):/.test(t)))return t.replace(/^[a-z-]+:/,"")}}function ru(t){return t.replace(/-./g,e=>e[1].toUpperCase())}function Ii(t){return t.includes("url(")?t.replace(/(.*?)(url\(.*?\))(.*?)/g,(e,n="",r,i="")=>Ii(n)+r+Ii(i)):t.replace(/(^|[^\\])_+/g,(e,n)=>n+" ".repeat(e.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,e=>e.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var Y3=Symbol();var iu=new Proxy(Ip,{apply(t,e,n){return To(n[0])},get(t,e){let n=To[e];return typeof n=="function"?function(){return n.apply(To,arguments)}:n}});var Z3=function t(e){return new Proxy(function(n,...r){return q0(e,"",n,r)},{get(n,r){return r==="bind"?t:r in n?n[r]:function(i,...a){return q0(e,r,i,a)}}})}();function q0(t,e,n,r){return{toString(){let i=Lo(n,r),a=K0(e+Pi(JSON.stringify([e,i])));return(typeof t=="function"?t:iu)(nu({[`@keyframes ${a}`]:Lo(n,r)})),a}}}var au={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...wt(4,"rem",4,.5,.5),...wt(12,"rem",4,5),14:"3.5rem",...wt(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:we("blur"),backdropBrightness:we("brightness"),backdropContrast:we("contrast"),backdropGrayscale:we("grayscale"),backdropHueRotate:we("hueRotate"),backdropInvert:we("invert"),backdropOpacity:we("opacity"),backdropSaturate:we("saturate"),backdropSepia:we("sepia"),backgroundColor:we("colors"),backgroundImage:{none:"none"},backgroundOpacity:we("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...wt(200,"",100,0,50),...wt(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:t})=>({DEFAULT:t("colors.gray.200","currentColor"),...t("colors")}),borderOpacity:we("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:we("spacing"),borderWidth:{DEFAULT:"1px",...Mt(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:we("colors"),caretColor:we("colors"),accentColor:({theme:t})=>({auto:"auto",...t("colors")}),contrast:{...wt(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:we("borderColor"),divideOpacity:we("borderOpacity"),divideWidth:we("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:t})=>({...t("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:t})=>({...t("spacing"),...xr(2,6),...xr(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:we("spacing"),gradientColorStops:we("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:t})=>({...t("spacing"),...xr(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:t})=>({...t("spacing"),...xr(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...wt(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:t})=>({auto:"auto",...t("spacing")}),maxHeight:({theme:t})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...t("spacing")}),maxWidth:({theme:t,breakpoints:e})=>({...e(t("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...wt(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:we("spacing"),placeholderColor:we("colors"),placeholderOpacity:we("opacity"),outlineColor:we("colors"),outlineOffset:Mt(8,"px"),outlineWidth:Mt(8,"px"),ringColor:({theme:t})=>({...t("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:we("colors"),ringOffsetWidth:Mt(8,"px"),ringOpacity:({theme:t})=>({...t("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...Mt(8,"px")},rotate:{...Mt(2,"deg"),...Mt(12,"deg",3),...Mt(180,"deg",45)},saturate:wt(200,"",100,0,50),scale:{...wt(150,"",100,0,50),...wt(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:we("spacing"),scrollPadding:we("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...Mt(2,"deg"),...Mt(12,"deg",3)},space:we("spacing"),stroke:({theme:t})=>({...t("colors"),none:"none"}),strokeWidth:wt(2),textColor:we("colors"),textDecorationColor:we("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...Mt(8,"px")},textUnderlineOffset:{auto:"auto",...Mt(8,"px")},textIndent:we("spacing"),textOpacity:we("opacity"),transitionDuration:({theme:t})=>({...t("durations"),DEFAULT:"150ms"}),transitionDelay:we("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:t})=>({...t("spacing"),...xr(2,4),full:"100%"}),width:({theme:t})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...t("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...wt(50,"",1,0,10),auto:"auto"}};function xr(t,e){let n={};do for(var r=1;re(t)}var mb={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${au.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${au.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},bb=[W("\\[([-\\w]+):(.+)]",({1:t,2:e},n)=>({"@layer overrides":{"&":{[t]:Wn(`[${e}]`,"",n)}}})),W("(group|peer)([~/][^-[]+)?",({input:t},{h:e})=>[{c:e(t)}]),V("aspect-","aspectRatio"),W("container",(t,{theme:e})=>{let{screens:n=e("screens"),center:r,padding:i}=e("container"),a={width:"100%",marginRight:r&&"auto",marginLeft:r&&"auto",...o("xs")};for(let s in n){let l=n[s];typeof l=="string"&&(a[Ni(l)]={"&":{maxWidth:l,...o(s)}})}return a;function o(s){let l=i&&(typeof i=="string"?i:i[s]||i.DEFAULT);if(l)return{paddingRight:l,paddingLeft:l}}}),V("content-","content",({_:t})=>({"--tw-content":t,content:"var(--tw-content)"})),W("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),W("box-(border|content)","boxSizing",({1:t})=>t+"-box"),W("hidden",{display:"none"}),W("table-(auto|fixed)","tableLayout"),W(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",W("isolate","isolation"),W("object-(contain|cover|fill|none|scale-down)","objectFit"),V("object-","objectPosition"),W("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",zi),W("overscroll(-[xy])?-(auto|contain|none)",({1:t="",2:e})=>({["overscroll-behavior"+t]:e})),W("(static|fixed|absolute|relative|sticky)","position"),V("-?inset(-[xy])?(?:$|-)","inset",({1:t,_:e})=>({top:t!="-x"&&e,right:t!="-y"&&e,bottom:t!="-x"&&e,left:t!="-y"&&e})),V("-?(top|bottom|left|right)(?:$|-)","inset"),W("(visible|collapse)","visibility"),W("invisible",{visibility:"hidden"}),V("-?z-","zIndex"),W("flex-((row|col)(-reverse)?)","flexDirection",ou),W("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),V("(flex-(?:grow|shrink))(?:$|-)"),V("(flex)-"),V("grow(?:$|-)","flexGrow"),V("shrink(?:$|-)","flexShrink"),V("basis-","flexBasis"),V("-?(order)-"),"-?(order)-(\\d+)",V("grid-cols-","gridTemplateColumns"),W("grid-cols-(\\d+)","gridTemplateColumns",uu),V("col-","gridColumn"),W("col-(span)-(\\d+)","gridColumn",cu),V("col-start-","gridColumnStart"),W("col-start-(auto|\\d+)","gridColumnStart"),V("col-end-","gridColumnEnd"),W("col-end-(auto|\\d+)","gridColumnEnd"),V("grid-rows-","gridTemplateRows"),W("grid-rows-(\\d+)","gridTemplateRows",uu),V("row-","gridRow"),W("row-(span)-(\\d+)","gridRow",cu),V("row-start-","gridRowStart"),W("row-start-(auto|\\d+)","gridRowStart"),V("row-end-","gridRowEnd"),W("row-end-(auto|\\d+)","gridRowEnd"),W("grid-flow-((row|col)(-dense)?)","gridAutoFlow",t=>zi(ou(t))),W("grid-flow-(dense)","gridAutoFlow"),V("auto-cols-","gridAutoColumns"),V("auto-rows-","gridAutoRows"),V("gap-x(?:$|-)","gap","columnGap"),V("gap-y(?:$|-)","gap","rowGap"),V("gap(?:$|-)","gap"),"(justify-(?:items|self))-",W("justify-","justifyContent",su),W("(content|items|self)-",t=>({["align-"+t[1]]:su(t)})),W("(place-(content|items|self))-",({1:t,$$:e})=>({[t]:("wun".includes(e[3])?"space-":"")+e})),V("p([xytrbl])?(?:$|-)","padding",qn("padding")),V("-?m([xytrbl])?(?:$|-)","margin",qn("margin")),V("-?space-(x|y)(?:$|-)","space",({1:t,_:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${t}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[t]]:`calc(${e} * calc(1 - var(--tw-space-${t}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[t]]:`calc(${e} * var(--tw-space-${t}-reverse))`}})),W("space-(x|y)-reverse",({1:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${t}-reverse`]:"1"}})),V("w-","width"),V("min-w-","minWidth"),V("max-w-","maxWidth"),V("h-","height"),V("min-h-","minHeight"),V("max-h-","maxHeight"),V("font-","fontWeight"),V("font-","fontFamily",({_:t})=>typeof(t=yt(t))[1]=="string"?{fontFamily:Pt(t)}:{fontFamily:Pt(t[0]),...t[1]}),W("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),W("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),W("italic","fontStyle"),W("not-italic",{fontStyle:"normal"}),W("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:t,2:e="",3:n})=>e=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(e[0])?"numeric-spacing":e?"numeric-figure":t)]:t,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...gn({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),V("tracking-","letterSpacing"),V("leading-","lineHeight"),W("list-(inside|outside)","listStylePosition"),V("list-","listStyleType"),W("list-","listStyleType"),V("placeholder-opacity-","placeholderOpacity",({_:t})=>({"&::placeholder":{"--tw-placeholder-opacity":t}})),ze("placeholder-",{property:"color",selector:"&::placeholder"}),W("text-(left|center|right|justify|start|end)","textAlign"),W("text-(ellipsis|clip)","textOverflow"),V("text-opacity-","textOpacity","--tw-text-opacity"),ze("text-",{property:"color"}),V("text-","fontSize",({_:t})=>typeof t=="string"?{fontSize:t}:{fontSize:t[0],...typeof t[1]=="string"?{lineHeight:t[1]}:t[1]}),V("indent-","textIndent"),W("(overline|underline|line-through)","textDecorationLine"),W("no-underline",{textDecorationLine:"none"}),V("underline-offset-","textUnderlineOffset"),ze("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),V("decoration-","textDecorationThickness"),W("decoration-","textDecorationStyle"),W("(uppercase|lowercase|capitalize)","textTransform"),W("normal-case",{textTransform:"none"}),W("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),W("align-","verticalAlign"),W("whitespace-","whiteSpace"),W("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),W("break-words",{overflowWrap:"break-word"}),W("break-all",{wordBreak:"break-all"}),W("break-keep",{wordBreak:"keep-all"}),ze("caret-",{opacityVariable:!1,opacitySection:"opacity"}),ze("accent-",{opacityVariable:!1,opacitySection:"opacity"}),W("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:t})=>`linear-gradient(to ${kn(t," ")},var(--tw-gradient-stops))`),ze("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-gradient-from":t.value,"--tw-gradient-to":t.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),ze("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-gradient-to":t.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${t.value},var(--tw-gradient-to)`})),ze("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),W("bg-(fixed|local|scroll)","backgroundAttachment"),W("bg-origin-(border|padding|content)","backgroundOrigin",({1:t})=>t+"-box"),W(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),W("bg-blend-","backgroundBlendMode"),W("bg-clip-(border|padding|content|text)","backgroundClip",({1:t})=>t+(t=="text"?"":"-box")),V("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),ze("bg-",{section:"backgroundColor"}),V("bg-","backgroundImage"),V("bg-","backgroundPosition"),W("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",zi),V("bg-","backgroundSize"),V("rounded(?:$|-)","borderRadius"),V("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:t,_:e})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[t]||[t,t];return{[`border-${kn(n[0])}-radius`]:e,[`border-${kn(n[1])}-radius`]:e}}),W("border-(collapse|separate)","borderCollapse"),V("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),W("border-(solid|dashed|dotted|double|none)","borderStyle"),V("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:t,_:e})=>({...gn({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(t||"-x")]:e,["--tw-border-spacing"+(t||"-y")]:e,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),ze("border-([xytrbl])-",{section:"borderColor"},qn("border","Color")),ze("border-"),V("border-([xytrbl])(?:$|-)","borderWidth",qn("border","Width")),V("border(?:$|-)","borderWidth"),V("divide-opacity(?:$|-)","divideOpacity",({_:t})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":t}})),W("divide-(solid|dashed|dotted|double|none)",({1:t})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:t}})),W("divide-([xy]-reverse)",({1:t})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+t]:"1"}})),V("divide-([xy])(?:$|-)","divideWidth",({1:t,_:e})=>{let n={x:"lr",y:"tb"}[t];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${t}-reverse`]:"0",[`border-${kn(n[0])}Width`]:`calc(${e} * calc(1 - var(--tw-divide-${t}-reverse)))`,[`border-${kn(n[1])}Width`]:`calc(${e} * var(--tw-divide-${t}-reverse))`}}}),ze("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),V("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),ze("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),V("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),W("ring-inset",{"--tw-ring-inset":"inset"}),ze("ring-",{property:"--tw-ring-color"}),V("ring(?:$|-)","ringWidth",({_:t},{theme:e})=>({...gn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":e("ringOffsetWidth","","0px"),"--tw-ring-offset-color":mn(e("ringOffsetColor","","#fff")),"--tw-ring-color":mn(e("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":e("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${t} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),ze("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-shadow-color":t.value,"--tw-shadow":"var(--tw-shadow-colored)"})),V("shadow(?:$|-)","boxShadow",({_:t})=>({...gn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":Pt(t),"--tw-shadow-colored":Pt(t).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),V("(opacity)-"),W("mix-blend-","mixBlendMode"),...lu(),...lu("backdrop-"),V("transition(?:$|-)","transitionProperty",(t,{theme:e})=>({transitionProperty:Pt(t),transitionTimingFunction:t._=="none"?void 0:Pt(e("transitionTimingFunction","")),transitionDuration:t._=="none"?void 0:Pt(e("transitionDuration",""))})),V("duration(?:$|-)","transitionDuration","transitionDuration",Pt),V("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",Pt),V("delay(?:$|-)","transitionDelay","transitionDelay",Pt),V("animate(?:$|-)","animation",(t,{theme:e,h:n,e:r})=>{let i=Pt(t),a=i.split(" "),o=e("keyframes",a[0]);return o?{["@keyframes "+(a[0]=r(n(a[0])))]:o,animation:a.join(" ")}:{animation:i}}),"(transform)-(none)",W("transform",zo),W("transform-(cpu|gpu)",({1:t})=>({"--tw-transform":du(t=="gpu")})),V("scale(-[xy])?-","scale",({1:t,_:e})=>({["--tw-scale"+(t||"-x")]:e,["--tw-scale"+(t||"-y")]:e,...zo()})),V("-?(rotate)-","rotate",No),V("-?(translate-[xy])-","translate",No),V("-?(skew-[xy])-","skew",No),W("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",zi),"(appearance)-",V("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",V("(cursor)-"),"(cursor)-",W("snap-(none)","scroll-snap-type"),W("snap-(x|y|both)",({1:t})=>({...gn({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":t+" var(--tw-scroll-snap-strictness)"})),W("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),W("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),W("snap-(normal|always)","scroll-snap-stop"),W("scroll-(auto|smooth)","scroll-behavior"),V("scroll-p([xytrbl])?(?:$|-)","padding",qn("scroll-padding")),V("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",qn("scroll-margin")),W("touch-(auto|none|manipulation)","touch-action"),W("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:t,2:e,3:n})=>({...gn({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${e?"pan-x":n?"pan-y":t}`]:t,"touch-action":"var(--tw-touch-action)"})),W("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),W("outline",{outlineStyle:"solid"}),W("outline-(dashed|dotted|double)","outlineStyle"),V("-?(outline-offset)-"),ze("outline-",{opacityVariable:!1,opacitySection:"opacity"}),V("outline-","outlineWidth"),"(pointer-events)-",V("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:t})=>({x:"horizontal",y:"vertical"})[t]||t||"both"],W("select-(none|text|all|auto)","userSelect"),ze("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),ze("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),V("stroke-","strokeWidth"),W("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),W("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function zi(t){return(typeof t=="string"?t:t[1]).replace(/-/g," ").trim()}function ou(t){return(typeof t=="string"?t:t[1]).replace("col","column")}function kn(t,e="-"){let n=[];for(let r of t)n.push({t:"top",r:"right",b:"bottom",l:"left"}[r]);return n.join(e)}function Pt(t){return t&&""+(t._||t)}function su({$$:t}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[t[3]||""]||"")+t}function qn(t,e=""){return({1:n,_:r})=>{let i={x:"lr",y:"tb"}[n]||n+n;return i?{...vr(t+"-"+kn(i[0])+e,r),...vr(t+"-"+kn(i[1])+e,r)}:vr(t+e,r)}}function lu(t=""){let e=["blur","brightness","contrast","grayscale","hue-rotate","invert",t&&"opacity","saturate","sepia",!t&&"drop-shadow"].filter(Boolean),n={};for(let r of e)n[`--tw-${t}${r}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...gn(n),[`${t}filter`]:e.map(r=>`var(--tw-${t}${r})`).join(" ")},[`(${t}filter)-(none)`,W(`${t}filter`,n),...e.map(r=>V(`${r[0]=="h"?"-?":""}(${t}${r})(?:$|-)`,r,({1:i,_:a})=>({[`--tw-${i}`]:yt(a).map(o=>`${r}(${o})`).join(" "),...n})))]}function No({1:t,_:e}){return{["--tw-"+t]:e,...zo()}}function zo(){return{...gn({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":du()}),transform:"var(--tw-transform)"}}function du(t){return[t?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function cu({1:t,2:e}){return`${t} ${e} / ${t} ${e}`}function uu({1:t}){return`repeat(${t},minmax(0,1fr))`}function gn(t){return{"@layer defaults":{"*,::before,::after":t,"::backdrop":t}}}var bu,ge,yu,Kp,Tr,fu,Gp,wu={},vu=[],Xp=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function bn(t,e){for(var n in e)t[n]=e[n];return t}function xu(t){var e=t.parentNode;e&&e.removeChild(t)}function Bo(t,e,n,r,i){var a={type:t,props:e,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:i??++yu};return i==null&&ge.vnode!=null&&ge.vnode(a),a}function Kn(t){return t.children}function Bi(t,e){this.props=t,this.context=e}function Vn(t,e){if(e==null)return t.__?Vn(t.__,t.__.__k.indexOf(t)+1):null;for(var n;e0?Bo(p.type,p.props,p.key,p.ref?p.ref:null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(f=h[c])===null||f&&p.key==f.key&&p.type===f.type)h[c]=void 0;else for(d=0;d()=>(e||t((e={exports:{}}).exports,e),e.exports),c1=(t,e)=>{for(var n in e)Wo(t,n,{get:e[n],enumerable:!0})},Ho=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of a1(e))!s1.call(t,i)&&i!==n&&Wo(t,i,{get:()=>e[i],enumerable:!(r=i1(e,i))||r.enumerable});return t},u1=(t,e,n)=>(Ho(t,e,"default"),n&&Ho(n,e,"default")),zu=(t,e,n)=>(n=t!=null?r1(o1(t)):{},Ho(e||!t||!t.__esModule?Wo(n,"default",{value:t,enumerable:!0}):n,t)),Bu=l1((t,e)=>{(function(n,r){typeof define=="function"&&define.amd?define([],r):typeof t<"u"?r():(r(),n.FileSaver={})})(t,function(){"use strict";function n(u,c){return typeof c>"u"?c={autoBom:!1}:typeof c!="object"&&(c={autoBom:!c}),c.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(u.type)?new Blob(["\uFEFF",u],{type:u.type}):u}function r(u,c,d){var f=new XMLHttpRequest;f.open("GET",u),f.responseType="blob",f.onload=function(){l(f.response,c,d)},f.onerror=function(){},f.send()}function i(u){var c=new XMLHttpRequest;c.open("HEAD",u,!1);try{c.send()}catch{}return 200<=c.status&&299>=c.status}function a(u){try{u.dispatchEvent(new MouseEvent("click"))}catch{var c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),u.dispatchEvent(c)}}var o=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof Hi=="object"&&Hi.global===Hi?Hi:void 0,s=o.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),l=o.saveAs||(typeof window!="object"||window!==o?function(){}:"download"in HTMLAnchorElement.prototype&&!s?function(u,c,d){var f=o.URL||o.webkitURL,p=document.createElement("a");c=c||u.name||"download",p.download=c,p.rel="noopener",typeof u=="string"?(p.href=u,p.origin===location.origin?a(p):i(p.href)?r(u,c,d):a(p,p.target="_blank")):(p.href=f.createObjectURL(u),setTimeout(function(){f.revokeObjectURL(p.href)},4e4),setTimeout(function(){a(p)},0))}:"msSaveOrOpenBlob"in navigator?function(u,c,d){if(c=c||u.name||"download",typeof u!="string")navigator.msSaveOrOpenBlob(n(u,d),c);else if(i(u))r(u,c,d);else{var f=document.createElement("a");f.href=u,f.target="_blank",setTimeout(function(){a(f)})}}:function(u,c,d,f){if(f=f||open("","_blank"),f&&(f.document.title=f.document.body.innerText="downloading..."),typeof u=="string")return r(u,c,d);var p=u.type==="application/octet-stream",b=/constructor/i.test(o.HTMLElement)||o.safari,g=/CriOS\/[\d]+/.test(navigator.userAgent);if((g||p&&b||s)&&typeof FileReader<"u"){var m=new FileReader;m.onloadend=function(){var w=m.result;w=g?w:w.replace(/^data:[^;]*;/,"data:attachment/file;"),f?f.location.href=w:location=w,f=null},m.readAsDataURL(u)}else{var h=o.URL||o.webkitURL,y=h.createObjectURL(u);f?f.location=y:location.href=y,f=null,setTimeout(function(){h.revokeObjectURL(y)},4e4)}});o.saveAs=l.saveAs=l,typeof e<"u"&&(e.exports=l)})}),Uu={};c1(Uu,{default:()=>_r});var d1=zu(Bu());u1(Uu,zu(Bu()));var{default:Nu,...f1}=d1,_r=Nu!==void 0?Nu:f1;var vt=window,ju=!1,Hu=!!(vt.Worker&&vt.Blob&&vt.Promise&&vt.OffscreenCanvas&&vt.OffscreenCanvasRenderingContext2D&&vt.HTMLCanvasElement&&vt.HTMLCanvasElement.prototype.transferControlToOffscreen&&vt.URL&&vt.URL.createObjectURL);function $u(){}function Go(t){var e=vt.Promise,n=e!==void 0?e:vt.Promise;return typeof n=="function"?new n(t):(t($u,$u),null)}var qo=function(){var t=Math.floor(16.666666666666668),e,n,r={},i=0;return typeof requestAnimationFrame=="function"&&typeof cancelAnimationFrame=="function"?(e=function(a){var o=Math.random();return r[o]=requestAnimationFrame(function s(l){i===l||i+t-1{t={async resolve(a){await a,e="fulfilled",r(a)},reject(a){e="rejected",i(a)}}});return Object.defineProperty(n,"state",{get:()=>e}),Object.assign(n,t)}var Wu=class{#e=0;#t=[];#n=[];#r=Cr();add(e){++this.#e,this.#i(e[Symbol.asyncIterator]())}async#i(e){try{let{value:n,done:r}=await e.next();r?--this.#e:this.#t.push({iterator:e,value:n})}catch(n){this.#n.push(n)}this.#r.resolve()}async*iterate(){for(;this.#e>0;){await this.#r;for(let e=0;e<~]))"].join("|"),"g");var Y8=Number.isNaN||function(t){return typeof t=="number"&&t!==t};var Wi=globalThis||(typeof window<"u"?window:self),D1=Object.create,Zo=Object.defineProperty,F1=Object.getOwnPropertyDescriptor,I1=Object.getOwnPropertyNames,P1=Object.getPrototypeOf,N1=Object.prototype.hasOwnProperty,z1=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),B1=(t,e)=>{for(var n in e)Zo(t,n,{get:e[n],enumerable:!0})},Yo=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of I1(e))!N1.call(t,i)&&i!==n&&Zo(t,i,{get:()=>e[i],enumerable:!(r=F1(e,i))||r.enumerable});return t},U1=(t,e,n)=>(Yo(t,e,"default"),n&&Yo(n,e,"default")),Ku=(t,e,n)=>(n=t!=null?D1(P1(t)):{},Yo(e||!t||!t.__esModule?Zo(n,"default",{value:t,enumerable:!0}):n,t)),Gu=z1((t,e)=>{var n="Expected a function",r=NaN,i="[object Symbol]",a=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt,c=typeof Wi=="object"&&Wi&&Wi.Object===Object&&Wi,d=typeof self=="object"&&self&&self.Object===Object&&self,f=c||d||Function("return this")(),p=Object.prototype,b=p.toString,g=Math.max,m=Math.min,h=function(){return f.Date.now()};function y(v,A,C){var E,R,L,P,O,N,z=0,Y=!1,ne=!1,K=!0;if(typeof v!="function")throw new TypeError(n);A=k(A)||0,S(C)&&(Y=!!C.leading,ne="maxWait"in C,L=ne?g(k(C.maxWait)||0,A):L,K="trailing"in C?!!C.trailing:K);function ee(Z){var ie=E,oe=R;return E=R=void 0,z=Z,P=v.apply(oe,ie),P}function M(Z){return z=Z,O=setTimeout(q,A),Y?ee(Z):P}function I(Z){var ie=Z-N,oe=Z-z,le=A-ie;return ne?m(le,L-oe):le}function $(Z){var ie=Z-N,oe=Z-z;return N===void 0||ie>=A||ie<0||ne&&oe>=L}function q(){var Z=h();if($(Z))return G(Z);O=setTimeout(q,I(Z))}function G(Z){return O=void 0,K&&E?ee(Z):(E=R=void 0,P)}function ce(){O!==void 0&&clearTimeout(O),z=0,E=N=R=O=void 0}function pe(){return O===void 0?P:G(h())}function me(){var Z=h(),ie=$(Z);if(E=arguments,R=this,N=Z,ie){if(O===void 0)return M(N);if(ne)return O=setTimeout(q,A),ee(N)}return O===void 0&&(O=setTimeout(q,A)),P}return me.cancel=ce,me.flush=pe,me}function w(v,A,C){var E=!0,R=!0;if(typeof v!="function")throw new TypeError(n);return S(C)&&(E="leading"in C?!!C.leading:E,R="trailing"in C?!!C.trailing:R),y(v,A,{leading:E,maxWait:A,trailing:R})}function S(v){var A=typeof v;return!!v&&(A=="object"||A=="function")}function _(v){return!!v&&typeof v=="object"}function x(v){return typeof v=="symbol"||_(v)&&b.call(v)==i}function k(v){if(typeof v=="number")return v;if(x(v))return r;if(S(v)){var A=typeof v.valueOf=="function"?v.valueOf():v;v=S(A)?A+"":A}if(typeof v!="string")return v===0?v:+v;v=v.replace(a,"");var C=s.test(v);return C||l.test(v)?u(v.slice(2),C?2:8):o.test(v)?r:+v}e.exports=w}),Xu={};B1(Xu,{default:()=>Jo});var $1=Ku(Gu());U1(Xu,Ku(Gu()));var{default:Vu,...j1}=$1,Jo=Vu!==void 0?Vu:j1;var H1=Object.create,es=Object.defineProperty,W1=Object.getOwnPropertyDescriptor,q1=Object.getOwnPropertyNames,V1=Object.getPrototypeOf,K1=Object.prototype.hasOwnProperty,G1=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),X1=(t,e)=>{for(var n in e)es(t,n,{get:e[n],enumerable:!0})},Qo=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of q1(e))!K1.call(t,i)&&i!==n&&es(t,i,{get:()=>e[i],enumerable:!(r=W1(e,i))||r.enumerable});return t},Y1=(t,e,n)=>(Qo(t,e,"default"),n&&Qo(n,e,"default")),Zu=(t,e,n)=>(n=t!=null?H1(V1(t)):{},Qo(e||!t||!t.__esModule?es(n,"default",{value:t,enumerable:!0}):n,t)),Ju=G1((t,e)=>{(function(n,r){typeof t=="object"&&typeof e=="object"?e.exports=r():typeof define=="function"&&define.amd?define([],r):typeof t=="object"?t.notie=r():n.notie=r()})(t,function(){return function(n){function r(a){if(i[a])return i[a].exports;var o=i[a]={i:a,l:!1,exports:{}};return n[a].call(o.exports,o,o.exports,r),o.l=!0,o.exports}var i={};return r.m=n,r.c=i,r.i=function(a){return a},r.d=function(a,o,s){r.o(a,o)||Object.defineProperty(a,o,{configurable:!1,enumerable:!0,get:s})},r.n=function(a){var o=a&&a.__esModule?function(){return a.default}:function(){return a};return r.d(o,"a",o),o},r.o=function(a,o){return Object.prototype.hasOwnProperty.call(a,o)},r.p="",r(r.s=1)}([function(n,r){n.exports=function(i){return i.webpackPolyfill||(i.deprecate=function(){},i.paths=[],i.children||(i.children=[]),Object.defineProperty(i,"loaded",{enumerable:!0,get:function(){return i.l}}),Object.defineProperty(i,"id",{enumerable:!0,get:function(){return i.i}}),i.webpackPolyfill=1),i}},function(n,r,i){"use strict";(function(a){var o,s,l,u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){u(r)==="object"&&u(a)==="object"?a.exports=d():(s=[],o=d,l=typeof o=="function"?o.apply(r,s):o,l!==void 0&&(a.exports=l))})(void 0,function(){return function(c){function d(p){if(f[p])return f[p].exports;var b=f[p]={i:p,l:!1,exports:{}};return c[p].call(b.exports,b,b.exports,d),b.l=!0,b.exports}var f={};return d.m=c,d.c=f,d.i=function(p){return p},d.d=function(p,b,g){d.o(p,b)||Object.defineProperty(p,b,{configurable:!1,enumerable:!0,get:g})},d.n=function(p){var b=p&&p.__esModule?function(){return p.default}:function(){return p};return d.d(b,"a",b),b},d.o=function(p,b){return Object.prototype.hasOwnProperty.call(p,b)},d.p="",d(d.s=0)}([function(c,d,f){function p(M,I){var $={};for(var q in M)I.indexOf(q)>=0||Object.prototype.hasOwnProperty.call(M,q)&&($[q]=M[q]);return $}Object.defineProperty(d,"__esModule",{value:!0});var b=typeof Symbol=="function"&&u(Symbol.iterator)==="symbol"?function(M){return typeof M>"u"?"undefined":u(M)}:function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M>"u"?"undefined":u(M)},g=Object.assign||function(M){for(var I=1;I'+q+"",oe.onclick=function(){return R(le,ie)},oe.listener=function(J){(A(J)||C(J))&&O()},E(oe,ie),ce&&ce<1&&(ce=1),!me&&ce&&S(ce).then(function(){return R(le,ie)})},z=d.force=function(M,I){var $=M.type,q=$===void 0?5:$,G=M.text,ce=M.buttonText,pe=ce===void 0?"OK":ce,me=M.callback,Z=M.position,ie=Z===void 0?h.positions.force||ie.top:Z;_(),O();var oe=document.createElement("div"),le=x();oe.id=le;var J=document.createElement("div");J.classList.add(h.classes.textbox),J.classList.add(h.classes.backgroundInfo),J.innerHTML='
'+G+"
";var ae=document.createElement("div");ae.classList.add(h.classes.button),ae.classList.add(k[q]),ae.innerHTML=pe,ae.onclick=function(){R(le,ie),P(),me?me():I&&I()},oe.appendChild(J),oe.appendChild(ae),oe.listener=function(de){A(de)&&ae.click()},E(oe,ie),L()},Y=d.confirm=function(M,I,$){var q=M.text,G=M.submitText,ce=G===void 0?"Yes":G,pe=M.cancelText,me=pe===void 0?"Cancel":pe,Z=M.submitCallback,ie=M.cancelCallback,oe=M.position,le=oe===void 0?h.positions.confirm||le.top:oe;_(),O();var J=document.createElement("div"),ae=x();J.id=ae;var de=document.createElement("div");de.classList.add(h.classes.textbox),de.classList.add(h.classes.backgroundInfo),de.innerHTML='
'+q+"
";var be=document.createElement("div");be.classList.add(h.classes.button),be.classList.add(h.classes.elementHalf),be.classList.add(h.classes.backgroundSuccess),be.innerHTML=ce,be.onclick=function(){R(ae,le),P(),Z?Z():I&&I()};var re=document.createElement("div");re.classList.add(h.classes.button),re.classList.add(h.classes.elementHalf),re.classList.add(h.classes.backgroundError),re.innerHTML=me,re.onclick=function(){R(ae,le),P(),ie?ie():$&&$()},J.appendChild(de),J.appendChild(be),J.appendChild(re),J.listener=function(Le){A(Le)?be.click():C(Le)&&re.click()},E(J,le),L(J,le)},ne=function(M,I,$){var q=M.text,G=M.submitText,ce=G===void 0?"Submit":G,pe=M.cancelText,me=pe===void 0?"Cancel":pe,Z=M.submitCallback,ie=M.cancelCallback,oe=M.position,le=oe===void 0?h.positions.input||le.top:oe,J=p(M,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);_(),O();var ae=document.createElement("div"),de=x();ae.id=de;var be=document.createElement("div");be.classList.add(h.classes.textbox),be.classList.add(h.classes.backgroundInfo),be.innerHTML='
'+q+"
";var re=document.createElement("input");re.classList.add(h.classes.inputField),re.setAttribute("autocapitalize",J.autocapitalize||"none"),re.setAttribute("autocomplete",J.autocomplete||"off"),re.setAttribute("autocorrect",J.autocorrect||"off"),re.setAttribute("autofocus",J.autofocus||"true"),re.setAttribute("inputmode",J.inputmode||"verbatim"),re.setAttribute("max",J.max||""),re.setAttribute("maxlength",J.maxlength||""),re.setAttribute("min",J.min||""),re.setAttribute("minlength",J.minlength||""),re.setAttribute("placeholder",J.placeholder||""),re.setAttribute("spellcheck",J.spellcheck||"default"),re.setAttribute("step",J.step||"any"),re.setAttribute("type",J.type||"text"),re.value=J.value||"",J.allowed&&(re.oninput=function(){var ve=void 0;if(Array.isArray(J.allowed)){for(var Re="",Ue=J.allowed,ct=0;ct'+$+"",ie.appendChild(le),pe.forEach(function(ae,de){var be=ae.type,re=be===void 0?1:be,Le=ae.text,Ie=ae.handler,ve=document.createElement("div");ve.classList.add(k[re]),ve.classList.add(h.classes.button),ve.classList.add(h.classes.selectChoice);var Re=pe[de+1];Re&&!Re.type&&(Re.type=1),Re&&Re.type===re&&ve.classList.add(h.classes.selectChoiceRepeated),ve.innerHTML=Le,ve.onclick=function(){R(oe,Z),P(),Ie()},ie.appendChild(ve)});var J=document.createElement("div");J.classList.add(h.classes.backgroundNeutral),J.classList.add(h.classes.button),J.innerHTML=G,J.onclick=function(){R(oe,Z),P(),ce?ce():I&&I()},ie.appendChild(J),ie.listener=function(ae){C(ae)&&J.click()},E(ie,Z),L(ie,Z)},ee=d.date=function(M,I,$){var q=M.value,G=q===void 0?new Date:q,ce=M.submitText,pe=ce===void 0?"OK":ce,me=M.cancelText,Z=me===void 0?"Cancel":me,ie=M.submitCallback,oe=M.cancelCallback,le=M.position,J=le===void 0?h.positions.date||J.top:le;_(),O();var ae="▾",de=document.createElement("div"),be=document.createElement("div"),re=document.createElement("div"),Le=function(j){de.innerHTML=h.dateMonths[j.getMonth()],be.innerHTML=j.getDate(),re.innerHTML=j.getFullYear()},Ie=function(j){var X=new Date(G.getFullYear(),G.getMonth()+1,0).getDate(),se=j.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(se)>X&&(se=X.toString()),j.target.textContent=se,Number(se)<1&&(se="1"),G.setDate(Number(se))},ve=function(j){var X=j.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);j.target.textContent=X,G.setFullYear(Number(X))},Re=function(j){Le(G)},Ue=function(j){var X=new Date(G.getFullYear(),G.getMonth()+j+1,0).getDate();G.getDate()>X&&G.setDate(X),G.setMonth(G.getMonth()+j),Le(G)},ct=function(j){G.setDate(G.getDate()+j),Le(G)},rn=function(j){var X=G.getFullYear()+j;X<0?G.setFullYear(0):G.setFullYear(G.getFullYear()+j),Le(G)},Tt=document.createElement("div"),Qe=x();Tt.id=Qe;var Bt=document.createElement("div");Bt.classList.add(h.classes.backgroundInfo);var $e=document.createElement("div");$e.classList.add(h.classes.dateSelectorInner);var ut=document.createElement("div");ut.classList.add(h.classes.button),ut.classList.add(h.classes.elementThird),ut.classList.add(h.classes.dateSelectorUp),ut.innerHTML=ae;var je=document.createElement("div");je.classList.add(h.classes.button),je.classList.add(h.classes.elementThird),je.classList.add(h.classes.dateSelectorUp),je.innerHTML=ae;var nt=document.createElement("div");nt.classList.add(h.classes.button),nt.classList.add(h.classes.elementThird),nt.classList.add(h.classes.dateSelectorUp),nt.innerHTML=ae,de.classList.add(h.classes.element),de.classList.add(h.classes.elementThird),de.innerHTML=h.dateMonths[G.getMonth()],be.classList.add(h.classes.element),be.classList.add(h.classes.elementThird),be.setAttribute("contentEditable",!0),be.addEventListener("input",Ie),be.addEventListener("blur",Re),be.innerHTML=G.getDate(),re.classList.add(h.classes.element),re.classList.add(h.classes.elementThird),re.setAttribute("contentEditable",!0),re.addEventListener("input",ve),re.addEventListener("blur",Re),re.innerHTML=G.getFullYear();var Rt=document.createElement("div");Rt.classList.add(h.classes.button),Rt.classList.add(h.classes.elementThird),Rt.innerHTML=ae;var D=document.createElement("div");D.classList.add(h.classes.button),D.classList.add(h.classes.elementThird),D.innerHTML=ae;var B=document.createElement("div");B.classList.add(h.classes.button),B.classList.add(h.classes.elementThird),B.innerHTML=ae,ut.onclick=function(){return Ue(1)},je.onclick=function(){return ct(1)},nt.onclick=function(){return rn(1)},Rt.onclick=function(){return Ue(-1)},D.onclick=function(){return ct(-1)},B.onclick=function(){return rn(-1)};var F=document.createElement("div");F.classList.add(h.classes.button),F.classList.add(h.classes.elementHalf),F.classList.add(h.classes.backgroundSuccess),F.innerHTML=pe,F.onclick=function(){R(Qe,J),P(),ie?ie(G):I&&I(G)};var U=document.createElement("div");U.classList.add(h.classes.button),U.classList.add(h.classes.elementHalf),U.classList.add(h.classes.backgroundError),U.innerHTML=Z,U.onclick=function(){R(Qe,J),P(),oe?oe(G):$&&$(G)},$e.appendChild(ut),$e.appendChild(je),$e.appendChild(nt),$e.appendChild(de),$e.appendChild(be),$e.appendChild(re),$e.appendChild(Rt),$e.appendChild(D),$e.appendChild(B),Bt.appendChild($e),Tt.appendChild(Bt),Tt.appendChild(F),Tt.appendChild(U),Tt.listener=function(j){A(j)?F.click():C(j)&&U.click()},E(Tt,J),L(Tt,J)};d.default={alert:N,force:z,confirm:Y,input:ne,select:K,date:ee,setOptions:y,hideAlerts:O}}])})}).call(r,i(0)(n))}])})}),Qu={};X1(Qu,{default:()=>qi});var Z1=Zu(Ju());Y1(Qu,Zu(Ju()));var{default:Yu,...J1}=Z1,qi=Yu!==void 0?Yu:J1;var ts=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function ns(t,e,n,r){t.addEventListener?t.addEventListener(e,n,r):t.attachEvent&&t.attachEvent("on".concat(e),function(){n(window.event)})}function id(t,e){for(var n=e.slice(0,e.length-1),r=0;r=0;)e[n-1]+=",",e.splice(n,1),n=e.lastIndexOf("");return e}function Q1(t,e){for(var n=t.length>=e.length?t:e,r=t.length>=e.length?e:t,i=!0,a=0;a=0&&Me.splice(n,1),t.key&&t.key.toLowerCase()==="meta"&&Me.splice(0,Me.length),(e===93||e===224)&&(e=91),e in Je){Je[e]=!1;for(var r in Xt)Xt[r]===e&&(Gt[r]=!1)}}function lm(t){if(typeof t>"u")Object.keys(Fe).forEach(function(o){return delete Fe[o]});else if(Array.isArray(t))t.forEach(function(o){o.key&&rs(o)});else if(typeof t=="object")t.key&&rs(t);else if(typeof t=="string"){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r1?id(Xt,l):[];Fe[d]=Fe[d].filter(function(p){var b=r?p.method===r:!0;return!(b&&p.scope===n&&Q1(p.mods,f))})}})};function td(t,e,n,r){if(e.element===r){var i;if(e.scope===n||e.scope==="all"){i=e.mods.length>0;for(var a in Je)Object.prototype.hasOwnProperty.call(Je,a)&&(!Je[a]&&e.mods.indexOf(+a)>-1||Je[a]&&e.mods.indexOf(+a)===-1)&&(i=!1);(e.mods.length===0&&!Je[16]&&!Je[18]&&!Je[17]&&!Je[91]||i||e.shortcut==="*")&&e.method(t,e)===!1&&(t.preventDefault?t.preventDefault():t.returnValue=!1,t.stopPropagation&&t.stopPropagation(),t.cancelBubble&&(t.cancelBubble=!0))}}}function nd(t,e){var n=Fe["*"],r=t.keyCode||t.which||t.charCode;if(Gt.filter.call(this,t)){if((r===93||r===224)&&(r=91),Me.indexOf(r)===-1&&r!==229&&Me.push(r),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(b){var g=as[b];t[b]&&Me.indexOf(g)===-1?Me.push(g):!t[b]&&Me.indexOf(g)>-1?Me.splice(Me.indexOf(g),1):b==="metaKey"&&t[b]&&Me.length===3&&(t.ctrlKey||t.shiftKey||t.altKey||(Me=Me.slice(Me.indexOf(g))))}),r in Je){Je[r]=!0;for(var i in Xt)Xt[i]===r&&(Gt[i]=!0);if(!n)return}for(var a in Je)Object.prototype.hasOwnProperty.call(Je,a)&&(Je[a]=t[as[a]]);t.getModifierState&&!(t.altKey&&!t.ctrlKey)&&t.getModifierState("AltGraph")&&(Me.indexOf(17)===-1&&Me.push(17),Me.indexOf(18)===-1&&Me.push(18),Je[17]=!0,Je[18]=!0);var o=Er();if(n)for(var s=0;s-1}function Gt(t,e,n){Me=[];var r=ad(t),i=[],a="all",o=document,s=0,l=!1,u=!0,c="+",d=!1;for(n===void 0&&typeof e=="function"&&(n=e),Object.prototype.toString.call(e)==="[object Object]"&&(e.scope&&(a=e.scope),e.element&&(o=e.element),e.keyup&&(l=e.keyup),e.keydown!==void 0&&(u=e.keydown),e.capture!==void 0&&(d=e.capture),typeof e.splitKey=="string"&&(c=e.splitKey)),typeof e=="string"&&(a=e);s1&&(i=id(Xt,t)),t=t[t.length-1],t=t==="*"?"*":Ki(t),t in Fe||(Fe[t]=[]),Fe[t].push({keyup:l,keydown:u,scope:a,mods:i,shortcut:r[s],method:n,key:r[s],splitKey:c,element:o});typeof o<"u"&&!cm(o)&&window&&(sd.push(o),ns(o,"keydown",function(f){nd(f,o)},d),ed||(ed=!0,ns(window,"focus",function(){Me=[]},d)),ns(o,"keyup",function(f){nd(f,o),sm(f)},d))}function um(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Fe).forEach(function(n){var r=Fe[n].filter(function(i){return i.scope===e&&i.shortcut===t});r.forEach(function(i){i&&i.method&&i.method()})})}var is={getPressedKeyString:rm,setScope:ld,getScope:Er,deleteScope:om,getPressedKeyCodes:nm,isPressed:am,filter:im,trigger:um,unbind:lm,keyMap:Sr,modifier:Xt,modifierMap:as};for(Vi in is)Object.prototype.hasOwnProperty.call(is,Vi)&&(Gt[Vi]=is[Vi]);var Vi;typeof document<"u"&&(rd=window.hotkeys,Gt.noConflict=function(t){return t&&window.hotkeys===Gt&&(window.hotkeys=rd),Gt},window.hotkeys=Gt);var rd;var dm=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let e=performance.now(),n=Math.round(e-this.#e);this.#e=e}},fm=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0}v(...t){this.#e<=0}info(...t){this.#e<=1}l(...t){this.#e<=1}warn(...t){this.#e<=2}error(...t){this.#e<=3}fatal(...t){this.#e<=4}timing(){return this.level===0?new dm:{reset:()=>{},stop:()=>{}}}},xy=new fm,hm="poegempjloogba",pm="ension://";var mm="rome-ext";var Ty="ch"+mm+pm+"cofdb"+hm+"gkncekinflcnj";var{entries:gd,setPrototypeOf:cd,isFrozen:bm,getPrototypeOf:ym,getOwnPropertyDescriptor:wm}=Object,{freeze:st,seal:zt,create:vm}=Object,{apply:ds,construct:fs}=typeof Reflect<"u"&&Reflect;ds||(ds=function(t,e,n){return t.apply(e,n)});st||(st=function(t){return t});zt||(zt=function(t){return t});fs||(fs=function(t,e){return new t(...e)});var xm=Lt(Array.prototype.forEach),ud=Lt(Array.prototype.pop),Ar=Lt(Array.prototype.push),Yi=Lt(String.prototype.toLowerCase),os=Lt(String.prototype.toString),Tm=Lt(String.prototype.match),Nt=Lt(String.prototype.replace),_m=Lt(String.prototype.indexOf),Cm=Lt(String.prototype.trim),xt=Lt(RegExp.prototype.test),Mr=km(TypeError);function Lt(t){return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i/gm),Lm=zt(/\${[\w\W]*}/gm),Rm=zt(/^data-[\-\w.\u00B7-\uFFFF]/),Om=zt(/^aria-[\-\w]+$/),bd=zt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Dm=zt(/^(?:\w+script|data):/i),Fm=zt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),yd=zt(/^html$/i),md=Object.freeze({__proto__:null,MUSTACHE_EXPR:Am,ERB_EXPR:Mm,TMPLIT_EXPR:Lm,DATA_ATTR:Rm,ARIA_ATTR:Om,IS_ALLOWED_URI:bd,IS_SCRIPT_OR_DATA:Dm,ATTR_WHITESPACE:Fm,DOCTYPE_NAME:yd}),Im=()=>typeof window>"u"?null:window,Pm=function(t,e){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null,r="data-tt-policy-suffix";e&&e.hasAttribute(r)&&(n=e.getAttribute(r));let i="dompurify"+(n?"#"+n:"");try{return t.createPolicy(i,{createHTML(a){return a},createScriptURL(a){return a}})}catch{return null}};function wd(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Im(),e=T=>wd(T);if(e.version="3.0.3",e.removed=[],!t||!t.document||t.document.nodeType!==9)return e.isSupported=!1,e;let n=t.document,r=n.currentScript,{document:i}=t,{DocumentFragment:a,HTMLTemplateElement:o,Node:s,Element:l,NodeFilter:u,NamedNodeMap:c=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:d,DOMParser:f,trustedTypes:p}=t,b=l.prototype,g=Gi(b,"cloneNode"),m=Gi(b,"nextSibling"),h=Gi(b,"childNodes"),y=Gi(b,"parentNode");if(typeof o=="function"){let T=i.createElement("template");T.content&&T.content.ownerDocument&&(i=T.content.ownerDocument)}let w,S="",{implementation:_,createNodeIterator:x,createDocumentFragment:k,getElementsByTagName:v}=i,{importNode:A}=n,C={};e.isSupported=typeof gd=="function"&&typeof y=="function"&&_&&_.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:E,ERB_EXPR:R,TMPLIT_EXPR:L,DATA_ATTR:P,ARIA_ATTR:O,IS_SCRIPT_OR_DATA:N,ATTR_WHITESPACE:z}=md,{IS_ALLOWED_URI:Y}=md,ne=null,K=he({},[...dd,...ss,...ls,...cs,...fd]),ee=null,M=he({},[...hd,...us,...pd,...Xi]),I=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),$=null,q=null,G=!0,ce=!0,pe=!1,me=!0,Z=!1,ie=!1,oe=!1,le=!1,J=!1,ae=!1,de=!1,be=!0,re=!1,Le="user-content-",Ie=!0,ve=!1,Re={},Ue=null,ct=he({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),rn=null,Tt=he({},["audio","video","img","source","image","track"]),Qe=null,Bt=he({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),$e="http://www.w3.org/1998/Math/MathML",ut="http://www.w3.org/2000/svg",je="http://www.w3.org/1999/xhtml",nt=je,Rt=!1,D=null,B=he({},[$e,ut,je],os),F,U=["application/xhtml+xml","text/html"],j="text/html",X,se=null,Ke=i.createElement("form"),dt=function(T){return T instanceof RegExp||T instanceof Function},wn=function(T){if(!(se&&se===T)){if((!T||typeof T!="object")&&(T={}),T=Gn(T),F=U.indexOf(T.PARSER_MEDIA_TYPE)===-1?F=j:F=T.PARSER_MEDIA_TYPE,X=F==="application/xhtml+xml"?os:Yi,ne="ALLOWED_TAGS"in T?he({},T.ALLOWED_TAGS,X):K,ee="ALLOWED_ATTR"in T?he({},T.ALLOWED_ATTR,X):M,D="ALLOWED_NAMESPACES"in T?he({},T.ALLOWED_NAMESPACES,os):B,Qe="ADD_URI_SAFE_ATTR"in T?he(Gn(Bt),T.ADD_URI_SAFE_ATTR,X):Bt,rn="ADD_DATA_URI_TAGS"in T?he(Gn(Tt),T.ADD_DATA_URI_TAGS,X):Tt,Ue="FORBID_CONTENTS"in T?he({},T.FORBID_CONTENTS,X):ct,$="FORBID_TAGS"in T?he({},T.FORBID_TAGS,X):{},q="FORBID_ATTR"in T?he({},T.FORBID_ATTR,X):{},Re="USE_PROFILES"in T?T.USE_PROFILES:!1,G=T.ALLOW_ARIA_ATTR!==!1,ce=T.ALLOW_DATA_ATTR!==!1,pe=T.ALLOW_UNKNOWN_PROTOCOLS||!1,me=T.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Z=T.SAFE_FOR_TEMPLATES||!1,ie=T.WHOLE_DOCUMENT||!1,J=T.RETURN_DOM||!1,ae=T.RETURN_DOM_FRAGMENT||!1,de=T.RETURN_TRUSTED_TYPE||!1,le=T.FORCE_BODY||!1,be=T.SANITIZE_DOM!==!1,re=T.SANITIZE_NAMED_PROPS||!1,Ie=T.KEEP_CONTENT!==!1,ve=T.IN_PLACE||!1,Y=T.ALLOWED_URI_REGEXP||bd,nt=T.NAMESPACE||je,I=T.CUSTOM_ELEMENT_HANDLING||{},T.CUSTOM_ELEMENT_HANDLING&&dt(T.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(I.tagNameCheck=T.CUSTOM_ELEMENT_HANDLING.tagNameCheck),T.CUSTOM_ELEMENT_HANDLING&&dt(T.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(I.attributeNameCheck=T.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),T.CUSTOM_ELEMENT_HANDLING&&typeof T.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(I.allowCustomizedBuiltInElements=T.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Z&&(ce=!1),ae&&(J=!0),Re&&(ne=he({},[...fd]),ee=[],Re.html===!0&&(he(ne,dd),he(ee,hd)),Re.svg===!0&&(he(ne,ss),he(ee,us),he(ee,Xi)),Re.svgFilters===!0&&(he(ne,ls),he(ee,us),he(ee,Xi)),Re.mathMl===!0&&(he(ne,cs),he(ee,pd),he(ee,Xi))),T.ADD_TAGS&&(ne===K&&(ne=Gn(ne)),he(ne,T.ADD_TAGS,X)),T.ADD_ATTR&&(ee===M&&(ee=Gn(ee)),he(ee,T.ADD_ATTR,X)),T.ADD_URI_SAFE_ATTR&&he(Qe,T.ADD_URI_SAFE_ATTR,X),T.FORBID_CONTENTS&&(Ue===ct&&(Ue=Gn(Ue)),he(Ue,T.FORBID_CONTENTS,X)),Ie&&(ne["#text"]=!0),ie&&he(ne,["html","head","body"]),ne.table&&(he(ne,["tbody"]),delete $.tbody),T.TRUSTED_TYPES_POLICY){if(typeof T.TRUSTED_TYPES_POLICY.createHTML!="function")throw Mr('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof T.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Mr('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');w=T.TRUSTED_TYPES_POLICY,S=w.createHTML("")}else w===void 0&&(w=Pm(p,r)),w!==null&&typeof S=="string"&&(S=w.createHTML(""));st&&st(T),se=T}},Yn=he({},["mi","mo","mn","ms","mtext"]),Zn=he({},["foreignobject","desc","title","annotation-xml"]),Dd=he({},["title","style","font","a","script"]),Rr=he({},ss);he(Rr,ls),he(Rr,Sm);let Qi=he({},cs);he(Qi,Em);let Fd=function(T){let Q=y(T);(!Q||!Q.tagName)&&(Q={namespaceURI:nt,tagName:"template"});let H=Yi(T.tagName),xe=Yi(Q.tagName);return D[T.namespaceURI]?T.namespaceURI===ut?Q.namespaceURI===je?H==="svg":Q.namespaceURI===$e?H==="svg"&&(xe==="annotation-xml"||Yn[xe]):!!Rr[H]:T.namespaceURI===$e?Q.namespaceURI===je?H==="math":Q.namespaceURI===ut?H==="math"&&Zn[xe]:!!Qi[H]:T.namespaceURI===je?Q.namespaceURI===ut&&!Zn[xe]||Q.namespaceURI===$e&&!Yn[xe]?!1:!Qi[H]&&(Dd[H]||!Rr[H]):!!(F==="application/xhtml+xml"&&D[T.namespaceURI]):!1},En=function(T){Ar(e.removed,{element:T});try{T.parentNode.removeChild(T)}catch{T.remove()}},ea=function(T,Q){try{Ar(e.removed,{attribute:Q.getAttributeNode(T),from:Q})}catch{Ar(e.removed,{attribute:null,from:Q})}if(Q.removeAttribute(T),T==="is"&&!ee[T])if(J||ae)try{En(Q)}catch{}else try{Q.setAttribute(T,"")}catch{}},bs=function(T){let Q,H;if(le)T=""+T;else{let rt=Tm(T,/^[\r\n\t ]+/);H=rt&&rt[0]}F==="application/xhtml+xml"&&nt===je&&(T=''+T+"");let xe=w?w.createHTML(T):T;if(nt===je)try{Q=new f().parseFromString(xe,F)}catch{}if(!Q||!Q.documentElement){Q=_.createDocument(nt,"template",null);try{Q.documentElement.innerHTML=Rt?S:xe}catch{}}let Pe=Q.body||Q.documentElement;return T&&H&&Pe.insertBefore(i.createTextNode(H),Pe.childNodes[0]||null),nt===je?v.call(Q,ie?"html":"body")[0]:ie?Q.documentElement:Pe},ys=function(T){return x.call(T.ownerDocument||T,T,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT,null,!1)},Id=function(T){return T instanceof d&&(typeof T.nodeName!="string"||typeof T.textContent!="string"||typeof T.removeChild!="function"||!(T.attributes instanceof c)||typeof T.removeAttribute!="function"||typeof T.setAttribute!="function"||typeof T.namespaceURI!="string"||typeof T.insertBefore!="function"||typeof T.hasChildNodes!="function")},Or=function(T){return typeof s=="object"?T instanceof s:T&&typeof T=="object"&&typeof T.nodeType=="number"&&typeof T.nodeName=="string"},Yt=function(T,Q,H){C[T]&&xm(C[T],xe=>{xe.call(e,Q,H,se)})},ws=function(T){let Q;if(Yt("beforeSanitizeElements",T,null),Id(T))return En(T),!0;let H=X(T.nodeName);if(Yt("uponSanitizeElement",T,{tagName:H,allowedTags:ne}),T.hasChildNodes()&&!Or(T.firstElementChild)&&(!Or(T.content)||!Or(T.content.firstElementChild))&&xt(/<[/\w]/g,T.innerHTML)&&xt(/<[/\w]/g,T.textContent))return En(T),!0;if(!ne[H]||$[H]){if(!$[H]&&xs(H)&&(I.tagNameCheck instanceof RegExp&&xt(I.tagNameCheck,H)||I.tagNameCheck instanceof Function&&I.tagNameCheck(H)))return!1;if(Ie&&!Ue[H]){let xe=y(T)||T.parentNode,Pe=h(T)||T.childNodes;if(Pe&&xe){let rt=Pe.length;for(let ft=rt-1;ft>=0;--ft)xe.insertBefore(g(Pe[ft],!0),m(T))}}return En(T),!0}return T instanceof l&&!Fd(T)||(H==="noscript"||H==="noembed")&&xt(/<\/no(script|embed)/i,T.innerHTML)?(En(T),!0):(Z&&T.nodeType===3&&(Q=T.textContent,Q=Nt(Q,E," "),Q=Nt(Q,R," "),Q=Nt(Q,L," "),T.textContent!==Q&&(Ar(e.removed,{element:T.cloneNode()}),T.textContent=Q)),Yt("afterSanitizeElements",T,null),!1)},vs=function(T,Q,H){if(be&&(Q==="id"||Q==="name")&&(H in i||H in Ke))return!1;if(!(ce&&!q[Q]&&xt(P,Q))&&!(G&&xt(O,Q))){if(!ee[Q]||q[Q]){if(!(xs(T)&&(I.tagNameCheck instanceof RegExp&&xt(I.tagNameCheck,T)||I.tagNameCheck instanceof Function&&I.tagNameCheck(T))&&(I.attributeNameCheck instanceof RegExp&&xt(I.attributeNameCheck,Q)||I.attributeNameCheck instanceof Function&&I.attributeNameCheck(Q))||Q==="is"&&I.allowCustomizedBuiltInElements&&(I.tagNameCheck instanceof RegExp&&xt(I.tagNameCheck,H)||I.tagNameCheck instanceof Function&&I.tagNameCheck(H))))return!1}else if(!Qe[Q]&&!xt(Y,Nt(H,z,""))&&!((Q==="src"||Q==="xlink:href"||Q==="href")&&T!=="script"&&_m(H,"data:")===0&&rn[T])&&!(pe&&!xt(N,Nt(H,z,"")))&&H)return!1}return!0},xs=function(T){return T.indexOf("-")>0},Ts=function(T){let Q,H,xe,Pe;Yt("beforeSanitizeAttributes",T,null);let{attributes:rt}=T;if(!rt)return;let ft={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ee};for(Pe=rt.length;Pe--;){Q=rt[Pe];let{name:He,namespaceURI:An}=Q;if(H=He==="value"?Q.value:Cm(Q.value),xe=X(He),ft.attrName=xe,ft.attrValue=H,ft.keepAttr=!0,ft.forceKeepAttr=void 0,Yt("uponSanitizeAttribute",T,ft),H=ft.attrValue,ft.forceKeepAttr||(ea(He,T),!ft.keepAttr))continue;if(!me&&xt(/\/>/i,H)){ea(He,T);continue}Z&&(H=Nt(H,E," "),H=Nt(H,R," "),H=Nt(H,L," "));let _s=X(T.nodeName);if(vs(_s,xe,H)){if(re&&(xe==="id"||xe==="name")&&(ea(He,T),H=Le+H),w&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!An)switch(p.getAttributeType(_s,xe)){case"TrustedHTML":{H=w.createHTML(H);break}case"TrustedScriptURL":{H=w.createScriptURL(H);break}}try{An?T.setAttributeNS(An,He,H):T.setAttribute(He,H),ud(e.removed)}catch{}}}Yt("afterSanitizeAttributes",T,null)},Pd=function T(Q){let H,xe=ys(Q);for(Yt("beforeSanitizeShadowDOM",Q,null);H=xe.nextNode();)Yt("uponSanitizeShadowNode",H,null),!ws(H)&&(H.content instanceof a&&T(H.content),Ts(H));Yt("afterSanitizeShadowDOM",Q,null)};return e.sanitize=function(T){let Q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},H,xe,Pe,rt;if(Rt=!T,Rt&&(T=""),typeof T!="string"&&!Or(T))if(typeof T.toString=="function"){if(T=T.toString(),typeof T!="string")throw Mr("dirty is not a string, aborting")}else throw Mr("toString is not a function");if(!e.isSupported)return T;if(oe||wn(Q),e.removed=[],typeof T=="string"&&(ve=!1),ve){if(T.nodeName){let An=X(T.nodeName);if(!ne[An]||$[An])throw Mr("root node is forbidden and cannot be sanitized in-place")}}else if(T instanceof s)H=bs(""),xe=H.ownerDocument.importNode(T,!0),xe.nodeType===1&&xe.nodeName==="BODY"||xe.nodeName==="HTML"?H=xe:H.appendChild(xe);else{if(!J&&!Z&&!ie&&T.indexOf("<")===-1)return w&&de?w.createHTML(T):T;if(H=bs(T),!H)return J?null:de?S:""}H&&le&&En(H.firstChild);let ft=ys(ve?T:H);for(;Pe=ft.nextNode();)ws(Pe)||(Pe.content instanceof a&&Pd(Pe.content),Ts(Pe));if(ve)return T;if(J){if(ae)for(rt=k.call(H.ownerDocument);H.firstChild;)rt.appendChild(H.firstChild);else rt=H;return(ee.shadowroot||ee.shadowrootmod)&&(rt=A.call(n,rt,!0)),rt}let He=ie?H.outerHTML:H.innerHTML;return ie&&ne["!doctype"]&&H.ownerDocument&&H.ownerDocument.doctype&&H.ownerDocument.doctype.name&&xt(yd,H.ownerDocument.doctype.name)&&(He=" -`+He),Z&&(He=Nt(He,E," "),He=Nt(He,R," "),He=Nt(He,L," ")),w&&de?w.createHTML(He):He},e.setConfig=function(T){wn(T),oe=!0},e.clearConfig=function(){se=null,oe=!1},e.isValidAttribute=function(T,Q,H){se||wn({});let xe=X(T),Pe=X(Q);return vs(xe,Pe,H)},e.addHook=function(T,Q){typeof Q=="function"&&(C[T]=C[T]||[],Ar(C[T],Q))},e.removeHook=function(T){if(C[T])return ud(C[T])},e.removeHooks=function(T){C[T]&&(C[T]=[])},e.removeAllHooks=function(){C={}},e}var Lr=wd();var Gy=qi.alert;var vd={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var xd={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var Td={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var Um=[{code:"zh-CN",messages:vd},{code:"zh-TW",messages:xd},{code:"en",messages:Td}];var $m={};for(let t of Um)$m[t.code]=t.messages;var lt="immersive-translate";var ue="immersiveTranslate";var f4=ue+"GoogleAccessToken",h4=ue+"AuthFlow";var p4=ue+"AuthState",m4=ue+"IframeMessage",g4=ue+"WaitForRateLimit",b4=ue+"DocumentMessageAsk",Cd=ue+"DocumentMessageTellThirdParty",kd=ue+"DocumentMessageThirdPartyTell",y4=ue+"DocumentMessageHandler",w4=`${ue}Container`,v4=`${ue}SpecifiedContainer`;var x4=`${ue}PageTranslatedStatus`,T4=`${ue}PageUrlChanged`,_4=`${ue}ReceiveCommand`,C4=ue+"LastUseMouseHoverTime",k4=ue+"LastUseInputTime",S4=ue+"LastUseManualTranslatePageTime",E4=`${ue}PopupReceiveMessage`,jm="immersivetranslate.com",Hm="config.immersivetranslate.com",A4=`https://${jm}/`,M4=`https://${Hm}/default_config.json`,L4=`${ue}Mark`;var Sd=`${ue}Root`,hs=`data-${lt}-effect`,R4=`data-${lt}-translation-element-mark`,O4=`${ue}TranslationElementMark`,D4=`${ue}TranslatedMark`,F4=`${ue}ParagraphId`,I4=`${ue}LoadingId`,P4=`data-${lt}-loading-id`,N4=`${ue}ErrorId`,z4=`data-${lt}-error-id`,B4=`${ue}AtomicBlockMark`,U4=`${ue}ExcludeMark`,$4=`data-${lt}-exclude-mark`,j4=`${ue}StayOriginalMark`,H4=`${ue}PreWhitespaceMark`,W4=`${ue}InlineMark`,q4=`${ue}BlockMark`,V4=`${ue}Left`,K4=`${ue}Right`,G4=`${ue}Width`,X4=`${ue}Height`,Y4=`${ue}Top`,Z4=`${ue}FontSize`;var J4=`${ue}GlobalStyleMark`;var Q4=`${lt}-target-wrapper`,e5=`${lt}-pdf-target-container`,t5=`${lt}-target-inner`,n5=`${lt}-source-wrapper`,r5=`${lt}-target-translation-block-wrapper`,i5=`${lt}-root-translation-theme`,a5=`${ue}RootTranslationTheme`,o5=`${lt}-target-translation-vertical-block-wrapper`,s5=`${lt}-target-translation-pdf-block-wrapper`,l5=`${lt}-target-translation-pre-whitespace`,c5=`${lt}-target-translation-inline-wrapper`;var _d=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],u5={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`+He),Z&&(He=Nt(He,E," "),He=Nt(He,R," "),He=Nt(He,L," ")),w&&de?w.createHTML(He):He},e.setConfig=function(T){wn(T),oe=!0},e.clearConfig=function(){se=null,oe=!1},e.isValidAttribute=function(T,Q,H){se||wn({});let xe=X(T),Pe=X(Q);return vs(xe,Pe,H)},e.addHook=function(T,Q){typeof Q=="function"&&(C[T]=C[T]||[],Ar(C[T],Q))},e.removeHook=function(T){if(C[T])return ud(C[T])},e.removeHooks=function(T){C[T]&&(C[T]=[])},e.removeAllHooks=function(){C={}},e}var Lr=wd();var Gy=qi.alert;var vd={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var xd={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var Td={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var Um=[{code:"zh-CN",messages:vd},{code:"zh-TW",messages:xd},{code:"en",messages:Td}];var $m={};for(let t of Um)$m[t.code]=t.messages;var lt="immersive-translate";var ue="immersiveTranslate";var f4=ue+"GoogleAccessToken",h4=ue+"AuthFlow";var p4=ue+"AuthState",m4=ue+"IframeMessage",g4=ue+"WaitForRateLimit",b4=ue+"DocumentMessageAsk",Cd=ue+"DocumentMessageTellThirdParty",kd=ue+"DocumentMessageThirdPartyTell",y4=ue+"DocumentMessageHandler",w4=`${ue}Container`,v4=`${ue}SpecifiedContainer`;var x4=`${ue}PageTranslatedStatus`,T4=`${ue}PageUrlChanged`,_4=`${ue}ReceiveCommand`,C4=ue+"LastUseMouseHoverTime",k4=ue+"LastUseInputTime",S4=ue+"LastUseManualTranslatePageTime",E4=`${ue}PopupReceiveMessage`,jm="immersivetranslate.com",Hm="config.immersivetranslate.com",A4=`https://${jm}/`,M4=`https://${Hm}/default_config.json`,L4=`${ue}Mark`;var Sd=`${ue}Root`,hs=`data-${lt}-effect`,R4=`data-${lt}-translation-element-mark`,O4=`${ue}TranslationElementMark`,D4=`${ue}TranslatedMark`,F4=`${ue}ParagraphId`,I4=`${ue}LoadingId`,P4=`data-${lt}-loading-id`,N4=`${ue}ErrorId`,z4=`data-${lt}-error-id`,B4=`${ue}AtomicBlockMark`,U4=`${ue}ExcludeMark`,$4=`data-${lt}-exclude-mark`,j4=`${ue}StayOriginalMark`,H4=`${ue}PreWhitespaceMark`,W4=`${ue}InlineMark`,q4=`${ue}BlockMark`,V4=`${ue}Left`,K4=`${ue}Right`,G4=`${ue}Width`,X4=`${ue}Height`,Y4=`${ue}Top`,Z4=`${ue}FontSize`;var J4=`${ue}GlobalStyleMark`;var Q4=`${lt}-target-wrapper`,e5=`${lt}-pdf-target-container`,t5=`${lt}-target-inner`,n5=`${lt}-source-wrapper`,r5=`${lt}-target-translation-block-wrapper`,i5=`${lt}-root-translation-theme`,a5=`${ue}RootTranslationTheme`,o5=`${lt}-target-translation-vertical-block-wrapper`,s5=`${lt}-target-translation-pdf-block-wrapper`,l5=`${lt}-target-translation-pre-whitespace`,c5=`${lt}-target-translation-inline-wrapper`;var _d=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],u5={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[..._d,{type:"password",name:"apikey",required:!0}],props:_d},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},d5={type:ue+"ChildFrameToRootFrameIdentifier"};var{ZipReader:Wm,BlobReader:ms,TextReader:ps,TextWriter:qm,BlobWriter:Ad,ZipWriter:Vm}=so;xi({useWebWorkers:!1});var Km=async t=>{let e=new Uint8Array(await t.slice(0,4).arrayBuffer());return e[0]===80&&e[1]===75&&e[2]===3&&e[3]===4},yn=null,Zi=0,Ji=0,Xn=0,Ed=!1,Gm=tr(),Xm=Gm.PROD==="1",Ym=async t=>{let n=await new Wm(new ms(t)).getEntries();t.name&&t.name.endsWith(".zip")&&n.every(u=>u.filename.startsWith(t.name.slice(0,-4)+"/"))&&(n=n.map(u=>(u.filename=u.filename.slice(t.name.length-3),u)));let r=new Map(n.map(l=>[l.filename,l])),i=l=>(u,...c)=>r.has(u)?l(r.get(u),...c):null,a=i(l=>l.getData(new qm)),o=i((l,u)=>l.getData(new Ad(u)));return{entries:n,loadText:a,loadBlob:o,getSize:l=>r.get(l)?.uncompressedSize??0}},Md=async t=>t.isFile?t:(await Promise.all(Array.from(await new Promise((e,n)=>t.createReader().readEntries(r=>e(r),r=>n(r))),Md))).flat(),Zm=async t=>{let e=await Md(t);e=e.map(d=>d);let n=[],r=await Promise.all(e.map(d=>new Promise((f,p)=>d.file(b=>f([b,d.fullPath]),b=>p(b))))),i=new Map(r.map(([d,f])=>{let p=f.replace(t.fullPath+"/","");return n.push({filename:p,...d}),[p,d]})),a=new TextDecoder,o=d=>d?a.decode(d):null,s=d=>i.get(d)?.arrayBuffer()??null;return{entries:n,loadText:async d=>o(await s(d)),loadBlob:async d=>i.get(d),getSize:d=>i.get(d)?.size??0}},Jm=({name:t,type:e})=>e==="application/vnd.comicbook+zip"||t.endsWith(".cbz"),Qm=({name:t,type:e})=>e==="application/x-fictionbook+xml"||t.endsWith(".fb2"),eg=({name:t,type:e})=>e==="application/x-zip-compressed-fb2"||t.endsWith(".fb2.zip")||t.endsWith(".fbz"),tg=async(t,e)=>{let n;if(t.isDirectory){let a=await Zm(t);yn=a,n=await new ir(a).init()}else if(t.size)if(await Km(t)){let a=await Ym(t);if(yn=a,Jm(t))n=js(a,t);else if(eg(t)){let{entries:o}=a,s=o.find(u=>u.filename.endsWith(".fb2")),l=await a.loadBlob((s??o[0]).filename);n=await da(l)}else n=await new ir(a).init()}else await el(t)?n=await new Zr({unzlib:F0}).open(t):Qm(t)&&(n=await da(t));else throw new Error("File not found");if(!n)throw new Error("File type not supported");let r=new Wr(n,e),i=await r.display();return document.body.append(i),r},Ve=document.querySelector.bind(document),Sn=!1;function Ld(){let t=document.querySelectorAll("iframe");for(let r=0;r{Ve("#dimming-overlay").classList.add("show"),Ve("#side-bar").classList.add("show")}),Ve("#dimming-overlay").addEventListener("click",()=>this.closeSideBar());let e=$s([{name:"layout",label:"Layout",type:"radio",items:[["Paginated","paginated"],["Scrolled","scrolled"]],onclick:n=>{this.layout.flow=n}}]);e.element.classList.add("menu"),Ve("#menu-button").append(e.element),Ve("#menu-button > button").addEventListener("click",()=>e.element.classList.toggle("show")),e.groups.layout.select("paginated")}async open(e){try{document.addEventListener(Cd,b=>{let{detail:g}=b;if(g)try{let m=JSON.parse(g);if(m&&m.type&&m.payload){if(m.type==="paragraphTranslated"){let{ok:h}=m.payload;if(h?Ji++:Xn++,s&&Zi){let y=Ji,w=Ji+Xn,S=y/Zi*100,_=Math.floor(S),x=Math.floor(w/Zi*100);if(_>100&&(_=100),x>100&&(x=100),s.innerText=`${_}%`,x===100&&Xn>0){let k=document.querySelector("#error");k.innerHTML=Lr.sanitize(`${Xn} failed(\u5931\u8D25). Retry all (\u70B9\u6B64\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D)`)}_===100&&(Ed||(Ed=!0,Xo({particleCount:100,spread:160})))}}else if(m.type==="totalParagraphsCount")m.payload.totalParagraphsCount&&(Zi=m.payload.totalParagraphsCount);else if(m.type==="translateStart")Ji=0,Xn=0;else if(m.type==="restorePage"){let h=document.querySelector("#error"),y=document.querySelector("#progress-number");h&&(h.innerHTML=""),y&&(y.innerText="")}}}catch{}}),this.view=await tg(e,this.#e.bind(this));let{book:n}=this.view,r=n.sections,i=document.querySelector("#chapters"),a=n.resources,o=[];if(a&&a.guide&&a.guide.length)for(let b of a.guide)o.push(b.href);let s=document.querySelector("#progress-number"),l=document.querySelector("#error");l.addEventListener("click",b=>{for(b.preventDefault();l.firstChild;)l.removeChild(l.firstChild);Xn=0,document.dispatchEvent(new CustomEvent(kd,{detail:JSON.stringify({type:"retryFailedParagraphs"})}))}),Ve("#open").addEventListener("click",()=>{window.location.reload()}),Ve("#export").addEventListener("click",async b=>{b.preventDefault(),yn||alert("Load failed");let g=document.querySelector("#export");g.classList.add("disabled");let m=document.querySelector("#exportAction");m&&m.classList.add("none");let h=document.querySelector("#exportStatus");h&&(h.innerText="Exporting..."),Ld();let y=yn.entries,w=new Ad,S=new Vm(w),_=new ps("application/epub+zip");await S.add("mimetype",_,{level:0,extendedTimestamp:!1});for(let C=0;C{if(Xm){delete M[Sd];let $=Object.keys(M.dataset).filter(q=>q.startsWith(ue));for(let q of $)delete M.dataset[q]}else{let $=Object.keys(M.dataset).filter(q=>q.startsWith(ue));for(let q of $)delete M.dataset[q]}M.removeAttribute(hs)}),O.querySelectorAll("[data-id]").forEach(M=>{M.removeAttribute("data-id")}),O.querySelectorAll("[contenteditable]").forEach(M=>{M.removeAttribute("contenteditable")}),O.querySelectorAll("style").forEach(M=>{M.getAttribute("type")||M.setAttribute("type","text/css")});let K=new XMLSerializer().serializeToString(O),ee=new ps(K);await S.add(E.filename,ee)}else{let O=n.metadata;if(E.filename===n.opfPath&&O&&O.identifier)try{let N=await yn.loadText(E.filename),z=new DOMParser().parseFromString(N,"text/xml"),Y=z.getElementById(z.documentElement.getAttribute("unique-identifier"))??z.getElementsByTagNameNS(NS.DC,"identifier")[0],ne=Math.random().toString(10).slice(2,15);Y.textContent=ne;let K=new XMLSerializer().serializeToString(z),ee=new ps(K);await S.add(E.filename,ee)}catch{let z=await yn.loadBlob(E.filename);await S.add(E.filename,new ms(z))}else try{let N=await yn.loadBlob(E.filename);await S.add(E.filename,new ms(N))}catch{}}}await S.close();let x=await w.getData(),k=e.name;e.name.endsWith(".epub.zip")&&(k=k.replace(".epub.zip",".epub"));let v=k.lastIndexOf("."),A=Math.max(160,v);k=k.substring(0,A)+" (Translated)"+k.substring(v),await _r.saveAs(x,k),g&&g.classList.remove("disabled"),m&&m.classList.remove("none"),h&&(h.textContent="")}),Ve("#edit").addEventListener("click",b=>{b.preventDefault(),yn||alert("Load failed"),rg()});let c=(n.metadata||{}).title||"Unknown",d=document.querySelector("#bookTitle");d.textContent=c;let f=!1,p=0;for(let b=0;b{if(p++,p===r.length){f=!0,setTimeout(()=>{let E=document.createElement("blockquote");E.classList.add("notranslate");let R=`

1. Click on the Immersive Translate extension popup translation button to start translating.
\u9700\u8981\u624B\u52A8\u70B9\u51FB\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u6269\u5C55/\u811A\u672C\u6D6E\u7A97\u7684\u7FFB\u8BD1\u6309\u94AE\u5F00\u59CB\u7FFB\u8BD1\u3002

2. If the Epub contains images, it's fine for the edit box below not to show the images, the exported Epub will contain the images.
\u5982\u679C Epub \u91CC\u5305\u542B\u56FE\u7247\uFF0C\u4E0B\u9762\u7684\u7F16\u8F91\u6846\u4E0D\u663E\u793A\u56FE\u7247\u662F\u6B63\u5E38\u7684\uFF0C\u5BFC\u51FA\u540E\u7684 Epub \u91CC\u4F1A\u5305\u542B\u56FE\u7247\u3002

3. When the translation is finished, you can click the Edit button above to modify the translation.
\u7FFB\u8BD1\u5B8C\u6210\u540E\uFF0C\u4F60\u53EF\u4EE5\u70B9\u51FB\u4E0A\u65B9\u7684\u7F16\u8F91\u6309\u94AE\u6765\u4FEE\u6539\u8BD1\u6587\u3002

4. When there is a translation error, you can click Retry All above, or click Show Original and translate again. Or the whole page can be refreshed and started again, because the translated part is always cached and no further requests will be sent.
\u5F53\u51FA\u73B0\u7FFB\u8BD1\u9519\u8BEF\u65F6\uFF0C\u53EF\u4EE5\u70B9\u51FB\u4E0A\u65B9\u7684\u91CD\u8BD5\u5168\u90E8\uFF0C\u6216\u8005\u70B9\u51FB\u6D4F\u89C8\u5668\u6269\u5C55\u56FE\u6807\u5148\u663E\u793A\u539F\u6587\uFF0C\u518D\u7FFB\u8BD1\u3002\u6216\u8005\u6574\u4E2A\u5237\u65B0\u9875\u9762\u91CD\u65B0\u6765\u8FC7\u4E5F\u884C\uFF0C\u56E0\u4E3A\u5DF2\u7FFB\u8BD1\u7684\u90E8\u5206\u603B\u662F\u6709\u7F13\u5B58\u7684\uFF0C\u4E0D\u4F1A\u518D\u53D1\u51FA\u8BF7\u6C42\u3002

`,L=document.querySelector("meta[name='immersive-translate-ebook-tips']");if(L){let O=L.getAttribute("content");O&&(R+=O)}E.innerHTML=Lr.sanitize(R),document.querySelector("#tips").append(E)},1e3),document.dispatchEvent(new CustomEvent("immersiveTranslateEbookLoaded"));let k=document.querySelectorAll("iframe"),v=0;k.forEach(E=>{let P=E.contentDocument.body.innerText.length;v+=P});let A=document.createElement("p");A.classList.add("notranslate"),A.innerText=`The book is about ${v} characters in total (\u672C\u4E66\u5927\u7EA6 ${v} \u4E2A\u5B57\u7B26)`,Ve("#stats").append(A)}}}}catch(n){alert(n.message),window.location.reload()}}#e(e){}},Rd=async t=>{document.body.removeChild(Ve("#drop-target"));let e=new gs;globalThis.reader=e,await e.open(t),Ve("#editor").classList.remove("none")},ig=t=>t.preventDefault(),ag=t=>{t.preventDefault();let e=Array.from(t.dataTransfer.items).find(n=>n.kind==="file");if(e){let n=e.webkitGetAsEntry();Rd(n.isFile?e.getAsFile():n).catch(r=>{})}},Od=Ve("#drop-target");Od.addEventListener("drop",ag);Od.addEventListener("dragover",ig);Ve("#file-input").addEventListener("change",t=>Rd(t.target.files[0]).catch(e=>{}));Ve("#file-button").addEventListener("click",()=>Ve("#file-input").click());})(); /*! Bundled license information: diff --git a/dist/firefox/libs/subtitle/subtitle.js b/dist/firefox/libs/subtitle/subtitle.js index 03e43d208..6dc46969f 100644 --- a/dist/firefox/libs/subtitle/subtitle.js +++ b/dist/firefox/libs/subtitle/subtitle.js @@ -11,7 +11,7 @@ `;for(let o=0;o ${Et.toTimeString(a.end)}${r}`,n+=a.text+r,n+=r;continue}t.verbose}return n},hi=e=>/\d+\r?\n\d{1,2}:\d{1,2}:\d{1,2}(?:[.,]\d{1,3})?\s*-->\s*\d{1,2}:\d{1,2}:\d{1,2}(?:[.,]\d{1,3})?/.test(e),Ur=Ce({name:fi,build:mi,detect:hi,helper:Et,parse:gi});var bi="sub",kn=25,yi=(e,t)=>{t.fps||=kn;let n=t.fps>0?t.fps:kn,r=[],o=t.eol||`\r `,a=e.split(/\r?\n/g);for(let i=0;i{let n=(t.fps||0)>0?t.fps:kn,r="",o=t.eol||`\r `;for(let a=0;a=0?i.frame.start:i.start*n,d=typeof i.frame=="object"&&i.frame.end>=0?i.frame.end:i.end*n,l=i.text.replace(/\r?\n/,"|");r+=`{${u}}{${d}}${l}${o}`;continue}t.verbose}return r},Ti=e=>/^\{\d+\}\{\d+\}.*/.test(e),jr=Ce({name:bi,build:xi,detect:Ti,parse:yi});var vi="vtt",At={toMilliseconds:e=>{let t=/^\s*(\d{1,2}:)?(\d{1,2}):(\d{1,2})(?:[.,](\d{1,3}))?\s*$/.exec(e);if(!t)throw new Error(`Invalid time format: ${e}`);let n=t[1]?parseInt(t[1].replace(":","")):0,r=parseInt(t[2]),o=parseInt(t[3]),a=t[4]?parseInt(t[4]):0;return n*3600*1e3+r*60*1e3+o*1e3+a},toTimeString:e=>{let t=Math.floor(e/1e3/3600),n=Math.floor(e/1e3/60%60),r=Math.floor(e/1e3%60),o=Math.floor(e%1e3);return`${(t<10?"0":"")+t}:${n<10?"0":""}${n}:${r<10?"0":""}${r}.${o<100?"0":""}${o<10?"0":""}${o}`}},wi=(e,t)=>{let n=1,r=[],o=e.split(/\r?\n\s*\n/);for(let a=0;a\s*((?:\d{1,2}:)?\d{1,2}:\d{1,2}(?:[.,]\d{1,3})?)\s?.*\r?\n([\s\S]*)$/.exec(o[a]);if(u){let l={};l.type="caption",l.index=n++,u[1]&&(l.cue=u[1].replace(/[\r\n]*/g,"")),l.start=At.toMilliseconds(u[2]),l.end=At.toMilliseconds(u[3]),l.duration=l.end-l.start;let s=u[4].split(/\r?\n/);l.content=s.join(" "),l.text=l.content.replace(/<[^>]+>/g,"").replace(/\{[^}]+\}/g,""),r.push(l);continue}let d=/^([A-Z]+)(\r?\n([\s\S]*))?$/.exec(o[a])||/^([A-Z]+)\s+([^\r\n]*)$/.exec(o[a]);if(d){let l={};l.type="meta",l.name=d[1],d[3]&&(l.data=d[3]),r.push(l);continue}t.verbose}return r},Ci=(e,t)=>{let n=t.eol||`\r -`,r=`WEBVTT${n}${n}`;for(let o=0;o ${At.toTimeString(a.end)}${n}`,r+=a.text+n,r+=n;continue}t.verbose}return r},Si=e=>/^\s*WEBVTT\r?\n/.test(e),zr=Ce({name:vi,build:Ci,detect:Si,helper:At,parse:wi});var ki={vtt:zr,lrc:Nr,smi:Br,ssa:Fr,ass:Rr,sub:jr,srt:Ur,sbv:$r,json:Dr},Wr=ki;var _i=e=>JSON.parse(JSON.stringify(e)),_n=class{constructor(){this.format=Wr;this.list=()=>Object.keys(this.format);this.detect=t=>{let n=this.list();for(let r=0;r"u"||typeof a.detect!="function")continue;let i=a.detect(t);if(i===!0||i===o)return o}return""};this.parse=(t,n={})=>{let r=n.format||this.detect(t);if(!r||r.trim().length===0)throw new Error("Cannot determine subtitle format!");let o=this.format[r];if(typeof o>"u")throw new Error(`Unsupported subtitle format: ${r}`);let a=o.parse;if(typeof a!="function")throw new Error(`Subtitle format does not support 'parse' op: ${r}`);return a(t,n)};this.build=(t,n={})=>{let r=n.format||"srt";if(!r||r.trim().length===0)throw new Error("Cannot determine subtitle format!");let o=this.format[r];if(typeof o>"u")throw new Error(`Unsupported subtitle format: ${r}`);let a=o.build;if(typeof a!="function")throw new Error(`Subtitle format does not support 'build' op: ${r}`);return a(t,n)};this.convert=(t,n={})=>{let r={};typeof n=="string"?r.to=n:r=n;let o={format:r.from||void 0,verbose:r.verbose,eol:r.eol},a=this.parse(t,o);r.resync&&(a=this.resync(a,r.resync));let i={format:r.to||r.format,verbose:r.verbose,eol:r.eol};return this.build(a,i)};this.resync=(t,n={})=>{let r,o,a=!1,i;if(typeof n=="function")r=n;else if(typeof n=="number")i=n,r=d=>[d[0]+i,d[1]+i];else if(typeof n=="object")i=(n.offset||0)*(n.frame?n.fps||25:1),o=n.ratio||1,a=n.frame||!1,r=d=>[Math.round(d[0]*o+i),Math.round(d[1]*o+i)];else throw new Error("Argument 'options' not defined!");let u=[];for(let d=0;d2&&(i.children=arguments.length>3?Yt.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(a in e.defaultProps)i[a]===void 0&&(i[a]=e.defaultProps[a]);return Ht(e,i,r,o,null)}function Ht(e,t,n,r,o){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:o??++Yr};return o==null&&I.vnode!=null&&I.vnode(a),a}function at(e){return e.children}function qt(e,t){this.props=e,this.context=t}function xt(e,t){if(t==null)return e.__?xt(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Ht(f.type,f.props,f.key,f.ref?f.ref:null,f.__v):f)!=null){if(f.__=n,f.__b=n.__b+1,(g=p[s])===null||g&&f.key==g.key&&f.type===g.type)p[s]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Xt}),n.__[e]}function ze(e){return Pn=1,Oi(ho,e)}function Oi(e,t,n){var r=mo(Fn++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):ho(void 0,t),function(a){var i=r.__N?r.__N[0]:r.__[0],u=r.t(i,a);i!==u&&(r.__N=[u,r.__[1]],r.__c.setState({}))}],r.__c=Te,!Te.u)){Te.u=!0;var o=Te.shouldComponentUpdate;Te.shouldComponentUpdate=function(a,i,u){if(!r.__c.__H)return!0;var d=r.__c.__H.__.filter(function(s){return s.__c});if(d.every(function(s){return!s.__N}))return!o||o.call(this,a,i,u);var l=!1;return d.forEach(function(s){if(s.__N){var m=s.__[0];s.__=s.__N,s.__N=void 0,m!==s.__[0]&&(l=!0)}}),!!l&&(!o||o.call(this,a,i,u))}}return r.__N||r.__}function Tt(e,t){var n=mo(Fn++,3);!I.__s&&Di(n.__H,t)&&(n.__=e,n.i=t,Te.__H.__h.push(n))}function Fi(){for(var e;e=go.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Zt),e.__H.__h.forEach(On),e.__H.__h=[]}catch(t){e.__H.__h=[],I.__e(t,e.__v)}}I.__b=function(e){typeof e.type!="function"||e.o||e.type===at?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Te=null,so&&so(e)},I.__r=function(e){lo&&lo(e),Fn=0;var t=(Te=e.__c).__H;t&&(Ln===Te?(t.__h=[],Te.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Xt,n.__N=n.i=void 0})):(t.__h.forEach(Zt),t.__h.forEach(On),t.__h=[])),Ln=Te},I.diffed=function(e){co&&co(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(go.push(t)!==1&&io===I.requestAnimationFrame||((io=I.requestAnimationFrame)||Ri)(Fi)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Xt&&(n.__=n.__V),n.i=void 0,n.__V=Xt})),Ln=Te=null},I.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Zt),n.__h=n.__h.filter(function(r){return!r.__||On(r)})}catch(r){t.some(function(o){o.__h&&(o.__h=[])}),t=[],I.__e(r,n.__v)}}),uo&&uo(e,t)},I.unmount=function(e){po&&po(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(r){try{Zt(r)}catch(o){t=o}}),n.__H=void 0,t&&I.__e(t,n.__v))};var fo=typeof requestAnimationFrame=="function";function Ri(e){var t,n=function(){clearTimeout(r),fo&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,100);fo&&(t=requestAnimationFrame(n))}function Zt(e){var t=Te,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Te=t}function On(e){var t=Te;e.__c=e.__(),Te=t}function Di(e,t){return!e||e.length!==t.length||t.some(function(n,r){return n!==e[r]})}function ho(e,t){return typeof t=="function"?t(e):t}function bo(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function yo(e,t){let n=e;return t&&Object.keys(t).forEach(r=>{let o=t[r],a=Bi(r);if(typeof o=="object"||a){let i=o;a&&typeof i=="string"&&(i={tag:"a",href:i,target:"_blank"});let u=`<${r}>`,d=n.indexOf(u);if(d!==-1){let l=i.tag||"a",s=n.indexOf(``);if(s!==-1){let m=n.substring(d+u.length,s),g=Object.keys(i).filter(f=>f!=="tag").map(f=>`${f}="${i[f]}"`).join(" ");n=n.replace(`${u}${m}`,`<${l} ${g}>${m}`)}}}else{let i=new RegExp("{"+r+"}","gm");n=n.replace(i,o.toString())}}),n}function Rn(e,t,n){let r=e[t];if(!r)return n;let o=n.split("."),a="";do{a+=o.shift();let i=r[a];i!==void 0&&(typeof i=="object"||!o.length)?(r=i,a=""):o.length?a+=".":r=n}while(o.length);return r}function Bi(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}var vt={},Ui={root:"",lang:"en",fallbackLang:"en"};function Dn(e,t){let n=Object.assign({},Ui,e);vt=t||vt;let[r,o]=ze(n.lang),[a,i]=ze(vt),[u,d]=ze(!1),l=m=>{if(a.hasOwnProperty(m))return;d(!1);let g=bo(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(f=>f.json()).then(f=>{vt[m]=f,i({...vt}),d(!0)}).catch(f=>{i({...vt}),d(!0)}))};return Tt(()=>{l(n.fallbackLang||"en"),l(r)},[r]),{lang:r,setLang:o,t:(m,g)=>{if(!a.hasOwnProperty(r))return m;let f=Rn(a,r,m);return f===m&&r!==n.fallbackLang&&(f=Rn(a,n.fallbackLang,m)),yo(f,g)},isReady:u}}var ji=0;function q(e,t,n,r,o){var a,i,u={};for(i in t)i=="ref"?a=t[i]:u[i]=t[i];var d={type:e,props:u,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--ji,__source:o,__self:r};if(typeof e=="function"&&(a=e.defaultProps))for(i in a)u[i]===void 0&&(u[i]=a[i]);return I.vnode&&I.vnode(d),d}var zi=Qt(null),Nn={root:"assets",lang:"en",fallbackLang:"en"},xo=e=>{let{t,setLang:n,lang:r,isReady:o}=Dn({root:e.root||Nn.root,lang:e.lang||Nn.lang,fallbackLang:e.fallbackLang||Nn.fallbackLang,getUrl:e.getUrl},e.translations);return q(zi.Provider,{value:{t,setLang:n,lang:r,isReady:o},children:e.children})};var $n;function Vn(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function Eo(e,t=","){return e.map(Vn).join(t)}var Ao=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function tn(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function nn(e,t="@media "){return t+$e(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(r=>`(${r}-width:${n[r]})`).join(" and "))).join(",")}function $e(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function Wi(){}var Se={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function Lo(e){return e.match(/[-=:;]/g)?.length||0}function Wn(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(Lo(e),15)<<18}var Hi=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function Gn({n:e,i:t,v:n=[]},r,o,a){e&&(e=Vn({n:e,i:t,v:n})),a=[...$e(a)];for(let u of n){let d=r.theme("screens",u);for(let l of $e(d&&nn(d)||r.v(u))){var i;a.push(l),o|=d?67108864|Wn(l):u=="dark"?1073741824:l[0]=="@"?Wn(l):(i=l,1<<~(/:([a-z-]+)/.test(i)&&~Hi.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:o,r:a,i:t}}var Yn=new Map;function To(e){if(e.d){let t=[],n=In(e.r.reduce((r,o)=>o[0]=="@"?(t.push(o),r):o?In(r,a=>In(o,i=>{let u=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(i);if(u){let d=a.indexOf(u[1]);return~d?a.slice(0,d)+u[0]+a.slice(d+u[1].length):Bn(a,i)}return Bn(i,a)})):r,"&"),r=>Bn(r,e.n?"."+Ao(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((r,o)=>o+"{"+r+"}",e.d)}}function In(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,r,o)=>t(r)+o)}function Bn(e,t){return e.replace(/&/g,t)}var vo=new Intl.Collator("en",{numeric:!0});function qi(e,t){for(var n=0,r=e.length;n>1;0>=Po(e[o],t)?n=o+1:r=o}return r}function Po(e,t){let n=e.p&Se.o;return n==(t.p&Se.o)&&(n==Se.b||n==Se.o)?0:e.p-t.p||e.o-t.o||vo.compare(wo(e.n),wo(t.n))||vo.compare(Co(e.n),Co(t.n))}function wo(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function Co(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function Un(e,t){return Math.round(parseInt(e,16)*t)}function st(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:r}=t,o=r?`var(${r})`:n;if(e.includes(""))return e.replace("",o);if(e[0]=="#"&&(e.length==4||e.length==7)){let a=(e.length-1)/3,i=[17,1,.062272][a-1];return`rgba(${[Un(e.substr(1,a),i),Un(e.substr(1+a,a),i),Un(e.substr(1+2*a,a),i),o]})`}return o=="1"?e:o=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${o})`)}function Oo(e,t,n,r,o=[]){return function a(i,{n:u,p:d,r:l=[],i:s},m){let g=[],f="",h=0,k=0;for(let v in i||{}){var _,p;let M=i[v];if(v[0]=="@"){if(!M)continue;if(v[1]=="a"){g.push(...Ro(u,d,Qn(""+M),m,d,l,s,!0));continue}if(v[1]=="l"){for(let K of $e(M))g.push(...a(K,{n:u,p:(_=Se[v[7]],d&~Se.o|_),r:v[7]=="d"?[]:l,i:s},m));continue}if(v[1]=="i"){g.push(...$e(M).map(K=>({p:-1,o:0,r:[],d:v+" "+K})));continue}if(v[1]=="k"){g.push({p:Se.d,o:0,r:[v],d:a(M,{p:Se.d},m).map(To).join("")});continue}if(v[1]=="f"){g.push(...$e(M).map(K=>({p:Se.d,o:0,r:[v],d:a(K,{p:Se.d},m).map(To).join("")})));continue}}if(typeof M!="object"||Array.isArray(M))v=="label"&&M?u=M+tn(JSON.stringify([d,s,i])):(M||M===0)&&(v=v.replace(/[A-Z]/g,K=>"-"+K.toLowerCase()),k+=1,h=Math.max(h,(p=v)[0]=="-"?0:Lo(p)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(p)?+!!RegExp.$1||-!!RegExp.$2:0)+1),f+=(f?";":"")+$e(M).map(K=>m.s(v,Fo(""+K,m.theme)+(s?" !important":""))).join(";"));else if(v[0]=="@"||v.includes("&")){let K=d;v[0]=="@"&&(v=v.replace(/\bscreen\(([^)]+)\)/g,($,U)=>{let O=m.theme("screens",U);return O?(K|=67108864,nn(O,"")):$}),K|=Wn(v)),g.push(...a(M,{n:u,p:K,r:[...l,v],i:s},m))}else g.push(...a(M,{p:d,r:[...l,v]},m))}return g.unshift({n:u,p:d,o:Math.max(0,15-k)+1.5*Math.min(h||15,15),r:l,d:f}),g.sort(Po)}(e,Gn(t,n,r,o),n)}function Fo(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,r,o,a,i="")=>{let u=t(o,i);return typeof u=="function"&&/color|fill|stroke/i.test(o)?st(u):""+$e(u).filter(d=>Object(d)!==d)})}function Jn(e,t){let n,r=[];for(let o of e)o.d&&o.n?n?.p==o.p&&""+n.r==""+o.r?(n.c=[n.c,o.c].filter(Boolean).join(" "),n.d=n.d+";"+o.d):r.push(n={...o,n:o.n&&t}):r.push({...o,n:o.n&&t});return r}function Hn(e,t,n=Se.u,r,o){let a=[];for(let i of e)for(let u of function(d,l,s,m,g){d={...d,i:d.i||g};let f=function(h,k){let _=Yn.get(h.n);return _?_(h,k):k.r(h.n,h.v[0]=="dark")}(d,l);return f?typeof f=="string"?({r:m,p:s}=Gn(d,l,s,m),Jn(Hn(Qn(f),l,s,m,d.i),d.n)):Array.isArray(f)?f.map(h=>{var k,_;return{o:0,...h,r:[...$e(m),...$e(h.r)],p:(k=s,_=h.p??s,k&~Se.o|_)}}):Oo(f,d,l,s,m):[{c:Vn(d),p:0,o:0,r:[]}]}(i,t,n,r,o))a.splice(qi(a,u),0,u);return a}function Ro(e,t,n,r,o,a,i,u){return Jn((u?n.flatMap(d=>Hn([d],r,o,a,i)):Hn(n,r,o,a,i)).map(d=>d.p&Se.o&&(d.n||t==Se.b)?{...d,p:d.p&~Se.o|t,o:0}:d),e)}function Ki(e,t,n,r){var o;return o=(a,i)=>{let{n:u,p:d,r:l,i:s}=Gn(a,i,t);return n&&Ro(u,t,n,i,d,l,s,r)},Yn.set(e,o),e}function jn(e,t,n){if(e[e.length-1]!="("){let r=[],o=!1,a=!1,i="";for(let u of e)if(!(u=="("||/[~@]$/.test(u))){if(u[0]=="!"&&(u=u.slice(1),o=!o),u.endsWith(":")){r[u=="dark:"?"unshift":"push"](u.slice(0,-1));continue}u[0]=="-"&&(u=u.slice(1),a=!a),u.endsWith("-")&&(u=u.slice(0,-1)),u&&u!="&"&&(i+=(i&&"-")+u)}i&&(a&&(i="-"+i),t[0].push({n:i,v:r.filter(Vi),i:o}))}}function Vi(e,t,n){return n.indexOf(e)==t}var So=new Map;function Qn(e){let t=So.get(e);if(!t){let n=[],r=[[]],o=0,a=0,i=null,u=0,d=(l,s=0)=>{o!=u&&(n.push(e.slice(o,u+s)),l&&jn(n,r)),o=u+1};for(;u1?m.slice(0,-1)+tn(JSON.stringify([m,g])):m+"("+Eo(g)+")",Se.a,g,/@$/.test(m))],r)}s=n.lastIndexOf("(",s-1)}n.length=s+1}else/[~@]/.test(l)&&e[u+1]=="("&&r.unshift([])}d(!0),So.set(e,t=r[0])}return t}function Do(e,t,n){return t.reduce((r,o,a)=>r+n(o)+e[a+1],e[0])}function No(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?Do(e,t,n=>zn(n).trim()):t.filter(Boolean).reduce((n,r)=>n+zn(r),e?zn(e):"")}function zn(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=No(e[0],e.slice(1)))&&(n+=" "+t);else for(let r in e)e[r]&&(n+=" "+r);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var J0=$o("@"),Q0=$o("~");function $o(e){return new Proxy(function(n,...r){return t("",n,r)},{get(n,r){return r in n?n[r]:function(o,...a){return t(r,o,a)}}});function t(n,r,o){return Eo(Qn(n+e+"("+No(r,o)+")"))}}function qn(e,t){return Array.isArray(e)?ko(Do(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?ko(e):[e]}var Gi=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function ko(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],r=[n[0]],o=[];for(;t=Gi.exec(e);)t[4]&&(n.shift(),o.shift()),t[3]?(o.unshift(t[3]),n.unshift({}),r.push(o.reduce((a,i)=>({[i]:a}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),r.push(o.reduce((a,i)=>({[i]:a}),n[0]))),n[0][t[1]]=t[2]);return r}function Io(e,...t){var n;let r=qn(e,t),o=(r.find(a=>a.label)?.label||"css")+tn(JSON.stringify(r));return n=(a,i)=>Jn(r.flatMap(u=>Oo(u,a,i,Se.o)),o),Yn.set(o,n),o}var X0=new Proxy(function(e,t){return _o("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,r){return _o(t,n,r)}}});function _o(e,t,n){return{toString(){return Io({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function x(e,t,n){return[e,Yi(t,n)]}function Yi(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,r)=>({[e]:t?t(n,r):Kn(n,1)}):n=>e||{[n[1]]:Kn(n,2)}}function Kn(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function T(e,t,n,r){return[e,Ji(t,n,r)]}function Ji(e,t,n){let r=typeof t=="string"?(o,a)=>({[t]:n?n(o,a):o._}):t||(({1:o,_:a},i,u)=>({[o||u]:a}));return(o,a)=>{let i=Bo(e||o[1]),u=a.theme(i,o.$$)??wt(o.$$,i,a);if(u!=null)return o._=Kn(o,0,u),r(o,a,i)}}function ve(e,t={},n){return[e,Qi(t,n)]}function Qi(e={},t){return(n,r)=>{let{section:o=Bo(n[0]).replace("-","")+"Color"}=e,[a,i]=Xi(n.$$);if(!a)return;let u=r.theme(o,a)||wt(a,o,r);if(!u||typeof u=="object")return;let{opacityVariable:d=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=o.replace("Color","Opacity"),property:s=o,selector:m}=e,g=r.theme(l,i||"DEFAULT")||i&&wt(i,l,r),f=t||(({_:k})=>{let _=Pt(s,k);return m?{[m]:_}:_});n._={value:st(u,{opacityVariable:d||void 0,opacityValue:g||void 0}),color:k=>st(u,k),opacityVariable:d||void 0,opacityValue:g||void 0};let h=f(n,r);if(!n.dark){let k=r.d(o,a,u);k&&k!==u&&(n._={value:st(k,{opacityVariable:d||void 0,opacityValue:g||"1"}),color:_=>st(k,_),opacityVariable:d||void 0,opacityValue:g||void 0},h={"&":h,[r.v("dark")]:f(n,r)})}return h}}function Xi(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function Pt(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function wt(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=en(Fo(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function Bo(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function en(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",r,o="")=>en(n)+r+en(o)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var Z0=Symbol();var Uo=new Proxy(Wi,{apply(e,t,n){return $n(n[0])},get(e,t){let n=$n[t];return typeof n=="function"?function(){return n.apply($n,arguments)}:n}});var eu=function e(t){return new Proxy(function(n,...r){return Mo(t,"",n,r)},{get(n,r){return r==="bind"?e:r in n?n[r]:function(o,...a){return Mo(t,r,o,a)}}})}();function Mo(e,t,n,r){return{toString(){let o=qn(n,r),a=Ao(t+tn(JSON.stringify([t,o])));return(typeof e=="function"?e:Uo)(Io({[`@keyframes ${a}`]:qn(n,r)})),a}}}var jo={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Ie(4,"rem",4,.5,.5),...Ie(12,"rem",4,5),14:"3.5rem",...Ie(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:X("blur"),backdropBrightness:X("brightness"),backdropContrast:X("contrast"),backdropGrayscale:X("grayscale"),backdropHueRotate:X("hueRotate"),backdropInvert:X("invert"),backdropOpacity:X("opacity"),backdropSaturate:X("saturate"),backdropSepia:X("sepia"),backgroundColor:X("colors"),backgroundImage:{none:"none"},backgroundOpacity:X("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Ie(200,"",100,0,50),...Ie(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:X("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:X("spacing"),borderWidth:{DEFAULT:"1px",...We(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:X("colors"),caretColor:X("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Ie(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:X("borderColor"),divideOpacity:X("borderOpacity"),divideWidth:X("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...Ot(2,6),...Ot(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:X("spacing"),gradientColorStops:X("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...Ot(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...Ot(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Ie(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Ie(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:X("spacing"),placeholderColor:X("colors"),placeholderOpacity:X("opacity"),outlineColor:X("colors"),outlineOffset:We(8,"px"),outlineWidth:We(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:X("colors"),ringOffsetWidth:We(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...We(8,"px")},rotate:{...We(2,"deg"),...We(12,"deg",3),...We(180,"deg",45)},saturate:Ie(200,"",100,0,50),scale:{...Ie(150,"",100,0,50),...Ie(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:X("spacing"),scrollPadding:X("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...We(2,"deg"),...We(12,"deg",3)},space:X("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Ie(2),textColor:X("colors"),textDecorationColor:X("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...We(8,"px")},textUnderlineOffset:{auto:"auto",...We(8,"px")},textIndent:X("spacing"),textOpacity:X("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:X("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...Ot(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Ie(50,"",1,0,10),auto:"auto"}};function Ot(e,t){let n={};do for(var r=1;rt(e)}var yu={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${jo.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${jo.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},Tu=[x("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:wt(`[${t}]`,"",n)}}})),x("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),T("aspect-","aspectRatio"),x("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:r,padding:o}=t("container"),a={width:"100%",marginRight:r&&"auto",marginLeft:r&&"auto",...i("xs")};for(let u in n){let d=n[u];typeof d=="string"&&(a[nn(d)]={"&":{maxWidth:d,...i(u)}})}return a;function i(u){let d=o&&(typeof o=="string"?o:o[u]||o.DEFAULT);if(d)return{paddingRight:d,paddingLeft:d}}}),T("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),x("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),x("box-(border|content)","boxSizing",({1:e})=>e+"-box"),x("hidden",{display:"none"}),x("table-(auto|fixed)","tableLayout"),x(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",x("isolate","isolation"),x("object-(contain|cover|fill|none|scale-down)","objectFit"),T("object-","objectPosition"),x("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",rn),x("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),x("(static|fixed|absolute|relative|sticky)","position"),T("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),T("-?(top|bottom|left|right)(?:$|-)","inset"),x("(visible|collapse)","visibility"),x("invisible",{visibility:"hidden"}),T("-?z-","zIndex"),x("flex-((row|col)(-reverse)?)","flexDirection",zo),x("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),T("(flex-(?:grow|shrink))(?:$|-)"),T("(flex)-"),T("grow(?:$|-)","flexGrow"),T("shrink(?:$|-)","flexShrink"),T("basis-","flexBasis"),T("-?(order)-"),"-?(order)-(\\d+)",T("grid-cols-","gridTemplateColumns"),x("grid-cols-(\\d+)","gridTemplateColumns",Ko),T("col-","gridColumn"),x("col-(span)-(\\d+)","gridColumn",qo),T("col-start-","gridColumnStart"),x("col-start-(auto|\\d+)","gridColumnStart"),T("col-end-","gridColumnEnd"),x("col-end-(auto|\\d+)","gridColumnEnd"),T("grid-rows-","gridTemplateRows"),x("grid-rows-(\\d+)","gridTemplateRows",Ko),T("row-","gridRow"),x("row-(span)-(\\d+)","gridRow",qo),T("row-start-","gridRowStart"),x("row-start-(auto|\\d+)","gridRowStart"),T("row-end-","gridRowEnd"),x("row-end-(auto|\\d+)","gridRowEnd"),x("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>rn(zo(e))),x("grid-flow-(dense)","gridAutoFlow"),T("auto-cols-","gridAutoColumns"),T("auto-rows-","gridAutoRows"),T("gap-x(?:$|-)","gap","columnGap"),T("gap-y(?:$|-)","gap","rowGap"),T("gap(?:$|-)","gap"),"(justify-(?:items|self))-",x("justify-","justifyContent",Wo),x("(content|items|self)-",e=>({["align-"+e[1]]:Wo(e)})),x("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),T("p([xytrbl])?(?:$|-)","padding",Ct("padding")),T("-?m([xytrbl])?(?:$|-)","margin",Ct("margin")),T("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),x("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),T("w-","width"),T("min-w-","minWidth"),T("max-w-","maxWidth"),T("h-","height"),T("min-h-","minHeight"),T("max-h-","maxHeight"),T("font-","fontWeight"),T("font-","fontFamily",({_:e})=>typeof(e=$e(e))[1]=="string"?{fontFamily:Ge(e)}:{fontFamily:Ge(e[0]),...e[1]}),x("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),x("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),x("italic","fontStyle"),x("not-italic",{fontStyle:"normal"}),x("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...lt({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),T("tracking-","letterSpacing"),T("leading-","lineHeight"),x("list-(inside|outside)","listStylePosition"),T("list-","listStyleType"),x("list-","listStyleType"),T("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),ve("placeholder-",{property:"color",selector:"&::placeholder"}),x("text-(left|center|right|justify|start|end)","textAlign"),x("text-(ellipsis|clip)","textOverflow"),T("text-opacity-","textOpacity","--tw-text-opacity"),ve("text-",{property:"color"}),T("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),T("indent-","textIndent"),x("(overline|underline|line-through)","textDecorationLine"),x("no-underline",{textDecorationLine:"none"}),T("underline-offset-","textUnderlineOffset"),ve("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),T("decoration-","textDecorationThickness"),x("decoration-","textDecorationStyle"),x("(uppercase|lowercase|capitalize)","textTransform"),x("normal-case",{textTransform:"none"}),x("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),x("align-","verticalAlign"),x("whitespace-","whiteSpace"),x("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),x("break-words",{overflowWrap:"break-word"}),x("break-all",{wordBreak:"break-all"}),x("break-keep",{wordBreak:"keep-all"}),ve("caret-",{opacityVariable:!1,opacitySection:"opacity"}),ve("accent-",{opacityVariable:!1,opacitySection:"opacity"}),x("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${gt(e," ")},var(--tw-gradient-stops))`),ve("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),ve("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),ve("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),x("bg-(fixed|local|scroll)","backgroundAttachment"),x("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),x(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),x("bg-blend-","backgroundBlendMode"),x("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),T("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),ve("bg-",{section:"backgroundColor"}),T("bg-","backgroundImage"),T("bg-","backgroundPosition"),x("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",rn),T("bg-","backgroundSize"),T("rounded(?:$|-)","borderRadius"),T("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${gt(n[0])}-radius`]:t,[`border-${gt(n[1])}-radius`]:t}}),x("border-(collapse|separate)","borderCollapse"),T("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),x("border-(solid|dashed|dotted|double|none)","borderStyle"),T("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...lt({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),ve("border-([xytrbl])-",{section:"borderColor"},Ct("border","Color")),ve("border-"),T("border-([xytrbl])(?:$|-)","borderWidth",Ct("border","Width")),T("border(?:$|-)","borderWidth"),T("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),x("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),x("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),T("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${gt(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${gt(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),ve("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),T("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),ve("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),T("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),x("ring-inset",{"--tw-ring-inset":"inset"}),ve("ring-",{property:"--tw-ring-color"}),T("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...lt({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":st(t("ringOffsetColor","","#fff")),"--tw-ring-color":st(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),ve("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),T("shadow(?:$|-)","boxShadow",({_:e})=>({...lt({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":Ge(e),"--tw-shadow-colored":Ge(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),T("(opacity)-"),x("mix-blend-","mixBlendMode"),...Ho(),...Ho("backdrop-"),T("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:Ge(e),transitionTimingFunction:e._=="none"?void 0:Ge(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:Ge(t("transitionDuration",""))})),T("duration(?:$|-)","transitionDuration","transitionDuration",Ge),T("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",Ge),T("delay(?:$|-)","transitionDelay","transitionDelay",Ge),T("animate(?:$|-)","animation",(e,{theme:t,h:n,e:r})=>{let o=Ge(e),a=o.split(" "),i=t("keyframes",a[0]);return i?{["@keyframes "+(a[0]=r(n(a[0])))]:i,animation:a.join(" ")}:{animation:o}}),"(transform)-(none)",x("transform",Zn),x("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":Vo(e=="gpu")})),T("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...Zn()})),T("-?(rotate)-","rotate",Xn),T("-?(translate-[xy])-","translate",Xn),T("-?(skew-[xy])-","skew",Xn),x("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",rn),"(appearance)-",T("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",T("(cursor)-"),"(cursor)-",x("snap-(none)","scroll-snap-type"),x("snap-(x|y|both)",({1:e})=>({...lt({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),x("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),x("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),x("snap-(normal|always)","scroll-snap-stop"),x("scroll-(auto|smooth)","scroll-behavior"),T("scroll-p([xytrbl])?(?:$|-)","padding",Ct("scroll-padding")),T("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",Ct("scroll-margin")),x("touch-(auto|none|manipulation)","touch-action"),x("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...lt({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),x("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),x("outline",{outlineStyle:"solid"}),x("outline-(dashed|dotted|double)","outlineStyle"),T("-?(outline-offset)-"),ve("outline-",{opacityVariable:!1,opacitySection:"opacity"}),T("outline-","outlineWidth"),"(pointer-events)-",T("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],x("select-(none|text|all|auto)","userSelect"),ve("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),ve("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),T("stroke-","strokeWidth"),x("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),x("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function rn(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function zo(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function gt(e,t="-"){let n=[];for(let r of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[r]);return n.join(t)}function Ge(e){return e&&""+(e._||e)}function Wo({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function Ct(e,t=""){return({1:n,_:r})=>{let o={x:"lr",y:"tb"}[n]||n+n;return o?{...Pt(e+"-"+gt(o[0])+t,r),...Pt(e+"-"+gt(o[1])+t,r)}:Pt(e+t,r)}}function Ho(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let r of t)n[`--tw-${e}${r}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...lt(n),[`${e}filter`]:t.map(r=>`var(--tw-${e}${r})`).join(" ")},[`(${e}filter)-(none)`,x(`${e}filter`,n),...t.map(r=>T(`${r[0]=="h"?"-?":""}(${e}${r})(?:$|-)`,r,({1:o,_:a})=>({[`--tw-${o}`]:$e(a).map(i=>`${r}(${i})`).join(" "),...n})))]}function Xn({1:e,_:t}){return{["--tw-"+e]:t,...Zn()}}function Zn(){return{...lt({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":Vo()}),transform:"var(--tw-transform)"}}function Vo(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function qo({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function Ko({1:e}){return`repeat(${e},minmax(0,1fr))`}function lt(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var on=globalThis||(typeof window<"u"?window:self),ts=Object.create,tr=Object.defineProperty,ns=Object.getOwnPropertyDescriptor,rs=Object.getOwnPropertyNames,os=Object.getPrototypeOf,as=Object.prototype.hasOwnProperty,is=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ss=(e,t)=>{for(var n in t)tr(e,n,{get:t[n],enumerable:!0})},er=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of rs(t))!as.call(e,o)&&o!==n&&tr(e,o,{get:()=>t[o],enumerable:!(r=ns(t,o))||r.enumerable});return e},ls=(e,t,n)=>(er(e,t,"default"),n&&er(n,t,"default")),Yo=(e,t,n)=>(n=e!=null?ts(os(e)):{},er(t||!e||!e.__esModule?tr(n,"default",{value:e,enumerable:!0}):n,e)),Jo=is((e,t)=>{(function(n,r){typeof define=="function"&&define.amd?define([],r):typeof e<"u"?r():(r(),n.FileSaver={})})(e,function(){"use strict";function n(l,s){return typeof s>"u"?s={autoBom:!1}:typeof s!="object"&&(s={autoBom:!s}),s.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function r(l,s,m){var g=new XMLHttpRequest;g.open("GET",l),g.responseType="blob",g.onload=function(){d(g.response,s,m)},g.onerror=function(){},g.send()}function o(l){var s=new XMLHttpRequest;s.open("HEAD",l,!1);try{s.send()}catch{}return 200<=s.status&&299>=s.status}function a(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var s=document.createEvent("MouseEvents");s.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(s)}}var i=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof on=="object"&&on.global===on?on:void 0,u=i.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),d=i.saveAs||(typeof window!="object"||window!==i?function(){}:"download"in HTMLAnchorElement.prototype&&!u?function(l,s,m){var g=i.URL||i.webkitURL,f=document.createElement("a");s=s||l.name||"download",f.download=s,f.rel="noopener",typeof l=="string"?(f.href=l,f.origin===location.origin?a(f):o(f.href)?r(l,s,m):a(f,f.target="_blank")):(f.href=g.createObjectURL(l),setTimeout(function(){g.revokeObjectURL(f.href)},4e4),setTimeout(function(){a(f)},0))}:"msSaveOrOpenBlob"in navigator?function(l,s,m){if(s=s||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,m),s);else if(o(l))r(l,s,m);else{var g=document.createElement("a");g.href=l,g.target="_blank",setTimeout(function(){a(g)})}}:function(l,s,m,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),typeof l=="string")return r(l,s,m);var f=l.type==="application/octet-stream",h=/constructor/i.test(i.HTMLElement)||i.safari,k=/CriOS\/[\d]+/.test(navigator.userAgent);if((k||f&&h||u)&&typeof FileReader<"u"){var _=new FileReader;_.onloadend=function(){var M=_.result;M=k?M:M.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=M:location=M,g=null},_.readAsDataURL(l)}else{var p=i.URL||i.webkitURL,v=p.createObjectURL(l);g?g.location=v:location.href=v,g=null,setTimeout(function(){p.revokeObjectURL(v)},4e4)}});i.saveAs=d.saveAs=d,typeof t<"u"&&(t.exports=d)})}),Qo={};ss(Qo,{default:()=>Ft});var cs=Yo(Jo());ls(Qo,Yo(Jo()));var{default:Go,...us}=cs,Ft=Go!==void 0?Go:us;var Xo={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var Zo={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var ea={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var gs=[{code:"zh-CN",messages:Xo},{code:"zh-TW",messages:Zo},{code:"en",messages:ea}];var Rt={};for(let e of gs)Rt[e.code]=e.messages;var mt="Immersive Translate",Oe="immersive-translate";var j="immersiveTranslate";var Xu=j+"GoogleAccessToken",Zu=j+"AuthFlow";var ed=j+"AuthState",td=j+"IframeMessage",nd=j+"WaitForRateLimit",rd=j+"DocumentMessageAsk",na=j+"DocumentMessageTellThirdParty",ra=j+"DocumentMessageThirdPartyTell",od=j+"DocumentMessageHandler",ad=`${j}Container`,id=`${j}SpecifiedContainer`;var sd=`${j}PageTranslatedStatus`,ld=`${j}PageUrlChanged`,cd=`${j}ReceiveCommand`,ud=j+"LastUseMouseHoverTime",dd=j+"LastUseInputTime",pd=j+"LastUseManualTranslatePageTime",fd=`${j}PopupReceiveMessage`,ms="immersivetranslate.com",hs="config.immersivetranslate.com",gd=`https://${ms}/`,md=`https://${hs}/default_config.json`,hd=`${j}Mark`;var bd=`${j}Root`,yd=`data-${Oe}-effect`,xd=`data-${Oe}-translation-element-mark`,Td=`${j}TranslationElementMark`,vd=`${j}TranslatedMark`,wd=`${j}ParagraphId`,Cd=`${j}LoadingId`,Sd=`data-${Oe}-loading-id`,kd=`${j}ErrorId`,_d=`data-${Oe}-error-id`,Md=`${j}AtomicBlockMark`,Ed=`${j}ExcludeMark`,Ad=`data-${Oe}-exclude-mark`,Ld=`${j}StayOriginalMark`,Pd=`${j}PreWhitespaceMark`,Od=`${j}InlineMark`,Fd=`${j}BlockMark`,Rd=`${j}Left`,Dd=`${j}Right`,Nd=`${j}Width`,$d=`${j}Height`,Id=`${j}Top`,Bd=`${j}FontSize`;var Ud=`${j}GlobalStyleMark`;var jd=`${Oe}-target-wrapper`,zd=`${Oe}-pdf-target-container`,Wd=`${Oe}-target-inner`,Hd=`${Oe}-source-wrapper`,qd=`${Oe}-target-translation-block-wrapper`,Kd=`${Oe}-root-translation-theme`,Vd=`${j}RootTranslationTheme`,Gd=`${Oe}-target-translation-vertical-block-wrapper`,Yd=`${Oe}-target-translation-pdf-block-wrapper`,Jd=`${Oe}-target-translation-pre-whitespace`,Qd=`${Oe}-target-translation-inline-wrapper`;var ta=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],Xd={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,r=`WEBVTT${n}${n}`;for(let o=0;o ${At.toTimeString(a.end)}${n}`,r+=a.text+n,r+=n;continue}t.verbose}return r},Si=e=>/^\s*WEBVTT\r?\n/.test(e),zr=Ce({name:vi,build:Ci,detect:Si,helper:At,parse:wi});var ki={vtt:zr,lrc:Nr,smi:Br,ssa:Fr,ass:Rr,sub:jr,srt:Ur,sbv:$r,json:Dr},Wr=ki;var _i=e=>JSON.parse(JSON.stringify(e)),_n=class{constructor(){this.format=Wr;this.list=()=>Object.keys(this.format);this.detect=t=>{let n=this.list();for(let r=0;r"u"||typeof a.detect!="function")continue;let i=a.detect(t);if(i===!0||i===o)return o}return""};this.parse=(t,n={})=>{let r=n.format||this.detect(t);if(!r||r.trim().length===0)throw new Error("Cannot determine subtitle format!");let o=this.format[r];if(typeof o>"u")throw new Error(`Unsupported subtitle format: ${r}`);let a=o.parse;if(typeof a!="function")throw new Error(`Subtitle format does not support 'parse' op: ${r}`);return a(t,n)};this.build=(t,n={})=>{let r=n.format||"srt";if(!r||r.trim().length===0)throw new Error("Cannot determine subtitle format!");let o=this.format[r];if(typeof o>"u")throw new Error(`Unsupported subtitle format: ${r}`);let a=o.build;if(typeof a!="function")throw new Error(`Subtitle format does not support 'build' op: ${r}`);return a(t,n)};this.convert=(t,n={})=>{let r={};typeof n=="string"?r.to=n:r=n;let o={format:r.from||void 0,verbose:r.verbose,eol:r.eol},a=this.parse(t,o);r.resync&&(a=this.resync(a,r.resync));let i={format:r.to||r.format,verbose:r.verbose,eol:r.eol};return this.build(a,i)};this.resync=(t,n={})=>{let r,o,a=!1,i;if(typeof n=="function")r=n;else if(typeof n=="number")i=n,r=d=>[d[0]+i,d[1]+i];else if(typeof n=="object")i=(n.offset||0)*(n.frame?n.fps||25:1),o=n.ratio||1,a=n.frame||!1,r=d=>[Math.round(d[0]*o+i),Math.round(d[1]*o+i)];else throw new Error("Argument 'options' not defined!");let u=[];for(let d=0;d2&&(i.children=arguments.length>3?Yt.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(a in e.defaultProps)i[a]===void 0&&(i[a]=e.defaultProps[a]);return Ht(e,i,r,o,null)}function Ht(e,t,n,r,o){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:o??++Yr};return o==null&&I.vnode!=null&&I.vnode(a),a}function at(e){return e.children}function qt(e,t){this.props=e,this.context=t}function xt(e,t){if(t==null)return e.__?xt(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Ht(f.type,f.props,f.key,f.ref?f.ref:null,f.__v):f)!=null){if(f.__=n,f.__b=n.__b+1,(g=p[s])===null||g&&f.key==g.key&&f.type===g.type)p[s]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Xt}),n.__[e]}function ze(e){return Pn=1,Oi(ho,e)}function Oi(e,t,n){var r=mo(Fn++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):ho(void 0,t),function(a){var i=r.__N?r.__N[0]:r.__[0],u=r.t(i,a);i!==u&&(r.__N=[u,r.__[1]],r.__c.setState({}))}],r.__c=Te,!Te.u)){Te.u=!0;var o=Te.shouldComponentUpdate;Te.shouldComponentUpdate=function(a,i,u){if(!r.__c.__H)return!0;var d=r.__c.__H.__.filter(function(s){return s.__c});if(d.every(function(s){return!s.__N}))return!o||o.call(this,a,i,u);var l=!1;return d.forEach(function(s){if(s.__N){var m=s.__[0];s.__=s.__N,s.__N=void 0,m!==s.__[0]&&(l=!0)}}),!!l&&(!o||o.call(this,a,i,u))}}return r.__N||r.__}function Tt(e,t){var n=mo(Fn++,3);!I.__s&&Di(n.__H,t)&&(n.__=e,n.i=t,Te.__H.__h.push(n))}function Fi(){for(var e;e=go.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Zt),e.__H.__h.forEach(On),e.__H.__h=[]}catch(t){e.__H.__h=[],I.__e(t,e.__v)}}I.__b=function(e){typeof e.type!="function"||e.o||e.type===at?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Te=null,so&&so(e)},I.__r=function(e){lo&&lo(e),Fn=0;var t=(Te=e.__c).__H;t&&(Ln===Te?(t.__h=[],Te.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Xt,n.__N=n.i=void 0})):(t.__h.forEach(Zt),t.__h.forEach(On),t.__h=[])),Ln=Te},I.diffed=function(e){co&&co(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(go.push(t)!==1&&io===I.requestAnimationFrame||((io=I.requestAnimationFrame)||Ri)(Fi)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Xt&&(n.__=n.__V),n.i=void 0,n.__V=Xt})),Ln=Te=null},I.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Zt),n.__h=n.__h.filter(function(r){return!r.__||On(r)})}catch(r){t.some(function(o){o.__h&&(o.__h=[])}),t=[],I.__e(r,n.__v)}}),uo&&uo(e,t)},I.unmount=function(e){po&&po(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(r){try{Zt(r)}catch(o){t=o}}),n.__H=void 0,t&&I.__e(t,n.__v))};var fo=typeof requestAnimationFrame=="function";function Ri(e){var t,n=function(){clearTimeout(r),fo&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,100);fo&&(t=requestAnimationFrame(n))}function Zt(e){var t=Te,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Te=t}function On(e){var t=Te;e.__c=e.__(),Te=t}function Di(e,t){return!e||e.length!==t.length||t.some(function(n,r){return n!==e[r]})}function ho(e,t){return typeof t=="function"?t(e):t}function bo(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function yo(e,t){let n=e;return t&&Object.keys(t).forEach(r=>{let o=t[r],a=Bi(r);if(typeof o=="object"||a){let i=o;a&&typeof i=="string"&&(i={tag:"a",href:i,target:"_blank"});let u=`<${r}>`,d=n.indexOf(u);if(d!==-1){let l=i.tag||"a",s=n.indexOf(``);if(s!==-1){let m=n.substring(d+u.length,s),g=Object.keys(i).filter(f=>f!=="tag").map(f=>`${f}="${i[f]}"`).join(" ");n=n.replace(`${u}${m}`,`<${l} ${g}>${m}`)}}}else{let i=new RegExp("{"+r+"}","gm");n=n.replace(i,o.toString())}}),n}function Rn(e,t,n){let r=e[t];if(!r)return n;let o=n.split("."),a="";do{a+=o.shift();let i=r[a];i!==void 0&&(typeof i=="object"||!o.length)?(r=i,a=""):o.length?a+=".":r=n}while(o.length);return r}function Bi(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}var vt={},Ui={root:"",lang:"en",fallbackLang:"en"};function Dn(e,t){let n=Object.assign({},Ui,e);vt=t||vt;let[r,o]=ze(n.lang),[a,i]=ze(vt),[u,d]=ze(!1),l=m=>{if(a.hasOwnProperty(m))return;d(!1);let g=bo(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(f=>f.json()).then(f=>{vt[m]=f,i({...vt}),d(!0)}).catch(f=>{i({...vt}),d(!0)}))};return Tt(()=>{l(n.fallbackLang||"en"),l(r)},[r]),{lang:r,setLang:o,t:(m,g)=>{if(!a.hasOwnProperty(r))return m;let f=Rn(a,r,m);return f===m&&r!==n.fallbackLang&&(f=Rn(a,n.fallbackLang,m)),yo(f,g)},isReady:u}}var ji=0;function q(e,t,n,r,o){var a,i,u={};for(i in t)i=="ref"?a=t[i]:u[i]=t[i];var d={type:e,props:u,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--ji,__source:o,__self:r};if(typeof e=="function"&&(a=e.defaultProps))for(i in a)u[i]===void 0&&(u[i]=a[i]);return I.vnode&&I.vnode(d),d}var zi=Qt(null),Nn={root:"assets",lang:"en",fallbackLang:"en"},xo=e=>{let{t,setLang:n,lang:r,isReady:o}=Dn({root:e.root||Nn.root,lang:e.lang||Nn.lang,fallbackLang:e.fallbackLang||Nn.fallbackLang,getUrl:e.getUrl},e.translations);return q(zi.Provider,{value:{t,setLang:n,lang:r,isReady:o},children:e.children})};var $n;function Vn(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function Eo(e,t=","){return e.map(Vn).join(t)}var Ao=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function tn(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function nn(e,t="@media "){return t+$e(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(r=>`(${r}-width:${n[r]})`).join(" and "))).join(",")}function $e(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function Wi(){}var Se={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function Lo(e){return e.match(/[-=:;]/g)?.length||0}function Wn(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(Lo(e),15)<<18}var Hi=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function Gn({n:e,i:t,v:n=[]},r,o,a){e&&(e=Vn({n:e,i:t,v:n})),a=[...$e(a)];for(let u of n){let d=r.theme("screens",u);for(let l of $e(d&&nn(d)||r.v(u))){var i;a.push(l),o|=d?67108864|Wn(l):u=="dark"?1073741824:l[0]=="@"?Wn(l):(i=l,1<<~(/:([a-z-]+)/.test(i)&&~Hi.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:o,r:a,i:t}}var Yn=new Map;function To(e){if(e.d){let t=[],n=In(e.r.reduce((r,o)=>o[0]=="@"?(t.push(o),r):o?In(r,a=>In(o,i=>{let u=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(i);if(u){let d=a.indexOf(u[1]);return~d?a.slice(0,d)+u[0]+a.slice(d+u[1].length):Bn(a,i)}return Bn(i,a)})):r,"&"),r=>Bn(r,e.n?"."+Ao(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((r,o)=>o+"{"+r+"}",e.d)}}function In(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,r,o)=>t(r)+o)}function Bn(e,t){return e.replace(/&/g,t)}var vo=new Intl.Collator("en",{numeric:!0});function qi(e,t){for(var n=0,r=e.length;n>1;0>=Po(e[o],t)?n=o+1:r=o}return r}function Po(e,t){let n=e.p&Se.o;return n==(t.p&Se.o)&&(n==Se.b||n==Se.o)?0:e.p-t.p||e.o-t.o||vo.compare(wo(e.n),wo(t.n))||vo.compare(Co(e.n),Co(t.n))}function wo(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function Co(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function Un(e,t){return Math.round(parseInt(e,16)*t)}function st(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:r}=t,o=r?`var(${r})`:n;if(e.includes(""))return e.replace("",o);if(e[0]=="#"&&(e.length==4||e.length==7)){let a=(e.length-1)/3,i=[17,1,.062272][a-1];return`rgba(${[Un(e.substr(1,a),i),Un(e.substr(1+a,a),i),Un(e.substr(1+2*a,a),i),o]})`}return o=="1"?e:o=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${o})`)}function Oo(e,t,n,r,o=[]){return function a(i,{n:u,p:d,r:l=[],i:s},m){let g=[],f="",h=0,k=0;for(let v in i||{}){var _,p;let M=i[v];if(v[0]=="@"){if(!M)continue;if(v[1]=="a"){g.push(...Ro(u,d,Qn(""+M),m,d,l,s,!0));continue}if(v[1]=="l"){for(let K of $e(M))g.push(...a(K,{n:u,p:(_=Se[v[7]],d&~Se.o|_),r:v[7]=="d"?[]:l,i:s},m));continue}if(v[1]=="i"){g.push(...$e(M).map(K=>({p:-1,o:0,r:[],d:v+" "+K})));continue}if(v[1]=="k"){g.push({p:Se.d,o:0,r:[v],d:a(M,{p:Se.d},m).map(To).join("")});continue}if(v[1]=="f"){g.push(...$e(M).map(K=>({p:Se.d,o:0,r:[v],d:a(K,{p:Se.d},m).map(To).join("")})));continue}}if(typeof M!="object"||Array.isArray(M))v=="label"&&M?u=M+tn(JSON.stringify([d,s,i])):(M||M===0)&&(v=v.replace(/[A-Z]/g,K=>"-"+K.toLowerCase()),k+=1,h=Math.max(h,(p=v)[0]=="-"?0:Lo(p)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(p)?+!!RegExp.$1||-!!RegExp.$2:0)+1),f+=(f?";":"")+$e(M).map(K=>m.s(v,Fo(""+K,m.theme)+(s?" !important":""))).join(";"));else if(v[0]=="@"||v.includes("&")){let K=d;v[0]=="@"&&(v=v.replace(/\bscreen\(([^)]+)\)/g,($,U)=>{let O=m.theme("screens",U);return O?(K|=67108864,nn(O,"")):$}),K|=Wn(v)),g.push(...a(M,{n:u,p:K,r:[...l,v],i:s},m))}else g.push(...a(M,{p:d,r:[...l,v]},m))}return g.unshift({n:u,p:d,o:Math.max(0,15-k)+1.5*Math.min(h||15,15),r:l,d:f}),g.sort(Po)}(e,Gn(t,n,r,o),n)}function Fo(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,r,o,a,i="")=>{let u=t(o,i);return typeof u=="function"&&/color|fill|stroke/i.test(o)?st(u):""+$e(u).filter(d=>Object(d)!==d)})}function Jn(e,t){let n,r=[];for(let o of e)o.d&&o.n?n?.p==o.p&&""+n.r==""+o.r?(n.c=[n.c,o.c].filter(Boolean).join(" "),n.d=n.d+";"+o.d):r.push(n={...o,n:o.n&&t}):r.push({...o,n:o.n&&t});return r}function Hn(e,t,n=Se.u,r,o){let a=[];for(let i of e)for(let u of function(d,l,s,m,g){d={...d,i:d.i||g};let f=function(h,k){let _=Yn.get(h.n);return _?_(h,k):k.r(h.n,h.v[0]=="dark")}(d,l);return f?typeof f=="string"?({r:m,p:s}=Gn(d,l,s,m),Jn(Hn(Qn(f),l,s,m,d.i),d.n)):Array.isArray(f)?f.map(h=>{var k,_;return{o:0,...h,r:[...$e(m),...$e(h.r)],p:(k=s,_=h.p??s,k&~Se.o|_)}}):Oo(f,d,l,s,m):[{c:Vn(d),p:0,o:0,r:[]}]}(i,t,n,r,o))a.splice(qi(a,u),0,u);return a}function Ro(e,t,n,r,o,a,i,u){return Jn((u?n.flatMap(d=>Hn([d],r,o,a,i)):Hn(n,r,o,a,i)).map(d=>d.p&Se.o&&(d.n||t==Se.b)?{...d,p:d.p&~Se.o|t,o:0}:d),e)}function Ki(e,t,n,r){var o;return o=(a,i)=>{let{n:u,p:d,r:l,i:s}=Gn(a,i,t);return n&&Ro(u,t,n,i,d,l,s,r)},Yn.set(e,o),e}function jn(e,t,n){if(e[e.length-1]!="("){let r=[],o=!1,a=!1,i="";for(let u of e)if(!(u=="("||/[~@]$/.test(u))){if(u[0]=="!"&&(u=u.slice(1),o=!o),u.endsWith(":")){r[u=="dark:"?"unshift":"push"](u.slice(0,-1));continue}u[0]=="-"&&(u=u.slice(1),a=!a),u.endsWith("-")&&(u=u.slice(0,-1)),u&&u!="&"&&(i+=(i&&"-")+u)}i&&(a&&(i="-"+i),t[0].push({n:i,v:r.filter(Vi),i:o}))}}function Vi(e,t,n){return n.indexOf(e)==t}var So=new Map;function Qn(e){let t=So.get(e);if(!t){let n=[],r=[[]],o=0,a=0,i=null,u=0,d=(l,s=0)=>{o!=u&&(n.push(e.slice(o,u+s)),l&&jn(n,r)),o=u+1};for(;u1?m.slice(0,-1)+tn(JSON.stringify([m,g])):m+"("+Eo(g)+")",Se.a,g,/@$/.test(m))],r)}s=n.lastIndexOf("(",s-1)}n.length=s+1}else/[~@]/.test(l)&&e[u+1]=="("&&r.unshift([])}d(!0),So.set(e,t=r[0])}return t}function Do(e,t,n){return t.reduce((r,o,a)=>r+n(o)+e[a+1],e[0])}function No(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?Do(e,t,n=>zn(n).trim()):t.filter(Boolean).reduce((n,r)=>n+zn(r),e?zn(e):"")}function zn(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=No(e[0],e.slice(1)))&&(n+=" "+t);else for(let r in e)e[r]&&(n+=" "+r);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var J0=$o("@"),Q0=$o("~");function $o(e){return new Proxy(function(n,...r){return t("",n,r)},{get(n,r){return r in n?n[r]:function(o,...a){return t(r,o,a)}}});function t(n,r,o){return Eo(Qn(n+e+"("+No(r,o)+")"))}}function qn(e,t){return Array.isArray(e)?ko(Do(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?ko(e):[e]}var Gi=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function ko(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],r=[n[0]],o=[];for(;t=Gi.exec(e);)t[4]&&(n.shift(),o.shift()),t[3]?(o.unshift(t[3]),n.unshift({}),r.push(o.reduce((a,i)=>({[i]:a}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),r.push(o.reduce((a,i)=>({[i]:a}),n[0]))),n[0][t[1]]=t[2]);return r}function Io(e,...t){var n;let r=qn(e,t),o=(r.find(a=>a.label)?.label||"css")+tn(JSON.stringify(r));return n=(a,i)=>Jn(r.flatMap(u=>Oo(u,a,i,Se.o)),o),Yn.set(o,n),o}var X0=new Proxy(function(e,t){return _o("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,r){return _o(t,n,r)}}});function _o(e,t,n){return{toString(){return Io({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function x(e,t,n){return[e,Yi(t,n)]}function Yi(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,r)=>({[e]:t?t(n,r):Kn(n,1)}):n=>e||{[n[1]]:Kn(n,2)}}function Kn(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function T(e,t,n,r){return[e,Ji(t,n,r)]}function Ji(e,t,n){let r=typeof t=="string"?(o,a)=>({[t]:n?n(o,a):o._}):t||(({1:o,_:a},i,u)=>({[o||u]:a}));return(o,a)=>{let i=Bo(e||o[1]),u=a.theme(i,o.$$)??wt(o.$$,i,a);if(u!=null)return o._=Kn(o,0,u),r(o,a,i)}}function ve(e,t={},n){return[e,Qi(t,n)]}function Qi(e={},t){return(n,r)=>{let{section:o=Bo(n[0]).replace("-","")+"Color"}=e,[a,i]=Xi(n.$$);if(!a)return;let u=r.theme(o,a)||wt(a,o,r);if(!u||typeof u=="object")return;let{opacityVariable:d=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=o.replace("Color","Opacity"),property:s=o,selector:m}=e,g=r.theme(l,i||"DEFAULT")||i&&wt(i,l,r),f=t||(({_:k})=>{let _=Pt(s,k);return m?{[m]:_}:_});n._={value:st(u,{opacityVariable:d||void 0,opacityValue:g||void 0}),color:k=>st(u,k),opacityVariable:d||void 0,opacityValue:g||void 0};let h=f(n,r);if(!n.dark){let k=r.d(o,a,u);k&&k!==u&&(n._={value:st(k,{opacityVariable:d||void 0,opacityValue:g||"1"}),color:_=>st(k,_),opacityVariable:d||void 0,opacityValue:g||void 0},h={"&":h,[r.v("dark")]:f(n,r)})}return h}}function Xi(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function Pt(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function wt(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=en(Fo(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function Bo(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function en(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",r,o="")=>en(n)+r+en(o)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var Z0=Symbol();var Uo=new Proxy(Wi,{apply(e,t,n){return $n(n[0])},get(e,t){let n=$n[t];return typeof n=="function"?function(){return n.apply($n,arguments)}:n}});var eu=function e(t){return new Proxy(function(n,...r){return Mo(t,"",n,r)},{get(n,r){return r==="bind"?e:r in n?n[r]:function(o,...a){return Mo(t,r,o,a)}}})}();function Mo(e,t,n,r){return{toString(){let o=qn(n,r),a=Ao(t+tn(JSON.stringify([t,o])));return(typeof e=="function"?e:Uo)(Io({[`@keyframes ${a}`]:qn(n,r)})),a}}}var jo={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Ie(4,"rem",4,.5,.5),...Ie(12,"rem",4,5),14:"3.5rem",...Ie(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:X("blur"),backdropBrightness:X("brightness"),backdropContrast:X("contrast"),backdropGrayscale:X("grayscale"),backdropHueRotate:X("hueRotate"),backdropInvert:X("invert"),backdropOpacity:X("opacity"),backdropSaturate:X("saturate"),backdropSepia:X("sepia"),backgroundColor:X("colors"),backgroundImage:{none:"none"},backgroundOpacity:X("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Ie(200,"",100,0,50),...Ie(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:X("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:X("spacing"),borderWidth:{DEFAULT:"1px",...We(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:X("colors"),caretColor:X("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Ie(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:X("borderColor"),divideOpacity:X("borderOpacity"),divideWidth:X("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...Ot(2,6),...Ot(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:X("spacing"),gradientColorStops:X("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...Ot(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...Ot(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Ie(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Ie(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:X("spacing"),placeholderColor:X("colors"),placeholderOpacity:X("opacity"),outlineColor:X("colors"),outlineOffset:We(8,"px"),outlineWidth:We(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:X("colors"),ringOffsetWidth:We(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...We(8,"px")},rotate:{...We(2,"deg"),...We(12,"deg",3),...We(180,"deg",45)},saturate:Ie(200,"",100,0,50),scale:{...Ie(150,"",100,0,50),...Ie(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:X("spacing"),scrollPadding:X("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...We(2,"deg"),...We(12,"deg",3)},space:X("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Ie(2),textColor:X("colors"),textDecorationColor:X("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...We(8,"px")},textUnderlineOffset:{auto:"auto",...We(8,"px")},textIndent:X("spacing"),textOpacity:X("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:X("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...Ot(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Ie(50,"",1,0,10),auto:"auto"}};function Ot(e,t){let n={};do for(var r=1;rt(e)}var yu={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${jo.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${jo.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},Tu=[x("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:wt(`[${t}]`,"",n)}}})),x("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),T("aspect-","aspectRatio"),x("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:r,padding:o}=t("container"),a={width:"100%",marginRight:r&&"auto",marginLeft:r&&"auto",...i("xs")};for(let u in n){let d=n[u];typeof d=="string"&&(a[nn(d)]={"&":{maxWidth:d,...i(u)}})}return a;function i(u){let d=o&&(typeof o=="string"?o:o[u]||o.DEFAULT);if(d)return{paddingRight:d,paddingLeft:d}}}),T("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),x("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),x("box-(border|content)","boxSizing",({1:e})=>e+"-box"),x("hidden",{display:"none"}),x("table-(auto|fixed)","tableLayout"),x(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",x("isolate","isolation"),x("object-(contain|cover|fill|none|scale-down)","objectFit"),T("object-","objectPosition"),x("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",rn),x("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),x("(static|fixed|absolute|relative|sticky)","position"),T("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),T("-?(top|bottom|left|right)(?:$|-)","inset"),x("(visible|collapse)","visibility"),x("invisible",{visibility:"hidden"}),T("-?z-","zIndex"),x("flex-((row|col)(-reverse)?)","flexDirection",zo),x("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),T("(flex-(?:grow|shrink))(?:$|-)"),T("(flex)-"),T("grow(?:$|-)","flexGrow"),T("shrink(?:$|-)","flexShrink"),T("basis-","flexBasis"),T("-?(order)-"),"-?(order)-(\\d+)",T("grid-cols-","gridTemplateColumns"),x("grid-cols-(\\d+)","gridTemplateColumns",Ko),T("col-","gridColumn"),x("col-(span)-(\\d+)","gridColumn",qo),T("col-start-","gridColumnStart"),x("col-start-(auto|\\d+)","gridColumnStart"),T("col-end-","gridColumnEnd"),x("col-end-(auto|\\d+)","gridColumnEnd"),T("grid-rows-","gridTemplateRows"),x("grid-rows-(\\d+)","gridTemplateRows",Ko),T("row-","gridRow"),x("row-(span)-(\\d+)","gridRow",qo),T("row-start-","gridRowStart"),x("row-start-(auto|\\d+)","gridRowStart"),T("row-end-","gridRowEnd"),x("row-end-(auto|\\d+)","gridRowEnd"),x("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>rn(zo(e))),x("grid-flow-(dense)","gridAutoFlow"),T("auto-cols-","gridAutoColumns"),T("auto-rows-","gridAutoRows"),T("gap-x(?:$|-)","gap","columnGap"),T("gap-y(?:$|-)","gap","rowGap"),T("gap(?:$|-)","gap"),"(justify-(?:items|self))-",x("justify-","justifyContent",Wo),x("(content|items|self)-",e=>({["align-"+e[1]]:Wo(e)})),x("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),T("p([xytrbl])?(?:$|-)","padding",Ct("padding")),T("-?m([xytrbl])?(?:$|-)","margin",Ct("margin")),T("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),x("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),T("w-","width"),T("min-w-","minWidth"),T("max-w-","maxWidth"),T("h-","height"),T("min-h-","minHeight"),T("max-h-","maxHeight"),T("font-","fontWeight"),T("font-","fontFamily",({_:e})=>typeof(e=$e(e))[1]=="string"?{fontFamily:Ge(e)}:{fontFamily:Ge(e[0]),...e[1]}),x("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),x("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),x("italic","fontStyle"),x("not-italic",{fontStyle:"normal"}),x("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...lt({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),T("tracking-","letterSpacing"),T("leading-","lineHeight"),x("list-(inside|outside)","listStylePosition"),T("list-","listStyleType"),x("list-","listStyleType"),T("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),ve("placeholder-",{property:"color",selector:"&::placeholder"}),x("text-(left|center|right|justify|start|end)","textAlign"),x("text-(ellipsis|clip)","textOverflow"),T("text-opacity-","textOpacity","--tw-text-opacity"),ve("text-",{property:"color"}),T("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),T("indent-","textIndent"),x("(overline|underline|line-through)","textDecorationLine"),x("no-underline",{textDecorationLine:"none"}),T("underline-offset-","textUnderlineOffset"),ve("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),T("decoration-","textDecorationThickness"),x("decoration-","textDecorationStyle"),x("(uppercase|lowercase|capitalize)","textTransform"),x("normal-case",{textTransform:"none"}),x("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),x("align-","verticalAlign"),x("whitespace-","whiteSpace"),x("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),x("break-words",{overflowWrap:"break-word"}),x("break-all",{wordBreak:"break-all"}),x("break-keep",{wordBreak:"keep-all"}),ve("caret-",{opacityVariable:!1,opacitySection:"opacity"}),ve("accent-",{opacityVariable:!1,opacitySection:"opacity"}),x("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${gt(e," ")},var(--tw-gradient-stops))`),ve("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),ve("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),ve("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),x("bg-(fixed|local|scroll)","backgroundAttachment"),x("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),x(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),x("bg-blend-","backgroundBlendMode"),x("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),T("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),ve("bg-",{section:"backgroundColor"}),T("bg-","backgroundImage"),T("bg-","backgroundPosition"),x("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",rn),T("bg-","backgroundSize"),T("rounded(?:$|-)","borderRadius"),T("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${gt(n[0])}-radius`]:t,[`border-${gt(n[1])}-radius`]:t}}),x("border-(collapse|separate)","borderCollapse"),T("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),x("border-(solid|dashed|dotted|double|none)","borderStyle"),T("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...lt({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),ve("border-([xytrbl])-",{section:"borderColor"},Ct("border","Color")),ve("border-"),T("border-([xytrbl])(?:$|-)","borderWidth",Ct("border","Width")),T("border(?:$|-)","borderWidth"),T("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),x("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),x("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),T("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${gt(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${gt(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),ve("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),T("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),ve("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),T("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),x("ring-inset",{"--tw-ring-inset":"inset"}),ve("ring-",{property:"--tw-ring-color"}),T("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...lt({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":st(t("ringOffsetColor","","#fff")),"--tw-ring-color":st(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),ve("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),T("shadow(?:$|-)","boxShadow",({_:e})=>({...lt({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":Ge(e),"--tw-shadow-colored":Ge(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),T("(opacity)-"),x("mix-blend-","mixBlendMode"),...Ho(),...Ho("backdrop-"),T("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:Ge(e),transitionTimingFunction:e._=="none"?void 0:Ge(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:Ge(t("transitionDuration",""))})),T("duration(?:$|-)","transitionDuration","transitionDuration",Ge),T("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",Ge),T("delay(?:$|-)","transitionDelay","transitionDelay",Ge),T("animate(?:$|-)","animation",(e,{theme:t,h:n,e:r})=>{let o=Ge(e),a=o.split(" "),i=t("keyframes",a[0]);return i?{["@keyframes "+(a[0]=r(n(a[0])))]:i,animation:a.join(" ")}:{animation:o}}),"(transform)-(none)",x("transform",Zn),x("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":Vo(e=="gpu")})),T("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...Zn()})),T("-?(rotate)-","rotate",Xn),T("-?(translate-[xy])-","translate",Xn),T("-?(skew-[xy])-","skew",Xn),x("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",rn),"(appearance)-",T("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",T("(cursor)-"),"(cursor)-",x("snap-(none)","scroll-snap-type"),x("snap-(x|y|both)",({1:e})=>({...lt({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),x("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),x("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),x("snap-(normal|always)","scroll-snap-stop"),x("scroll-(auto|smooth)","scroll-behavior"),T("scroll-p([xytrbl])?(?:$|-)","padding",Ct("scroll-padding")),T("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",Ct("scroll-margin")),x("touch-(auto|none|manipulation)","touch-action"),x("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...lt({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),x("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),x("outline",{outlineStyle:"solid"}),x("outline-(dashed|dotted|double)","outlineStyle"),T("-?(outline-offset)-"),ve("outline-",{opacityVariable:!1,opacitySection:"opacity"}),T("outline-","outlineWidth"),"(pointer-events)-",T("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],x("select-(none|text|all|auto)","userSelect"),ve("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),ve("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),T("stroke-","strokeWidth"),x("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),x("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function rn(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function zo(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function gt(e,t="-"){let n=[];for(let r of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[r]);return n.join(t)}function Ge(e){return e&&""+(e._||e)}function Wo({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function Ct(e,t=""){return({1:n,_:r})=>{let o={x:"lr",y:"tb"}[n]||n+n;return o?{...Pt(e+"-"+gt(o[0])+t,r),...Pt(e+"-"+gt(o[1])+t,r)}:Pt(e+t,r)}}function Ho(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let r of t)n[`--tw-${e}${r}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...lt(n),[`${e}filter`]:t.map(r=>`var(--tw-${e}${r})`).join(" ")},[`(${e}filter)-(none)`,x(`${e}filter`,n),...t.map(r=>T(`${r[0]=="h"?"-?":""}(${e}${r})(?:$|-)`,r,({1:o,_:a})=>({[`--tw-${o}`]:$e(a).map(i=>`${r}(${i})`).join(" "),...n})))]}function Xn({1:e,_:t}){return{["--tw-"+e]:t,...Zn()}}function Zn(){return{...lt({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":Vo()}),transform:"var(--tw-transform)"}}function Vo(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function qo({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function Ko({1:e}){return`repeat(${e},minmax(0,1fr))`}function lt(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var on=globalThis||(typeof window<"u"?window:self),ts=Object.create,tr=Object.defineProperty,ns=Object.getOwnPropertyDescriptor,rs=Object.getOwnPropertyNames,os=Object.getPrototypeOf,as=Object.prototype.hasOwnProperty,is=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ss=(e,t)=>{for(var n in t)tr(e,n,{get:t[n],enumerable:!0})},er=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of rs(t))!as.call(e,o)&&o!==n&&tr(e,o,{get:()=>t[o],enumerable:!(r=ns(t,o))||r.enumerable});return e},ls=(e,t,n)=>(er(e,t,"default"),n&&er(n,t,"default")),Yo=(e,t,n)=>(n=e!=null?ts(os(e)):{},er(t||!e||!e.__esModule?tr(n,"default",{value:e,enumerable:!0}):n,e)),Jo=is((e,t)=>{(function(n,r){typeof define=="function"&&define.amd?define([],r):typeof e<"u"?r():(r(),n.FileSaver={})})(e,function(){"use strict";function n(l,s){return typeof s>"u"?s={autoBom:!1}:typeof s!="object"&&(s={autoBom:!s}),s.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function r(l,s,m){var g=new XMLHttpRequest;g.open("GET",l),g.responseType="blob",g.onload=function(){d(g.response,s,m)},g.onerror=function(){},g.send()}function o(l){var s=new XMLHttpRequest;s.open("HEAD",l,!1);try{s.send()}catch{}return 200<=s.status&&299>=s.status}function a(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var s=document.createEvent("MouseEvents");s.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(s)}}var i=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof on=="object"&&on.global===on?on:void 0,u=i.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),d=i.saveAs||(typeof window!="object"||window!==i?function(){}:"download"in HTMLAnchorElement.prototype&&!u?function(l,s,m){var g=i.URL||i.webkitURL,f=document.createElement("a");s=s||l.name||"download",f.download=s,f.rel="noopener",typeof l=="string"?(f.href=l,f.origin===location.origin?a(f):o(f.href)?r(l,s,m):a(f,f.target="_blank")):(f.href=g.createObjectURL(l),setTimeout(function(){g.revokeObjectURL(f.href)},4e4),setTimeout(function(){a(f)},0))}:"msSaveOrOpenBlob"in navigator?function(l,s,m){if(s=s||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,m),s);else if(o(l))r(l,s,m);else{var g=document.createElement("a");g.href=l,g.target="_blank",setTimeout(function(){a(g)})}}:function(l,s,m,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),typeof l=="string")return r(l,s,m);var f=l.type==="application/octet-stream",h=/constructor/i.test(i.HTMLElement)||i.safari,k=/CriOS\/[\d]+/.test(navigator.userAgent);if((k||f&&h||u)&&typeof FileReader<"u"){var _=new FileReader;_.onloadend=function(){var M=_.result;M=k?M:M.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=M:location=M,g=null},_.readAsDataURL(l)}else{var p=i.URL||i.webkitURL,v=p.createObjectURL(l);g?g.location=v:location.href=v,g=null,setTimeout(function(){p.revokeObjectURL(v)},4e4)}});i.saveAs=d.saveAs=d,typeof t<"u"&&(t.exports=d)})}),Qo={};ss(Qo,{default:()=>Ft});var cs=Yo(Jo());ls(Qo,Yo(Jo()));var{default:Go,...us}=cs,Ft=Go!==void 0?Go:us;var Xo={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var Zo={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var ea={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var gs=[{code:"zh-CN",messages:Xo},{code:"zh-TW",messages:Zo},{code:"en",messages:ea}];var Rt={};for(let e of gs)Rt[e.code]=e.messages;var mt="Immersive Translate",Oe="immersive-translate";var j="immersiveTranslate";var Xu=j+"GoogleAccessToken",Zu=j+"AuthFlow";var ed=j+"AuthState",td=j+"IframeMessage",nd=j+"WaitForRateLimit",rd=j+"DocumentMessageAsk",na=j+"DocumentMessageTellThirdParty",ra=j+"DocumentMessageThirdPartyTell",od=j+"DocumentMessageHandler",ad=`${j}Container`,id=`${j}SpecifiedContainer`;var sd=`${j}PageTranslatedStatus`,ld=`${j}PageUrlChanged`,cd=`${j}ReceiveCommand`,ud=j+"LastUseMouseHoverTime",dd=j+"LastUseInputTime",pd=j+"LastUseManualTranslatePageTime",fd=`${j}PopupReceiveMessage`,ms="immersivetranslate.com",hs="config.immersivetranslate.com",gd=`https://${ms}/`,md=`https://${hs}/default_config.json`,hd=`${j}Mark`;var bd=`${j}Root`,yd=`data-${Oe}-effect`,xd=`data-${Oe}-translation-element-mark`,Td=`${j}TranslationElementMark`,vd=`${j}TranslatedMark`,wd=`${j}ParagraphId`,Cd=`${j}LoadingId`,Sd=`data-${Oe}-loading-id`,kd=`${j}ErrorId`,_d=`data-${Oe}-error-id`,Md=`${j}AtomicBlockMark`,Ed=`${j}ExcludeMark`,Ad=`data-${Oe}-exclude-mark`,Ld=`${j}StayOriginalMark`,Pd=`${j}PreWhitespaceMark`,Od=`${j}InlineMark`,Fd=`${j}BlockMark`,Rd=`${j}Left`,Dd=`${j}Right`,Nd=`${j}Width`,$d=`${j}Height`,Id=`${j}Top`,Bd=`${j}FontSize`;var Ud=`${j}GlobalStyleMark`;var jd=`${Oe}-target-wrapper`,zd=`${Oe}-pdf-target-container`,Wd=`${Oe}-target-inner`,Hd=`${Oe}-source-wrapper`,qd=`${Oe}-target-translation-block-wrapper`,Kd=`${Oe}-root-translation-theme`,Vd=`${j}RootTranslationTheme`,Gd=`${Oe}-target-translation-vertical-block-wrapper`,Yd=`${Oe}-target-translation-pdf-block-wrapper`,Jd=`${Oe}-target-translation-pre-whitespace`,Qd=`${Oe}-target-translation-inline-wrapper`;var ta=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],Xd={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...ta,{type:"password",name:"apikey",required:!0}],props:ta},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},Zd={type:j+"ChildFrameToRootFrameIdentifier"};var an=0,sn=0,ct=0;function aa(e){let{data:t}=e,{parsed:n,file:r}=t,a=r.name.split(".").pop(),i=[],u={},[d,l]=ze(!1),[s,m]=ze("dual"),[g,f]=ze("auto"),[h,k]=ze(0),[_,p]=ze(0);Tt(()=>{document.addEventListener(na,$=>{let{detail:U}=$;if(U)try{let O=JSON.parse(U);if(O&&O.type&&O.payload)if(O.type==="retryFailedParagraphsStart")ct=0,p(0);else if(O.type==="targetLanguage")f(O.payload.targetLanguage);else if(O.type==="paragraphTranslated"){let{ok:L}=O.payload;if(L?sn++:ct++,an){let Y=sn,W=sn+ct,ae=Y/an*100,J=Math.floor(ae),se=Math.floor(W/an*100);J>100&&(J=100),se>100&&(se=100),k(J),se===100&&ct>0&&p(ct)}}else O.type==="totalParagraphsCount"?O.payload.totalParagraphsCount&&(an=O.payload.totalParagraphsCount):O.type==="translateStart"?(sn=0,ct=0):O.type==="restorePage"&&(k(0),p(0))}catch{}}),document.dispatchEvent(new CustomEvent("immersiveTranslateEbookLoaded"))},[]);for(let $=0;${$.preventDefault(),document.dispatchEvent(new CustomEvent(ra,{detail:JSON.stringify({type:"retryFailedParagraphs"})}))},M=async($,U)=>{l(!0),U.preventDefault();let O=$==="dual";var L={format:a,verbose:!0};let Y=[],W={};for(let ne=0;neM.bind(null,$);return q("main",{children:[q("h3",{style:{marginBottom:0},children:["\u6B63\u5728\u7528"," ",q("a",{class:"notranslate contrast",href:"https://immersivetranslate.com/",target:"_blank",children:"\u6C89\u6D78\u5F0F\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55"}),"\xA0\u7FFB\u8BD1 ",r.name,q("span",{id:"progress-number",children:h?` ${h}%`:""})]}),q("div",{children:ct?q("span",{children:[ct," failed(\u5931\u8D25)."," ",q("a",{href:"#",class:"link",onClick:v,children:"Retry failed paragraphs"})]}):null}),q("nav",{children:q("ul",{children:[q("li",{children:q("a",{href:"#",onClick:$=>{$.preventDefault(),globalThis.location.reload()},children:"New"})}),q("li",{children:q("a",{href:"#","aria-busy":d,onClick:K("dual"),children:"Export Dual (\u5BFC\u51FA\u53CC\u8BED\u5B57\u5E55)"})}),q("li",{children:q("a",{href:"#","aria-busy":d,onClick:K("translation"),children:"Export Translation Only(\u5BFC\u51FA\u4EC5\u8BD1\u6587)"})})]})}),q("p",{style:{fontSize:14,color:"#666"},children:"Tips: \u624B\u52A8\u70B9\u51FB\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u6269\u5C55\u7684\u7FFB\u8BD1\u6309\u94AE\u5F00\u59CB\u7FFB\u8BD1"}),q("table",{children:[q("thead",{children:q("tr",{children:[q("th",{children:"Start"}),q("th",{children:"End"}),q("th",{children:"Source"}),q("th",{children:"Target(\u53EF\u7F16\u8F91)"})]})}),q("tbody",{children:i.map(($,U)=>{let{source:O,target:L}=$;return q("tr",{children:[q("td",{children:oa(O.start)}),q("td",{children:oa(O.end)}),q("td",{children:q("span",{"data-start":O.start,"data-end":O.end,class:"source-text notranslate",children:O.text})}),q("td",{children:q("span",{contentEditable:!0,"data-start":O.start,"data-end":O.end,spellcheck:!1,class:"target-text notranslate input-border",children:L?.text||""})})]},U)})})]})]})}function oa(e){let t=e/1e3,n=t/60,r=n/60,o=t%60,a=n%60,i=r%60;return`${nr(Math.floor(i))}:${nr(Math.floor(a))}:${nr(Math.floor(o))}`}function nr(e){return e<10?"0"+e:e}var ia={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},bs={...Rt,"zh-CN":{...ia["zh-CN"],...Rt["zh-CN"]},"zh-TW":{...ia["zh-TW"],...Rt["zh-TW"]}},sa=bs;function Dt(){let e,t="pending",n=new Promise((r,o)=>{e={async resolve(a){await a,t="fulfilled",r(a)},reject(a){t="rejected",o(a)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var la=class{#e=0;#t=[];#n=[];#r=Dt();add(t){++this.#e,this.#o(t[Symbol.asyncIterator]())}async#o(t){try{let{value:n,done:r}=await t.next();r?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#r.resolve()}async*iterate(){for(;this.#e>0;){await this.#r;for(let t=0;tHs,bgBlue:()=>Gs,bgBrightBlack:()=>Xs,bgBrightBlue:()=>nl,bgBrightCyan:()=>ol,bgBrightGreen:()=>el,bgBrightMagenta:()=>rl,bgBrightRed:()=>Zs,bgBrightWhite:()=>al,bgBrightYellow:()=>tl,bgCyan:()=>Js,bgGreen:()=>Ks,bgMagenta:()=>Ys,bgRed:()=>qs,bgRgb24:()=>cl,bgRgb8:()=>sl,bgWhite:()=>Qs,bgYellow:()=>Vs,black:()=>Es,blue:()=>Os,bold:()=>vs,brightBlack:()=>da,brightBlue:()=>Us,brightCyan:()=>zs,brightGreen:()=>Is,brightMagenta:()=>js,brightRed:()=>$s,brightWhite:()=>Ws,brightYellow:()=>Bs,cyan:()=>Rs,dim:()=>ws,getColorEnabled:()=>xs,gray:()=>Ns,green:()=>Ls,hidden:()=>_s,inverse:()=>ks,italic:()=>Cs,magenta:()=>Fs,red:()=>As,reset:()=>Ts,rgb24:()=>ll,rgb8:()=>il,setColorEnabled:()=>ys,strikethrough:()=>Ms,stripColor:()=>dl,underline:()=>Ss,white:()=>Ds,yellow:()=>Ps});var{Deno:ca}=globalThis,ua=typeof ca?.noColor=="boolean"?ca.noColor:!0,rr=!ua;function ys(e){ua||(rr=e)}function xs(){return rr}function D(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function N(e,t){return rr?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function Ts(e){return N(e,D([0],0))}function vs(e){return N(e,D([1],22))}function ws(e){return N(e,D([2],22))}function Cs(e){return N(e,D([3],23))}function Ss(e){return N(e,D([4],24))}function ks(e){return N(e,D([7],27))}function _s(e){return N(e,D([8],28))}function Ms(e){return N(e,D([9],29))}function Es(e){return N(e,D([30],39))}function As(e){return N(e,D([31],39))}function Ls(e){return N(e,D([32],39))}function Ps(e){return N(e,D([33],39))}function Os(e){return N(e,D([34],39))}function Fs(e){return N(e,D([35],39))}function Rs(e){return N(e,D([36],39))}function Ds(e){return N(e,D([37],39))}function Ns(e){return da(e)}function da(e){return N(e,D([90],39))}function $s(e){return N(e,D([91],39))}function Is(e){return N(e,D([92],39))}function Bs(e){return N(e,D([93],39))}function Us(e){return N(e,D([94],39))}function js(e){return N(e,D([95],39))}function zs(e){return N(e,D([96],39))}function Ws(e){return N(e,D([97],39))}function Hs(e){return N(e,D([40],49))}function qs(e){return N(e,D([41],49))}function Ks(e){return N(e,D([42],49))}function Vs(e){return N(e,D([43],49))}function Gs(e){return N(e,D([44],49))}function Ys(e){return N(e,D([45],49))}function Js(e){return N(e,D([46],49))}function Qs(e){return N(e,D([47],49))}function Xs(e){return N(e,D([100],49))}function Zs(e){return N(e,D([101],49))}function el(e){return N(e,D([102],49))}function tl(e){return N(e,D([103],49))}function nl(e){return N(e,D([104],49))}function rl(e){return N(e,D([105],49))}function ol(e){return N(e,D([106],49))}function al(e){return N(e,D([107],49))}function ut(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function il(e,t){return N(e,D([38,5,ut(t)],39))}function sl(e,t){return N(e,D([48,5,ut(t)],49))}function ll(e,t){return typeof t=="number"?N(e,D([38,2,t>>16&255,t>>8&255,t&255],39)):N(e,D([38,2,ut(t.r),ut(t.g),ut(t.b)],39))}function cl(e,t){return typeof t=="number"?N(e,D([48,2,t>>16&255,t>>8&255,t&255],49)):N(e,D([48,2,ut(t.r),ut(t.g),ut(t.b)],49))}var ul=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function dl(e){return e.replace(ul,"")}var rp=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var ln=globalThis||(typeof window<"u"?window:self),fl=Object.create,ar=Object.defineProperty,gl=Object.getOwnPropertyDescriptor,ml=Object.getOwnPropertyNames,hl=Object.getPrototypeOf,bl=Object.prototype.hasOwnProperty,yl=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xl=(e,t)=>{for(var n in t)ar(e,n,{get:t[n],enumerable:!0})},or=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ml(t))!bl.call(e,o)&&o!==n&&ar(e,o,{get:()=>t[o],enumerable:!(r=gl(t,o))||r.enumerable});return e},Tl=(e,t,n)=>(or(e,t,"default"),n&&or(n,t,"default")),fa=(e,t,n)=>(n=e!=null?fl(hl(e)):{},or(t||!e||!e.__esModule?ar(n,"default",{value:e,enumerable:!0}):n,e)),ga=yl((e,t)=>{var n="Expected a function",r=NaN,o="[object Symbol]",a=/^\s+|\s+$/g,i=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,d=/^0o[0-7]+$/i,l=parseInt,s=typeof ln=="object"&&ln&&ln.Object===Object&&ln,m=typeof self=="object"&&self&&self.Object===Object&&self,g=s||m||Function("return this")(),f=Object.prototype,h=f.toString,k=Math.max,_=Math.min,p=function(){return g.Date.now()};function v(L,Y,W){var ae,J,se,de,ne,fe,Ue=0,Qe=!1,ee=!1,Ke=!0;if(typeof L!="function")throw new TypeError(n);Y=O(Y)||0,K(W)&&(Qe=!!W.leading,ee="maxWait"in W,se=ee?k(O(W.maxWait)||0,Y):se,Ke="trailing"in W?!!W.trailing:Ke);function re(R){var B=ae,H=J;return ae=J=void 0,Ue=R,de=L.apply(H,B),de}function b(R){return Ue=R,ne=setTimeout(G,Y),Qe?re(R):de}function S(R){var B=R-fe,H=R-Ue,Q=Y-B;return ee?_(Q,se-H):Q}function E(R){var B=R-fe,H=R-Ue;return fe===void 0||B>=Y||B<0||ee&&H>=se}function G(){var R=p();if(E(R))return F(R);ne=setTimeout(G,S(R))}function F(R){return ne=void 0,Ke&&ae?re(R):(ae=J=void 0,de)}function le(){ne!==void 0&&clearTimeout(ne),Ue=0,ae=fe=J=ne=void 0}function he(){return ne===void 0?de:F(p())}function ge(){var R=p(),B=E(R);if(ae=arguments,J=this,fe=R,B){if(ne===void 0)return b(fe);if(ee)return ne=setTimeout(G,Y),re(fe)}return ne===void 0&&(ne=setTimeout(G,Y)),de}return ge.cancel=le,ge.flush=he,ge}function M(L,Y,W){var ae=!0,J=!0;if(typeof L!="function")throw new TypeError(n);return K(W)&&(ae="leading"in W?!!W.leading:ae,J="trailing"in W?!!W.trailing:J),v(L,Y,{leading:ae,maxWait:Y,trailing:J})}function K(L){var Y=typeof L;return!!L&&(Y=="object"||Y=="function")}function $(L){return!!L&&typeof L=="object"}function U(L){return typeof L=="symbol"||$(L)&&h.call(L)==o}function O(L){if(typeof L=="number")return L;if(U(L))return r;if(K(L)){var Y=typeof L.valueOf=="function"?L.valueOf():L;L=K(Y)?Y+"":Y}if(typeof L!="string")return L===0?L:+L;L=L.replace(a,"");var W=u.test(L);return W||d.test(L)?l(L.slice(2),W?2:8):i.test(L)?r:+L}t.exports=M}),ma={};xl(ma,{default:()=>ir});var vl=fa(ga());Tl(ma,fa(ga()));var{default:pa,...wl}=vl,ir=pa!==void 0?pa:wl;var Cl=Object.create,lr=Object.defineProperty,Sl=Object.getOwnPropertyDescriptor,kl=Object.getOwnPropertyNames,_l=Object.getPrototypeOf,Ml=Object.prototype.hasOwnProperty,El=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Al=(e,t)=>{for(var n in t)lr(e,n,{get:t[n],enumerable:!0})},sr=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of kl(t))!Ml.call(e,o)&&o!==n&&lr(e,o,{get:()=>t[o],enumerable:!(r=Sl(t,o))||r.enumerable});return e},Ll=(e,t,n)=>(sr(e,t,"default"),n&&sr(n,t,"default")),ba=(e,t,n)=>(n=e!=null?Cl(_l(e)):{},sr(t||!e||!e.__esModule?lr(n,"default",{value:e,enumerable:!0}):n,e)),ya=El((e,t)=>{(function(n,r){typeof e=="object"&&typeof t=="object"?t.exports=r():typeof define=="function"&&define.amd?define([],r):typeof e=="object"?e.notie=r():n.notie=r()})(e,function(){return function(n){function r(a){if(o[a])return o[a].exports;var i=o[a]={i:a,l:!1,exports:{}};return n[a].call(i.exports,i,i.exports,r),i.l=!0,i.exports}var o={};return r.m=n,r.c=o,r.i=function(a){return a},r.d=function(a,i,u){r.o(a,i)||Object.defineProperty(a,i,{configurable:!1,enumerable:!0,get:u})},r.n=function(a){var i=a&&a.__esModule?function(){return a.default}:function(){return a};return r.d(i,"a",i),i},r.o=function(a,i){return Object.prototype.hasOwnProperty.call(a,i)},r.p="",r(r.s=1)}([function(n,r){n.exports=function(o){return o.webpackPolyfill||(o.deprecate=function(){},o.paths=[],o.children||(o.children=[]),Object.defineProperty(o,"loaded",{enumerable:!0,get:function(){return o.l}}),Object.defineProperty(o,"id",{enumerable:!0,get:function(){return o.i}}),o.webpackPolyfill=1),o}},function(n,r,o){"use strict";(function(a){var i,u,d,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s};(function(s,m){l(r)==="object"&&l(a)==="object"?a.exports=m():(u=[],i=m,d=typeof i=="function"?i.apply(r,u):i,d!==void 0&&(a.exports=d))})(void 0,function(){return function(s){function m(f){if(g[f])return g[f].exports;var h=g[f]={i:f,l:!1,exports:{}};return s[f].call(h.exports,h,h.exports,m),h.l=!0,h.exports}var g={};return m.m=s,m.c=g,m.i=function(f){return f},m.d=function(f,h,k){m.o(f,h)||Object.defineProperty(f,h,{configurable:!1,enumerable:!0,get:k})},m.n=function(f){var h=f&&f.__esModule?function(){return f.default}:function(){return f};return m.d(h,"a",h),h},m.o=function(f,h){return Object.prototype.hasOwnProperty.call(f,h)},m.p="",m(m.s=0)}([function(s,m,g){function f(b,S){var E={};for(var G in b)S.indexOf(G)>=0||Object.prototype.hasOwnProperty.call(b,G)&&(E[G]=b[G]);return E}Object.defineProperty(m,"__esModule",{value:!0});var h=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},k=Object.assign||function(b){for(var S=1;S'+G+"",H.onclick=function(){return J(Q,B)},H.listener=function(A){(Y(A)||W(A))&&ne()},ae(H,B),le&&le<1&&(le=1),!ge&&le&&K(le).then(function(){return J(Q,B)})},Ue=m.force=function(b,S){var E=b.type,G=E===void 0?5:E,F=b.text,le=b.buttonText,he=le===void 0?"OK":le,ge=b.callback,R=b.position,B=R===void 0?p.positions.force||B.top:R;$(),ne();var H=document.createElement("div"),Q=U();H.id=Q;var A=document.createElement("div");A.classList.add(p.classes.textbox),A.classList.add(p.classes.backgroundInfo),A.innerHTML='
'+F+"
";var V=document.createElement("div");V.classList.add(p.classes.button),V.classList.add(O[G]),V.innerHTML=he,V.onclick=function(){J(Q,B),de(),ge?ge():S&&S()},H.appendChild(A),H.appendChild(V),H.listener=function(ce){Y(ce)&&V.click()},ae(H,B),se()},Qe=m.confirm=function(b,S,E){var G=b.text,F=b.submitText,le=F===void 0?"Yes":F,he=b.cancelText,ge=he===void 0?"Cancel":he,R=b.submitCallback,B=b.cancelCallback,H=b.position,Q=H===void 0?p.positions.confirm||Q.top:H;$(),ne();var A=document.createElement("div"),V=U();A.id=V;var ce=document.createElement("div");ce.classList.add(p.classes.textbox),ce.classList.add(p.classes.backgroundInfo),ce.innerHTML='
'+G+"
";var oe=document.createElement("div");oe.classList.add(p.classes.button),oe.classList.add(p.classes.elementHalf),oe.classList.add(p.classes.backgroundSuccess),oe.innerHTML=le,oe.onclick=function(){J(V,Q),de(),R?R():S&&S()};var P=document.createElement("div");P.classList.add(p.classes.button),P.classList.add(p.classes.elementHalf),P.classList.add(p.classes.backgroundError),P.innerHTML=ge,P.onclick=function(){J(V,Q),de(),B?B():E&&E()},A.appendChild(ce),A.appendChild(oe),A.appendChild(P),A.listener=function(ye){Y(ye)?oe.click():W(ye)&&P.click()},ae(A,Q),se(A,Q)},ee=function(b,S,E){var G=b.text,F=b.submitText,le=F===void 0?"Submit":F,he=b.cancelText,ge=he===void 0?"Cancel":he,R=b.submitCallback,B=b.cancelCallback,H=b.position,Q=H===void 0?p.positions.input||Q.top:H,A=f(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);$(),ne();var V=document.createElement("div"),ce=U();V.id=ce;var oe=document.createElement("div");oe.classList.add(p.classes.textbox),oe.classList.add(p.classes.backgroundInfo),oe.innerHTML='
'+G+"
";var P=document.createElement("input");P.classList.add(p.classes.inputField),P.setAttribute("autocapitalize",A.autocapitalize||"none"),P.setAttribute("autocomplete",A.autocomplete||"off"),P.setAttribute("autocorrect",A.autocorrect||"off"),P.setAttribute("autofocus",A.autofocus||"true"),P.setAttribute("inputmode",A.inputmode||"verbatim"),P.setAttribute("max",A.max||""),P.setAttribute("maxlength",A.maxlength||""),P.setAttribute("min",A.min||""),P.setAttribute("minlength",A.minlength||""),P.setAttribute("placeholder",A.placeholder||""),P.setAttribute("spellcheck",A.spellcheck||"default"),P.setAttribute("step",A.step||"any"),P.setAttribute("type",A.type||"text"),P.value=A.value||"",A.allowed&&(P.oninput=function(){var pe=void 0;if(Array.isArray(A.allowed)){for(var me="",Ae=A.allowed,je=0;je'+E+"",B.appendChild(Q),he.forEach(function(V,ce){var oe=V.type,P=oe===void 0?1:oe,ye=V.text,Ee=V.handler,pe=document.createElement("div");pe.classList.add(O[P]),pe.classList.add(p.classes.button),pe.classList.add(p.classes.selectChoice);var me=he[ce+1];me&&!me.type&&(me.type=1),me&&me.type===P&&pe.classList.add(p.classes.selectChoiceRepeated),pe.innerHTML=ye,pe.onclick=function(){J(H,R),de(),Ee()},B.appendChild(pe)});var A=document.createElement("div");A.classList.add(p.classes.backgroundNeutral),A.classList.add(p.classes.button),A.innerHTML=F,A.onclick=function(){J(H,R),de(),le?le():S&&S()},B.appendChild(A),B.listener=function(V){W(V)&&A.click()},ae(B,R),se(B,R)},re=m.date=function(b,S,E){var G=b.value,F=G===void 0?new Date:G,le=b.submitText,he=le===void 0?"OK":le,ge=b.cancelText,R=ge===void 0?"Cancel":ge,B=b.submitCallback,H=b.cancelCallback,Q=b.position,A=Q===void 0?p.positions.date||A.top:Q;$(),ne();var V="▾",ce=document.createElement("div"),oe=document.createElement("div"),P=document.createElement("div"),ye=function(ue){ce.innerHTML=p.dateMonths[ue.getMonth()],oe.innerHTML=ue.getDate(),P.innerHTML=ue.getFullYear()},Ee=function(ue){var te=new Date(F.getFullYear(),F.getMonth()+1,0).getDate(),Ne=ue.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Ne)>te&&(Ne=te.toString()),ue.target.textContent=Ne,Number(Ne)<1&&(Ne="1"),F.setDate(Number(Ne))},pe=function(ue){var te=ue.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);ue.target.textContent=te,F.setFullYear(Number(te))},me=function(ue){ye(F)},Ae=function(ue){var te=new Date(F.getFullYear(),F.getMonth()+ue+1,0).getDate();F.getDate()>te&&F.setDate(te),F.setMonth(F.getMonth()+ue),ye(F)},je=function(ue){F.setDate(F.getDate()+ue),ye(F)},_t=function(ue){var te=F.getFullYear()+ue;te<0?F.setFullYear(0):F.setFullYear(F.getFullYear()+ue),ye(F)},Xe=document.createElement("div"),dt=U();Xe.id=dt;var ht=document.createElement("div");ht.classList.add(p.classes.backgroundInfo);var _e=document.createElement("div");_e.classList.add(p.classes.dateSelectorInner);var Ve=document.createElement("div");Ve.classList.add(p.classes.button),Ve.classList.add(p.classes.elementThird),Ve.classList.add(p.classes.dateSelectorUp),Ve.innerHTML=V;var Me=document.createElement("div");Me.classList.add(p.classes.button),Me.classList.add(p.classes.elementThird),Me.classList.add(p.classes.dateSelectorUp),Me.innerHTML=V;var De=document.createElement("div");De.classList.add(p.classes.button),De.classList.add(p.classes.elementThird),De.classList.add(p.classes.dateSelectorUp),De.innerHTML=V,ce.classList.add(p.classes.element),ce.classList.add(p.classes.elementThird),ce.innerHTML=p.dateMonths[F.getMonth()],oe.classList.add(p.classes.element),oe.classList.add(p.classes.elementThird),oe.setAttribute("contentEditable",!0),oe.addEventListener("input",Ee),oe.addEventListener("blur",me),oe.innerHTML=F.getDate(),P.classList.add(p.classes.element),P.classList.add(p.classes.elementThird),P.setAttribute("contentEditable",!0),P.addEventListener("input",pe),P.addEventListener("blur",me),P.innerHTML=F.getFullYear();var tt=document.createElement("div");tt.classList.add(p.classes.button),tt.classList.add(p.classes.elementThird),tt.innerHTML=V;var nt=document.createElement("div");nt.classList.add(p.classes.button),nt.classList.add(p.classes.elementThird),nt.innerHTML=V;var pt=document.createElement("div");pt.classList.add(p.classes.button),pt.classList.add(p.classes.elementThird),pt.innerHTML=V,Ve.onclick=function(){return Ae(1)},Me.onclick=function(){return je(1)},De.onclick=function(){return _t(1)},tt.onclick=function(){return Ae(-1)},nt.onclick=function(){return je(-1)},pt.onclick=function(){return _t(-1)};var Le=document.createElement("div");Le.classList.add(p.classes.button),Le.classList.add(p.classes.elementHalf),Le.classList.add(p.classes.backgroundSuccess),Le.innerHTML=he,Le.onclick=function(){J(dt,A),de(),B?B(F):S&&S(F)};var rt=document.createElement("div");rt.classList.add(p.classes.button),rt.classList.add(p.classes.elementHalf),rt.classList.add(p.classes.backgroundError),rt.innerHTML=R,rt.onclick=function(){J(dt,A),de(),H?H(F):E&&E(F)},_e.appendChild(Ve),_e.appendChild(Me),_e.appendChild(De),_e.appendChild(ce),_e.appendChild(oe),_e.appendChild(P),_e.appendChild(tt),_e.appendChild(nt),_e.appendChild(pt),ht.appendChild(_e),Xe.appendChild(ht),Xe.appendChild(Le),Xe.appendChild(rt),Xe.listener=function(ue){Y(ue)?Le.click():W(ue)&&rt.click()},ae(Xe,A),se(Xe,A)};m.default={alert:fe,force:Ue,confirm:Qe,input:ee,select:Ke,date:re,setOptions:v,hideAlerts:ne}}])})}).call(r,o(0)(n))}])})}),xa={};Al(xa,{default:()=>cn});var Pl=ba(ya());Ll(xa,ba(ya()));var{default:ha,...Ol}=Pl,cn=ha!==void 0?ha:Ol;var cr=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function ur(e,t,n,r){e.addEventListener?e.addEventListener(t,n,r):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Sa(e,t){for(var n=t.slice(0,t.length-1),r=0;r=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function Fl(e,t){for(var n=e.length>=t.length?e:t,r=e.length>=t.length?t:e,o=!0,a=0;a=0&&ie.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&ie.splice(0,ie.length),(t===93||t===224)&&(t=91),t in ke){ke[t]=!1;for(var r in et)et[r]===t&&(Ze[r]=!1)}}function zl(e){if(typeof e>"u")Object.keys(be).forEach(function(i){return delete be[i]});else if(Array.isArray(e))e.forEach(function(i){i.key&&dr(i)});else if(typeof e=="object")e.key&&dr(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r1?Sa(et,d):[];be[m]=be[m].filter(function(f){var h=r?f.method===r:!0;return!(h&&f.scope===n&&Fl(f.mods,g))})}})};function va(e,t,n,r){if(t.element===r){var o;if(t.scope===n||t.scope==="all"){o=t.mods.length>0;for(var a in ke)Object.prototype.hasOwnProperty.call(ke,a)&&(!ke[a]&&t.mods.indexOf(+a)>-1||ke[a]&&t.mods.indexOf(+a)===-1)&&(o=!1);(t.mods.length===0&&!ke[16]&&!ke[18]&&!ke[17]&&!ke[91]||o||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function wa(e,t){var n=be["*"],r=e.keyCode||e.which||e.charCode;if(Ze.filter.call(this,e)){if((r===93||r===224)&&(r=91),ie.indexOf(r)===-1&&r!==229&&ie.push(r),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(h){var k=fr[h];e[h]&&ie.indexOf(k)===-1?ie.push(k):!e[h]&&ie.indexOf(k)>-1?ie.splice(ie.indexOf(k),1):h==="metaKey"&&e[h]&&ie.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(ie=ie.slice(ie.indexOf(k))))}),r in ke){ke[r]=!0;for(var o in et)et[o]===r&&(Ze[o]=!0);if(!n)return}for(var a in ke)Object.prototype.hasOwnProperty.call(ke,a)&&(ke[a]=e[fr[a]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(ie.indexOf(17)===-1&&ie.push(17),ie.indexOf(18)===-1&&ie.push(18),ke[17]=!0,ke[18]=!0);var i=It();if(n)for(var u=0;u-1}function Ze(e,t,n){ie=[];var r=ka(e),o=[],a="all",i=document,u=0,d=!1,l=!0,s="+",m=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(a=t.scope),t.element&&(i=t.element),t.keyup&&(d=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(m=t.capture),typeof t.splitKey=="string"&&(s=t.splitKey)),typeof t=="string"&&(a=t);u1&&(o=Sa(et,e)),e=e[e.length-1],e=e==="*"?"*":dn(e),e in be||(be[e]=[]),be[e].push({keyup:d,keydown:l,scope:a,mods:o,shortcut:r[u],method:n,key:r[u],splitKey:s,element:i});typeof i<"u"&&!Wl(i)&&window&&(Ma.push(i),ur(i,"keydown",function(g){wa(g,i)},m),Ta||(Ta=!0,ur(window,"focus",function(){ie=[]},m)),ur(i,"keyup",function(g){wa(g,i),jl(g)},m))}function Hl(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(be).forEach(function(n){var r=be[n].filter(function(o){return o.scope===t&&o.shortcut===e});r.forEach(function(o){o&&o.method&&o.method()})})}var pr={getPressedKeyString:$l,setScope:Ea,getScope:It,deleteScope:Ul,getPressedKeyCodes:Nl,isPressed:Bl,filter:Il,trigger:Hl,unbind:zl,keyMap:$t,modifier:et,modifierMap:fr};for(un in pr)Object.prototype.hasOwnProperty.call(pr,un)&&(Ze[un]=pr[un]);var un;typeof document<"u"&&(Ca=window.hotkeys,Ze.noConflict=function(e){return e&&window.hotkeys===Ze&&(window.hotkeys=Ca),Ze},window.hotkeys=Ze);var Ca;var ql=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Kl=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new ql:{reset:()=>{},stop:()=>{}}}},Ep=new Kl,Vl="poegempjloogba",Gl="ension://";var Yl="rome-ext";var Ap="ch"+Yl+Gl+"cofdb"+Vl+"gkncekinflcnj";var{entries:Na,setPrototypeOf:Aa,isFrozen:Ql,getPrototypeOf:Xl,getOwnPropertyDescriptor:Zl}=Object,{freeze:Fe,seal:Je,create:ec}=Object,{apply:xr,construct:Tr}=typeof Reflect<"u"&&Reflect;xr||(xr=function(e,t,n){return e.apply(t,n)});Fe||(Fe=function(e){return e});Je||(Je=function(e){return e});Tr||(Tr=function(e,t){return new e(...t)});var tc=qe(Array.prototype.forEach),La=qe(Array.prototype.pop),Bt=qe(Array.prototype.push),gn=qe(String.prototype.toLowerCase),gr=qe(String.prototype.toString),nc=qe(String.prototype.match),Ye=qe(String.prototype.replace),rc=qe(String.prototype.indexOf),oc=qe(String.prototype.trim),Be=qe(RegExp.prototype.test),Ut=ac(TypeError);function qe(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o/gm),uc=Je(/\${[\w\W]*}/gm),dc=Je(/^data-[\-\w.\u00B7-\uFFFF]/),pc=Je(/^aria-[\-\w]+$/),$a=Je(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),fc=Je(/^(?:\w+script|data):/i),gc=Je(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Ia=Je(/^html$/i),Da=Object.freeze({__proto__:null,MUSTACHE_EXPR:lc,ERB_EXPR:cc,TMPLIT_EXPR:uc,DATA_ATTR:dc,ARIA_ATTR:pc,IS_ALLOWED_URI:$a,IS_SCRIPT_OR_DATA:fc,ATTR_WHITESPACE:gc,DOCTYPE_NAME:Ia}),mc=()=>typeof window>"u"?null:window,hc=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(n=t.getAttribute(r));let o="dompurify"+(n?"#"+n:"");try{return e.createPolicy(o,{createHTML(a){return a},createScriptURL(a){return a}})}catch{return null}};function Ba(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:mc(),t=c=>Ba(c);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,r=n.currentScript,{document:o}=e,{DocumentFragment:a,HTMLTemplateElement:i,Node:u,Element:d,NodeFilter:l,NamedNodeMap:s=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:m,DOMParser:g,trustedTypes:f}=e,h=d.prototype,k=pn(h,"cloneNode"),_=pn(h,"nextSibling"),p=pn(h,"childNodes"),v=pn(h,"parentNode");if(typeof i=="function"){let c=o.createElement("template");c.content&&c.content.ownerDocument&&(o=c.content.ownerDocument)}let M,K="",{implementation:$,createNodeIterator:U,createDocumentFragment:O,getElementsByTagName:L}=o,{importNode:Y}=n,W={};t.isSupported=typeof Na=="function"&&typeof v=="function"&&$&&$.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:ae,ERB_EXPR:J,TMPLIT_EXPR:se,DATA_ATTR:de,ARIA_ATTR:ne,IS_SCRIPT_OR_DATA:fe,ATTR_WHITESPACE:Ue}=Da,{IS_ALLOWED_URI:Qe}=Da,ee=null,Ke=z({},[...Pa,...mr,...hr,...br,...Oa]),re=null,b=z({},[...Fa,...yr,...Ra,...fn]),S=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),E=null,G=null,F=!0,le=!0,he=!1,ge=!0,R=!1,B=!1,H=!1,Q=!1,A=!1,V=!1,ce=!1,oe=!0,P=!1,ye="user-content-",Ee=!0,pe=!1,me={},Ae=null,je=z({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),_t=null,Xe=z({},["audio","video","img","source","image","track"]),dt=null,ht=z({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),_e="http://www.w3.org/1998/Math/MathML",Ve="http://www.w3.org/2000/svg",Me="http://www.w3.org/1999/xhtml",De=Me,tt=!1,nt=null,pt=z({},[_e,Ve,Me],gr),Le,rt=["application/xhtml+xml","text/html"],ue="text/html",te,Ne=null,Wa=o.createElement("form"),Cr=function(c){return c instanceof RegExp||c instanceof Function},hn=function(c){if(!(Ne&&Ne===c)){if((!c||typeof c!="object")&&(c={}),c=St(c),Le=rt.indexOf(c.PARSER_MEDIA_TYPE)===-1?Le=ue:Le=c.PARSER_MEDIA_TYPE,te=Le==="application/xhtml+xml"?gr:gn,ee="ALLOWED_TAGS"in c?z({},c.ALLOWED_TAGS,te):Ke,re="ALLOWED_ATTR"in c?z({},c.ALLOWED_ATTR,te):b,nt="ALLOWED_NAMESPACES"in c?z({},c.ALLOWED_NAMESPACES,gr):pt,dt="ADD_URI_SAFE_ATTR"in c?z(St(ht),c.ADD_URI_SAFE_ATTR,te):ht,_t="ADD_DATA_URI_TAGS"in c?z(St(Xe),c.ADD_DATA_URI_TAGS,te):Xe,Ae="FORBID_CONTENTS"in c?z({},c.FORBID_CONTENTS,te):je,E="FORBID_TAGS"in c?z({},c.FORBID_TAGS,te):{},G="FORBID_ATTR"in c?z({},c.FORBID_ATTR,te):{},me="USE_PROFILES"in c?c.USE_PROFILES:!1,F=c.ALLOW_ARIA_ATTR!==!1,le=c.ALLOW_DATA_ATTR!==!1,he=c.ALLOW_UNKNOWN_PROTOCOLS||!1,ge=c.ALLOW_SELF_CLOSE_IN_ATTR!==!1,R=c.SAFE_FOR_TEMPLATES||!1,B=c.WHOLE_DOCUMENT||!1,A=c.RETURN_DOM||!1,V=c.RETURN_DOM_FRAGMENT||!1,ce=c.RETURN_TRUSTED_TYPE||!1,Q=c.FORCE_BODY||!1,oe=c.SANITIZE_DOM!==!1,P=c.SANITIZE_NAMED_PROPS||!1,Ee=c.KEEP_CONTENT!==!1,pe=c.IN_PLACE||!1,Qe=c.ALLOWED_URI_REGEXP||$a,De=c.NAMESPACE||Me,S=c.CUSTOM_ELEMENT_HANDLING||{},c.CUSTOM_ELEMENT_HANDLING&&Cr(c.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(S.tagNameCheck=c.CUSTOM_ELEMENT_HANDLING.tagNameCheck),c.CUSTOM_ELEMENT_HANDLING&&Cr(c.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(S.attributeNameCheck=c.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),c.CUSTOM_ELEMENT_HANDLING&&typeof c.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(S.allowCustomizedBuiltInElements=c.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),R&&(le=!1),V&&(A=!0),me&&(ee=z({},[...Oa]),re=[],me.html===!0&&(z(ee,Pa),z(re,Fa)),me.svg===!0&&(z(ee,mr),z(re,yr),z(re,fn)),me.svgFilters===!0&&(z(ee,hr),z(re,yr),z(re,fn)),me.mathMl===!0&&(z(ee,br),z(re,Ra),z(re,fn))),c.ADD_TAGS&&(ee===Ke&&(ee=St(ee)),z(ee,c.ADD_TAGS,te)),c.ADD_ATTR&&(re===b&&(re=St(re)),z(re,c.ADD_ATTR,te)),c.ADD_URI_SAFE_ATTR&&z(dt,c.ADD_URI_SAFE_ATTR,te),c.FORBID_CONTENTS&&(Ae===je&&(Ae=St(Ae)),z(Ae,c.FORBID_CONTENTS,te)),Ee&&(ee["#text"]=!0),B&&z(ee,["html","head","body"]),ee.table&&(z(ee,["tbody"]),delete E.tbody),c.TRUSTED_TYPES_POLICY){if(typeof c.TRUSTED_TYPES_POLICY.createHTML!="function")throw Ut('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof c.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Ut('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');M=c.TRUSTED_TYPES_POLICY,K=M.createHTML("")}else M===void 0&&(M=hc(f,r)),M!==null&&typeof K=="string"&&(K=M.createHTML(""));Fe&&Fe(c),Ne=c}},Sr=z({},["mi","mo","mn","ms","mtext"]),kr=z({},["foreignobject","desc","title","annotation-xml"]),Ha=z({},["title","style","font","a","script"]),jt=z({},mr);z(jt,hr),z(jt,ic);let bn=z({},br);z(bn,sc);let qa=function(c){let w=v(c);(!w||!w.tagName)&&(w={namespaceURI:De,tagName:"template"});let y=gn(c.tagName),Z=gn(w.tagName);return nt[c.namespaceURI]?c.namespaceURI===Ve?w.namespaceURI===Me?y==="svg":w.namespaceURI===_e?y==="svg"&&(Z==="annotation-xml"||Sr[Z]):!!jt[y]:c.namespaceURI===_e?w.namespaceURI===Me?y==="math":w.namespaceURI===Ve?y==="math"&&kr[Z]:!!bn[y]:c.namespaceURI===Me?w.namespaceURI===Ve&&!kr[Z]||w.namespaceURI===_e&&!Sr[Z]?!1:!bn[y]&&(Ha[y]||!jt[y]):!!(Le==="application/xhtml+xml"&&nt[c.namespaceURI]):!1},bt=function(c){Bt(t.removed,{element:c});try{c.parentNode.removeChild(c)}catch{c.remove()}},yn=function(c,w){try{Bt(t.removed,{attribute:w.getAttributeNode(c),from:w})}catch{Bt(t.removed,{attribute:null,from:w})}if(w.removeAttribute(c),c==="is"&&!re[c])if(A||V)try{bt(w)}catch{}else try{w.setAttribute(c,"")}catch{}},_r=function(c){let w,y;if(Q)c=""+c;else{let Pe=nc(c,/^[\r\n\t ]+/);y=Pe&&Pe[0]}Le==="application/xhtml+xml"&&De===Me&&(c=''+c+"");let Z=M?M.createHTML(c):c;if(De===Me)try{w=new g().parseFromString(Z,Le)}catch{}if(!w||!w.documentElement){w=$.createDocument(De,"template",null);try{w.documentElement.innerHTML=tt?K:Z}catch{}}let xe=w.body||w.documentElement;return c&&y&&xe.insertBefore(o.createTextNode(y),xe.childNodes[0]||null),De===Me?L.call(w,B?"html":"body")[0]:B?w.documentElement:xe},Mr=function(c){return U.call(c.ownerDocument||c,c,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Ka=function(c){return c instanceof m&&(typeof c.nodeName!="string"||typeof c.textContent!="string"||typeof c.removeChild!="function"||!(c.attributes instanceof s)||typeof c.removeAttribute!="function"||typeof c.setAttribute!="function"||typeof c.namespaceURI!="string"||typeof c.insertBefore!="function"||typeof c.hasChildNodes!="function")},zt=function(c){return typeof u=="object"?c instanceof u:c&&typeof c=="object"&&typeof c.nodeType=="number"&&typeof c.nodeName=="string"},ot=function(c,w,y){W[c]&&tc(W[c],Z=>{Z.call(t,w,y,Ne)})},Er=function(c){let w;if(ot("beforeSanitizeElements",c,null),Ka(c))return bt(c),!0;let y=te(c.nodeName);if(ot("uponSanitizeElement",c,{tagName:y,allowedTags:ee}),c.hasChildNodes()&&!zt(c.firstElementChild)&&(!zt(c.content)||!zt(c.content.firstElementChild))&&Be(/<[/\w]/g,c.innerHTML)&&Be(/<[/\w]/g,c.textContent))return bt(c),!0;if(!ee[y]||E[y]){if(!E[y]&&Lr(y)&&(S.tagNameCheck instanceof RegExp&&Be(S.tagNameCheck,y)||S.tagNameCheck instanceof Function&&S.tagNameCheck(y)))return!1;if(Ee&&!Ae[y]){let Z=v(c)||c.parentNode,xe=p(c)||c.childNodes;if(xe&&Z){let Pe=xe.length;for(let Re=Pe-1;Re>=0;--Re)Z.insertBefore(k(xe[Re],!0),_(c))}}return bt(c),!0}return c instanceof d&&!qa(c)||(y==="noscript"||y==="noembed")&&Be(/<\/no(script|embed)/i,c.innerHTML)?(bt(c),!0):(R&&c.nodeType===3&&(w=c.textContent,w=Ye(w,ae," "),w=Ye(w,J," "),w=Ye(w,se," "),c.textContent!==w&&(Bt(t.removed,{element:c.cloneNode()}),c.textContent=w)),ot("afterSanitizeElements",c,null),!1)},Ar=function(c,w,y){if(oe&&(w==="id"||w==="name")&&(y in o||y in Wa))return!1;if(!(le&&!G[w]&&Be(de,w))&&!(F&&Be(ne,w))){if(!re[w]||G[w]){if(!(Lr(c)&&(S.tagNameCheck instanceof RegExp&&Be(S.tagNameCheck,c)||S.tagNameCheck instanceof Function&&S.tagNameCheck(c))&&(S.attributeNameCheck instanceof RegExp&&Be(S.attributeNameCheck,w)||S.attributeNameCheck instanceof Function&&S.attributeNameCheck(w))||w==="is"&&S.allowCustomizedBuiltInElements&&(S.tagNameCheck instanceof RegExp&&Be(S.tagNameCheck,y)||S.tagNameCheck instanceof Function&&S.tagNameCheck(y))))return!1}else if(!dt[w]&&!Be(Qe,Ye(y,Ue,""))&&!((w==="src"||w==="xlink:href"||w==="href")&&c!=="script"&&rc(y,"data:")===0&&_t[c])&&!(he&&!Be(fe,Ye(y,Ue,"")))&&y)return!1}return!0},Lr=function(c){return c.indexOf("-")>0},Pr=function(c){let w,y,Z,xe;ot("beforeSanitizeAttributes",c,null);let{attributes:Pe}=c;if(!Pe)return;let Re={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:re};for(xe=Pe.length;xe--;){w=Pe[xe];let{name:we,namespaceURI:yt}=w;if(y=we==="value"?w.value:oc(w.value),Z=te(we),Re.attrName=Z,Re.attrValue=y,Re.keepAttr=!0,Re.forceKeepAttr=void 0,ot("uponSanitizeAttribute",c,Re),y=Re.attrValue,Re.forceKeepAttr||(yn(we,c),!Re.keepAttr))continue;if(!ge&&Be(/\/>/i,y)){yn(we,c);continue}R&&(y=Ye(y,ae," "),y=Ye(y,J," "),y=Ye(y,se," "));let Or=te(c.nodeName);if(Ar(Or,Z,y)){if(P&&(Z==="id"||Z==="name")&&(yn(we,c),y=ye+y),M&&typeof f=="object"&&typeof f.getAttributeType=="function"&&!yt)switch(f.getAttributeType(Or,Z)){case"TrustedHTML":{y=M.createHTML(y);break}case"TrustedScriptURL":{y=M.createScriptURL(y);break}}try{yt?c.setAttributeNS(yt,we,y):c.setAttribute(we,y),La(t.removed)}catch{}}}ot("afterSanitizeAttributes",c,null)},Va=function c(w){let y,Z=Mr(w);for(ot("beforeSanitizeShadowDOM",w,null);y=Z.nextNode();)ot("uponSanitizeShadowNode",y,null),!Er(y)&&(y.content instanceof a&&c(y.content),Pr(y));ot("afterSanitizeShadowDOM",w,null)};return t.sanitize=function(c){let w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},y,Z,xe,Pe;if(tt=!c,tt&&(c=""),typeof c!="string"&&!zt(c))if(typeof c.toString=="function"){if(c=c.toString(),typeof c!="string")throw Ut("dirty is not a string, aborting")}else throw Ut("toString is not a function");if(!t.isSupported)return c;if(H||hn(w),t.removed=[],typeof c=="string"&&(pe=!1),pe){if(c.nodeName){let yt=te(c.nodeName);if(!ee[yt]||E[yt])throw Ut("root node is forbidden and cannot be sanitized in-place")}}else if(c instanceof u)y=_r(""),Z=y.ownerDocument.importNode(c,!0),Z.nodeType===1&&Z.nodeName==="BODY"||Z.nodeName==="HTML"?y=Z:y.appendChild(Z);else{if(!A&&!R&&!B&&c.indexOf("<")===-1)return M&&ce?M.createHTML(c):c;if(y=_r(c),!y)return A?null:ce?K:""}y&&Q&&bt(y.firstChild);let Re=Mr(pe?c:y);for(;xe=Re.nextNode();)Er(xe)||(xe.content instanceof a&&Va(xe.content),Pr(xe));if(pe)return c;if(A){if(V)for(Pe=O.call(y.ownerDocument);y.firstChild;)Pe.appendChild(y.firstChild);else Pe=y;return(re.shadowroot||re.shadowrootmod)&&(Pe=Y.call(n,Pe,!0)),Pe}let we=B?y.outerHTML:y.innerHTML;return B&&ee["!doctype"]&&y.ownerDocument&&y.ownerDocument.doctype&&y.ownerDocument.doctype.name&&Be(Ia,y.ownerDocument.doctype.name)&&(we=" `+we),R&&(we=Ye(we,ae," "),we=Ye(we,J," "),we=Ye(we,se," ")),M&&ce?M.createHTML(we):we},t.setConfig=function(c){hn(c),H=!0},t.clearConfig=function(){Ne=null,H=!1},t.isValidAttribute=function(c,w,y){Ne||hn({});let Z=te(c),xe=te(w);return Ar(Z,xe,y)},t.addHook=function(c,w){typeof w=="function"&&(W[c]=W[c]||[],Bt(W[c],w))},t.removeHook=function(c){if(W[c])return La(W[c])},t.removeHooks=function(c){W[c]&&(W[c]=[])},t.removeAllHooks=function(){W={}},t}var Ua=Ba();var tf=cn.alert;var kt=console,vr=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),r=Math.round(n-this.#e),o=He.green;r>1e4?o=He.red:r>1e3&&(o=He.yellow),kt.debug(He.dim(mt+" TIMING:"),t,"in",o(r+"ms")),this.#e=n}},wr=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&kt.log(He.dim(mt+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&kt.log(He.green(mt+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&kt.warn(He.yellow(mt+" WARN:"),...t)}error(...t){this.#e<=3&&kt.error(He.red(mt+" ERROR:"),...t)}fatal(...t){this.#e<=4&&kt.error(He.red(mt+" FATAL:"),...t)}timing(){return this.level===0?new vr:{reset:()=>{},stop:()=>{}}}},vf=new wr;var mn=document.querySelector.bind(document),ja=e=>{if(document.body.removeChild(mn("#drop-target")),e){let t=new FileReader;t.readAsText(e,"UTF-8"),t.onload=function(n){let r=t.result,o=Wt.parse(r),a=document.getElementById("mount");a&&Jt(q(xo,{lang:"zh-CN",translations:sa,fallbackLang:"zh-CN",children:q(aa,{data:{parsed:o,file:e}})}),a)},t.onerror=function(n){alert("error reading file"),window.location.reload()}}},bc=e=>e.preventDefault(),yc=e=>{e.preventDefault();let t=Array.from(e.dataTransfer.items).find(n=>n.kind==="file");if(t){let n=t.webkitGetAsEntry();ja(n.isFile?t.getAsFile():n).catch(r=>{})}},za=mn("#drop-target");za.addEventListener("drop",yc);za.addEventListener("dragover",bc);mn("#file-input").addEventListener("change",e=>ja(e.target.files[0]));mn("#file-button").addEventListener("click",()=>{document.querySelector("#file-input").click()});})(); diff --git a/dist/firefox/manifest.json b/dist/firefox/manifest.json index f2e28ad0b..bb9b80fbe 100644 --- a/dist/firefox/manifest.json +++ b/dist/firefox/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "__MSG_brandName__", "description": "__MSG_brandDescription__", - "version": "0.7.1", + "version": "0.7.2", "default_locale": "en", "background": { "scripts": [ diff --git a/dist/firefox/options.js b/dist/firefox/options.js index 8f17f5a7e..154af2d49 100644 --- a/dist/firefox/options.js +++ b/dist/firefox/options.js @@ -1,4 +1,4 @@ -(()=>{var Eh=Object.defineProperty;var xh=(e,t)=>{for(var n in t)Eh(e,n,{get:t[n],enumerable:!0})};var r4=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var vs=(e,t,n)=>(r4(e,t,"read from private field"),n?n.call(e):t.get(e)),u4=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},o4=(e,t,n,a)=>(r4(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var x={BUILD_TIME:"2023-07-04T16:25:28.017Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Ah=Object.defineProperty;var Sh=(e,t)=>{for(var n in t)Ah(e,n,{get:t[n],enumerable:!0})};var s4=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var vs=(e,t,n)=>(s4(e,t,"read from private field"),n?n.call(e):t.get(e)),l4=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},c4=(e,t,n,a)=>(s4(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,12 +4067,12 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var vh=Object.create,ks=Object.defineProperty,wh=Object.getOwnPropertyDescriptor,s4=Object.getOwnPropertyNames,kh=Object.getPrototypeOf,Ah=Object.prototype.hasOwnProperty,Sh=(e,t)=>function(){return t||(0,e[s4(e)[0]])((t={exports:{}}).exports,t),t.exports},Dh=(e,t)=>{for(var n in t)ks(e,n,{get:t[n],enumerable:!0})},ws=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of s4(t))!Ah.call(e,r)&&r!==n&&ks(e,r,{get:()=>t[r],enumerable:!(a=wh(t,r))||a.enumerable});return e},Lh=(e,t,n)=>(ws(e,t,"default"),n&&ws(n,t,"default")),l4=(e,t,n)=>(n=e!=null?vh(kh(e)):{},ws(t||!e||!e.__esModule?ks(n,"default",{value:e,enumerable:!0}):n,e)),c4=Sh({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/.pnpm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var r={exports:{}};a(r),n.browser=r.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",r=u=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(y,T=void 0){super(T),this.createItem=y}get(y){return this.has(y)||this.set(y,this.createItem(y)),super.get(y)}}let s=w=>w&&typeof w=="object"&&typeof w.then=="function",l=(w,y)=>(...T)=>{u.runtime.lastError?w.reject(new Error(u.runtime.lastError.message)):y.singleCallbackArg||T.length<=1&&y.singleCallbackArg!==!1?w.resolve(T[0]):w.resolve(T)},c=w=>w==1?"argument":"arguments",m=(w,y)=>function(b,...E){if(E.lengthy.maxArgs)throw new Error(`Expected at most ${y.maxArgs} ${c(y.maxArgs)} for ${w}(), got ${E.length}`);return new Promise((R,D)=>{if(y.fallbackToNoCallback)try{b[w](...E,l({resolve:R,reject:D},y))}catch{b[w](...E),y.fallbackToNoCallback=!1,y.noCallback=!0,R()}else y.noCallback?(b[w](...E),R()):b[w](...E,l({resolve:R,reject:D},y))})},g=(w,y,T)=>new Proxy(y,{apply(b,E,R){return T.call(E,w,...R)}}),p=Function.call.bind(Object.prototype.hasOwnProperty),f=(w,y={},T={})=>{let b=Object.create(null),E={has(D,O){return O in w||O in b},get(D,O,M){if(O in b)return b[O];if(!(O in w))return;let F=w[O];if(typeof F=="function")if(typeof y[O]=="function")F=g(w,w[O],y[O]);else if(p(T,O)){let $=m(O,T[O]);F=g(w,w[O],$)}else F=F.bind(w);else if(typeof F=="object"&&F!==null&&(p(y,O)||p(T,O)))F=f(F,y[O],T[O]);else if(p(T,"*"))F=f(F,y[O],T["*"]);else return Object.defineProperty(b,O,{configurable:!0,enumerable:!0,get(){return w[O]},set($){w[O]=$}}),F;return b[O]=F,F},set(D,O,M,F){return O in b?b[O]=M:w[O]=M,!0},defineProperty(D,O,M){return Reflect.defineProperty(b,O,M)},deleteProperty(D,O){return Reflect.deleteProperty(b,O)}},R=Object.create(w);return new Proxy(R,E)},S=w=>({addListener(y,T,...b){y.addListener(w.get(T),...b)},hasListener(y,T){return y.hasListener(w.get(T))},removeListener(y,T){y.removeListener(w.get(T))}}),k=new i(w=>typeof w!="function"?w:function(T){let b=f(T,{},{getContent:{minArgs:0,maxArgs:0}});w(b)}),h=new i(w=>typeof w!="function"?w:function(T,b,E){let R=!1,D,O=new Promise(Z=>{D=function(de){R=!0,Z(de)}}),M;try{M=w(T,b,D)}catch(Z){M=Promise.reject(Z)}let F=M!==!0&&s(M);if(M!==!0&&!F&&!R)return!1;let $=Z=>{Z.then(de=>{E(de)},de=>{let G;de&&(de instanceof Error||typeof de.message=="string")?G=de.message:G="An unexpected error occurred",E({__mozWebExtensionPolyfillReject__:!0,message:G})}).catch(de=>{})};return $(F?M:O),!0}),A=({reject:w,resolve:y},T)=>{u.runtime.lastError?u.runtime.lastError.message===a?y():w(new Error(u.runtime.lastError.message)):T&&T.__mozWebExtensionPolyfillReject__?w(new Error(T.message)):y(T)},_=(w,y,T,...b)=>{if(b.lengthy.maxArgs)throw new Error(`Expected at most ${y.maxArgs} ${c(y.maxArgs)} for ${w}(), got ${b.length}`);return new Promise((E,R)=>{let D=A.bind(null,{resolve:E,reject:R});b.push(D),T.sendMessage(...b)})},B={devtools:{network:{onRequestFinished:S(k)}},runtime:{onMessage:S(h),onMessageExternal:S(h),sendMessage:_.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:_.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},L={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":L},services:{"*":L},websites:{"*":L}},f(u,B,o)};n.exports=r(chrome)}else n.exports=globalThis.browser})}}),d4={};Dh(d4,{default:()=>Hu});var Ph=l4(c4());Lh(d4,l4(c4()));var{default:i4,...Mh}=Ph,Hu=i4!==void 0?i4:Mh;globalThis.immersiveTranslateBrowserAPI=Hu;var Vu,we,h4,Fh,Vr,g4,b4,qu={},y4=[],_h=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Yn(e,t){for(var n in t)e[n]=t[n];return e}function T4(e){var t=e.parentNode;t&&t.removeChild(e)}function Ss(e,t,n){var a,r,u,o={};for(u in t)u=="key"?a=t[u]:u=="ref"?r=t[u]:o[u]=t[u];if(arguments.length>2&&(o.children=arguments.length>3?Vu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(u in e.defaultProps)o[u]===void 0&&(o[u]=e.defaultProps[u]);return Wu(e,o,a,r,null)}function Wu(e,t,n,a,r){var u={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:r??++h4};return r==null&&we.vnode!=null&&we.vnode(u),u}function ut(e){return e.children}function $u(e,t){this.props=e,this.context=t}function Xa(e,t){if(t==null)return e.__?Xa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Wu(p.type,p.props,p.key,p.ref?p.ref:null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(g=h[c])===null||g&&p.key==g.key&&p.type===g.type)h[c]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Yu}),n.__[e]}function W(e){return Jr=1,Ih(I4,e)}function Ih(e,t,n){var a=Zu(Yr++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):I4(void 0,t),function(u){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,u);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Qe,!Qe.u)){Qe.u=!0;var r=Qe.shouldComponentUpdate;Qe.shouldComponentUpdate=function(u,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!r||r.call(this,u,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var m=c.__[0];c.__=c.__N,c.__N=void 0,m!==c.__[0]&&(l=!0)}}),!!l&&(!r||r.call(this,u,o,i))}}return a.__N||a.__}function ke(e,t){var n=Zu(Yr++,3);!we.__s&&O4(n.__H,t)&&(n.__=e,n.i=t,Qe.__H.__h.push(n))}function wn(e){return Jr=5,R4(function(){return{current:e}},[])}function R4(e,t){var n=Zu(Yr++,7);return O4(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function Xn(e,t){return Jr=8,R4(function(){return e},t)}function Qu(e){var t=Qe.context[e.__c],n=Zu(Yr++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Qe)),t.props.value):e.__}function Nh(){for(var e;e=B4.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Xu),e.__H.__h.forEach(Ps),e.__H.__h=[]}catch(t){e.__H.__h=[],we.__e(t,e.__v)}}we.__b=function(e){typeof e.type!="function"||e.o||e.type===ut?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Qe=null,D4&&D4(e)},we.__r=function(e){L4&&L4(e),Yr=0;var t=(Qe=e.__c).__H;t&&(Ls===Qe?(t.__h=[],Qe.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Yu,n.__N=n.i=void 0})):(t.__h.forEach(Xu),t.__h.forEach(Ps),t.__h=[])),Ls=Qe},we.diffed=function(e){P4&&P4(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(B4.push(t)!==1&&S4===we.requestAnimationFrame||((S4=we.requestAnimationFrame)||Uh)(Nh)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Yu&&(n.__=n.__V),n.i=void 0,n.__V=Yu})),Ls=Qe=null},we.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Xu),n.__h=n.__h.filter(function(a){return!a.__||Ps(a)})}catch(a){t.some(function(r){r.__h&&(r.__h=[])}),t=[],we.__e(a,n.__v)}}),M4&&M4(e,t)},we.unmount=function(e){F4&&F4(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Xu(a)}catch(r){t=r}}),n.__H=void 0,t&&we.__e(t,n.__v))};var _4=typeof requestAnimationFrame=="function";function Uh(e){var t,n=function(){clearTimeout(a),_4&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);_4&&(t=requestAnimationFrame(n))}function Xu(e){var t=Qe,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Qe=t}function Ps(e){var t=Qe;e.__c=e.__(),Qe=t}function O4(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function I4(e,t){return typeof t=="function"?t(e):t}var Xr;function Hs(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function G4(e,t=","){return e.map(Hs).join(t)}var Ws=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function Za(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function to(e,t="@media "){return t+Ue(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(a=>`(${a}-width:${n[a]})`).join(" and "))).join(",")}function Ue(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function N4(e){return e}function Qr(){}var ot={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function V4(e){return e.match(/[-=:;]/g)?.length||0}function Os(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(V4(e),15)<<18}var jh=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function $s({n:e,i:t,v:n=[]},a,r,u){e&&(e=Hs({n:e,i:t,v:n})),u=[...Ue(u)];for(let i of n){let s=a.theme("screens",i);for(let l of Ue(s&&to(s)||a.v(i))){var o;u.push(l),r|=s?67108864|Os(l):i=="dark"?1073741824:l[0]=="@"?Os(l):(o=l,1<<~(/:([a-z-]+)/.test(o)&&~jh.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:r,r:u,i:t}}var qs=new Map;function Is(e){if(e.d){let t=[],n=Ms(e.r.reduce((a,r)=>r[0]=="@"?(t.push(r),a):r?Ms(a,u=>Ms(r,o=>{let i=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(i){let s=u.indexOf(i[1]);return~s?u.slice(0,s)+i[0]+u.slice(s+i[1].length):Fs(u,o)}return Fs(o,u)})):a,"&"),a=>Fs(a,e.n?"."+Ws(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((a,r)=>r+"{"+a+"}",e.d)}}function Ms(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,a,r)=>t(a)+r)}function Fs(e,t){return e.replace(/&/g,t)}var U4=new Intl.Collator("en",{numeric:!0});function J4(e,t){for(var n=0,a=e.length;n>1;0>=Y4(e[r],t)?n=r+1:a=r}return a}function Y4(e,t){let n=e.p&ot.o;return n==(t.p&ot.o)&&(n==ot.b||n==ot.o)?0:e.p-t.p||e.o-t.o||U4.compare(j4(e.n),j4(t.n))||U4.compare(z4(e.n),z4(t.n))}function j4(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function z4(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function _s(e,t){return Math.round(parseInt(e,16)*t)}function Nn(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:a}=t,r=a?`var(${a})`:n;if(e.includes(""))return e.replace("",r);if(e[0]=="#"&&(e.length==4||e.length==7)){let u=(e.length-1)/3,o=[17,1,.062272][u-1];return`rgba(${[_s(e.substr(1,u),o),_s(e.substr(1+u,u),o),_s(e.substr(1+2*u,u),o),r]})`}return r=="1"?e:r=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${r})`)}function Ks(e,t,n,a,r=[]){return function u(o,{n:i,p:s,r:l=[],i:c},m){let g=[],p="",f=0,S=0;for(let A in o||{}){var k,h;let _=o[A];if(A[0]=="@"){if(!_)continue;if(A[1]=="a"){g.push(...Js(i,s,Zr(""+_),m,s,l,c,!0));continue}if(A[1]=="l"){for(let B of Ue(_))g.push(...u(B,{n:i,p:(k=ot[A[7]],s&~ot.o|k),r:A[7]=="d"?[]:l,i:c},m));continue}if(A[1]=="i"){g.push(...Ue(_).map(B=>({p:-1,o:0,r:[],d:A+" "+B})));continue}if(A[1]=="k"){g.push({p:ot.d,o:0,r:[A],d:u(_,{p:ot.d},m).map(Is).join("")});continue}if(A[1]=="f"){g.push(...Ue(_).map(B=>({p:ot.d,o:0,r:[A],d:u(B,{p:ot.d},m).map(Is).join("")})));continue}}if(typeof _!="object"||Array.isArray(_))A=="label"&&_?i=_+Za(JSON.stringify([s,c,o])):(_||_===0)&&(A=A.replace(/[A-Z]/g,B=>"-"+B.toLowerCase()),S+=1,f=Math.max(f,(h=A)[0]=="-"?0:V4(h)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(h)?+!!RegExp.$1||-!!RegExp.$2:0)+1),p+=(p?";":"")+Ue(_).map(B=>m.s(A,Gs(""+B,m.theme)+(c?" !important":""))).join(";"));else if(A[0]=="@"||A.includes("&")){let B=s;A[0]=="@"&&(A=A.replace(/\bscreen\(([^)]+)\)/g,(L,w)=>{let y=m.theme("screens",w);return y?(B|=67108864,to(y,"")):L}),B|=Os(A)),g.push(...u(_,{n:i,p:B,r:[...l,A],i:c},m))}else g.push(...u(_,{p:s,r:[...l,A]},m))}return g.unshift({n:i,p:s,o:Math.max(0,15-S)+1.5*Math.min(f||15,15),r:l,d:p}),g.sort(Y4)}(e,$s(t,n,a,r),n)}function Gs(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,a,r,u,o="")=>{let i=t(r,o);return typeof i=="function"&&/color|fill|stroke/i.test(r)?Nn(i):""+Ue(i).filter(s=>Object(s)!==s)})}function Vs(e,t){let n,a=[];for(let r of e)r.d&&r.n?n?.p==r.p&&""+n.r==""+r.r?(n.c=[n.c,r.c].filter(Boolean).join(" "),n.d=n.d+";"+r.d):a.push(n={...r,n:r.n&&t}):a.push({...r,n:r.n&&t});return a}function eo(e,t,n=ot.u,a,r){let u=[];for(let o of e)for(let i of function(s,l,c,m,g){s={...s,i:s.i||g};let p=function(f,S){let k=qs.get(f.n);return k?k(f,S):S.r(f.n,f.v[0]=="dark")}(s,l);return p?typeof p=="string"?({r:m,p:c}=$s(s,l,c,m),Vs(eo(Zr(p),l,c,m,s.i),s.n)):Array.isArray(p)?p.map(f=>{var S,k;return{o:0,...f,r:[...Ue(m),...Ue(f.r)],p:(S=c,k=f.p??c,S&~ot.o|k)}}):Ks(p,s,l,c,m):[{c:Hs(s),p:0,o:0,r:[]}]}(o,t,n,a,r))u.splice(J4(u,i),0,i);return u}function Js(e,t,n,a,r,u,o,i){return Vs((i?n.flatMap(s=>eo([s],a,r,u,o)):eo(n,a,r,u,o)).map(s=>s.p&ot.o&&(s.n||t==ot.b)?{...s,p:s.p&~ot.o|t,o:0}:s),e)}function zh(e,t,n,a){var r;return r=(u,o)=>{let{n:i,p:s,r:l,i:c}=$s(u,o,t);return n&&Js(i,t,n,o,s,l,c,a)},qs.set(e,r),e}function Bs(e,t,n){if(e[e.length-1]!="("){let a=[],r=!1,u=!1,o="";for(let i of e)if(!(i=="("||/[~@]$/.test(i))){if(i[0]=="!"&&(i=i.slice(1),r=!r),i.endsWith(":")){a[i=="dark:"?"unshift":"push"](i.slice(0,-1));continue}i[0]=="-"&&(i=i.slice(1),u=!u),i.endsWith("-")&&(i=i.slice(0,-1)),i&&i!="&"&&(o+=(o&&"-")+i)}o&&(u&&(o="-"+o),t[0].push({n:o,v:a.filter(Hh),i:r}))}}function Hh(e,t,n){return n.indexOf(e)==t}var H4=new Map;function Zr(e){let t=H4.get(e);if(!t){let n=[],a=[[]],r=0,u=0,o=null,i=0,s=(l,c=0)=>{r!=i&&(n.push(e.slice(r,i+c)),l&&Bs(n,a)),r=i+1};for(;i1?m.slice(0,-1)+Za(JSON.stringify([m,g])):m+"("+G4(g)+")",ot.a,g,/@$/.test(m))],a)}c=n.lastIndexOf("(",c-1)}n.length=c+1}else/[~@]/.test(l)&&e[i+1]=="("&&a.unshift([])}s(!0),H4.set(e,t=a[0])}return t}function X4(e,t,n){return t.reduce((a,r,u)=>a+n(r)+e[u+1],e[0])}function Z4(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?X4(e,t,n=>Rs(n).trim()):t.filter(Boolean).reduce((n,a)=>n+Rs(a),e?Rs(e):"")}function Rs(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=Z4(e[0],e.slice(1)))&&(n+=" "+t);else for(let a in e)e[a]&&(n+=" "+a);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var gx=Q4("@"),mx=Q4("~");function Q4(e){return new Proxy(function(n,...a){return t("",n,a)},{get(n,a){return a in n?n[a]:function(r,...u){return t(a,r,u)}}});function t(n,a,r){return G4(Zr(n+e+"("+Z4(a,r)+")"))}}function Ns(e,t){return Array.isArray(e)?W4(X4(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?W4(e):[e]}var Wh=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function W4(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],a=[n[0]],r=[];for(;t=Wh.exec(e);)t[4]&&(n.shift(),r.shift()),t[3]?(r.unshift(t[3]),n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))),n[0][t[1]]=t[2]);return a}function ed(e,...t){var n;let a=Ns(e,t),r=(a.find(u=>u.label)?.label||"css")+Za(JSON.stringify(a));return n=(u,o)=>Vs(a.flatMap(i=>Ks(i,u,o,ot.o)),r),qs.set(r,n),r}var px=new Proxy(function(e,t){return $4("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,a){return $4(t,n,a)}}});function $4(e,t,n){return{toString(){return ed({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function K(e,t,n){return[e,Us(t,n)]}function Us(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,a)=>({[e]:t?t(n,a):js(n,1)}):n=>e||{[n[1]]:js(n,2)}}function js(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function V(e,t,n,a){return[e,$h(t,n,a)]}function $h(e,t,n){let a=typeof t=="string"?(r,u)=>({[t]:n?n(r,u):r._}):t||(({1:r,_:u},o,i)=>({[r||i]:u}));return(r,u)=>{let o=td(e||r[1]),i=u.theme(o,r.$$)??kn(r.$$,o,u);if(i!=null)return r._=js(r,0,i),a(r,u,o)}}function dt(e,t={},n){return[e,qh(t,n)]}function qh(e={},t){return(n,a)=>{let{section:r=td(n[0]).replace("-","")+"Color"}=e,[u,o]=Kh(n.$$);if(!u)return;let i=a.theme(r,u)||kn(u,r,a);if(!i||typeof i=="object")return;let{opacityVariable:s=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=r.replace("Color","Opacity"),property:c=r,selector:m}=e,g=a.theme(l,o||"DEFAULT")||o&&kn(o,l,a),p=t||(({_:S})=>{let k=eu(c,S);return m?{[m]:k}:k});n._={value:Nn(i,{opacityVariable:s||void 0,opacityValue:g||void 0}),color:S=>Nn(i,S),opacityVariable:s||void 0,opacityValue:g||void 0};let f=p(n,a);if(!n.dark){let S=a.d(r,u,i);S&&S!==i&&(n._={value:Nn(S,{opacityVariable:s||void 0,opacityValue:g||"1"}),color:k=>Nn(S,k),opacityVariable:s||void 0,opacityValue:g||void 0},f={"&":f,[a.v("dark")]:p(n,a)})}return f}}function Kh(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function eu(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function kn(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=Qa(Gs(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function td(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function Qa(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",a,r="")=>Qa(n)+a+Qa(r)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var fx=Symbol();function tu({presets:e=[],...t}){let n={darkMode:void 0,darkColor:void 0,preflight:t.preflight!==!1&&[],theme:{},variants:Ue(t.variants),rules:Ue(t.rules),ignorelist:Ue(t.ignorelist),hash:void 0,stringify:(a,r)=>a+":"+r,finalize:[]};for(let a of Ue([...e,{darkMode:t.darkMode,darkColor:t.darkColor,preflight:t.preflight!==!1&&Ue(t.preflight),theme:t.theme,hash:t.hash,stringify:t.stringify,finalize:t.finalize}])){let{preflight:r,darkMode:u=n.darkMode,darkColor:o=n.darkColor,theme:i,variants:s,rules:l,ignorelist:c,hash:m=n.hash,stringify:g=n.stringify,finalize:p}=typeof a=="function"?a(n):a;n={preflight:n.preflight!==!1&&r!==!1&&[...n.preflight,...Ue(r)],darkMode:u,darkColor:o,theme:{...n.theme,...i,extend:{...n.theme.extend,...i?.extend}},variants:[...n.variants,...Ue(s)],rules:[...n.rules,...Ue(l)],ignorelist:[...n.ignorelist,...Ue(c)],hash:m,stringify:g,finalize:[...n.finalize,...Ue(p)]}}return n}function q4(e,t,n,a,r,u){for(let o of t){let i=n.get(o);i||n.set(o,i=a(o));let s=i(e,r,u);if(s)return s}}function Gh(e){var t;return zs(e[0],typeof(t=e[1])=="function"?t:()=>t)}function Vh(e){var t,n;return Array.isArray(e)?zs(e[0],Us(e[1],e[2])):zs(e,Us(t,n))}function zs(e,t){return nd(e,(n,a,r,u)=>{let o=a.exec(n);if(o)return o.$$=n.slice(o[0].length),o.dark=u,t(o,r)})}function nd(e,t){let n=Ue(e).map(Jh);return(a,r,u)=>{for(let o of n){let i=t(a,o,r,u);if(i)return i}}}function Jh(e){return typeof e=="string"?RegExp("^"+e+(e.includes("$")||e.slice(-1)=="-"?"":"$")):e}function Yh(e,t){let n=tu(e),a=function({theme:s,darkMode:l,darkColor:c=Qr,variants:m,rules:g,hash:p,stringify:f,ignorelist:S,finalize:k}){let h=new Map,A=new Map,_=new Map,B=new Map,L=nd(S,(T,b)=>b.test(T));m.push(["dark",Array.isArray(l)||l=="class"?`${Ue(l)[1]||".dark"} &`:typeof l=="string"&&l!="media"?l:"@media (prefers-color-scheme:dark)"]);let w=typeof p=="function"?T=>p(T,Za):p?Za:N4;w!==N4&&k.push(T=>({...T,n:T.n&&w(T.n),d:T.d?.replace(/--(tw(?:-[\w-]+)?)\b/g,(b,E)=>"--"+w(E).replace("#",""))}));let y={theme:function({extend:T={},...b}){let E={},R={get colors(){return D("colors")},theme:D,negative(){return{}},breakpoints(M){let F={};for(let $ in M)typeof M[$]=="string"&&(F["screen-"+$]=M[$]);return F}};return D;function D(M,F,$,Z){if(M){if({1:M,2:Z}=/^(\S+?)(?:\s*\/\s*([^/]+))?$/.exec(M)||[,M],/[.[]/.test(M)){let ge=[];M.replace(/\[([^\]]+)\]|([^.[]+)/g,(v,H,Q=H)=>ge.push(Q)),M=ge.shift(),$=F,F=ge.join("-")}let G=E[M]||Object.assign(Object.assign(E[M]={},O(b,M)),O(T,M));if(F==null)return G;F||="DEFAULT";let me=G[F]??F.split("-").reduce((ge,v)=>ge?.[v],G)??$;return Z?Nn(me,{opacityValue:Gs(Z,D)}):me}let de={};for(let G of[...Object.keys(b),...Object.keys(T)])de[G]=D(G);return de}function O(M,F){let $=M[F];return typeof $=="function"&&($=$(R)),$&&/color|fill|stroke/i.test(F)?function Z(de,G=[]){let me={};for(let ge in de){let v=de[ge],H=[...G,ge];me[H.join("-")]=v,ge=="DEFAULT"&&(H=G,me[G.join("-")]=v),typeof v=="object"&&Object.assign(me,Z(v,H))}return me}($):$}}(s),e:Ws,h:w,s(T,b){return f(T,b,y)},d(T,b,E){return c(T,b,y,E)},v(T){return h.has(T)||h.set(T,q4(T,m,A,Gh,y)||"&:"+T),h.get(T)},r(T,b){let E=JSON.stringify([T,b]);return _.has(E)||_.set(E,!L(T,y)&&q4(T,g,B,Vh,y,b)),_.get(E)},f(T){return k.reduce((b,E)=>E(b,y),T)}};return y}(n),r=new Map,u=[],o=new Set;t.resume(s=>r.set(s,s),(s,l)=>{t.insert(s,u.length,l),u.push(l),o.add(s)});function i(s){let l=a.f(s),c=Is(l);if(c&&!o.has(c)){o.add(c);let m=J4(u,s);t.insert(c,m,s),u.splice(m,0,s)}return l.n}return Object.defineProperties(function(s){if(!r.size)for(let c of Ue(n.preflight))typeof c=="function"&&(c=c(a)),c&&(typeof c=="string"?Js("",ot.b,Zr(c),a,ot.b,[],!1,!0):Ks(c,{},a,ot.b)).forEach(i);s=""+s;let l=r.get(s);if(!l){let c=new Set;for(let m of eo(Zr(s),a))c.add(m.c).add(i(m));l=[...c].filter(Boolean).join(" "),r.set(s,l).set(l,l)}return l},Object.getOwnPropertyDescriptors({get target(){return t.target},theme:a.theme,config:n,snapshot(){let s=t.snapshot(),l=new Set(o),c=new Map(r),m=[...u];return()=>{s(),o=l,r=c,u=m}},clear(){t.clear(),o=new Set,r=new Map,u=[]},destroy(){this.clear(),t.destroy()}}))}function Xh(e,t){return e!=t&&""+e.split(" ").sort()!=""+t.split(" ").sort()}function Zh(e){let t=new MutationObserver(n);return{observe(r){t.observe(r,{attributeFilter:["class"],subtree:!0,childList:!0}),a(r),n([{target:r,type:""}])},disconnect(){t.disconnect()}};function n(r){for(let{type:u,target:o}of r)if(u[0]=="a")a(o);else for(let i of o.querySelectorAll("[class]"))a(i);t.takeRecords()}function a(r){let u,o=r.getAttribute?.("class");o&&Xh(o,u=e(o))&&r.setAttribute("class",u)}}function Qh(e=Ys,t=typeof document<"u"&&document.documentElement){if(t){let n=Zh(e);n.observe(t);let{destroy:a}=e;e.destroy=()=>{n.disconnect(),a.call(e)}}return e}function ad(e){let t=document.querySelector(e||'style[data-twind=""]');return(!t||t.tagName!="STYLE")&&(t=document.createElement("style"),document.head.prepend(t)),t.dataset.twind="claimed",t}function e2(e){let t=e?.cssRules?e:(e&&typeof e!="string"?e:ad(e)).sheet;return{target:t,snapshot(){let n=Array.from(t.cssRules,a=>a.cssText);return()=>{this.clear(),n.forEach(this.insert)}},clear(){for(let n=t.cssRules.length;n--;)t.deleteRule(n)},destroy(){t.ownerNode?.remove()},insert(n,a){try{t.insertRule(n,a)}catch{t.insertRule(":root{}",a)}},resume:Qr}}function t2(e){let t=e&&typeof e!="string"?e:ad(e);return{target:t,snapshot(){let n=Array.from(t.childNodes,a=>a.textContent);return()=>{this.clear(),n.forEach(this.insert)}},clear(){t.textContent=""},destroy(){t.remove()},insert(n,a){t.insertBefore(document.createTextNode(n),t.childNodes[a]||null)},resume:Qr}}function n2(e){let t=[];return{target:t,snapshot(){let n=[...t];return()=>{t.splice(0,t.length,...n)}},clear(){t.length=0},destroy(){this.clear()},insert(n,a,r){t.splice(a,0,e?`/*!${r.p.toString(36)},${(2*r.o).toString(36)}${r.n?","+r.n:""}*/${n}`:n)},resume:Qr}}function rd(e,t){let n=typeof document>"u"?n2(!t):e?t2():e2();return t||(n.resume=r2),n}function a2(e){return(e.ownerNode||e).textContent||(e.cssRules?Array.from(e.cssRules,t=>t.cssText):Ue(e)).join("")}function r2(e,t){let n=a2(this.target),a=/\/\*!([\da-z]+),([\da-z]+)(?:,(.+?))?\*\//g;if(a.test(n)){var r;let u;if(a.lastIndex=0,this.clear(),typeof document<"u")for(let o of document.querySelectorAll("[class]"))e(o.getAttribute("class"));for(;r=a.exec(n),u&&t(n.slice(u.index+u[0].length,r?.index),{p:parseInt(u[1],36),o:parseInt(u[2],36)/2,n:u[3]}),u=r;);}}var Ys=new Proxy(Qr,{apply(e,t,n){return Xr(n[0])},get(e,t){let n=Xr[t];return typeof n=="function"?function(){return n.apply(Xr,arguments)}:n}});function ud(e={},t=rd,n){return Xr?.destroy(),Xr=Qh(Yh(e,typeof t=="function"?t():t),n)}function Xs(e,t=!0){let n=tu(e);return ud({...n,hash:n.hash??t},()=>rd(!t))}var hx=function e(t){return new Proxy(function(n,...a){return K4(t,"",n,a)},{get(n,a){return a==="bind"?e:a in n?n[a]:function(r,...u){return K4(t,a,r,u)}}})}();function K4(e,t,n,a){return{toString(){let r=Ns(n,a),u=Ws(t+Za(JSON.stringify([t,r])));return(typeof e=="function"?e:Ys)(ed({[`@keyframes ${u}`]:Ns(n,a)})),u}}}var u2=new Map([["align-self","-ms-grid-row-align"],["color-adjust","-webkit-print-color-adjust"],["column-gap","grid-column-gap"],["forced-color-adjust","-ms-high-contrast-adjust"],["gap","grid-gap"],["grid-template-columns","-ms-grid-columns"],["grid-template-rows","-ms-grid-rows"],["justify-self","-ms-grid-column-align"],["margin-inline-end","-webkit-margin-end"],["margin-inline-start","-webkit-margin-start"],["mask-border","-webkit-mask-box-image"],["mask-border-outset","-webkit-mask-box-image-outset"],["mask-border-slice","-webkit-mask-box-image-slice"],["mask-border-source","-webkit-mask-box-image-source"],["mask-border-repeat","-webkit-mask-box-image-repeat"],["mask-border-width","-webkit-mask-box-image-width"],["overflow-wrap","word-wrap"],["padding-inline-end","-webkit-padding-end"],["padding-inline-start","-webkit-padding-start"],["print-color-adjust","color-adjust"],["row-gap","grid-row-gap"],["scroll-margin-bottom","scroll-snap-margin-bottom"],["scroll-margin-left","scroll-snap-margin-left"],["scroll-margin-right","scroll-snap-margin-right"],["scroll-margin-top","scroll-snap-margin-top"],["scroll-margin","scroll-snap-margin"],["text-combine-upright","-ms-text-combine-horizontal"]]);function od(e){return u2.get(e)}function id(e){var t=/^(?:(text-(?:decoration$|e|or|si)|back(?:ground-cl|d|f)|box-d|mask(?:$|-[ispro]|-cl)|pr|hyphena|flex-d)|(tab-|column(?!-s)|text-align-l)|(ap)|u|hy)/i.exec(e);return t?t[1]?1:t[2]?2:t[3]?3:5:0}function sd(e,t){var n=/^(?:(pos)|(cli)|(background-i)|(flex(?:$|-b)|(?:max-|min-)?(?:block-s|inl|he|widt))|dis)/i.exec(e);return n?n[1]?/^sti/i.test(t)?1:0:n[2]?/^pat/i.test(t)?1:0:n[3]?/^image-/i.test(t)?1:0:n[4]?t[3]==="-"?2:0:/^(?:inline-)?grid$/i.test(t)?4:0:0}var o2=[["-webkit-",1],["-moz-",2],["-ms-",4]];function no(){return({stringify:e})=>({stringify(t,n,a){let r="",u=od(t);u&&(r+=e(u,n,a)+";");let o=id(t),i=sd(t,n);for(let s of o2)o&s[1]&&(r+=e(s[0]+t,n,a)+";"),i&s[1]&&(r+=e(t,s[0]+n,a)+";");return r+e(t,n,a)}})}var Qs={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Jt(4,"rem",4,.5,.5),...Jt(12,"rem",4,5),14:"3.5rem",...Jt(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:Me("blur"),backdropBrightness:Me("brightness"),backdropContrast:Me("contrast"),backdropGrayscale:Me("grayscale"),backdropHueRotate:Me("hueRotate"),backdropInvert:Me("invert"),backdropOpacity:Me("opacity"),backdropSaturate:Me("saturate"),backdropSepia:Me("sepia"),backgroundColor:Me("colors"),backgroundImage:{none:"none"},backgroundOpacity:Me("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Jt(200,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:Me("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:Me("spacing"),borderWidth:{DEFAULT:"1px",...en(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:Me("colors"),caretColor:Me("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Jt(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:Me("borderColor"),divideOpacity:Me("borderOpacity"),divideWidth:Me("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...nu(2,6),...nu(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:Me("spacing"),gradientColorStops:Me("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...nu(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...nu(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Jt(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Jt(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:Me("spacing"),placeholderColor:Me("colors"),placeholderOpacity:Me("opacity"),outlineColor:Me("colors"),outlineOffset:en(8,"px"),outlineWidth:en(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:Me("colors"),ringOffsetWidth:en(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...en(8,"px")},rotate:{...en(2,"deg"),...en(12,"deg",3),...en(180,"deg",45)},saturate:Jt(200,"",100,0,50),scale:{...Jt(150,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:Me("spacing"),scrollPadding:Me("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...en(2,"deg"),...en(12,"deg",3)},space:Me("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Jt(2),textColor:Me("colors"),textDecorationColor:Me("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...en(8,"px")},textUnderlineOffset:{auto:"auto",...en(8,"px")},textIndent:Me("spacing"),textOpacity:Me("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:Me("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...nu(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Jt(50,"",1,0,10),auto:"auto"}};function nu(e,t){let n={};do for(var a=1;at(e)}var i2={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${Qs.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${Qs.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},s2=[K("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:kn(`[${t}]`,"",n)}}})),K("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),V("aspect-","aspectRatio"),K("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:a,padding:r}=t("container"),u={width:"100%",marginRight:a&&"auto",marginLeft:a&&"auto",...o("xs")};for(let i in n){let s=n[i];typeof s=="string"&&(u[to(s)]={"&":{maxWidth:s,...o(i)}})}return u;function o(i){let s=r&&(typeof r=="string"?r:r[i]||r.DEFAULT);if(s)return{paddingRight:s,paddingLeft:s}}}),V("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),K("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),K("box-(border|content)","boxSizing",({1:e})=>e+"-box"),K("hidden",{display:"none"}),K("table-(auto|fixed)","tableLayout"),K(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",K("isolate","isolation"),K("object-(contain|cover|fill|none|scale-down)","objectFit"),V("object-","objectPosition"),K("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",ao),K("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),K("(static|fixed|absolute|relative|sticky)","position"),V("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),V("-?(top|bottom|left|right)(?:$|-)","inset"),K("(visible|collapse)","visibility"),K("invisible",{visibility:"hidden"}),V("-?z-","zIndex"),K("flex-((row|col)(-reverse)?)","flexDirection",ld),K("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),V("(flex-(?:grow|shrink))(?:$|-)"),V("(flex)-"),V("grow(?:$|-)","flexGrow"),V("shrink(?:$|-)","flexShrink"),V("basis-","flexBasis"),V("-?(order)-"),"-?(order)-(\\d+)",V("grid-cols-","gridTemplateColumns"),K("grid-cols-(\\d+)","gridTemplateColumns",md),V("col-","gridColumn"),K("col-(span)-(\\d+)","gridColumn",gd),V("col-start-","gridColumnStart"),K("col-start-(auto|\\d+)","gridColumnStart"),V("col-end-","gridColumnEnd"),K("col-end-(auto|\\d+)","gridColumnEnd"),V("grid-rows-","gridTemplateRows"),K("grid-rows-(\\d+)","gridTemplateRows",md),V("row-","gridRow"),K("row-(span)-(\\d+)","gridRow",gd),V("row-start-","gridRowStart"),K("row-start-(auto|\\d+)","gridRowStart"),V("row-end-","gridRowEnd"),K("row-end-(auto|\\d+)","gridRowEnd"),K("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>ao(ld(e))),K("grid-flow-(dense)","gridAutoFlow"),V("auto-cols-","gridAutoColumns"),V("auto-rows-","gridAutoRows"),V("gap-x(?:$|-)","gap","columnGap"),V("gap-y(?:$|-)","gap","rowGap"),V("gap(?:$|-)","gap"),"(justify-(?:items|self))-",K("justify-","justifyContent",cd),K("(content|items|self)-",e=>({["align-"+e[1]]:cd(e)})),K("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),V("p([xytrbl])?(?:$|-)","padding",er("padding")),V("-?m([xytrbl])?(?:$|-)","margin",er("margin")),V("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),K("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),V("w-","width"),V("min-w-","minWidth"),V("max-w-","maxWidth"),V("h-","height"),V("min-h-","minHeight"),V("max-h-","maxHeight"),V("font-","fontWeight"),V("font-","fontFamily",({_:e})=>typeof(e=Ue(e))[1]=="string"?{fontFamily:gn(e)}:{fontFamily:gn(e[0]),...e[1]}),K("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),K("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),K("italic","fontStyle"),K("not-italic",{fontStyle:"normal"}),K("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...Zn({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),V("tracking-","letterSpacing"),V("leading-","lineHeight"),K("list-(inside|outside)","listStylePosition"),V("list-","listStyleType"),K("list-","listStyleType"),V("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),dt("placeholder-",{property:"color",selector:"&::placeholder"}),K("text-(left|center|right|justify|start|end)","textAlign"),K("text-(ellipsis|clip)","textOverflow"),V("text-opacity-","textOpacity","--tw-text-opacity"),dt("text-",{property:"color"}),V("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),V("indent-","textIndent"),K("(overline|underline|line-through)","textDecorationLine"),K("no-underline",{textDecorationLine:"none"}),V("underline-offset-","textUnderlineOffset"),dt("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),V("decoration-","textDecorationThickness"),K("decoration-","textDecorationStyle"),K("(uppercase|lowercase|capitalize)","textTransform"),K("normal-case",{textTransform:"none"}),K("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),K("align-","verticalAlign"),K("whitespace-","whiteSpace"),K("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),K("break-words",{overflowWrap:"break-word"}),K("break-all",{wordBreak:"break-all"}),K("break-keep",{wordBreak:"keep-all"}),dt("caret-",{opacityVariable:!1,opacitySection:"opacity"}),dt("accent-",{opacityVariable:!1,opacitySection:"opacity"}),K("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${Aa(e," ")},var(--tw-gradient-stops))`),dt("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),dt("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),dt("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),K("bg-(fixed|local|scroll)","backgroundAttachment"),K("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),K(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),K("bg-blend-","backgroundBlendMode"),K("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),V("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),dt("bg-",{section:"backgroundColor"}),V("bg-","backgroundImage"),V("bg-","backgroundPosition"),K("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",ao),V("bg-","backgroundSize"),V("rounded(?:$|-)","borderRadius"),V("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${Aa(n[0])}-radius`]:t,[`border-${Aa(n[1])}-radius`]:t}}),K("border-(collapse|separate)","borderCollapse"),V("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),K("border-(solid|dashed|dotted|double|none)","borderStyle"),V("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...Zn({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),dt("border-([xytrbl])-",{section:"borderColor"},er("border","Color")),dt("border-"),V("border-([xytrbl])(?:$|-)","borderWidth",er("border","Width")),V("border(?:$|-)","borderWidth"),V("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),K("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),K("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),V("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${Aa(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${Aa(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),dt("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),V("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),dt("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),V("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),K("ring-inset",{"--tw-ring-inset":"inset"}),dt("ring-",{property:"--tw-ring-color"}),V("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":Nn(t("ringOffsetColor","","#fff")),"--tw-ring-color":Nn(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),dt("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),V("shadow(?:$|-)","boxShadow",({_:e})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":gn(e),"--tw-shadow-colored":gn(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),V("(opacity)-"),K("mix-blend-","mixBlendMode"),...dd(),...dd("backdrop-"),V("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:gn(e),transitionTimingFunction:e._=="none"?void 0:gn(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:gn(t("transitionDuration",""))})),V("duration(?:$|-)","transitionDuration","transitionDuration",gn),V("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",gn),V("delay(?:$|-)","transitionDelay","transitionDelay",gn),V("animate(?:$|-)","animation",(e,{theme:t,h:n,e:a})=>{let r=gn(e),u=r.split(" "),o=t("keyframes",u[0]);return o?{["@keyframes "+(u[0]=a(n(u[0])))]:o,animation:u.join(" ")}:{animation:r}}),"(transform)-(none)",K("transform",e0),K("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":pd(e=="gpu")})),V("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...e0()})),V("-?(rotate)-","rotate",Zs),V("-?(translate-[xy])-","translate",Zs),V("-?(skew-[xy])-","skew",Zs),K("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",ao),"(appearance)-",V("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",V("(cursor)-"),"(cursor)-",K("snap-(none)","scroll-snap-type"),K("snap-(x|y|both)",({1:e})=>({...Zn({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),K("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),K("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),K("snap-(normal|always)","scroll-snap-stop"),K("scroll-(auto|smooth)","scroll-behavior"),V("scroll-p([xytrbl])?(?:$|-)","padding",er("scroll-padding")),V("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",er("scroll-margin")),K("touch-(auto|none|manipulation)","touch-action"),K("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...Zn({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),K("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),K("outline",{outlineStyle:"solid"}),K("outline-(dashed|dotted|double)","outlineStyle"),V("-?(outline-offset)-"),dt("outline-",{opacityVariable:!1,opacitySection:"opacity"}),V("outline-","outlineWidth"),"(pointer-events)-",V("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],K("select-(none|text|all|auto)","userSelect"),dt("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),dt("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),V("stroke-","strokeWidth"),K("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),K("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function ao(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function ld(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function Aa(e,t="-"){let n=[];for(let a of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[a]);return n.join(t)}function gn(e){return e&&""+(e._||e)}function cd({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function er(e,t=""){return({1:n,_:a})=>{let r={x:"lr",y:"tb"}[n]||n+n;return r?{...eu(e+"-"+Aa(r[0])+t,a),...eu(e+"-"+Aa(r[1])+t,a)}:eu(e+t,a)}}function dd(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let a of t)n[`--tw-${e}${a}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...Zn(n),[`${e}filter`]:t.map(a=>`var(--tw-${e}${a})`).join(" ")},[`(${e}filter)-(none)`,K(`${e}filter`,n),...t.map(a=>V(`${a[0]=="h"?"-?":""}(${e}${a})(?:$|-)`,a,({1:r,_:u})=>({[`--tw-${r}`]:Ue(u).map(o=>`${a}(${o})`).join(" "),...n})))]}function Zs({1:e,_:t}){return{["--tw-"+e]:t,...e0()}}function e0(){return{...Zn({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":pd()}),transform:"var(--tw-transform)"}}function pd(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function gd({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function md({1:e}){return`repeat(${e},minmax(0,1fr))`}function Zn(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var l2=[["sticky","@supports ((position: -webkit-sticky) or (position:sticky))"],["motion-reduce","@media (prefers-reduced-motion:reduce)"],["motion-safe","@media (prefers-reduced-motion:no-preference)"],["print","@media print"],["(portrait|landscape)",({1:e})=>`@media (orientation:${e})`],["contrast-(more|less)",({1:e})=>`@media (prefers-contrast:${e})`],["(first-(letter|line)|placeholder|backdrop|before|after)",({1:e})=>`&::${e}`],["(marker|selection)",({1:e})=>`& *::${e},&::${e}`],["file","&::file-selector-button"],["(first|last|only)",({1:e})=>`&:${e}-child`],["even","&:nth-child(2n)"],["odd","&:nth-child(odd)"],["open","&[open]"],["(aria|data)-",({1:e,$$:t},n)=>t&&`&[${e}-${n.theme(e,t)||kn(t,"",n)||`${t}="true"`}]`],["((group|peer)(~[^-[]+)?)(-\\[(.+)]|[-[].+?)(\\/.+)?",({2:e,3:t="",4:n,5:a="",6:r=t},{e:u,h:o,v:i})=>{let s=Qa(a)||(n[0]=="["?n:i(n.slice(1)));return`${(s.includes("&")?s:"&"+s).replace(/&/g,`:merge(.${u(o(e+r))})`)}${e[0]=="p"?"~":" "}&`}],["(ltr|rtl)",({1:e})=>`[dir="${e}"] &`],["supports-",({$$:e},t)=>{if(e&&=t.theme("supports",e)||kn(e,"",t),e)return e.includes(":")||(e+=":var(--tw)"),/^\w*\s*\(/.test(e)||(e=`(${e})`),`@supports ${e.replace(/\b(and|or|not)\b/g," $1 ").trim()}`}],["max-",({$$:e},t)=>{if(e&&=t.theme("screens",e)||kn(e,"",t),typeof e=="string")return`@media not all and (min-width:${e})`}],["min-",({$$:e},t)=>(e&&=kn(e,"",t))&&`@media (min-width:${e})`],[/^\[(.+)]$/,({1:e})=>/[&@]/.test(e)&&Qa(e).replace(/[}]+$/,"").split("{")]];function c2({colors:e,disablePreflight:t}={}){return{preflight:t?void 0:i2,theme:{...Qs,colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",...e}},variants:l2,rules:s2,finalize(n){return n.n&&n.d&&n.r.some(a=>/^&::(before|after)$/.test(a))&&!/(^|;)content:/.test(n.d)?{...n,d:"content:var(--tw-content);"+n.d}:n}}}var d2={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},g2={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},m2={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},p2={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},f2={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},h2={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},b2={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},y2={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},T2={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},E2={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},x2={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},C2={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},v2={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},w2={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},k2={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},A2={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},S2={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},D2={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},L2={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},P2={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},M2={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},F2={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},_2={__proto__:null,slate:d2,gray:g2,zinc:m2,neutral:p2,stone:f2,red:h2,orange:b2,amber:y2,yellow:T2,lime:E2,green:x2,emerald:C2,teal:v2,cyan:w2,sky:k2,blue:A2,indigo:S2,violet:D2,purple:L2,fuchsia:P2,pink:M2,rose:F2};function ro({disablePreflight:e}={}){return c2({colors:_2,disablePreflight:e})}var uo=globalThis||(typeof window<"u"?window:self),B2=Object.create,n0=Object.defineProperty,R2=Object.getOwnPropertyDescriptor,O2=Object.getOwnPropertyNames,I2=Object.getPrototypeOf,N2=Object.prototype.hasOwnProperty,U2=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),j2=(e,t)=>{for(var n in t)n0(e,n,{get:t[n],enumerable:!0})},t0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of O2(t))!N2.call(e,r)&&r!==n&&n0(e,r,{get:()=>t[r],enumerable:!(a=R2(t,r))||a.enumerable});return e},z2=(e,t,n)=>(t0(e,t,"default"),n&&t0(n,t,"default")),hd=(e,t,n)=>(n=e!=null?B2(I2(e)):{},t0(t||!e||!e.__esModule?n0(n,"default",{value:e,enumerable:!0}):n,e)),bd=U2((e,t)=>{(function(n,a){typeof define=="function"&&define.amd?define([],a):typeof e<"u"?a():(a(),n.FileSaver={})})(e,function(){"use strict";function n(l,c){return typeof c>"u"?c={autoBom:!1}:typeof c!="object"&&(c={autoBom:!c}),c.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function a(l,c,m){var g=new XMLHttpRequest;g.open("GET",l),g.responseType="blob",g.onload=function(){s(g.response,c,m)},g.onerror=function(){},g.send()}function r(l){var c=new XMLHttpRequest;c.open("HEAD",l,!1);try{c.send()}catch{}return 200<=c.status&&299>=c.status}function u(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(c)}}var o=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof uo=="object"&&uo.global===uo?uo:void 0,i=o.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=o.saveAs||(typeof window!="object"||window!==o?function(){}:"download"in HTMLAnchorElement.prototype&&!i?function(l,c,m){var g=o.URL||o.webkitURL,p=document.createElement("a");c=c||l.name||"download",p.download=c,p.rel="noopener",typeof l=="string"?(p.href=l,p.origin===location.origin?u(p):r(p.href)?a(l,c,m):u(p,p.target="_blank")):(p.href=g.createObjectURL(l),setTimeout(function(){g.revokeObjectURL(p.href)},4e4),setTimeout(function(){u(p)},0))}:"msSaveOrOpenBlob"in navigator?function(l,c,m){if(c=c||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,m),c);else if(r(l))a(l,c,m);else{var g=document.createElement("a");g.href=l,g.target="_blank",setTimeout(function(){u(g)})}}:function(l,c,m,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),typeof l=="string")return a(l,c,m);var p=l.type==="application/octet-stream",f=/constructor/i.test(o.HTMLElement)||o.safari,S=/CriOS\/[\d]+/.test(navigator.userAgent);if((S||p&&f||i)&&typeof FileReader<"u"){var k=new FileReader;k.onloadend=function(){var _=k.result;_=S?_:_.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=_:location=_,g=null},k.readAsDataURL(l)}else{var h=o.URL||o.webkitURL,A=h.createObjectURL(l);g?g.location=A:location.href=A,g=null,setTimeout(function(){h.revokeObjectURL(A)},4e4)}});o.saveAs=s.saveAs=s,typeof t<"u"&&(t.exports=s)})}),yd={};j2(yd,{default:()=>au});var H2=hd(bd());z2(yd,hd(bd()));var{default:fd,...W2}=H2,au=fd!==void 0?fd:W2;function tr(){let e,t="pending",n=new Promise((a,r)=>{e={async resolve(u){await u,t="fulfilled",a(u)},reject(u){t="rejected",r(u)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var a0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function oo(e,t){let n=tr(),a=setTimeout(()=>n.reject(new a0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Qn(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((r,u)=>{let o=()=>{clearTimeout(s),u(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),r()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var Td=class{#e=0;#t=[];#n=[];#a=tr();add(t){++this.#e,this.#r(t[Symbol.asyncIterator]())}async#r(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;th9,bgBlue:()=>E9,bgBrightBlack:()=>w9,bgBrightBlue:()=>D9,bgBrightCyan:()=>P9,bgBrightGreen:()=>A9,bgBrightMagenta:()=>L9,bgBrightRed:()=>k9,bgBrightWhite:()=>M9,bgBrightYellow:()=>S9,bgCyan:()=>C9,bgGreen:()=>y9,bgMagenta:()=>x9,bgRed:()=>b9,bgRgb24:()=>R9,bgRgb8:()=>_9,bgWhite:()=>v9,bgYellow:()=>T9,black:()=>e9,blue:()=>r9,bold:()=>G2,brightBlack:()=>Cd,brightBlue:()=>g9,brightCyan:()=>p9,brightGreen:()=>c9,brightMagenta:()=>m9,brightRed:()=>l9,brightWhite:()=>f9,brightYellow:()=>d9,cyan:()=>o9,dim:()=>V2,getColorEnabled:()=>q2,gray:()=>s9,green:()=>n9,hidden:()=>Z2,inverse:()=>X2,italic:()=>J2,magenta:()=>u9,red:()=>t9,reset:()=>K2,rgb24:()=>B9,rgb8:()=>F9,setColorEnabled:()=>$2,strikethrough:()=>Q2,stripColor:()=>I9,underline:()=>Y2,white:()=>i9,yellow:()=>a9});var{Deno:Ed}=globalThis,xd=typeof Ed?.noColor=="boolean"?Ed.noColor:!0,r0=!xd;function $2(e){xd||(r0=e)}function q2(){return r0}function Te(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function Ee(e,t){return r0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function K2(e){return Ee(e,Te([0],0))}function G2(e){return Ee(e,Te([1],22))}function V2(e){return Ee(e,Te([2],22))}function J2(e){return Ee(e,Te([3],23))}function Y2(e){return Ee(e,Te([4],24))}function X2(e){return Ee(e,Te([7],27))}function Z2(e){return Ee(e,Te([8],28))}function Q2(e){return Ee(e,Te([9],29))}function e9(e){return Ee(e,Te([30],39))}function t9(e){return Ee(e,Te([31],39))}function n9(e){return Ee(e,Te([32],39))}function a9(e){return Ee(e,Te([33],39))}function r9(e){return Ee(e,Te([34],39))}function u9(e){return Ee(e,Te([35],39))}function o9(e){return Ee(e,Te([36],39))}function i9(e){return Ee(e,Te([37],39))}function s9(e){return Cd(e)}function Cd(e){return Ee(e,Te([90],39))}function l9(e){return Ee(e,Te([91],39))}function c9(e){return Ee(e,Te([92],39))}function d9(e){return Ee(e,Te([93],39))}function g9(e){return Ee(e,Te([94],39))}function m9(e){return Ee(e,Te([95],39))}function p9(e){return Ee(e,Te([96],39))}function f9(e){return Ee(e,Te([97],39))}function h9(e){return Ee(e,Te([40],49))}function b9(e){return Ee(e,Te([41],49))}function y9(e){return Ee(e,Te([42],49))}function T9(e){return Ee(e,Te([43],49))}function E9(e){return Ee(e,Te([44],49))}function x9(e){return Ee(e,Te([45],49))}function C9(e){return Ee(e,Te([46],49))}function v9(e){return Ee(e,Te([47],49))}function w9(e){return Ee(e,Te([100],49))}function k9(e){return Ee(e,Te([101],49))}function A9(e){return Ee(e,Te([102],49))}function S9(e){return Ee(e,Te([103],49))}function D9(e){return Ee(e,Te([104],49))}function L9(e){return Ee(e,Te([105],49))}function P9(e){return Ee(e,Te([106],49))}function M9(e){return Ee(e,Te([107],49))}function ea(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function F9(e,t){return Ee(e,Te([38,5,ea(t)],39))}function _9(e,t){return Ee(e,Te([48,5,ea(t)],49))}function B9(e,t){return typeof t=="number"?Ee(e,Te([38,2,t>>16&255,t>>8&255,t&255],39)):Ee(e,Te([38,2,ea(t.r),ea(t.g),ea(t.b)],39))}function R9(e,t){return typeof t=="number"?Ee(e,Te([48,2,t>>16&255,t>>8&255,t&255],49)):Ee(e,Te([48,2,ea(t.r),ea(t.g),ea(t.b)],49))}var O9=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function I9(e){return e.replace(O9,"")}var u0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},N9={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function o0(e,t){let n={...N9,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,r;for(let u=0;usetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),r=o}throw new u0(r,n.maxAttempts)}var NC=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var io=globalThis||(typeof window<"u"?window:self),j9=Object.create,s0=Object.defineProperty,z9=Object.getOwnPropertyDescriptor,H9=Object.getOwnPropertyNames,W9=Object.getPrototypeOf,$9=Object.prototype.hasOwnProperty,q9=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),K9=(e,t)=>{for(var n in t)s0(e,n,{get:t[n],enumerable:!0})},i0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of H9(t))!$9.call(e,r)&&r!==n&&s0(e,r,{get:()=>t[r],enumerable:!(a=z9(t,r))||a.enumerable});return e},G9=(e,t,n)=>(i0(e,t,"default"),n&&i0(n,t,"default")),wd=(e,t,n)=>(n=e!=null?j9(W9(e)):{},i0(t||!e||!e.__esModule?s0(n,"default",{value:e,enumerable:!0}):n,e)),kd=q9((e,t)=>{var n="Expected a function",a=NaN,r="[object Symbol]",u=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof io=="object"&&io&&io.Object===Object&&io,m=typeof self=="object"&&self&&self.Object===Object&&self,g=c||m||Function("return this")(),p=Object.prototype,f=p.toString,S=Math.max,k=Math.min,h=function(){return g.Date.now()};function A(T,b,E){var R,D,O,M,F,$,Z=0,de=!1,G=!1,me=!0;if(typeof T!="function")throw new TypeError(n);b=y(b)||0,B(E)&&(de=!!E.leading,G="maxWait"in E,O=G?S(y(E.maxWait)||0,b):O,me="trailing"in E?!!E.trailing:me);function ge(te){var ae=R,ne=D;return R=D=void 0,Z=te,M=T.apply(ne,ae),M}function v(te){return Z=te,F=setTimeout(fe,b),de?ge(te):M}function H(te){var ae=te-$,ne=te-Z,oe=b-ae;return G?k(oe,O-ne):oe}function Q(te){var ae=te-$,ne=te-Z;return $===void 0||ae>=b||ae<0||G&&ne>=O}function fe(){var te=h();if(Q(te))return se(te);F=setTimeout(fe,H(te))}function se(te){return F=void 0,me&&R?ge(te):(R=D=void 0,M)}function I(){F!==void 0&&clearTimeout(F),Z=0,R=$=D=F=void 0}function N(){return F===void 0?M:se(h())}function re(){var te=h(),ae=Q(te);if(R=arguments,D=this,$=te,ae){if(F===void 0)return v($);if(G)return F=setTimeout(fe,b),ge($)}return F===void 0&&(F=setTimeout(fe,b)),M}return re.cancel=I,re.flush=N,re}function _(T,b,E){var R=!0,D=!0;if(typeof T!="function")throw new TypeError(n);return B(E)&&(R="leading"in E?!!E.leading:R,D="trailing"in E?!!E.trailing:D),A(T,b,{leading:R,maxWait:b,trailing:D})}function B(T){var b=typeof T;return!!T&&(b=="object"||b=="function")}function L(T){return!!T&&typeof T=="object"}function w(T){return typeof T=="symbol"||L(T)&&f.call(T)==r}function y(T){if(typeof T=="number")return T;if(w(T))return a;if(B(T)){var b=typeof T.valueOf=="function"?T.valueOf():T;T=B(b)?b+"":b}if(typeof T!="string")return T===0?T:+T;T=T.replace(u,"");var E=i.test(T);return E||s.test(T)?l(T.slice(2),E?2:8):o.test(T)?a:+T}t.exports=_}),Ad={};K9(Ad,{default:()=>St});var V9=wd(kd());G9(Ad,wd(kd()));var{default:vd,...J9}=V9,St=vd!==void 0?vd:J9;var Y9=Object.create,c0=Object.defineProperty,X9=Object.getOwnPropertyDescriptor,Z9=Object.getOwnPropertyNames,Q9=Object.getPrototypeOf,e6=Object.prototype.hasOwnProperty,t6=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),n6=(e,t)=>{for(var n in t)c0(e,n,{get:t[n],enumerable:!0})},l0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Z9(t))!e6.call(e,r)&&r!==n&&c0(e,r,{get:()=>t[r],enumerable:!(a=X9(t,r))||a.enumerable});return e},a6=(e,t,n)=>(l0(e,t,"default"),n&&l0(n,t,"default")),Dd=(e,t,n)=>(n=e!=null?Y9(Q9(e)):{},l0(t||!e||!e.__esModule?c0(n,"default",{value:e,enumerable:!0}):n,e)),Ld=t6((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(u){if(r[u])return r[u].exports;var o=r[u]={i:u,l:!1,exports:{}};return n[u].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var r={};return a.m=n,a.c=r,a.i=function(u){return u},a.d=function(u,o,i){a.o(u,o)||Object.defineProperty(u,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(u){var o=u&&u.__esModule?function(){return u.default}:function(){return u};return a.d(o,"a",o),o},a.o=function(u,o){return Object.prototype.hasOwnProperty.call(u,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(r){return r.webpackPolyfill||(r.deprecate=function(){},r.paths=[],r.children||(r.children=[]),Object.defineProperty(r,"loaded",{enumerable:!0,get:function(){return r.l}}),Object.defineProperty(r,"id",{enumerable:!0,get:function(){return r.i}}),r.webpackPolyfill=1),r}},function(n,a,r){"use strict";(function(u){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,m){l(a)==="object"&&l(u)==="object"?u.exports=m():(i=[],o=m,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(u.exports=s))})(void 0,function(){return function(c){function m(p){if(g[p])return g[p].exports;var f=g[p]={i:p,l:!1,exports:{}};return c[p].call(f.exports,f,f.exports,m),f.l=!0,f.exports}var g={};return m.m=c,m.c=g,m.i=function(p){return p},m.d=function(p,f,S){m.o(p,f)||Object.defineProperty(p,f,{configurable:!1,enumerable:!0,get:S})},m.n=function(p){var f=p&&p.__esModule?function(){return p.default}:function(){return p};return m.d(f,"a",f),f},m.o=function(p,f){return Object.prototype.hasOwnProperty.call(p,f)},m.p="",m(m.s=0)}([function(c,m,g){function p(v,H){var Q={};for(var fe in v)H.indexOf(fe)>=0||Object.prototype.hasOwnProperty.call(v,fe)&&(Q[fe]=v[fe]);return Q}Object.defineProperty(m,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(v){return typeof v>"u"?"undefined":l(v)}:function(v){return v&&typeof Symbol=="function"&&v.constructor===Symbol&&v!==Symbol.prototype?"symbol":typeof v>"u"?"undefined":l(v)},S=Object.assign||function(v){for(var H=1;H'+fe+"",ne.onclick=function(){return D(oe,ae)},ne.listener=function(Y){(b(Y)||E(Y))&&F()},R(ne,ae),I&&I<1&&(I=1),!re&&I&&B(I).then(function(){return D(oe,ae)})},Z=m.force=function(v,H){var Q=v.type,fe=Q===void 0?5:Q,se=v.text,I=v.buttonText,N=I===void 0?"OK":I,re=v.callback,te=v.position,ae=te===void 0?h.positions.force||ae.top:te;L(),F();var ne=document.createElement("div"),oe=w();ne.id=oe;var Y=document.createElement("div");Y.classList.add(h.classes.textbox),Y.classList.add(h.classes.backgroundInfo),Y.innerHTML='
'+se+"
";var ce=document.createElement("div");ce.classList.add(h.classes.button),ce.classList.add(y[fe]),ce.innerHTML=N,ce.onclick=function(){D(oe,ae),M(),re?re():H&&H()},ne.appendChild(Y),ne.appendChild(ce),ne.listener=function(Le){b(Le)&&ce.click()},R(ne,ae),O()},de=m.confirm=function(v,H,Q){var fe=v.text,se=v.submitText,I=se===void 0?"Yes":se,N=v.cancelText,re=N===void 0?"Cancel":N,te=v.submitCallback,ae=v.cancelCallback,ne=v.position,oe=ne===void 0?h.positions.confirm||oe.top:ne;L(),F();var Y=document.createElement("div"),ce=w();Y.id=ce;var Le=document.createElement("div");Le.classList.add(h.classes.textbox),Le.classList.add(h.classes.backgroundInfo),Le.innerHTML='
'+fe+"
";var Oe=document.createElement("div");Oe.classList.add(h.classes.button),Oe.classList.add(h.classes.elementHalf),Oe.classList.add(h.classes.backgroundSuccess),Oe.innerHTML=I,Oe.onclick=function(){D(ce,oe),M(),te?te():H&&H()};var he=document.createElement("div");he.classList.add(h.classes.button),he.classList.add(h.classes.elementHalf),he.classList.add(h.classes.backgroundError),he.innerHTML=re,he.onclick=function(){D(ce,oe),M(),ae?ae():Q&&Q()},Y.appendChild(Le),Y.appendChild(Oe),Y.appendChild(he),Y.listener=function(Xe){b(Xe)?Oe.click():E(Xe)&&he.click()},R(Y,oe),O(Y,oe)},G=function(v,H,Q){var fe=v.text,se=v.submitText,I=se===void 0?"Submit":se,N=v.cancelText,re=N===void 0?"Cancel":N,te=v.submitCallback,ae=v.cancelCallback,ne=v.position,oe=ne===void 0?h.positions.input||oe.top:ne,Y=p(v,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);L(),F();var ce=document.createElement("div"),Le=w();ce.id=Le;var Oe=document.createElement("div");Oe.classList.add(h.classes.textbox),Oe.classList.add(h.classes.backgroundInfo),Oe.innerHTML='
'+fe+"
";var he=document.createElement("input");he.classList.add(h.classes.inputField),he.setAttribute("autocapitalize",Y.autocapitalize||"none"),he.setAttribute("autocomplete",Y.autocomplete||"off"),he.setAttribute("autocorrect",Y.autocorrect||"off"),he.setAttribute("autofocus",Y.autofocus||"true"),he.setAttribute("inputmode",Y.inputmode||"verbatim"),he.setAttribute("max",Y.max||""),he.setAttribute("maxlength",Y.maxlength||""),he.setAttribute("min",Y.min||""),he.setAttribute("minlength",Y.minlength||""),he.setAttribute("placeholder",Y.placeholder||""),he.setAttribute("spellcheck",Y.spellcheck||"default"),he.setAttribute("step",Y.step||"any"),he.setAttribute("type",Y.type||"text"),he.value=Y.value||"",Y.allowed&&(he.oninput=function(){var We=void 0;if(Array.isArray(Y.allowed)){for(var $e="",qe=Y.allowed,Ht=0;Ht'+Q+"",ae.appendChild(oe),N.forEach(function(ce,Le){var Oe=ce.type,he=Oe===void 0?1:Oe,Xe=ce.text,pt=ce.handler,We=document.createElement("div");We.classList.add(y[he]),We.classList.add(h.classes.button),We.classList.add(h.classes.selectChoice);var $e=N[Le+1];$e&&!$e.type&&($e.type=1),$e&&$e.type===he&&We.classList.add(h.classes.selectChoiceRepeated),We.innerHTML=Xe,We.onclick=function(){D(ne,te),M(),pt()},ae.appendChild(We)});var Y=document.createElement("div");Y.classList.add(h.classes.backgroundNeutral),Y.classList.add(h.classes.button),Y.innerHTML=se,Y.onclick=function(){D(ne,te),M(),I?I():H&&H()},ae.appendChild(Y),ae.listener=function(ce){E(ce)&&Y.click()},R(ae,te),O(ae,te)},ge=m.date=function(v,H,Q){var fe=v.value,se=fe===void 0?new Date:fe,I=v.submitText,N=I===void 0?"OK":I,re=v.cancelText,te=re===void 0?"Cancel":re,ae=v.submitCallback,ne=v.cancelCallback,oe=v.position,Y=oe===void 0?h.positions.date||Y.top:oe;L(),F();var ce="▾",Le=document.createElement("div"),Oe=document.createElement("div"),he=document.createElement("div"),Xe=function(Pe){Le.innerHTML=h.dateMonths[Pe.getMonth()],Oe.innerHTML=Pe.getDate(),he.innerHTML=Pe.getFullYear()},pt=function(Pe){var Be=new Date(se.getFullYear(),se.getMonth()+1,0).getDate(),Vt=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Vt)>Be&&(Vt=Be.toString()),Pe.target.textContent=Vt,Number(Vt)<1&&(Vt="1"),se.setDate(Number(Vt))},We=function(Pe){var Be=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);Pe.target.textContent=Be,se.setFullYear(Number(Be))},$e=function(Pe){Xe(se)},qe=function(Pe){var Be=new Date(se.getFullYear(),se.getMonth()+Pe+1,0).getDate();se.getDate()>Be&&se.setDate(Be),se.setMonth(se.getMonth()+Pe),Xe(se)},Ht=function(Pe){se.setDate(se.getDate()+Pe),Xe(se)},Jn=function(Pe){var Be=se.getFullYear()+Pe;Be<0?se.setFullYear(0):se.setFullYear(se.getFullYear()+Pe),Xe(se)},Ze=document.createElement("div"),vn=w();Ze.id=vn;var dn=document.createElement("div");dn.classList.add(h.classes.backgroundInfo);var ft=document.createElement("div");ft.classList.add(h.classes.dateSelectorInner);var Gt=document.createElement("div");Gt.classList.add(h.classes.button),Gt.classList.add(h.classes.elementThird),Gt.classList.add(h.classes.dateSelectorUp),Gt.innerHTML=ce;var j=document.createElement("div");j.classList.add(h.classes.button),j.classList.add(h.classes.elementThird),j.classList.add(h.classes.dateSelectorUp),j.innerHTML=ce;var pe=document.createElement("div");pe.classList.add(h.classes.button),pe.classList.add(h.classes.elementThird),pe.classList.add(h.classes.dateSelectorUp),pe.innerHTML=ce,Le.classList.add(h.classes.element),Le.classList.add(h.classes.elementThird),Le.innerHTML=h.dateMonths[se.getMonth()],Oe.classList.add(h.classes.element),Oe.classList.add(h.classes.elementThird),Oe.setAttribute("contentEditable",!0),Oe.addEventListener("input",pt),Oe.addEventListener("blur",$e),Oe.innerHTML=se.getDate(),he.classList.add(h.classes.element),he.classList.add(h.classes.elementThird),he.setAttribute("contentEditable",!0),he.addEventListener("input",We),he.addEventListener("blur",$e),he.innerHTML=se.getFullYear();var _e=document.createElement("div");_e.classList.add(h.classes.button),_e.classList.add(h.classes.elementThird),_e.innerHTML=ce;var Ae=document.createElement("div");Ae.classList.add(h.classes.button),Ae.classList.add(h.classes.elementThird),Ae.innerHTML=ce;var De=document.createElement("div");De.classList.add(h.classes.button),De.classList.add(h.classes.elementThird),De.innerHTML=ce,Gt.onclick=function(){return qe(1)},j.onclick=function(){return Ht(1)},pe.onclick=function(){return Jn(1)},_e.onclick=function(){return qe(-1)},Ae.onclick=function(){return Ht(-1)},De.onclick=function(){return Jn(-1)};var Ve=document.createElement("div");Ve.classList.add(h.classes.button),Ve.classList.add(h.classes.elementHalf),Ve.classList.add(h.classes.backgroundSuccess),Ve.innerHTML=N,Ve.onclick=function(){D(vn,Y),M(),ae?ae(se):H&&H(se)};var Et=document.createElement("div");Et.classList.add(h.classes.button),Et.classList.add(h.classes.elementHalf),Et.classList.add(h.classes.backgroundError),Et.innerHTML=te,Et.onclick=function(){D(vn,Y),M(),ne?ne(se):Q&&Q(se)},ft.appendChild(Gt),ft.appendChild(j),ft.appendChild(pe),ft.appendChild(Le),ft.appendChild(Oe),ft.appendChild(he),ft.appendChild(_e),ft.appendChild(Ae),ft.appendChild(De),dn.appendChild(ft),Ze.appendChild(dn),Ze.appendChild(Ve),Ze.appendChild(Et),Ze.listener=function(Pe){b(Pe)?Ve.click():E(Pe)&&Et.click()},R(Ze,Y),O(Ze,Y)};m.default={alert:$,force:Z,confirm:de,input:G,select:me,date:ge,setOptions:A,hideAlerts:F}}])})}).call(a,r(0)(n))}])})}),Pd={};n6(Pd,{default:()=>so});var r6=Dd(Ld());a6(Pd,Dd(Ld()));var{default:Sd,...u6}=r6,so=Sd!==void 0?Sd:u6;var d0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function g0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Rd(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function o6(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,r=!0,u=0;u=0&&He.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&He.splice(0,He.length),(t===93||t===224)&&(t=91),t in xt){xt[t]=!1;for(var a in An)An[a]===t&&(Ne[a]=!1)}}function f6(e){if(typeof e>"u")Object.keys(it).forEach(function(o){return delete it[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&m0(o)});else if(typeof e=="object")e.key&&m0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Rd(An,s):[];it[m]=it[m].filter(function(p){var f=a?p.method===a:!0;return!(f&&p.scope===n&&o6(p.mods,g))})}})};function Fd(e,t,n,a){if(t.element===a){var r;if(t.scope===n||t.scope==="all"){r=t.mods.length>0;for(var u in xt)Object.prototype.hasOwnProperty.call(xt,u)&&(!xt[u]&&t.mods.indexOf(+u)>-1||xt[u]&&t.mods.indexOf(+u)===-1)&&(r=!1);(t.mods.length===0&&!xt[16]&&!xt[18]&&!xt[17]&&!xt[91]||r||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function _d(e,t){var n=it["*"],a=e.keyCode||e.which||e.charCode;if(Ne.filter.call(this,e)){if((a===93||a===224)&&(a=91),He.indexOf(a)===-1&&a!==229&&He.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var S=f0[f];e[f]&&He.indexOf(S)===-1?He.push(S):!e[f]&&He.indexOf(S)>-1?He.splice(He.indexOf(S),1):f==="metaKey"&&e[f]&&He.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(He=He.slice(He.indexOf(S))))}),a in xt){xt[a]=!0;for(var r in An)An[r]===a&&(Ne[r]=!0);if(!n)return}for(var u in xt)Object.prototype.hasOwnProperty.call(xt,u)&&(xt[u]=e[f0[u]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(He.indexOf(17)===-1&&He.push(17),He.indexOf(18)===-1&&He.push(18),xt[17]=!0,xt[18]=!0);var o=ou();if(n)for(var i=0;i-1}function Ne(e,t,n){He=[];var a=Od(e),r=[],u="all",o=document,i=0,s=!1,l=!0,c="+",m=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(u=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(m=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(u=t);i1&&(r=Rd(An,e)),e=e[e.length-1],e=e==="*"?"*":co(e),e in it||(it[e]=[]),it[e].push({keyup:s,keydown:l,scope:u,mods:r,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!h6(o)&&window&&(Nd.push(o),g0(o,"keydown",function(g){_d(g,o)},m),Md||(Md=!0,g0(window,"focus",function(){He=[]},m)),g0(o,"keyup",function(g){_d(g,o),p6(g)},m))}function b6(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(it).forEach(function(n){var a=it[n].filter(function(r){return r.scope===t&&r.shortcut===e});a.forEach(function(r){r&&r.method&&r.method()})})}var p0={getPressedKeyString:c6,setScope:Ud,getScope:ou,deleteScope:m6,getPressedKeyCodes:l6,isPressed:g6,filter:d6,trigger:b6,unbind:f6,keyMap:uu,modifier:An,modifierMap:f0};for(lo in p0)Object.prototype.hasOwnProperty.call(p0,lo)&&(Ne[lo]=p0[lo]);var lo;typeof document<"u"&&(Bd=window.hotkeys,Ne.noConflict=function(e){return e&&window.hotkeys===Ne&&(window.hotkeys=Bd),Ne},window.hotkeys=Ne);var Bd;var y6=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},T6=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new y6:{reset:()=>{},stop:()=>{}}}},h0=new T6,E6="poegempjloogba",x6="ension://",C6="me-";function iu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function qd(e){return e?e.PROD==="1":!0}function Kd(e){return e?e.MOCK==="1":!1}function Gd(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var v6="rome-ext";function w6(e,t){return t?e+(t-e%t):e}function k6(e,t){return e.split(t).length-1}function A6(e){let t=Date.now(),n=1;for(let a of e)n+=k6(a,"i");return w6(t,n)}function S6(e,t){return Math.floor(Math.random()*(t-e+1))+e}var D6="extension",L6="chro";function P6(){return S6(1e6,1e8)}var jd="BrowserExt";function M6(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var zd="DeepL",Hd="ension",F6="ch"+v6+x6+"cofdb"+E6+"gkncekinflcnj";function Vd(e){let{contentType:t,userAgent:n,url:a,authorization:r,clientVersion:u}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),r&&i.append("authorization",`Bearer ${r}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",F6),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${zd}${jd}${Hd}/${u||"1.1.1"} ${l}`)}else i.append("user-agent",`${zd}${jd}${Hd}/${u||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function _6(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:r}=e,u={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:r||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:A6(n)},id:P6()},o=Vd({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${L6+C6+D6},${t}`,headers:o,body:M6(u),method:"POST"}}function B6(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Sa={},Da={};async function Wd(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u}=n,[o,i]=iu(r);i||(i=iu(u)[1]);let s={refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u||new Date().toISOString()};o||(s=await go(e,t));let[l,c]=iu(s.refreshTokenExpiresAt);i=c,i||(i=iu(s.refreshTokenChecksAt)[1]);let m=s.refreshToken;if(Sa[m])return new Promise((g,p)=>{Sa[m].push((f,S)=>{f?p(f):g(S)})});Sa[m]=[];try{let g=await R6(m,t.onFetch),p={state:{...n,...s,...g},shouldUpdateRefreshToken:i};return Sa[m].forEach(f=>{f(null,p)}),delete Sa[m],p}catch(g){throw Sa[m].forEach(p=>{p(g)}),delete Sa[m],g}}async function go(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Da[e])return new Promise((r,u)=>{Da[e].push((o,i)=>{o?u(o):r(i)})});try{Da[e]=[];let r=new URLSearchParams({grant_type:"auth_key",auth_key:e}),u=new URL("/refresh_token?"+r.toString(),n),o=await a(u.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return Da[e].forEach(m=>{m(null,c)}),delete Da[e],c}catch(r){throw Da[e].forEach(u=>{u(r)}),delete Da[e],r}}async function R6(e,t){if(!e)throw new Error("refreshToken is required");let n=qd(),a=Kd();if(!n&&!a){await Gd(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let r="https://w.deepl.com/oidc/token",u=await t(r,{headers:Vd({url:r,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=B6(u.access_token);if(u.expires_in){let i=new Date,s=new Date(i.getTime()+u.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function $d(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),r=a.getAll("text");if(r.length<1)throw new Error("No text to translate");if(O6(r)>5e3)throw new Error("text too long, the max length is 5000 characters.");let u=a.get("target_lang");if(!u)throw new Error("No target language");let o=a.get("source_lang"),i={..._6({texts:r,authorization:e,target_lang:u,source_lang:o}),responseType:"raw"},s=qd(),l=Kd();if(!s&&!l)return await Gd(50),{translations:r.map(p=>({text:"mock: "+p,detected_source_language:"EN"}))};let c=await n(i.url,i),m=JSON.parse(c.body),g=[];if(m.result&&m.result.texts)g=m.result.texts.map(p=>({text:p.text,detected_source_language:m.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function O6(e){let t=0;for(let n of e)t+=n.length;return t}async function I6(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let r=await N6(t,a);if(r.ok&&r.status>=200&&r.status<400)if(n==="json"){let u=await r.json();return h0.debug("response",JSON.stringify(u,null,2)),u}else{if(n==="text")return await r.text();if(n==="raw"){let u=await r.text(),o=Object.fromEntries([...r.headers.entries()]),i=r.url;return{body:u,headers:o,status:r.status,statusText:r.statusText,url:i}}}else{let u;try{u=await r.text()}catch(o){h0.error("parse response failed",o)}throw new Error(r.status+": "+r.statusText||" "+u||"")}}async function N6(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,r=setTimeout(()=>a.abort(),n),u=await fetch(e,{...t,signal:a.signal});return clearTimeout(r),u}var mo=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>I6({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((u,o)=>{a.append("text",u)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let r=await $d(this.state.accessToken,a.toString(),this.onFetch);if(r&&r.translations&&r.translations.length>0)return Array.isArray(e)?r.translations.map(u=>({text:u.text,detectedSourceLanguage:u.detected_source_language})):{text:r.translations[0].text,detectedSourceLanguage:r.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await $d(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw h0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=iu(e);if(t)n&&Wd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:r})=>{this.setState({...this.state,...a}),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:r}=await Wd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})}).catch(u=>{})}catch(a){this.onFetchTokenError(a)}}};var U6={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},Yd={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},et={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},Rt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},ta={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},U=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=U.getVersionPrecision(e),r=U.getVersionPrecision(t),u=Math.max(a,r),o=0,i=U.map([e,t],s=>{let l=u-U.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return U.map(c.split("."),m=>new Array(20-m.length).join("0")+m).reverse()});for(n&&(o=u-Math.min(a,r)),u-=1;u>=o;){if(i[0][u]>i[1][u])return 1;if(i[0][u]===i[1][u]){if(u===o)return 0;u-=1}else if(i[0][u]{n[o]=u[o]})}return e}static getBrowserAlias(e){return U6[e]}static getBrowserTypeByAlias(e){return Yd[e]||""}},je=/version\/(\d+(\.?_?\d+)+)/i,j6=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=U.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=U.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=U.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=U.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=U.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=U.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=U.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=U.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=U.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=U.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=U.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=U.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=U.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=U.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=U.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=U.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=U.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=U.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=U.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=U.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=U.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=U.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=U.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=U.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=U.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=U.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=U.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:U.getFirstMatch(a,e),version:U.getSecondMatch(a,e)}}}],z6=j6,H6=[{test:[/Roku\/DVP/],describe(e){let t=U.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:Rt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=U.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:Rt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=U.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=U.getWindowsVersionName(t);return{name:Rt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:Rt.iOS},n=U.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=U.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=U.getMacOSVersionName(t),a={name:Rt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=U.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:Rt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=U.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=U.getAndroidVersionName(t),a={name:Rt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=U.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:Rt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=U.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||U.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||U.getFirstMatch(/\bbb(\d+)/i,e);return{name:Rt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=U.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:Rt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=U.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:Rt.Linux}}},{test:[/CrOS/],describe(){return{name:Rt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=U.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.PlayStation4,version:t}}}],W6=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=U.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:et.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:et.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:et.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:et.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:et.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=U.getFirstMatch(/(ipod|iphone)/i,e);return{type:et.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:et.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:et.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:et.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:et.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:et.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:et.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:et.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:et.tv}}}],$6=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:ta.Blink};let t=U.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:ta.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:ta.Trident},n=U.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:ta.Presto},n=U.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:ta.Gecko},n=U.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:ta.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:ta.WebKit},n=U.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],q6=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=U.find(z6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=U.find(H6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=U.find(W6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=U.find($6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return U.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},r=0;if(Object.keys(e).forEach(u=>{let o=e[u];typeof o=="string"?(a[u]=o,r+=1):typeof o=="object"&&(t[u]=o,n+=1)}),n>0){let u=Object.keys(t),o=U.find(u,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=U.find(u,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(r>0){let u=Object.keys(a),o=U.find(u,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),r=U.getBrowserTypeByAlias(a);return t&&r&&(a=r.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,r=this.getBrowserVersion();if(typeof r=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(U.compareVersions(r,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Jd=q6,K6=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Jd(e,t)}static parse(e){return new Jd(e).getResult()}static get BROWSER_MAP(){return Yd}static get ENGINE_MAP(){return ta}static get OS_MAP(){return Rt}static get PLATFORMS_MAP(){return et}},po=K6;var{entries:rg,setPrototypeOf:Xd,isFrozen:G6,getPrototypeOf:V6,getOwnPropertyDescriptor:J6}=Object,{freeze:Ot,seal:pn,create:Y6}=Object,{apply:C0,construct:v0}=typeof Reflect<"u"&&Reflect;C0||(C0=function(e,t,n){return e.apply(t,n)});Ot||(Ot=function(e){return e});pn||(pn=function(e){return e});v0||(v0=function(e,t){return new e(...t)});var X6=nn(Array.prototype.forEach),Zd=nn(Array.prototype.pop),su=nn(Array.prototype.push),bo=nn(String.prototype.toLowerCase),b0=nn(String.prototype.toString),Z6=nn(String.prototype.match),mn=nn(String.prototype.replace),Q6=nn(String.prototype.indexOf),e1=nn(String.prototype.trim),Yt=nn(RegExp.prototype.test),lu=t1(TypeError);function nn(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r/gm),o1=pn(/\${[\w\W]*}/gm),i1=pn(/^data-[\-\w.\u00B7-\uFFFF]/),s1=pn(/^aria-[\-\w]+$/),ug=pn(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),l1=pn(/^(?:\w+script|data):/i),c1=pn(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),og=pn(/^html$/i),ag=Object.freeze({__proto__:null,MUSTACHE_EXPR:r1,ERB_EXPR:u1,TMPLIT_EXPR:o1,DATA_ATTR:i1,ARIA_ATTR:s1,IS_ALLOWED_URI:ug,IS_SCRIPT_OR_DATA:l1,ATTR_WHITESPACE:c1,DOCTYPE_NAME:og}),d1=()=>typeof window>"u"?null:window,g1=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let r="dompurify"+(n?"#"+n:"");try{return e.createPolicy(r,{createHTML(u){return u},createScriptURL(u){return u}})}catch{return null}};function ig(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:d1(),t=C=>ig(C);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:r}=e,{DocumentFragment:u,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:m,DOMParser:g,trustedTypes:p}=e,f=s.prototype,S=fo(f,"cloneNode"),k=fo(f,"nextSibling"),h=fo(f,"childNodes"),A=fo(f,"parentNode");if(typeof o=="function"){let C=r.createElement("template");C.content&&C.content.ownerDocument&&(r=C.content.ownerDocument)}let _,B="",{implementation:L,createNodeIterator:w,createDocumentFragment:y,getElementsByTagName:T}=r,{importNode:b}=n,E={};t.isSupported=typeof rg=="function"&&typeof A=="function"&&L&&L.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:R,ERB_EXPR:D,TMPLIT_EXPR:O,DATA_ATTR:M,ARIA_ATTR:F,IS_SCRIPT_OR_DATA:$,ATTR_WHITESPACE:Z}=ag,{IS_ALLOWED_URI:de}=ag,G=null,me=Se({},[...Qd,...y0,...T0,...E0,...eg]),ge=null,v=Se({},[...tg,...x0,...ng,...ho]),H=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Q=null,fe=null,se=!0,I=!0,N=!1,re=!0,te=!1,ae=!1,ne=!1,oe=!1,Y=!1,ce=!1,Le=!1,Oe=!0,he=!1,Xe="user-content-",pt=!0,We=!1,$e={},qe=null,Ht=Se({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Jn=null,Ze=Se({},["audio","video","img","source","image","track"]),vn=null,dn=Se({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ft="http://www.w3.org/1998/Math/MathML",Gt="http://www.w3.org/2000/svg",j="http://www.w3.org/1999/xhtml",pe=j,_e=!1,Ae=null,De=Se({},[ft,Gt,j],b0),Ve,Et=["application/xhtml+xml","text/html"],Pe="text/html",Be,Vt=null,fh=r.createElement("form"),Vc=function(C){return C instanceof RegExp||C instanceof Function},Es=function(C){if(!(Vt&&Vt===C)){if((!C||typeof C!="object")&&(C={}),C=nr(C),Ve=Et.indexOf(C.PARSER_MEDIA_TYPE)===-1?Ve=Pe:Ve=C.PARSER_MEDIA_TYPE,Be=Ve==="application/xhtml+xml"?b0:bo,G="ALLOWED_TAGS"in C?Se({},C.ALLOWED_TAGS,Be):me,ge="ALLOWED_ATTR"in C?Se({},C.ALLOWED_ATTR,Be):v,Ae="ALLOWED_NAMESPACES"in C?Se({},C.ALLOWED_NAMESPACES,b0):De,vn="ADD_URI_SAFE_ATTR"in C?Se(nr(dn),C.ADD_URI_SAFE_ATTR,Be):dn,Jn="ADD_DATA_URI_TAGS"in C?Se(nr(Ze),C.ADD_DATA_URI_TAGS,Be):Ze,qe="FORBID_CONTENTS"in C?Se({},C.FORBID_CONTENTS,Be):Ht,Q="FORBID_TAGS"in C?Se({},C.FORBID_TAGS,Be):{},fe="FORBID_ATTR"in C?Se({},C.FORBID_ATTR,Be):{},$e="USE_PROFILES"in C?C.USE_PROFILES:!1,se=C.ALLOW_ARIA_ATTR!==!1,I=C.ALLOW_DATA_ATTR!==!1,N=C.ALLOW_UNKNOWN_PROTOCOLS||!1,re=C.ALLOW_SELF_CLOSE_IN_ATTR!==!1,te=C.SAFE_FOR_TEMPLATES||!1,ae=C.WHOLE_DOCUMENT||!1,Y=C.RETURN_DOM||!1,ce=C.RETURN_DOM_FRAGMENT||!1,Le=C.RETURN_TRUSTED_TYPE||!1,oe=C.FORCE_BODY||!1,Oe=C.SANITIZE_DOM!==!1,he=C.SANITIZE_NAMED_PROPS||!1,pt=C.KEEP_CONTENT!==!1,We=C.IN_PLACE||!1,de=C.ALLOWED_URI_REGEXP||ug,pe=C.NAMESPACE||j,H=C.CUSTOM_ELEMENT_HANDLING||{},C.CUSTOM_ELEMENT_HANDLING&&Vc(C.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(H.tagNameCheck=C.CUSTOM_ELEMENT_HANDLING.tagNameCheck),C.CUSTOM_ELEMENT_HANDLING&&Vc(C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(H.attributeNameCheck=C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),C.CUSTOM_ELEMENT_HANDLING&&typeof C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(H.allowCustomizedBuiltInElements=C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),te&&(I=!1),ce&&(Y=!0),$e&&(G=Se({},[...eg]),ge=[],$e.html===!0&&(Se(G,Qd),Se(ge,tg)),$e.svg===!0&&(Se(G,y0),Se(ge,x0),Se(ge,ho)),$e.svgFilters===!0&&(Se(G,T0),Se(ge,x0),Se(ge,ho)),$e.mathMl===!0&&(Se(G,E0),Se(ge,ng),Se(ge,ho))),C.ADD_TAGS&&(G===me&&(G=nr(G)),Se(G,C.ADD_TAGS,Be)),C.ADD_ATTR&&(ge===v&&(ge=nr(ge)),Se(ge,C.ADD_ATTR,Be)),C.ADD_URI_SAFE_ATTR&&Se(vn,C.ADD_URI_SAFE_ATTR,Be),C.FORBID_CONTENTS&&(qe===Ht&&(qe=nr(qe)),Se(qe,C.FORBID_CONTENTS,Be)),pt&&(G["#text"]=!0),ae&&Se(G,["html","head","body"]),G.table&&(Se(G,["tbody"]),delete Q.tbody),C.TRUSTED_TYPES_POLICY){if(typeof C.TRUSTED_TYPES_POLICY.createHTML!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof C.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');_=C.TRUSTED_TYPES_POLICY,B=_.createHTML("")}else _===void 0&&(_=g1(p,a)),_!==null&&typeof B=="string"&&(B=_.createHTML(""));Ot&&Ot(C),Vt=C}},Jc=Se({},["mi","mo","mn","ms","mtext"]),Yc=Se({},["foreignobject","desc","title","annotation-xml"]),hh=Se({},["title","style","font","a","script"]),ju=Se({},y0);Se(ju,T0),Se(ju,n1);let xs=Se({},E0);Se(xs,a1);let bh=function(C){let ee=A(C);(!ee||!ee.tagName)&&(ee={namespaceURI:pe,tagName:"template"});let q=bo(C.tagName),Re=bo(ee.tagName);return Ae[C.namespaceURI]?C.namespaceURI===Gt?ee.namespaceURI===j?q==="svg":ee.namespaceURI===ft?q==="svg"&&(Re==="annotation-xml"||Jc[Re]):!!ju[q]:C.namespaceURI===ft?ee.namespaceURI===j?q==="math":ee.namespaceURI===Gt?q==="math"&&Yc[Re]:!!xs[q]:C.namespaceURI===j?ee.namespaceURI===Gt&&!Yc[Re]||ee.namespaceURI===ft&&!Jc[Re]?!1:!xs[q]&&(hh[q]||!ju[q]):!!(Ve==="application/xhtml+xml"&&Ae[C.namespaceURI]):!1},Ja=function(C){su(t.removed,{element:C});try{C.parentNode.removeChild(C)}catch{C.remove()}},Cs=function(C,ee){try{su(t.removed,{attribute:ee.getAttributeNode(C),from:ee})}catch{su(t.removed,{attribute:null,from:ee})}if(ee.removeAttribute(C),C==="is"&&!ge[C])if(Y||ce)try{Ja(ee)}catch{}else try{ee.setAttribute(C,"")}catch{}},Xc=function(C){let ee,q;if(oe)C=""+C;else{let Bt=Z6(C,/^[\r\n\t ]+/);q=Bt&&Bt[0]}Ve==="application/xhtml+xml"&&pe===j&&(C=''+C+"");let Re=_?_.createHTML(C):C;if(pe===j)try{ee=new g().parseFromString(Re,Ve)}catch{}if(!ee||!ee.documentElement){ee=L.createDocument(pe,"template",null);try{ee.documentElement.innerHTML=_e?B:Re}catch{}}let ct=ee.body||ee.documentElement;return C&&q&&ct.insertBefore(r.createTextNode(q),ct.childNodes[0]||null),pe===j?T.call(ee,ae?"html":"body")[0]:ae?ee.documentElement:ct},Zc=function(C){return w.call(C.ownerDocument||C,C,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},yh=function(C){return C instanceof m&&(typeof C.nodeName!="string"||typeof C.textContent!="string"||typeof C.removeChild!="function"||!(C.attributes instanceof c)||typeof C.removeAttribute!="function"||typeof C.setAttribute!="function"||typeof C.namespaceURI!="string"||typeof C.insertBefore!="function"||typeof C.hasChildNodes!="function")},zu=function(C){return typeof i=="object"?C instanceof i:C&&typeof C=="object"&&typeof C.nodeType=="number"&&typeof C.nodeName=="string"},In=function(C,ee,q){E[C]&&X6(E[C],Re=>{Re.call(t,ee,q,Vt)})},Qc=function(C){let ee;if(In("beforeSanitizeElements",C,null),yh(C))return Ja(C),!0;let q=Be(C.nodeName);if(In("uponSanitizeElement",C,{tagName:q,allowedTags:G}),C.hasChildNodes()&&!zu(C.firstElementChild)&&(!zu(C.content)||!zu(C.content.firstElementChild))&&Yt(/<[/\w]/g,C.innerHTML)&&Yt(/<[/\w]/g,C.textContent))return Ja(C),!0;if(!G[q]||Q[q]){if(!Q[q]&&t4(q)&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,q)||H.tagNameCheck instanceof Function&&H.tagNameCheck(q)))return!1;if(pt&&!qe[q]){let Re=A(C)||C.parentNode,ct=h(C)||C.childNodes;if(ct&&Re){let Bt=ct.length;for(let Wt=Bt-1;Wt>=0;--Wt)Re.insertBefore(S(ct[Wt],!0),k(C))}}return Ja(C),!0}return C instanceof s&&!bh(C)||(q==="noscript"||q==="noembed")&&Yt(/<\/no(script|embed)/i,C.innerHTML)?(Ja(C),!0):(te&&C.nodeType===3&&(ee=C.textContent,ee=mn(ee,R," "),ee=mn(ee,D," "),ee=mn(ee,O," "),C.textContent!==ee&&(su(t.removed,{element:C.cloneNode()}),C.textContent=ee)),In("afterSanitizeElements",C,null),!1)},e4=function(C,ee,q){if(Oe&&(ee==="id"||ee==="name")&&(q in r||q in fh))return!1;if(!(I&&!fe[ee]&&Yt(M,ee))&&!(se&&Yt(F,ee))){if(!ge[ee]||fe[ee]){if(!(t4(C)&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,C)||H.tagNameCheck instanceof Function&&H.tagNameCheck(C))&&(H.attributeNameCheck instanceof RegExp&&Yt(H.attributeNameCheck,ee)||H.attributeNameCheck instanceof Function&&H.attributeNameCheck(ee))||ee==="is"&&H.allowCustomizedBuiltInElements&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,q)||H.tagNameCheck instanceof Function&&H.tagNameCheck(q))))return!1}else if(!vn[ee]&&!Yt(de,mn(q,Z,""))&&!((ee==="src"||ee==="xlink:href"||ee==="href")&&C!=="script"&&Q6(q,"data:")===0&&Jn[C])&&!(N&&!Yt($,mn(q,Z,"")))&&q)return!1}return!0},t4=function(C){return C.indexOf("-")>0},n4=function(C){let ee,q,Re,ct;In("beforeSanitizeAttributes",C,null);let{attributes:Bt}=C;if(!Bt)return;let Wt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ge};for(ct=Bt.length;ct--;){ee=Bt[ct];let{name:ht,namespaceURI:Ya}=ee;if(q=ht==="value"?ee.value:e1(ee.value),Re=Be(ht),Wt.attrName=Re,Wt.attrValue=q,Wt.keepAttr=!0,Wt.forceKeepAttr=void 0,In("uponSanitizeAttribute",C,Wt),q=Wt.attrValue,Wt.forceKeepAttr||(Cs(ht,C),!Wt.keepAttr))continue;if(!re&&Yt(/\/>/i,q)){Cs(ht,C);continue}te&&(q=mn(q,R," "),q=mn(q,D," "),q=mn(q,O," "));let a4=Be(C.nodeName);if(e4(a4,Re,q)){if(he&&(Re==="id"||Re==="name")&&(Cs(ht,C),q=Xe+q),_&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!Ya)switch(p.getAttributeType(a4,Re)){case"TrustedHTML":{q=_.createHTML(q);break}case"TrustedScriptURL":{q=_.createScriptURL(q);break}}try{Ya?C.setAttributeNS(Ya,ht,q):C.setAttribute(ht,q),Zd(t.removed)}catch{}}}In("afterSanitizeAttributes",C,null)},Th=function C(ee){let q,Re=Zc(ee);for(In("beforeSanitizeShadowDOM",ee,null);q=Re.nextNode();)In("uponSanitizeShadowNode",q,null),!Qc(q)&&(q.content instanceof u&&C(q.content),n4(q));In("afterSanitizeShadowDOM",ee,null)};return t.sanitize=function(C){let ee=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},q,Re,ct,Bt;if(_e=!C,_e&&(C=""),typeof C!="string"&&!zu(C))if(typeof C.toString=="function"){if(C=C.toString(),typeof C!="string")throw lu("dirty is not a string, aborting")}else throw lu("toString is not a function");if(!t.isSupported)return C;if(ne||Es(ee),t.removed=[],typeof C=="string"&&(We=!1),We){if(C.nodeName){let Ya=Be(C.nodeName);if(!G[Ya]||Q[Ya])throw lu("root node is forbidden and cannot be sanitized in-place")}}else if(C instanceof i)q=Xc(""),Re=q.ownerDocument.importNode(C,!0),Re.nodeType===1&&Re.nodeName==="BODY"||Re.nodeName==="HTML"?q=Re:q.appendChild(Re);else{if(!Y&&!te&&!ae&&C.indexOf("<")===-1)return _&&Le?_.createHTML(C):C;if(q=Xc(C),!q)return Y?null:Le?B:""}q&&oe&&Ja(q.firstChild);let Wt=Zc(We?C:q);for(;ct=Wt.nextNode();)Qc(ct)||(ct.content instanceof u&&Th(ct.content),n4(ct));if(We)return C;if(Y){if(ce)for(Bt=y.call(q.ownerDocument);q.firstChild;)Bt.appendChild(q.firstChild);else Bt=q;return(ge.shadowroot||ge.shadowrootmod)&&(Bt=b.call(n,Bt,!0)),Bt}let ht=ae?q.outerHTML:q.innerHTML;return ae&&G["!doctype"]&&q.ownerDocument&&q.ownerDocument.doctype&&q.ownerDocument.doctype.name&&Yt(og,q.ownerDocument.doctype.name)&&(ht=" -`+ht),te&&(ht=mn(ht,R," "),ht=mn(ht,D," "),ht=mn(ht,O," ")),_&&Le?_.createHTML(ht):ht},t.setConfig=function(C){Es(C),ne=!0},t.clearConfig=function(){Vt=null,ne=!1},t.isValidAttribute=function(C,ee,q){Vt||Es({});let Re=Be(C),ct=Be(ee);return e4(Re,ct,q)},t.addHook=function(C,ee){typeof ee=="function"&&(E[C]=E[C]||[],su(E[C],ee))},t.removeHook=function(C){if(E[C])return Zd(E[C])},t.removeHooks=function(C){E[C]&&(E[C]=[])},t.removeAllHooks=function(){E={}},t}var Ie=ig();var w0=so.alert;var sg={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var lg={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var cg={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var h1=[{code:"zh-CN",messages:sg},{code:"zh-TW",messages:lg},{code:"en",messages:cg}],fn="immersiveTranslateDeeplGlobalState",yo="immersiveTranslateBingGlobalState",an={};for(let e of h1)an[e.code]=e.messages;var La="Immersive Translate",X="immersive-translate";var xe="immersiveTranslate",To="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",Sn=xe+"GoogleAccessToken",cu=xe+"AuthFlow",Eo="immersive-translate-config-latest.json",k0=xe+"AuthState",xo=xe+"IframeMessage",Q5=xe+"WaitForRateLimit",gg=xe+"DocumentMessageAsk",It=xe+"DocumentMessageTellThirdParty",mg=xe+"DocumentMessageThirdPartyTell",b1=xe+"DocumentMessageHandler",y1=`${xe}Container`,pg=`${xe}SpecifiedContainer`,Un="buildinConfig",ar="localConfig",du="openOptionsPage",A0="openAboutPage",fg="translateLocalPdfFile";var gu="openEbookViewer",mu="openEbookBuilder";var Co=`${xe}PageTranslatedStatus`,ev=`${xe}PageUrlChanged`,na=`${xe}ReceiveCommand`,hg=xe+"LastUseMouseHoverTime",bg=xe+"LastUseInputTime",jn=xe+"LastUseManualTranslatePageTime",tv=`${xe}PopupReceiveMessage`,T1="immersivetranslate.com",E1="config.immersivetranslate.com",nv=`https://${T1}/`,aa=`https://${E1}/default_config.json`,av=`${xe}Mark`,pu="immersiveTranslateEffect",$t=`${xe}Root`,rv=`data-${X}-effect`,Dn=`data-${X}-translation-element-mark`,yg=`${xe}TranslationElementMark`,uv=`${xe}TranslatedMark`,ov=`${xe}ParagraphId`,Tg=`${xe}LoadingId`,S0=`data-${X}-loading-id`,Eg=`${xe}ErrorId`,vo=`data-${X}-error-id`,x1=`${xe}AtomicBlockMark`,xg=`${xe}ExcludeMark`,iv=`data-${X}-exclude-mark`,C1=`${xe}StayOriginalMark`,sv=`${xe}PreWhitespaceMark`,wo=`${xe}InlineMark`,Cg=`${xe}BlockMark`,lv=`${xe}Left`,cv=`${xe}Right`,dv=`${xe}Width`,gv=`${xe}Height`,mv=`${xe}Top`,pv=`${xe}FontSize`,vg="lastRunTime",fv=`${xe}GlobalStyleMark`,ko=["@","#"],Ao=" --- ",wg=` -`,rn=`${X}-target-wrapper`,hv=`${X}-pdf-target-container`,kg=`${X}-target-inner`,bv=`${X}-source-wrapper`,D0=`${X}-target-translation-block-wrapper`,yv=`${X}-root-translation-theme`,rr=`${xe}RootTranslationTheme`,Ag=`${X}-target-translation-vertical-block-wrapper`,Sg=`${X}-target-translation-pdf-block-wrapper`,Dg=`${X}-target-translation-pre-whitespace`,L0=`${X}-target-translation-inline-wrapper`,P0=["none","dashed","underline","dashedBorder","solidBorder","mask","opacity","dotted","dividingLine","highlight","marker","marker2","blockquote","weakening","grey","paper","italic","bold","thinDashed","wavy","nativeDotted","nativeDashed","nativeUnderline"],fu={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Xt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],Lg={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},Pg={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},Mg={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var Fg=["toggleTranslatePage","toggleTranslateTheWholePage","toggleOnlyTransation","toggleTranslateToThePageEndImmediately","toggleTranslateTheMainPage","toggleTranslationMask"],_g=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"],Bg="Night gathers, and now my watch begins. It shall not end until my death. I shall take no wife, hold no lands, father no children. I shall wear no crowns and win no glory. I shall live and die at my post.",M0="\u957F\u591C\u5C06\u81F3\uFF0C\u6211\u4ECE\u4ECA\u5F00\u59CB\u5B88\u671B\uFF0C\u81F3\u6B7B\u65B9\u4F11\u3002\u6211\u5C06\u4E0D\u5A36\u59BB\u3001\u4E0D\u5C01\u5730\u3001\u4E0D\u751F\u5B50\u3002\u6211\u5C06\u4E0D\u6234\u5B9D\u51A0\uFF0C\u4E0D\u4E89\u8363\u5BA0\u3002\u6211\u5C06\u5C3D\u5FE0\u804C\u5B88\uFF0C\u751F\u6B7B\u4E8E\u65AF\u3002",So="zh-CN",Do="https://immersivetranslate.com/docs/communities/",dg=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],hn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"firefox_zip"};var Lh=Object.create,As=Object.defineProperty,Ph=Object.getOwnPropertyDescriptor,g4=Object.getOwnPropertyNames,Mh=Object.getPrototypeOf,Fh=Object.prototype.hasOwnProperty,_h=(e,t)=>function(){return t||(0,e[g4(e)[0]])((t={exports:{}}).exports,t),t.exports},Bh=(e,t)=>{for(var n in t)As(e,n,{get:t[n],enumerable:!0})},ks=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of g4(t))!Fh.call(e,r)&&r!==n&&As(e,r,{get:()=>t[r],enumerable:!(a=Ph(t,r))||a.enumerable});return e},Rh=(e,t,n)=>(ks(e,t,"default"),n&&ks(n,t,"default")),m4=(e,t,n)=>(n=e!=null?Lh(Mh(e)):{},ks(t||!e||!e.__esModule?As(n,"default",{value:e,enumerable:!0}):n,e)),p4=_h({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var r={exports:{}};a(r),n.browser=r.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",r=u=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(y,T=void 0){super(T),this.createItem=y}get(y){return this.has(y)||this.set(y,this.createItem(y)),super.get(y)}}let s=v=>v&&typeof v=="object"&&typeof v.then=="function",l=(v,y)=>(...T)=>{u.runtime.lastError?v.reject(new Error(u.runtime.lastError.message)):y.singleCallbackArg||T.length<=1&&y.singleCallbackArg!==!1?v.resolve(T[0]):v.resolve(T)},c=v=>v==1?"argument":"arguments",m=(v,y)=>function(b,...x){if(x.lengthy.maxArgs)throw new Error(`Expected at most ${y.maxArgs} ${c(y.maxArgs)} for ${v}(), got ${x.length}`);return new Promise((R,D)=>{if(y.fallbackToNoCallback)try{b[v](...x,l({resolve:R,reject:D},y))}catch{b[v](...x),y.fallbackToNoCallback=!1,y.noCallback=!0,R()}else y.noCallback?(b[v](...x),R()):b[v](...x,l({resolve:R,reject:D},y))})},g=(v,y,T)=>new Proxy(y,{apply(b,x,R){return T.call(x,v,...R)}}),p=Function.call.bind(Object.prototype.hasOwnProperty),f=(v,y={},T={})=>{let b=Object.create(null),x={has(D,I){return I in v||I in b},get(D,I,M){if(I in b)return b[I];if(!(I in v))return;let F=v[I];if(typeof F=="function")if(typeof y[I]=="function")F=g(v,v[I],y[I]);else if(p(T,I)){let $=m(I,T[I]);F=g(v,v[I],$)}else F=F.bind(v);else if(typeof F=="object"&&F!==null&&(p(y,I)||p(T,I)))F=f(F,y[I],T[I]);else if(p(T,"*"))F=f(F,y[I],T["*"]);else return Object.defineProperty(b,I,{configurable:!0,enumerable:!0,get(){return v[I]},set($){v[I]=$}}),F;return b[I]=F,F},set(D,I,M,F){return I in b?b[I]=M:v[I]=M,!0},defineProperty(D,I,M){return Reflect.defineProperty(b,I,M)},deleteProperty(D,I){return Reflect.deleteProperty(b,I)}},R=Object.create(v);return new Proxy(R,x)},A=v=>({addListener(y,T,...b){y.addListener(v.get(T),...b)},hasListener(y,T){return y.hasListener(v.get(T))},removeListener(y,T){y.removeListener(v.get(T))}}),k=new i(v=>typeof v!="function"?v:function(T){let b=f(T,{},{getContent:{minArgs:0,maxArgs:0}});v(b)}),h=new i(v=>typeof v!="function"?v:function(T,b,x){let R=!1,D,I=new Promise(Z=>{D=function(de){R=!0,Z(de)}}),M;try{M=v(T,b,D)}catch(Z){M=Promise.reject(Z)}let F=M!==!0&&s(M);if(M!==!0&&!F&&!R)return!1;let $=Z=>{Z.then(de=>{x(de)},de=>{let V;de&&(de instanceof Error||typeof de.message=="string")?V=de.message:V="An unexpected error occurred",x({__mozWebExtensionPolyfillReject__:!0,message:V})}).catch(de=>{})};return $(F?M:I),!0}),S=({reject:v,resolve:y},T)=>{u.runtime.lastError?u.runtime.lastError.message===a?y():v(new Error(u.runtime.lastError.message)):T&&T.__mozWebExtensionPolyfillReject__?v(new Error(T.message)):y(T)},_=(v,y,T,...b)=>{if(b.lengthy.maxArgs)throw new Error(`Expected at most ${y.maxArgs} ${c(y.maxArgs)} for ${v}(), got ${b.length}`);return new Promise((x,R)=>{let D=S.bind(null,{resolve:x,reject:R});b.push(D),T.sendMessage(...b)})},B={devtools:{network:{onRequestFinished:A(k)}},runtime:{onMessage:A(h),onMessageExternal:A(h),sendMessage:_.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:_.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},L={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":L},services:{"*":L},websites:{"*":L}},f(u,B,o)};n.exports=r(chrome)}else n.exports=globalThis.browser})}}),f4={};Bh(f4,{default:()=>Hu});var Ih=m4(p4());Rh(f4,m4(p4()));var{default:d4,...Oh}=Ih,Hu=d4!==void 0?d4:Oh;globalThis.immersiveTranslateBrowserAPI=Hu;var Gu,ve,x4,Nh,Gr,h4,E4,qu={},C4=[],Uh=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Yn(e,t){for(var n in t)e[n]=t[n];return e}function w4(e){var t=e.parentNode;t&&t.removeChild(e)}function Ds(e,t,n){var a,r,u,o={};for(u in t)u=="key"?a=t[u]:u=="ref"?r=t[u]:o[u]=t[u];if(arguments.length>2&&(o.children=arguments.length>3?Gu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(u in e.defaultProps)o[u]===void 0&&(o[u]=e.defaultProps[u]);return Wu(e,o,a,r,null)}function Wu(e,t,n,a,r){var u={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:r??++x4};return r==null&&ve.vnode!=null&&ve.vnode(u),u}function rt(e){return e.children}function $u(e,t){this.props=e,this.context=t}function Xa(e,t){if(t==null)return e.__?Xa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Wu(p.type,p.props,p.key,p.ref?p.ref:null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(g=h[c])===null||g&&p.key==g.key&&p.type===g.type)h[c]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Yu}),n.__[e]}function W(e){return Jr=1,Wh(z4,e)}function Wh(e,t,n){var a=Zu(Yr++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):z4(void 0,t),function(u){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,u);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Qe,!Qe.u)){Qe.u=!0;var r=Qe.shouldComponentUpdate;Qe.shouldComponentUpdate=function(u,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!r||r.call(this,u,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var m=c.__[0];c.__=c.__N,c.__N=void 0,m!==c.__[0]&&(l=!0)}}),!!l&&(!r||r.call(this,u,o,i))}}return a.__N||a.__}function ke(e,t){var n=Zu(Yr++,3);!ve.__s&&j4(n.__H,t)&&(n.__=e,n.i=t,Qe.__H.__h.push(n))}function kn(e){return Jr=5,U4(function(){return{current:e}},[])}function U4(e,t){var n=Zu(Yr++,7);return j4(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function Xn(e,t){return Jr=8,U4(function(){return e},t)}function Qu(e){var t=Qe.context[e.__c],n=Zu(Yr++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Qe)),t.props.value):e.__}function $h(){for(var e;e=N4.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Xu),e.__H.__h.forEach(Ms),e.__H.__h=[]}catch(t){e.__H.__h=[],ve.__e(t,e.__v)}}ve.__b=function(e){typeof e.type!="function"||e.o||e.type===rt?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Qe=null,F4&&F4(e)},ve.__r=function(e){_4&&_4(e),Yr=0;var t=(Qe=e.__c).__H;t&&(Ps===Qe?(t.__h=[],Qe.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Yu,n.__N=n.i=void 0})):(t.__h.forEach(Xu),t.__h.forEach(Ms),t.__h=[])),Ps=Qe},ve.diffed=function(e){B4&&B4(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(N4.push(t)!==1&&M4===ve.requestAnimationFrame||((M4=ve.requestAnimationFrame)||qh)($h)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Yu&&(n.__=n.__V),n.i=void 0,n.__V=Yu})),Ps=Qe=null},ve.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Xu),n.__h=n.__h.filter(function(a){return!a.__||Ms(a)})}catch(a){t.some(function(r){r.__h&&(r.__h=[])}),t=[],ve.__e(a,n.__v)}}),R4&&R4(e,t)},ve.unmount=function(e){I4&&I4(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Xu(a)}catch(r){t=r}}),n.__H=void 0,t&&ve.__e(t,n.__v))};var O4=typeof requestAnimationFrame=="function";function qh(e){var t,n=function(){clearTimeout(a),O4&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);O4&&(t=requestAnimationFrame(n))}function Xu(e){var t=Qe,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Qe=t}function Ms(e){var t=Qe;e.__c=e.__(),Qe=t}function j4(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function z4(e,t){return typeof t=="function"?t(e):t}var Xr;function Ws(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function X4(e,t=","){return e.map(Ws).join(t)}var $s=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function Za(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function to(e,t="@media "){return t+Ue(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(a=>`(${a}-width:${n[a]})`).join(" and "))).join(",")}function Ue(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function H4(e){return e}function Qr(){}var ut={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function Z4(e){return e.match(/[-=:;]/g)?.length||0}function Os(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(Z4(e),15)<<18}var Kh=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function qs({n:e,i:t,v:n=[]},a,r,u){e&&(e=Ws({n:e,i:t,v:n})),u=[...Ue(u)];for(let i of n){let s=a.theme("screens",i);for(let l of Ue(s&&to(s)||a.v(i))){var o;u.push(l),r|=s?67108864|Os(l):i=="dark"?1073741824:l[0]=="@"?Os(l):(o=l,1<<~(/:([a-z-]+)/.test(o)&&~Kh.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:r,r:u,i:t}}var Ks=new Map;function Ns(e){if(e.d){let t=[],n=Fs(e.r.reduce((a,r)=>r[0]=="@"?(t.push(r),a):r?Fs(a,u=>Fs(r,o=>{let i=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(i){let s=u.indexOf(i[1]);return~s?u.slice(0,s)+i[0]+u.slice(s+i[1].length):_s(u,o)}return _s(o,u)})):a,"&"),a=>_s(a,e.n?"."+$s(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((a,r)=>r+"{"+a+"}",e.d)}}function Fs(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,a,r)=>t(a)+r)}function _s(e,t){return e.replace(/&/g,t)}var W4=new Intl.Collator("en",{numeric:!0});function Q4(e,t){for(var n=0,a=e.length;n>1;0>=ed(e[r],t)?n=r+1:a=r}return a}function ed(e,t){let n=e.p&ut.o;return n==(t.p&ut.o)&&(n==ut.b||n==ut.o)?0:e.p-t.p||e.o-t.o||W4.compare($4(e.n),$4(t.n))||W4.compare(q4(e.n),q4(t.n))}function $4(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function q4(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function Bs(e,t){return Math.round(parseInt(e,16)*t)}function Nn(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:a}=t,r=a?`var(${a})`:n;if(e.includes(""))return e.replace("",r);if(e[0]=="#"&&(e.length==4||e.length==7)){let u=(e.length-1)/3,o=[17,1,.062272][u-1];return`rgba(${[Bs(e.substr(1,u),o),Bs(e.substr(1+u,u),o),Bs(e.substr(1+2*u,u),o),r]})`}return r=="1"?e:r=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${r})`)}function Vs(e,t,n,a,r=[]){return function u(o,{n:i,p:s,r:l=[],i:c},m){let g=[],p="",f=0,A=0;for(let S in o||{}){var k,h;let _=o[S];if(S[0]=="@"){if(!_)continue;if(S[1]=="a"){g.push(...Ys(i,s,Zr(""+_),m,s,l,c,!0));continue}if(S[1]=="l"){for(let B of Ue(_))g.push(...u(B,{n:i,p:(k=ut[S[7]],s&~ut.o|k),r:S[7]=="d"?[]:l,i:c},m));continue}if(S[1]=="i"){g.push(...Ue(_).map(B=>({p:-1,o:0,r:[],d:S+" "+B})));continue}if(S[1]=="k"){g.push({p:ut.d,o:0,r:[S],d:u(_,{p:ut.d},m).map(Ns).join("")});continue}if(S[1]=="f"){g.push(...Ue(_).map(B=>({p:ut.d,o:0,r:[S],d:u(B,{p:ut.d},m).map(Ns).join("")})));continue}}if(typeof _!="object"||Array.isArray(_))S=="label"&&_?i=_+Za(JSON.stringify([s,c,o])):(_||_===0)&&(S=S.replace(/[A-Z]/g,B=>"-"+B.toLowerCase()),A+=1,f=Math.max(f,(h=S)[0]=="-"?0:Z4(h)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(h)?+!!RegExp.$1||-!!RegExp.$2:0)+1),p+=(p?";":"")+Ue(_).map(B=>m.s(S,Gs(""+B,m.theme)+(c?" !important":""))).join(";"));else if(S[0]=="@"||S.includes("&")){let B=s;S[0]=="@"&&(S=S.replace(/\bscreen\(([^)]+)\)/g,(L,v)=>{let y=m.theme("screens",v);return y?(B|=67108864,to(y,"")):L}),B|=Os(S)),g.push(...u(_,{n:i,p:B,r:[...l,S],i:c},m))}else g.push(...u(_,{p:s,r:[...l,S]},m))}return g.unshift({n:i,p:s,o:Math.max(0,15-A)+1.5*Math.min(f||15,15),r:l,d:p}),g.sort(ed)}(e,qs(t,n,a,r),n)}function Gs(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,a,r,u,o="")=>{let i=t(r,o);return typeof i=="function"&&/color|fill|stroke/i.test(r)?Nn(i):""+Ue(i).filter(s=>Object(s)!==s)})}function Js(e,t){let n,a=[];for(let r of e)r.d&&r.n?n?.p==r.p&&""+n.r==""+r.r?(n.c=[n.c,r.c].filter(Boolean).join(" "),n.d=n.d+";"+r.d):a.push(n={...r,n:r.n&&t}):a.push({...r,n:r.n&&t});return a}function eo(e,t,n=ut.u,a,r){let u=[];for(let o of e)for(let i of function(s,l,c,m,g){s={...s,i:s.i||g};let p=function(f,A){let k=Ks.get(f.n);return k?k(f,A):A.r(f.n,f.v[0]=="dark")}(s,l);return p?typeof p=="string"?({r:m,p:c}=qs(s,l,c,m),Js(eo(Zr(p),l,c,m,s.i),s.n)):Array.isArray(p)?p.map(f=>{var A,k;return{o:0,...f,r:[...Ue(m),...Ue(f.r)],p:(A=c,k=f.p??c,A&~ut.o|k)}}):Vs(p,s,l,c,m):[{c:Ws(s),p:0,o:0,r:[]}]}(o,t,n,a,r))u.splice(Q4(u,i),0,i);return u}function Ys(e,t,n,a,r,u,o,i){return Js((i?n.flatMap(s=>eo([s],a,r,u,o)):eo(n,a,r,u,o)).map(s=>s.p&ut.o&&(s.n||t==ut.b)?{...s,p:s.p&~ut.o|t,o:0}:s),e)}function Vh(e,t,n,a){var r;return r=(u,o)=>{let{n:i,p:s,r:l,i:c}=qs(u,o,t);return n&&Ys(i,t,n,o,s,l,c,a)},Ks.set(e,r),e}function Rs(e,t,n){if(e[e.length-1]!="("){let a=[],r=!1,u=!1,o="";for(let i of e)if(!(i=="("||/[~@]$/.test(i))){if(i[0]=="!"&&(i=i.slice(1),r=!r),i.endsWith(":")){a[i=="dark:"?"unshift":"push"](i.slice(0,-1));continue}i[0]=="-"&&(i=i.slice(1),u=!u),i.endsWith("-")&&(i=i.slice(0,-1)),i&&i!="&"&&(o+=(o&&"-")+i)}o&&(u&&(o="-"+o),t[0].push({n:o,v:a.filter(Gh),i:r}))}}function Gh(e,t,n){return n.indexOf(e)==t}var K4=new Map;function Zr(e){let t=K4.get(e);if(!t){let n=[],a=[[]],r=0,u=0,o=null,i=0,s=(l,c=0)=>{r!=i&&(n.push(e.slice(r,i+c)),l&&Rs(n,a)),r=i+1};for(;i1?m.slice(0,-1)+Za(JSON.stringify([m,g])):m+"("+X4(g)+")",ut.a,g,/@$/.test(m))],a)}c=n.lastIndexOf("(",c-1)}n.length=c+1}else/[~@]/.test(l)&&e[i+1]=="("&&a.unshift([])}s(!0),K4.set(e,t=a[0])}return t}function td(e,t,n){return t.reduce((a,r,u)=>a+n(r)+e[u+1],e[0])}function nd(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?td(e,t,n=>Is(n).trim()):t.filter(Boolean).reduce((n,a)=>n+Is(a),e?Is(e):"")}function Is(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=nd(e[0],e.slice(1)))&&(n+=" "+t);else for(let a in e)e[a]&&(n+=" "+a);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var hE=ad("@"),bE=ad("~");function ad(e){return new Proxy(function(n,...a){return t("",n,a)},{get(n,a){return a in n?n[a]:function(r,...u){return t(a,r,u)}}});function t(n,a,r){return X4(Zr(n+e+"("+nd(a,r)+")"))}}function Us(e,t){return Array.isArray(e)?V4(td(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?V4(e):[e]}var Jh=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function V4(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],a=[n[0]],r=[];for(;t=Jh.exec(e);)t[4]&&(n.shift(),r.shift()),t[3]?(r.unshift(t[3]),n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))),n[0][t[1]]=t[2]);return a}function rd(e,...t){var n;let a=Us(e,t),r=(a.find(u=>u.label)?.label||"css")+Za(JSON.stringify(a));return n=(u,o)=>Js(a.flatMap(i=>Vs(i,u,o,ut.o)),r),Ks.set(r,n),r}var yE=new Proxy(function(e,t){return G4("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,a){return G4(t,n,a)}}});function G4(e,t,n){return{toString(){return rd({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function K(e,t,n){return[e,js(t,n)]}function js(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,a)=>({[e]:t?t(n,a):zs(n,1)}):n=>e||{[n[1]]:zs(n,2)}}function zs(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function G(e,t,n,a){return[e,Yh(t,n,a)]}function Yh(e,t,n){let a=typeof t=="string"?(r,u)=>({[t]:n?n(r,u):r._}):t||(({1:r,_:u},o,i)=>({[r||i]:u}));return(r,u)=>{let o=ud(e||r[1]),i=u.theme(o,r.$$)??An(r.$$,o,u);if(i!=null)return r._=zs(r,0,i),a(r,u,o)}}function dt(e,t={},n){return[e,Xh(t,n)]}function Xh(e={},t){return(n,a)=>{let{section:r=ud(n[0]).replace("-","")+"Color"}=e,[u,o]=Zh(n.$$);if(!u)return;let i=a.theme(r,u)||An(u,r,a);if(!i||typeof i=="object")return;let{opacityVariable:s=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=r.replace("Color","Opacity"),property:c=r,selector:m}=e,g=a.theme(l,o||"DEFAULT")||o&&An(o,l,a),p=t||(({_:A})=>{let k=eu(c,A);return m?{[m]:k}:k});n._={value:Nn(i,{opacityVariable:s||void 0,opacityValue:g||void 0}),color:A=>Nn(i,A),opacityVariable:s||void 0,opacityValue:g||void 0};let f=p(n,a);if(!n.dark){let A=a.d(r,u,i);A&&A!==i&&(n._={value:Nn(A,{opacityVariable:s||void 0,opacityValue:g||"1"}),color:k=>Nn(A,k),opacityVariable:s||void 0,opacityValue:g||void 0},f={"&":f,[a.v("dark")]:p(n,a)})}return f}}function Zh(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function eu(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function An(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=Qa(Gs(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function ud(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function Qa(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",a,r="")=>Qa(n)+a+Qa(r)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var TE=Symbol();function tu({presets:e=[],...t}){let n={darkMode:void 0,darkColor:void 0,preflight:t.preflight!==!1&&[],theme:{},variants:Ue(t.variants),rules:Ue(t.rules),ignorelist:Ue(t.ignorelist),hash:void 0,stringify:(a,r)=>a+":"+r,finalize:[]};for(let a of Ue([...e,{darkMode:t.darkMode,darkColor:t.darkColor,preflight:t.preflight!==!1&&Ue(t.preflight),theme:t.theme,hash:t.hash,stringify:t.stringify,finalize:t.finalize}])){let{preflight:r,darkMode:u=n.darkMode,darkColor:o=n.darkColor,theme:i,variants:s,rules:l,ignorelist:c,hash:m=n.hash,stringify:g=n.stringify,finalize:p}=typeof a=="function"?a(n):a;n={preflight:n.preflight!==!1&&r!==!1&&[...n.preflight,...Ue(r)],darkMode:u,darkColor:o,theme:{...n.theme,...i,extend:{...n.theme.extend,...i?.extend}},variants:[...n.variants,...Ue(s)],rules:[...n.rules,...Ue(l)],ignorelist:[...n.ignorelist,...Ue(c)],hash:m,stringify:g,finalize:[...n.finalize,...Ue(p)]}}return n}function J4(e,t,n,a,r,u){for(let o of t){let i=n.get(o);i||n.set(o,i=a(o));let s=i(e,r,u);if(s)return s}}function Qh(e){var t;return Hs(e[0],typeof(t=e[1])=="function"?t:()=>t)}function e2(e){var t,n;return Array.isArray(e)?Hs(e[0],js(e[1],e[2])):Hs(e,js(t,n))}function Hs(e,t){return od(e,(n,a,r,u)=>{let o=a.exec(n);if(o)return o.$$=n.slice(o[0].length),o.dark=u,t(o,r)})}function od(e,t){let n=Ue(e).map(t2);return(a,r,u)=>{for(let o of n){let i=t(a,o,r,u);if(i)return i}}}function t2(e){return typeof e=="string"?RegExp("^"+e+(e.includes("$")||e.slice(-1)=="-"?"":"$")):e}function n2(e,t){let n=tu(e),a=function({theme:s,darkMode:l,darkColor:c=Qr,variants:m,rules:g,hash:p,stringify:f,ignorelist:A,finalize:k}){let h=new Map,S=new Map,_=new Map,B=new Map,L=od(A,(T,b)=>b.test(T));m.push(["dark",Array.isArray(l)||l=="class"?`${Ue(l)[1]||".dark"} &`:typeof l=="string"&&l!="media"?l:"@media (prefers-color-scheme:dark)"]);let v=typeof p=="function"?T=>p(T,Za):p?Za:H4;v!==H4&&k.push(T=>({...T,n:T.n&&v(T.n),d:T.d?.replace(/--(tw(?:-[\w-]+)?)\b/g,(b,x)=>"--"+v(x).replace("#",""))}));let y={theme:function({extend:T={},...b}){let x={},R={get colors(){return D("colors")},theme:D,negative(){return{}},breakpoints(M){let F={};for(let $ in M)typeof M[$]=="string"&&(F["screen-"+$]=M[$]);return F}};return D;function D(M,F,$,Z){if(M){if({1:M,2:Z}=/^(\S+?)(?:\s*\/\s*([^/]+))?$/.exec(M)||[,M],/[.[]/.test(M)){let ge=[];M.replace(/\[([^\]]+)\]|([^.[]+)/g,(w,H,Q=H)=>ge.push(Q)),M=ge.shift(),$=F,F=ge.join("-")}let V=x[M]||Object.assign(Object.assign(x[M]={},I(b,M)),I(T,M));if(F==null)return V;F||="DEFAULT";let me=V[F]??F.split("-").reduce((ge,w)=>ge?.[w],V)??$;return Z?Nn(me,{opacityValue:Gs(Z,D)}):me}let de={};for(let V of[...Object.keys(b),...Object.keys(T)])de[V]=D(V);return de}function I(M,F){let $=M[F];return typeof $=="function"&&($=$(R)),$&&/color|fill|stroke/i.test(F)?function Z(de,V=[]){let me={};for(let ge in de){let w=de[ge],H=[...V,ge];me[H.join("-")]=w,ge=="DEFAULT"&&(H=V,me[V.join("-")]=w),typeof w=="object"&&Object.assign(me,Z(w,H))}return me}($):$}}(s),e:$s,h:v,s(T,b){return f(T,b,y)},d(T,b,x){return c(T,b,y,x)},v(T){return h.has(T)||h.set(T,J4(T,m,S,Qh,y)||"&:"+T),h.get(T)},r(T,b){let x=JSON.stringify([T,b]);return _.has(x)||_.set(x,!L(T,y)&&J4(T,g,B,e2,y,b)),_.get(x)},f(T){return k.reduce((b,x)=>x(b,y),T)}};return y}(n),r=new Map,u=[],o=new Set;t.resume(s=>r.set(s,s),(s,l)=>{t.insert(s,u.length,l),u.push(l),o.add(s)});function i(s){let l=a.f(s),c=Ns(l);if(c&&!o.has(c)){o.add(c);let m=Q4(u,s);t.insert(c,m,s),u.splice(m,0,s)}return l.n}return Object.defineProperties(function(s){if(!r.size)for(let c of Ue(n.preflight))typeof c=="function"&&(c=c(a)),c&&(typeof c=="string"?Ys("",ut.b,Zr(c),a,ut.b,[],!1,!0):Vs(c,{},a,ut.b)).forEach(i);s=""+s;let l=r.get(s);if(!l){let c=new Set;for(let m of eo(Zr(s),a))c.add(m.c).add(i(m));l=[...c].filter(Boolean).join(" "),r.set(s,l).set(l,l)}return l},Object.getOwnPropertyDescriptors({get target(){return t.target},theme:a.theme,config:n,snapshot(){let s=t.snapshot(),l=new Set(o),c=new Map(r),m=[...u];return()=>{s(),o=l,r=c,u=m}},clear(){t.clear(),o=new Set,r=new Map,u=[]},destroy(){this.clear(),t.destroy()}}))}function a2(e,t){return e!=t&&""+e.split(" ").sort()!=""+t.split(" ").sort()}function r2(e){let t=new MutationObserver(n);return{observe(r){t.observe(r,{attributeFilter:["class"],subtree:!0,childList:!0}),a(r),n([{target:r,type:""}])},disconnect(){t.disconnect()}};function n(r){for(let{type:u,target:o}of r)if(u[0]=="a")a(o);else for(let i of o.querySelectorAll("[class]"))a(i);t.takeRecords()}function a(r){let u,o=r.getAttribute?.("class");o&&a2(o,u=e(o))&&r.setAttribute("class",u)}}function u2(e=Xs,t=typeof document<"u"&&document.documentElement){if(t){let n=r2(e);n.observe(t);let{destroy:a}=e;e.destroy=()=>{n.disconnect(),a.call(e)}}return e}function id(e){let t=document.querySelector(e||'style[data-twind=""]');return(!t||t.tagName!="STYLE")&&(t=document.createElement("style"),document.head.prepend(t)),t.dataset.twind="claimed",t}function o2(e){let t=e?.cssRules?e:(e&&typeof e!="string"?e:id(e)).sheet;return{target:t,snapshot(){let n=Array.from(t.cssRules,a=>a.cssText);return()=>{this.clear(),n.forEach(this.insert)}},clear(){for(let n=t.cssRules.length;n--;)t.deleteRule(n)},destroy(){t.ownerNode?.remove()},insert(n,a){try{t.insertRule(n,a)}catch{t.insertRule(":root{}",a)}},resume:Qr}}function i2(e){let t=e&&typeof e!="string"?e:id(e);return{target:t,snapshot(){let n=Array.from(t.childNodes,a=>a.textContent);return()=>{this.clear(),n.forEach(this.insert)}},clear(){t.textContent=""},destroy(){t.remove()},insert(n,a){t.insertBefore(document.createTextNode(n),t.childNodes[a]||null)},resume:Qr}}function s2(e){let t=[];return{target:t,snapshot(){let n=[...t];return()=>{t.splice(0,t.length,...n)}},clear(){t.length=0},destroy(){this.clear()},insert(n,a,r){t.splice(a,0,e?`/*!${r.p.toString(36)},${(2*r.o).toString(36)}${r.n?","+r.n:""}*/${n}`:n)},resume:Qr}}function sd(e,t){let n=typeof document>"u"?s2(!t):e?i2():o2();return t||(n.resume=c2),n}function l2(e){return(e.ownerNode||e).textContent||(e.cssRules?Array.from(e.cssRules,t=>t.cssText):Ue(e)).join("")}function c2(e,t){let n=l2(this.target),a=/\/\*!([\da-z]+),([\da-z]+)(?:,(.+?))?\*\//g;if(a.test(n)){var r;let u;if(a.lastIndex=0,this.clear(),typeof document<"u")for(let o of document.querySelectorAll("[class]"))e(o.getAttribute("class"));for(;r=a.exec(n),u&&t(n.slice(u.index+u[0].length,r?.index),{p:parseInt(u[1],36),o:parseInt(u[2],36)/2,n:u[3]}),u=r;);}}var Xs=new Proxy(Qr,{apply(e,t,n){return Xr(n[0])},get(e,t){let n=Xr[t];return typeof n=="function"?function(){return n.apply(Xr,arguments)}:n}});function ld(e={},t=sd,n){return Xr?.destroy(),Xr=u2(n2(e,typeof t=="function"?t():t),n)}function Zs(e,t=!0){let n=tu(e);return ld({...n,hash:n.hash??t},()=>sd(!t))}var xE=function e(t){return new Proxy(function(n,...a){return Y4(t,"",n,a)},{get(n,a){return a==="bind"?e:a in n?n[a]:function(r,...u){return Y4(t,a,r,u)}}})}();function Y4(e,t,n,a){return{toString(){let r=Us(n,a),u=$s(t+Za(JSON.stringify([t,r])));return(typeof e=="function"?e:Xs)(rd({[`@keyframes ${u}`]:Us(n,a)})),u}}}var d2=new Map([["align-self","-ms-grid-row-align"],["color-adjust","-webkit-print-color-adjust"],["column-gap","grid-column-gap"],["forced-color-adjust","-ms-high-contrast-adjust"],["gap","grid-gap"],["grid-template-columns","-ms-grid-columns"],["grid-template-rows","-ms-grid-rows"],["justify-self","-ms-grid-column-align"],["margin-inline-end","-webkit-margin-end"],["margin-inline-start","-webkit-margin-start"],["mask-border","-webkit-mask-box-image"],["mask-border-outset","-webkit-mask-box-image-outset"],["mask-border-slice","-webkit-mask-box-image-slice"],["mask-border-source","-webkit-mask-box-image-source"],["mask-border-repeat","-webkit-mask-box-image-repeat"],["mask-border-width","-webkit-mask-box-image-width"],["overflow-wrap","word-wrap"],["padding-inline-end","-webkit-padding-end"],["padding-inline-start","-webkit-padding-start"],["print-color-adjust","color-adjust"],["row-gap","grid-row-gap"],["scroll-margin-bottom","scroll-snap-margin-bottom"],["scroll-margin-left","scroll-snap-margin-left"],["scroll-margin-right","scroll-snap-margin-right"],["scroll-margin-top","scroll-snap-margin-top"],["scroll-margin","scroll-snap-margin"],["text-combine-upright","-ms-text-combine-horizontal"]]);function cd(e){return d2.get(e)}function dd(e){var t=/^(?:(text-(?:decoration$|e|or|si)|back(?:ground-cl|d|f)|box-d|mask(?:$|-[ispro]|-cl)|pr|hyphena|flex-d)|(tab-|column(?!-s)|text-align-l)|(ap)|u|hy)/i.exec(e);return t?t[1]?1:t[2]?2:t[3]?3:5:0}function gd(e,t){var n=/^(?:(pos)|(cli)|(background-i)|(flex(?:$|-b)|(?:max-|min-)?(?:block-s|inl|he|widt))|dis)/i.exec(e);return n?n[1]?/^sti/i.test(t)?1:0:n[2]?/^pat/i.test(t)?1:0:n[3]?/^image-/i.test(t)?1:0:n[4]?t[3]==="-"?2:0:/^(?:inline-)?grid$/i.test(t)?4:0:0}var g2=[["-webkit-",1],["-moz-",2],["-ms-",4]];function no(){return({stringify:e})=>({stringify(t,n,a){let r="",u=cd(t);u&&(r+=e(u,n,a)+";");let o=dd(t),i=gd(t,n);for(let s of g2)o&s[1]&&(r+=e(s[0]+t,n,a)+";"),i&s[1]&&(r+=e(t,s[0]+n,a)+";");return r+e(t,n,a)}})}var e0={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Jt(4,"rem",4,.5,.5),...Jt(12,"rem",4,5),14:"3.5rem",...Jt(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:Me("blur"),backdropBrightness:Me("brightness"),backdropContrast:Me("contrast"),backdropGrayscale:Me("grayscale"),backdropHueRotate:Me("hueRotate"),backdropInvert:Me("invert"),backdropOpacity:Me("opacity"),backdropSaturate:Me("saturate"),backdropSepia:Me("sepia"),backgroundColor:Me("colors"),backgroundImage:{none:"none"},backgroundOpacity:Me("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Jt(200,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:Me("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:Me("spacing"),borderWidth:{DEFAULT:"1px",...en(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:Me("colors"),caretColor:Me("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Jt(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:Me("borderColor"),divideOpacity:Me("borderOpacity"),divideWidth:Me("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...nu(2,6),...nu(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:Me("spacing"),gradientColorStops:Me("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...nu(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...nu(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Jt(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Jt(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:Me("spacing"),placeholderColor:Me("colors"),placeholderOpacity:Me("opacity"),outlineColor:Me("colors"),outlineOffset:en(8,"px"),outlineWidth:en(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:Me("colors"),ringOffsetWidth:en(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...en(8,"px")},rotate:{...en(2,"deg"),...en(12,"deg",3),...en(180,"deg",45)},saturate:Jt(200,"",100,0,50),scale:{...Jt(150,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:Me("spacing"),scrollPadding:Me("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...en(2,"deg"),...en(12,"deg",3)},space:Me("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Jt(2),textColor:Me("colors"),textDecorationColor:Me("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...en(8,"px")},textUnderlineOffset:{auto:"auto",...en(8,"px")},textIndent:Me("spacing"),textOpacity:Me("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:Me("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...nu(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Jt(50,"",1,0,10),auto:"auto"}};function nu(e,t){let n={};do for(var a=1;at(e)}var m2={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${e0.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${e0.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},p2=[K("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:An(`[${t}]`,"",n)}}})),K("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),G("aspect-","aspectRatio"),K("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:a,padding:r}=t("container"),u={width:"100%",marginRight:a&&"auto",marginLeft:a&&"auto",...o("xs")};for(let i in n){let s=n[i];typeof s=="string"&&(u[to(s)]={"&":{maxWidth:s,...o(i)}})}return u;function o(i){let s=r&&(typeof r=="string"?r:r[i]||r.DEFAULT);if(s)return{paddingRight:s,paddingLeft:s}}}),G("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),K("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),K("box-(border|content)","boxSizing",({1:e})=>e+"-box"),K("hidden",{display:"none"}),K("table-(auto|fixed)","tableLayout"),K(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",K("isolate","isolation"),K("object-(contain|cover|fill|none|scale-down)","objectFit"),G("object-","objectPosition"),K("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",ao),K("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),K("(static|fixed|absolute|relative|sticky)","position"),G("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),G("-?(top|bottom|left|right)(?:$|-)","inset"),K("(visible|collapse)","visibility"),K("invisible",{visibility:"hidden"}),G("-?z-","zIndex"),K("flex-((row|col)(-reverse)?)","flexDirection",md),K("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),G("(flex-(?:grow|shrink))(?:$|-)"),G("(flex)-"),G("grow(?:$|-)","flexGrow"),G("shrink(?:$|-)","flexShrink"),G("basis-","flexBasis"),G("-?(order)-"),"-?(order)-(\\d+)",G("grid-cols-","gridTemplateColumns"),K("grid-cols-(\\d+)","gridTemplateColumns",bd),G("col-","gridColumn"),K("col-(span)-(\\d+)","gridColumn",hd),G("col-start-","gridColumnStart"),K("col-start-(auto|\\d+)","gridColumnStart"),G("col-end-","gridColumnEnd"),K("col-end-(auto|\\d+)","gridColumnEnd"),G("grid-rows-","gridTemplateRows"),K("grid-rows-(\\d+)","gridTemplateRows",bd),G("row-","gridRow"),K("row-(span)-(\\d+)","gridRow",hd),G("row-start-","gridRowStart"),K("row-start-(auto|\\d+)","gridRowStart"),G("row-end-","gridRowEnd"),K("row-end-(auto|\\d+)","gridRowEnd"),K("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>ao(md(e))),K("grid-flow-(dense)","gridAutoFlow"),G("auto-cols-","gridAutoColumns"),G("auto-rows-","gridAutoRows"),G("gap-x(?:$|-)","gap","columnGap"),G("gap-y(?:$|-)","gap","rowGap"),G("gap(?:$|-)","gap"),"(justify-(?:items|self))-",K("justify-","justifyContent",pd),K("(content|items|self)-",e=>({["align-"+e[1]]:pd(e)})),K("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),G("p([xytrbl])?(?:$|-)","padding",er("padding")),G("-?m([xytrbl])?(?:$|-)","margin",er("margin")),G("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),K("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),G("w-","width"),G("min-w-","minWidth"),G("max-w-","maxWidth"),G("h-","height"),G("min-h-","minHeight"),G("max-h-","maxHeight"),G("font-","fontWeight"),G("font-","fontFamily",({_:e})=>typeof(e=Ue(e))[1]=="string"?{fontFamily:gn(e)}:{fontFamily:gn(e[0]),...e[1]}),K("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),K("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),K("italic","fontStyle"),K("not-italic",{fontStyle:"normal"}),K("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...Zn({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),G("tracking-","letterSpacing"),G("leading-","lineHeight"),K("list-(inside|outside)","listStylePosition"),G("list-","listStyleType"),K("list-","listStyleType"),G("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),dt("placeholder-",{property:"color",selector:"&::placeholder"}),K("text-(left|center|right|justify|start|end)","textAlign"),K("text-(ellipsis|clip)","textOverflow"),G("text-opacity-","textOpacity","--tw-text-opacity"),dt("text-",{property:"color"}),G("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),G("indent-","textIndent"),K("(overline|underline|line-through)","textDecorationLine"),K("no-underline",{textDecorationLine:"none"}),G("underline-offset-","textUnderlineOffset"),dt("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),G("decoration-","textDecorationThickness"),K("decoration-","textDecorationStyle"),K("(uppercase|lowercase|capitalize)","textTransform"),K("normal-case",{textTransform:"none"}),K("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),K("align-","verticalAlign"),K("whitespace-","whiteSpace"),K("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),K("break-words",{overflowWrap:"break-word"}),K("break-all",{wordBreak:"break-all"}),K("break-keep",{wordBreak:"keep-all"}),dt("caret-",{opacityVariable:!1,opacitySection:"opacity"}),dt("accent-",{opacityVariable:!1,opacitySection:"opacity"}),K("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${Aa(e," ")},var(--tw-gradient-stops))`),dt("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),dt("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),dt("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),K("bg-(fixed|local|scroll)","backgroundAttachment"),K("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),K(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),K("bg-blend-","backgroundBlendMode"),K("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),G("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),dt("bg-",{section:"backgroundColor"}),G("bg-","backgroundImage"),G("bg-","backgroundPosition"),K("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",ao),G("bg-","backgroundSize"),G("rounded(?:$|-)","borderRadius"),G("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${Aa(n[0])}-radius`]:t,[`border-${Aa(n[1])}-radius`]:t}}),K("border-(collapse|separate)","borderCollapse"),G("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),K("border-(solid|dashed|dotted|double|none)","borderStyle"),G("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...Zn({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),dt("border-([xytrbl])-",{section:"borderColor"},er("border","Color")),dt("border-"),G("border-([xytrbl])(?:$|-)","borderWidth",er("border","Width")),G("border(?:$|-)","borderWidth"),G("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),K("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),K("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),G("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${Aa(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${Aa(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),dt("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),G("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),dt("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),G("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),K("ring-inset",{"--tw-ring-inset":"inset"}),dt("ring-",{property:"--tw-ring-color"}),G("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":Nn(t("ringOffsetColor","","#fff")),"--tw-ring-color":Nn(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),dt("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),G("shadow(?:$|-)","boxShadow",({_:e})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":gn(e),"--tw-shadow-colored":gn(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),G("(opacity)-"),K("mix-blend-","mixBlendMode"),...fd(),...fd("backdrop-"),G("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:gn(e),transitionTimingFunction:e._=="none"?void 0:gn(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:gn(t("transitionDuration",""))})),G("duration(?:$|-)","transitionDuration","transitionDuration",gn),G("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",gn),G("delay(?:$|-)","transitionDelay","transitionDelay",gn),G("animate(?:$|-)","animation",(e,{theme:t,h:n,e:a})=>{let r=gn(e),u=r.split(" "),o=t("keyframes",u[0]);return o?{["@keyframes "+(u[0]=a(n(u[0])))]:o,animation:u.join(" ")}:{animation:r}}),"(transform)-(none)",K("transform",t0),K("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":yd(e=="gpu")})),G("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...t0()})),G("-?(rotate)-","rotate",Qs),G("-?(translate-[xy])-","translate",Qs),G("-?(skew-[xy])-","skew",Qs),K("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",ao),"(appearance)-",G("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",G("(cursor)-"),"(cursor)-",K("snap-(none)","scroll-snap-type"),K("snap-(x|y|both)",({1:e})=>({...Zn({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),K("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),K("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),K("snap-(normal|always)","scroll-snap-stop"),K("scroll-(auto|smooth)","scroll-behavior"),G("scroll-p([xytrbl])?(?:$|-)","padding",er("scroll-padding")),G("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",er("scroll-margin")),K("touch-(auto|none|manipulation)","touch-action"),K("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...Zn({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),K("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),K("outline",{outlineStyle:"solid"}),K("outline-(dashed|dotted|double)","outlineStyle"),G("-?(outline-offset)-"),dt("outline-",{opacityVariable:!1,opacitySection:"opacity"}),G("outline-","outlineWidth"),"(pointer-events)-",G("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],K("select-(none|text|all|auto)","userSelect"),dt("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),dt("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),G("stroke-","strokeWidth"),K("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),K("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function ao(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function md(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function Aa(e,t="-"){let n=[];for(let a of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[a]);return n.join(t)}function gn(e){return e&&""+(e._||e)}function pd({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function er(e,t=""){return({1:n,_:a})=>{let r={x:"lr",y:"tb"}[n]||n+n;return r?{...eu(e+"-"+Aa(r[0])+t,a),...eu(e+"-"+Aa(r[1])+t,a)}:eu(e+t,a)}}function fd(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let a of t)n[`--tw-${e}${a}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...Zn(n),[`${e}filter`]:t.map(a=>`var(--tw-${e}${a})`).join(" ")},[`(${e}filter)-(none)`,K(`${e}filter`,n),...t.map(a=>G(`${a[0]=="h"?"-?":""}(${e}${a})(?:$|-)`,a,({1:r,_:u})=>({[`--tw-${r}`]:Ue(u).map(o=>`${a}(${o})`).join(" "),...n})))]}function Qs({1:e,_:t}){return{["--tw-"+e]:t,...t0()}}function t0(){return{...Zn({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":yd()}),transform:"var(--tw-transform)"}}function yd(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function hd({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function bd({1:e}){return`repeat(${e},minmax(0,1fr))`}function Zn(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var f2=[["sticky","@supports ((position: -webkit-sticky) or (position:sticky))"],["motion-reduce","@media (prefers-reduced-motion:reduce)"],["motion-safe","@media (prefers-reduced-motion:no-preference)"],["print","@media print"],["(portrait|landscape)",({1:e})=>`@media (orientation:${e})`],["contrast-(more|less)",({1:e})=>`@media (prefers-contrast:${e})`],["(first-(letter|line)|placeholder|backdrop|before|after)",({1:e})=>`&::${e}`],["(marker|selection)",({1:e})=>`& *::${e},&::${e}`],["file","&::file-selector-button"],["(first|last|only)",({1:e})=>`&:${e}-child`],["even","&:nth-child(2n)"],["odd","&:nth-child(odd)"],["open","&[open]"],["(aria|data)-",({1:e,$$:t},n)=>t&&`&[${e}-${n.theme(e,t)||An(t,"",n)||`${t}="true"`}]`],["((group|peer)(~[^-[]+)?)(-\\[(.+)]|[-[].+?)(\\/.+)?",({2:e,3:t="",4:n,5:a="",6:r=t},{e:u,h:o,v:i})=>{let s=Qa(a)||(n[0]=="["?n:i(n.slice(1)));return`${(s.includes("&")?s:"&"+s).replace(/&/g,`:merge(.${u(o(e+r))})`)}${e[0]=="p"?"~":" "}&`}],["(ltr|rtl)",({1:e})=>`[dir="${e}"] &`],["supports-",({$$:e},t)=>{if(e&&=t.theme("supports",e)||An(e,"",t),e)return e.includes(":")||(e+=":var(--tw)"),/^\w*\s*\(/.test(e)||(e=`(${e})`),`@supports ${e.replace(/\b(and|or|not)\b/g," $1 ").trim()}`}],["max-",({$$:e},t)=>{if(e&&=t.theme("screens",e)||An(e,"",t),typeof e=="string")return`@media not all and (min-width:${e})`}],["min-",({$$:e},t)=>(e&&=An(e,"",t))&&`@media (min-width:${e})`],[/^\[(.+)]$/,({1:e})=>/[&@]/.test(e)&&Qa(e).replace(/[}]+$/,"").split("{")]];function h2({colors:e,disablePreflight:t}={}){return{preflight:t?void 0:m2,theme:{...e0,colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",...e}},variants:f2,rules:p2,finalize(n){return n.n&&n.d&&n.r.some(a=>/^&::(before|after)$/.test(a))&&!/(^|;)content:/.test(n.d)?{...n,d:"content:var(--tw-content);"+n.d}:n}}}var b2={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},y2={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},T2={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},x2={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},E2={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},C2={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},w2={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},v2={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},k2={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},A2={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},S2={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},D2={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},L2={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},P2={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},M2={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},F2={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},_2={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},B2={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},R2={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},I2={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},O2={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},N2={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},U2={__proto__:null,slate:b2,gray:y2,zinc:T2,neutral:x2,stone:E2,red:C2,orange:w2,amber:v2,yellow:k2,lime:A2,green:S2,emerald:D2,teal:L2,cyan:P2,sky:M2,blue:F2,indigo:_2,violet:B2,purple:R2,fuchsia:I2,pink:O2,rose:N2};function ro({disablePreflight:e}={}){return h2({colors:U2,disablePreflight:e})}var uo=globalThis||(typeof window<"u"?window:self),j2=Object.create,a0=Object.defineProperty,z2=Object.getOwnPropertyDescriptor,H2=Object.getOwnPropertyNames,W2=Object.getPrototypeOf,$2=Object.prototype.hasOwnProperty,q2=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),K2=(e,t)=>{for(var n in t)a0(e,n,{get:t[n],enumerable:!0})},n0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of H2(t))!$2.call(e,r)&&r!==n&&a0(e,r,{get:()=>t[r],enumerable:!(a=z2(t,r))||a.enumerable});return e},V2=(e,t,n)=>(n0(e,t,"default"),n&&n0(n,t,"default")),xd=(e,t,n)=>(n=e!=null?j2(W2(e)):{},n0(t||!e||!e.__esModule?a0(n,"default",{value:e,enumerable:!0}):n,e)),Ed=q2((e,t)=>{(function(n,a){typeof define=="function"&&define.amd?define([],a):typeof e<"u"?a():(a(),n.FileSaver={})})(e,function(){"use strict";function n(l,c){return typeof c>"u"?c={autoBom:!1}:typeof c!="object"&&(c={autoBom:!c}),c.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function a(l,c,m){var g=new XMLHttpRequest;g.open("GET",l),g.responseType="blob",g.onload=function(){s(g.response,c,m)},g.onerror=function(){},g.send()}function r(l){var c=new XMLHttpRequest;c.open("HEAD",l,!1);try{c.send()}catch{}return 200<=c.status&&299>=c.status}function u(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(c)}}var o=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof uo=="object"&&uo.global===uo?uo:void 0,i=o.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=o.saveAs||(typeof window!="object"||window!==o?function(){}:"download"in HTMLAnchorElement.prototype&&!i?function(l,c,m){var g=o.URL||o.webkitURL,p=document.createElement("a");c=c||l.name||"download",p.download=c,p.rel="noopener",typeof l=="string"?(p.href=l,p.origin===location.origin?u(p):r(p.href)?a(l,c,m):u(p,p.target="_blank")):(p.href=g.createObjectURL(l),setTimeout(function(){g.revokeObjectURL(p.href)},4e4),setTimeout(function(){u(p)},0))}:"msSaveOrOpenBlob"in navigator?function(l,c,m){if(c=c||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,m),c);else if(r(l))a(l,c,m);else{var g=document.createElement("a");g.href=l,g.target="_blank",setTimeout(function(){u(g)})}}:function(l,c,m,g){if(g=g||open("","_blank"),g&&(g.document.title=g.document.body.innerText="downloading..."),typeof l=="string")return a(l,c,m);var p=l.type==="application/octet-stream",f=/constructor/i.test(o.HTMLElement)||o.safari,A=/CriOS\/[\d]+/.test(navigator.userAgent);if((A||p&&f||i)&&typeof FileReader<"u"){var k=new FileReader;k.onloadend=function(){var _=k.result;_=A?_:_.replace(/^data:[^;]*;/,"data:attachment/file;"),g?g.location.href=_:location=_,g=null},k.readAsDataURL(l)}else{var h=o.URL||o.webkitURL,S=h.createObjectURL(l);g?g.location=S:location.href=S,g=null,setTimeout(function(){h.revokeObjectURL(S)},4e4)}});o.saveAs=s.saveAs=s,typeof t<"u"&&(t.exports=s)})}),Cd={};K2(Cd,{default:()=>au});var G2=xd(Ed());V2(Cd,xd(Ed()));var{default:Td,...J2}=G2,au=Td!==void 0?Td:J2;function tr(){let e,t="pending",n=new Promise((a,r)=>{e={async resolve(u){await u,t="fulfilled",a(u)},reject(u){t="rejected",r(u)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var r0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function oo(e,t){let n=tr(),a=setTimeout(()=>n.reject(new r0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Qn(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((r,u)=>{let o=()=>{clearTimeout(s),u(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),r()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var wd=class{#e=0;#t=[];#n=[];#a=tr();add(t){++this.#e,this.#r(t[Symbol.asyncIterator]())}async#r(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tC9,bgBlue:()=>A9,bgBrightBlack:()=>P9,bgBrightBlue:()=>B9,bgBrightCyan:()=>I9,bgBrightGreen:()=>F9,bgBrightMagenta:()=>R9,bgBrightRed:()=>M9,bgBrightWhite:()=>O9,bgBrightYellow:()=>_9,bgCyan:()=>D9,bgGreen:()=>v9,bgMagenta:()=>S9,bgRed:()=>w9,bgRgb24:()=>z9,bgRgb8:()=>U9,bgWhite:()=>L9,bgYellow:()=>k9,black:()=>o9,blue:()=>c9,bold:()=>Q2,brightBlack:()=>Ad,brightBlue:()=>y9,brightCyan:()=>x9,brightGreen:()=>h9,brightMagenta:()=>T9,brightRed:()=>f9,brightWhite:()=>E9,brightYellow:()=>b9,cyan:()=>g9,dim:()=>e9,getColorEnabled:()=>X2,gray:()=>p9,green:()=>s9,hidden:()=>r9,inverse:()=>a9,italic:()=>t9,magenta:()=>d9,red:()=>i9,reset:()=>Z2,rgb24:()=>j9,rgb8:()=>N9,setColorEnabled:()=>Y2,strikethrough:()=>u9,stripColor:()=>W9,underline:()=>n9,white:()=>m9,yellow:()=>l9});var{Deno:vd}=globalThis,kd=typeof vd?.noColor=="boolean"?vd.noColor:!0,u0=!kd;function Y2(e){kd||(u0=e)}function X2(){return u0}function Te(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function xe(e,t){return u0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function Z2(e){return xe(e,Te([0],0))}function Q2(e){return xe(e,Te([1],22))}function e9(e){return xe(e,Te([2],22))}function t9(e){return xe(e,Te([3],23))}function n9(e){return xe(e,Te([4],24))}function a9(e){return xe(e,Te([7],27))}function r9(e){return xe(e,Te([8],28))}function u9(e){return xe(e,Te([9],29))}function o9(e){return xe(e,Te([30],39))}function i9(e){return xe(e,Te([31],39))}function s9(e){return xe(e,Te([32],39))}function l9(e){return xe(e,Te([33],39))}function c9(e){return xe(e,Te([34],39))}function d9(e){return xe(e,Te([35],39))}function g9(e){return xe(e,Te([36],39))}function m9(e){return xe(e,Te([37],39))}function p9(e){return Ad(e)}function Ad(e){return xe(e,Te([90],39))}function f9(e){return xe(e,Te([91],39))}function h9(e){return xe(e,Te([92],39))}function b9(e){return xe(e,Te([93],39))}function y9(e){return xe(e,Te([94],39))}function T9(e){return xe(e,Te([95],39))}function x9(e){return xe(e,Te([96],39))}function E9(e){return xe(e,Te([97],39))}function C9(e){return xe(e,Te([40],49))}function w9(e){return xe(e,Te([41],49))}function v9(e){return xe(e,Te([42],49))}function k9(e){return xe(e,Te([43],49))}function A9(e){return xe(e,Te([44],49))}function S9(e){return xe(e,Te([45],49))}function D9(e){return xe(e,Te([46],49))}function L9(e){return xe(e,Te([47],49))}function P9(e){return xe(e,Te([100],49))}function M9(e){return xe(e,Te([101],49))}function F9(e){return xe(e,Te([102],49))}function _9(e){return xe(e,Te([103],49))}function B9(e){return xe(e,Te([104],49))}function R9(e){return xe(e,Te([105],49))}function I9(e){return xe(e,Te([106],49))}function O9(e){return xe(e,Te([107],49))}function ea(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function N9(e,t){return xe(e,Te([38,5,ea(t)],39))}function U9(e,t){return xe(e,Te([48,5,ea(t)],49))}function j9(e,t){return typeof t=="number"?xe(e,Te([38,2,t>>16&255,t>>8&255,t&255],39)):xe(e,Te([38,2,ea(t.r),ea(t.g),ea(t.b)],39))}function z9(e,t){return typeof t=="number"?xe(e,Te([48,2,t>>16&255,t>>8&255,t&255],49)):xe(e,Te([48,2,ea(t.r),ea(t.g),ea(t.b)],49))}var H9=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function W9(e){return e.replace(H9,"")}var o0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},$9={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function i0(e,t){let n={...$9,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,r;for(let u=0;usetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),r=o}throw new o0(r,n.maxAttempts)}var HC=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var io=globalThis||(typeof window<"u"?window:self),K9=Object.create,l0=Object.defineProperty,V9=Object.getOwnPropertyDescriptor,G9=Object.getOwnPropertyNames,J9=Object.getPrototypeOf,Y9=Object.prototype.hasOwnProperty,X9=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Z9=(e,t)=>{for(var n in t)l0(e,n,{get:t[n],enumerable:!0})},s0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of G9(t))!Y9.call(e,r)&&r!==n&&l0(e,r,{get:()=>t[r],enumerable:!(a=V9(t,r))||a.enumerable});return e},Q9=(e,t,n)=>(s0(e,t,"default"),n&&s0(n,t,"default")),Dd=(e,t,n)=>(n=e!=null?K9(J9(e)):{},s0(t||!e||!e.__esModule?l0(n,"default",{value:e,enumerable:!0}):n,e)),Ld=X9((e,t)=>{var n="Expected a function",a=NaN,r="[object Symbol]",u=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof io=="object"&&io&&io.Object===Object&&io,m=typeof self=="object"&&self&&self.Object===Object&&self,g=c||m||Function("return this")(),p=Object.prototype,f=p.toString,A=Math.max,k=Math.min,h=function(){return g.Date.now()};function S(T,b,x){var R,D,I,M,F,$,Z=0,de=!1,V=!1,me=!0;if(typeof T!="function")throw new TypeError(n);b=y(b)||0,B(x)&&(de=!!x.leading,V="maxWait"in x,I=V?A(y(x.maxWait)||0,b):I,me="trailing"in x?!!x.trailing:me);function ge(te){var ae=R,ne=D;return R=D=void 0,Z=te,M=T.apply(ne,ae),M}function w(te){return Z=te,F=setTimeout(fe,b),de?ge(te):M}function H(te){var ae=te-$,ne=te-Z,oe=b-ae;return V?k(oe,I-ne):oe}function Q(te){var ae=te-$,ne=te-Z;return $===void 0||ae>=b||ae<0||V&&ne>=I}function fe(){var te=h();if(Q(te))return se(te);F=setTimeout(fe,H(te))}function se(te){return F=void 0,me&&R?ge(te):(R=D=void 0,M)}function O(){F!==void 0&&clearTimeout(F),Z=0,R=$=D=F=void 0}function N(){return F===void 0?M:se(h())}function re(){var te=h(),ae=Q(te);if(R=arguments,D=this,$=te,ae){if(F===void 0)return w($);if(V)return F=setTimeout(fe,b),ge($)}return F===void 0&&(F=setTimeout(fe,b)),M}return re.cancel=O,re.flush=N,re}function _(T,b,x){var R=!0,D=!0;if(typeof T!="function")throw new TypeError(n);return B(x)&&(R="leading"in x?!!x.leading:R,D="trailing"in x?!!x.trailing:D),S(T,b,{leading:R,maxWait:b,trailing:D})}function B(T){var b=typeof T;return!!T&&(b=="object"||b=="function")}function L(T){return!!T&&typeof T=="object"}function v(T){return typeof T=="symbol"||L(T)&&f.call(T)==r}function y(T){if(typeof T=="number")return T;if(v(T))return a;if(B(T)){var b=typeof T.valueOf=="function"?T.valueOf():T;T=B(b)?b+"":b}if(typeof T!="string")return T===0?T:+T;T=T.replace(u,"");var x=i.test(T);return x||s.test(T)?l(T.slice(2),x?2:8):o.test(T)?a:+T}t.exports=_}),Pd={};Z9(Pd,{default:()=>St});var e1=Dd(Ld());Q9(Pd,Dd(Ld()));var{default:Sd,...t1}=e1,St=Sd!==void 0?Sd:t1;var n1=Object.create,d0=Object.defineProperty,a1=Object.getOwnPropertyDescriptor,r1=Object.getOwnPropertyNames,u1=Object.getPrototypeOf,o1=Object.prototype.hasOwnProperty,i1=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s1=(e,t)=>{for(var n in t)d0(e,n,{get:t[n],enumerable:!0})},c0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of r1(t))!o1.call(e,r)&&r!==n&&d0(e,r,{get:()=>t[r],enumerable:!(a=a1(t,r))||a.enumerable});return e},l1=(e,t,n)=>(c0(e,t,"default"),n&&c0(n,t,"default")),Fd=(e,t,n)=>(n=e!=null?n1(u1(e)):{},c0(t||!e||!e.__esModule?d0(n,"default",{value:e,enumerable:!0}):n,e)),_d=i1((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(u){if(r[u])return r[u].exports;var o=r[u]={i:u,l:!1,exports:{}};return n[u].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var r={};return a.m=n,a.c=r,a.i=function(u){return u},a.d=function(u,o,i){a.o(u,o)||Object.defineProperty(u,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(u){var o=u&&u.__esModule?function(){return u.default}:function(){return u};return a.d(o,"a",o),o},a.o=function(u,o){return Object.prototype.hasOwnProperty.call(u,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(r){return r.webpackPolyfill||(r.deprecate=function(){},r.paths=[],r.children||(r.children=[]),Object.defineProperty(r,"loaded",{enumerable:!0,get:function(){return r.l}}),Object.defineProperty(r,"id",{enumerable:!0,get:function(){return r.i}}),r.webpackPolyfill=1),r}},function(n,a,r){"use strict";(function(u){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,m){l(a)==="object"&&l(u)==="object"?u.exports=m():(i=[],o=m,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(u.exports=s))})(void 0,function(){return function(c){function m(p){if(g[p])return g[p].exports;var f=g[p]={i:p,l:!1,exports:{}};return c[p].call(f.exports,f,f.exports,m),f.l=!0,f.exports}var g={};return m.m=c,m.c=g,m.i=function(p){return p},m.d=function(p,f,A){m.o(p,f)||Object.defineProperty(p,f,{configurable:!1,enumerable:!0,get:A})},m.n=function(p){var f=p&&p.__esModule?function(){return p.default}:function(){return p};return m.d(f,"a",f),f},m.o=function(p,f){return Object.prototype.hasOwnProperty.call(p,f)},m.p="",m(m.s=0)}([function(c,m,g){function p(w,H){var Q={};for(var fe in w)H.indexOf(fe)>=0||Object.prototype.hasOwnProperty.call(w,fe)&&(Q[fe]=w[fe]);return Q}Object.defineProperty(m,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(w){return typeof w>"u"?"undefined":l(w)}:function(w){return w&&typeof Symbol=="function"&&w.constructor===Symbol&&w!==Symbol.prototype?"symbol":typeof w>"u"?"undefined":l(w)},A=Object.assign||function(w){for(var H=1;H'+fe+"",ne.onclick=function(){return D(oe,ae)},ne.listener=function(Y){(b(Y)||x(Y))&&F()},R(ne,ae),O&&O<1&&(O=1),!re&&O&&B(O).then(function(){return D(oe,ae)})},Z=m.force=function(w,H){var Q=w.type,fe=Q===void 0?5:Q,se=w.text,O=w.buttonText,N=O===void 0?"OK":O,re=w.callback,te=w.position,ae=te===void 0?h.positions.force||ae.top:te;L(),F();var ne=document.createElement("div"),oe=v();ne.id=oe;var Y=document.createElement("div");Y.classList.add(h.classes.textbox),Y.classList.add(h.classes.backgroundInfo),Y.innerHTML='
'+se+"
";var ce=document.createElement("div");ce.classList.add(h.classes.button),ce.classList.add(y[fe]),ce.innerHTML=N,ce.onclick=function(){D(oe,ae),M(),re?re():H&&H()},ne.appendChild(Y),ne.appendChild(ce),ne.listener=function(Le){b(Le)&&ce.click()},R(ne,ae),I()},de=m.confirm=function(w,H,Q){var fe=w.text,se=w.submitText,O=se===void 0?"Yes":se,N=w.cancelText,re=N===void 0?"Cancel":N,te=w.submitCallback,ae=w.cancelCallback,ne=w.position,oe=ne===void 0?h.positions.confirm||oe.top:ne;L(),F();var Y=document.createElement("div"),ce=v();Y.id=ce;var Le=document.createElement("div");Le.classList.add(h.classes.textbox),Le.classList.add(h.classes.backgroundInfo),Le.innerHTML='
'+fe+"
";var Oe=document.createElement("div");Oe.classList.add(h.classes.button),Oe.classList.add(h.classes.elementHalf),Oe.classList.add(h.classes.backgroundSuccess),Oe.innerHTML=O,Oe.onclick=function(){D(ce,oe),M(),te?te():H&&H()};var he=document.createElement("div");he.classList.add(h.classes.button),he.classList.add(h.classes.elementHalf),he.classList.add(h.classes.backgroundError),he.innerHTML=re,he.onclick=function(){D(ce,oe),M(),ae?ae():Q&&Q()},Y.appendChild(Le),Y.appendChild(Oe),Y.appendChild(he),Y.listener=function(Xe){b(Xe)?Oe.click():x(Xe)&&he.click()},R(Y,oe),I(Y,oe)},V=function(w,H,Q){var fe=w.text,se=w.submitText,O=se===void 0?"Submit":se,N=w.cancelText,re=N===void 0?"Cancel":N,te=w.submitCallback,ae=w.cancelCallback,ne=w.position,oe=ne===void 0?h.positions.input||oe.top:ne,Y=p(w,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);L(),F();var ce=document.createElement("div"),Le=v();ce.id=Le;var Oe=document.createElement("div");Oe.classList.add(h.classes.textbox),Oe.classList.add(h.classes.backgroundInfo),Oe.innerHTML='
'+fe+"
";var he=document.createElement("input");he.classList.add(h.classes.inputField),he.setAttribute("autocapitalize",Y.autocapitalize||"none"),he.setAttribute("autocomplete",Y.autocomplete||"off"),he.setAttribute("autocorrect",Y.autocorrect||"off"),he.setAttribute("autofocus",Y.autofocus||"true"),he.setAttribute("inputmode",Y.inputmode||"verbatim"),he.setAttribute("max",Y.max||""),he.setAttribute("maxlength",Y.maxlength||""),he.setAttribute("min",Y.min||""),he.setAttribute("minlength",Y.minlength||""),he.setAttribute("placeholder",Y.placeholder||""),he.setAttribute("spellcheck",Y.spellcheck||"default"),he.setAttribute("step",Y.step||"any"),he.setAttribute("type",Y.type||"text"),he.value=Y.value||"",Y.allowed&&(he.oninput=function(){var We=void 0;if(Array.isArray(Y.allowed)){for(var $e="",qe=Y.allowed,Ht=0;Ht'+Q+"",ae.appendChild(oe),N.forEach(function(ce,Le){var Oe=ce.type,he=Oe===void 0?1:Oe,Xe=ce.text,pt=ce.handler,We=document.createElement("div");We.classList.add(y[he]),We.classList.add(h.classes.button),We.classList.add(h.classes.selectChoice);var $e=N[Le+1];$e&&!$e.type&&($e.type=1),$e&&$e.type===he&&We.classList.add(h.classes.selectChoiceRepeated),We.innerHTML=Xe,We.onclick=function(){D(ne,te),M(),pt()},ae.appendChild(We)});var Y=document.createElement("div");Y.classList.add(h.classes.backgroundNeutral),Y.classList.add(h.classes.button),Y.innerHTML=se,Y.onclick=function(){D(ne,te),M(),O?O():H&&H()},ae.appendChild(Y),ae.listener=function(ce){x(ce)&&Y.click()},R(ae,te),I(ae,te)},ge=m.date=function(w,H,Q){var fe=w.value,se=fe===void 0?new Date:fe,O=w.submitText,N=O===void 0?"OK":O,re=w.cancelText,te=re===void 0?"Cancel":re,ae=w.submitCallback,ne=w.cancelCallback,oe=w.position,Y=oe===void 0?h.positions.date||Y.top:oe;L(),F();var ce="▾",Le=document.createElement("div"),Oe=document.createElement("div"),he=document.createElement("div"),Xe=function(Pe){Le.innerHTML=h.dateMonths[Pe.getMonth()],Oe.innerHTML=Pe.getDate(),he.innerHTML=Pe.getFullYear()},pt=function(Pe){var Re=new Date(se.getFullYear(),se.getMonth()+1,0).getDate(),Gt=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Gt)>Re&&(Gt=Re.toString()),Pe.target.textContent=Gt,Number(Gt)<1&&(Gt="1"),se.setDate(Number(Gt))},We=function(Pe){var Re=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);Pe.target.textContent=Re,se.setFullYear(Number(Re))},$e=function(Pe){Xe(se)},qe=function(Pe){var Re=new Date(se.getFullYear(),se.getMonth()+Pe+1,0).getDate();se.getDate()>Re&&se.setDate(Re),se.setMonth(se.getMonth()+Pe),Xe(se)},Ht=function(Pe){se.setDate(se.getDate()+Pe),Xe(se)},Jn=function(Pe){var Re=se.getFullYear()+Pe;Re<0?se.setFullYear(0):se.setFullYear(se.getFullYear()+Pe),Xe(se)},Ze=document.createElement("div"),vn=v();Ze.id=vn;var dn=document.createElement("div");dn.classList.add(h.classes.backgroundInfo);var ft=document.createElement("div");ft.classList.add(h.classes.dateSelectorInner);var Vt=document.createElement("div");Vt.classList.add(h.classes.button),Vt.classList.add(h.classes.elementThird),Vt.classList.add(h.classes.dateSelectorUp),Vt.innerHTML=ce;var j=document.createElement("div");j.classList.add(h.classes.button),j.classList.add(h.classes.elementThird),j.classList.add(h.classes.dateSelectorUp),j.innerHTML=ce;var pe=document.createElement("div");pe.classList.add(h.classes.button),pe.classList.add(h.classes.elementThird),pe.classList.add(h.classes.dateSelectorUp),pe.innerHTML=ce,Le.classList.add(h.classes.element),Le.classList.add(h.classes.elementThird),Le.innerHTML=h.dateMonths[se.getMonth()],Oe.classList.add(h.classes.element),Oe.classList.add(h.classes.elementThird),Oe.setAttribute("contentEditable",!0),Oe.addEventListener("input",pt),Oe.addEventListener("blur",$e),Oe.innerHTML=se.getDate(),he.classList.add(h.classes.element),he.classList.add(h.classes.elementThird),he.setAttribute("contentEditable",!0),he.addEventListener("input",We),he.addEventListener("blur",$e),he.innerHTML=se.getFullYear();var Be=document.createElement("div");Be.classList.add(h.classes.button),Be.classList.add(h.classes.elementThird),Be.innerHTML=ce;var Ae=document.createElement("div");Ae.classList.add(h.classes.button),Ae.classList.add(h.classes.elementThird),Ae.innerHTML=ce;var De=document.createElement("div");De.classList.add(h.classes.button),De.classList.add(h.classes.elementThird),De.innerHTML=ce,Vt.onclick=function(){return qe(1)},j.onclick=function(){return Ht(1)},pe.onclick=function(){return Jn(1)},Be.onclick=function(){return qe(-1)},Ae.onclick=function(){return Ht(-1)},De.onclick=function(){return Jn(-1)};var Ge=document.createElement("div");Ge.classList.add(h.classes.button),Ge.classList.add(h.classes.elementHalf),Ge.classList.add(h.classes.backgroundSuccess),Ge.innerHTML=N,Ge.onclick=function(){D(vn,Y),M(),ae?ae(se):H&&H(se)};var xt=document.createElement("div");xt.classList.add(h.classes.button),xt.classList.add(h.classes.elementHalf),xt.classList.add(h.classes.backgroundError),xt.innerHTML=te,xt.onclick=function(){D(vn,Y),M(),ne?ne(se):Q&&Q(se)},ft.appendChild(Vt),ft.appendChild(j),ft.appendChild(pe),ft.appendChild(Le),ft.appendChild(Oe),ft.appendChild(he),ft.appendChild(Be),ft.appendChild(Ae),ft.appendChild(De),dn.appendChild(ft),Ze.appendChild(dn),Ze.appendChild(Ge),Ze.appendChild(xt),Ze.listener=function(Pe){b(Pe)?Ge.click():x(Pe)&&xt.click()},R(Ze,Y),I(Ze,Y)};m.default={alert:$,force:Z,confirm:de,input:V,select:me,date:ge,setOptions:S,hideAlerts:F}}])})}).call(a,r(0)(n))}])})}),Bd={};s1(Bd,{default:()=>so});var c1=Fd(_d());l1(Bd,Fd(_d()));var{default:Md,...d1}=c1,so=Md!==void 0?Md:d1;var g0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function m0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Ud(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function g1(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,r=!0,u=0;u=0&&He.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&He.splice(0,He.length),(t===93||t===224)&&(t=91),t in Et){Et[t]=!1;for(var a in Sn)Sn[a]===t&&(Ne[a]=!1)}}function E1(e){if(typeof e>"u")Object.keys(ot).forEach(function(o){return delete ot[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&p0(o)});else if(typeof e=="object")e.key&&p0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Ud(Sn,s):[];ot[m]=ot[m].filter(function(p){var f=a?p.method===a:!0;return!(f&&p.scope===n&&g1(p.mods,g))})}})};function Id(e,t,n,a){if(t.element===a){var r;if(t.scope===n||t.scope==="all"){r=t.mods.length>0;for(var u in Et)Object.prototype.hasOwnProperty.call(Et,u)&&(!Et[u]&&t.mods.indexOf(+u)>-1||Et[u]&&t.mods.indexOf(+u)===-1)&&(r=!1);(t.mods.length===0&&!Et[16]&&!Et[18]&&!Et[17]&&!Et[91]||r||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Od(e,t){var n=ot["*"],a=e.keyCode||e.which||e.charCode;if(Ne.filter.call(this,e)){if((a===93||a===224)&&(a=91),He.indexOf(a)===-1&&a!==229&&He.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var A=h0[f];e[f]&&He.indexOf(A)===-1?He.push(A):!e[f]&&He.indexOf(A)>-1?He.splice(He.indexOf(A),1):f==="metaKey"&&e[f]&&He.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(He=He.slice(He.indexOf(A))))}),a in Et){Et[a]=!0;for(var r in Sn)Sn[r]===a&&(Ne[r]=!0);if(!n)return}for(var u in Et)Object.prototype.hasOwnProperty.call(Et,u)&&(Et[u]=e[h0[u]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(He.indexOf(17)===-1&&He.push(17),He.indexOf(18)===-1&&He.push(18),Et[17]=!0,Et[18]=!0);var o=ou();if(n)for(var i=0;i-1}function Ne(e,t,n){He=[];var a=jd(e),r=[],u="all",o=document,i=0,s=!1,l=!0,c="+",m=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(u=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(m=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(u=t);i1&&(r=Ud(Sn,e)),e=e[e.length-1],e=e==="*"?"*":co(e),e in ot||(ot[e]=[]),ot[e].push({keyup:s,keydown:l,scope:u,mods:r,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!C1(o)&&window&&(Hd.push(o),m0(o,"keydown",function(g){Od(g,o)},m),Rd||(Rd=!0,m0(window,"focus",function(){He=[]},m)),m0(o,"keyup",function(g){Od(g,o),x1(g)},m))}function w1(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(ot).forEach(function(n){var a=ot[n].filter(function(r){return r.scope===t&&r.shortcut===e});a.forEach(function(r){r&&r.method&&r.method()})})}var f0={getPressedKeyString:h1,setScope:Wd,getScope:ou,deleteScope:T1,getPressedKeyCodes:f1,isPressed:y1,filter:b1,trigger:w1,unbind:E1,keyMap:uu,modifier:Sn,modifierMap:h0};for(lo in f0)Object.prototype.hasOwnProperty.call(f0,lo)&&(Ne[lo]=f0[lo]);var lo;typeof document<"u"&&(Nd=window.hotkeys,Ne.noConflict=function(e){return e&&window.hotkeys===Ne&&(window.hotkeys=Nd),Ne},window.hotkeys=Ne);var Nd;var v1=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},k1=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new v1:{reset:()=>{},stop:()=>{}}}},b0=new k1,A1="poegempjloogba",S1="ension://",D1="me-";function iu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function Jd(e){return e?e.PROD==="1":!0}function Yd(e){return e?e.MOCK==="1":!1}function Xd(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var L1="rome-ext";function P1(e,t){return t?e+(t-e%t):e}function M1(e,t){return e.split(t).length-1}function F1(e){let t=Date.now(),n=1;for(let a of e)n+=M1(a,"i");return P1(t,n)}function _1(e,t){return Math.floor(Math.random()*(t-e+1))+e}var B1="extension",R1="chro";function I1(){return _1(1e6,1e8)}var $d="BrowserExt";function O1(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var qd="DeepL",Kd="ension",N1="ch"+L1+S1+"cofdb"+A1+"gkncekinflcnj";function Zd(e){let{contentType:t,userAgent:n,url:a,authorization:r,clientVersion:u}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),r&&i.append("authorization",`Bearer ${r}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",N1),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${qd}${$d}${Kd}/${u||"1.1.1"} ${l}`)}else i.append("user-agent",`${qd}${$d}${Kd}/${u||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function U1(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:r}=e,u={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:r||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:F1(n)},id:I1()},o=Zd({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${R1+D1+B1},${t}`,headers:o,body:O1(u),method:"POST"}}function j1(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Sa={},Da={};async function Vd(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u}=n,[o,i]=iu(r);i||(i=iu(u)[1]);let s={refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u||new Date().toISOString()};o||(s=await go(e,t));let[l,c]=iu(s.refreshTokenExpiresAt);i=c,i||(i=iu(s.refreshTokenChecksAt)[1]);let m=s.refreshToken;if(Sa[m])return new Promise((g,p)=>{Sa[m].push((f,A)=>{f?p(f):g(A)})});Sa[m]=[];try{let g=await z1(m,t.onFetch),p={state:{...n,...s,...g},shouldUpdateRefreshToken:i};return Sa[m].forEach(f=>{f(null,p)}),delete Sa[m],p}catch(g){throw Sa[m].forEach(p=>{p(g)}),delete Sa[m],g}}async function go(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Da[e])return new Promise((r,u)=>{Da[e].push((o,i)=>{o?u(o):r(i)})});try{Da[e]=[];let r=new URLSearchParams({grant_type:"auth_key",auth_key:e}),u=new URL("/refresh_token?"+r.toString(),n),o=await a(u.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return Da[e].forEach(m=>{m(null,c)}),delete Da[e],c}catch(r){throw Da[e].forEach(u=>{u(r)}),delete Da[e],r}}async function z1(e,t){if(!e)throw new Error("refreshToken is required");let n=Jd(),a=Yd();if(!n&&!a){await Xd(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let r="https://w.deepl.com/oidc/token",u=await t(r,{headers:Zd({url:r,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=j1(u.access_token);if(u.expires_in){let i=new Date,s=new Date(i.getTime()+u.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function Gd(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),r=a.getAll("text");if(r.length<1)throw new Error("No text to translate");if(H1(r)>5e3)throw new Error("text too long, the max length is 5000 characters.");let u=a.get("target_lang");if(!u)throw new Error("No target language");let o=a.get("source_lang"),i={...U1({texts:r,authorization:e,target_lang:u,source_lang:o}),responseType:"raw"},s=Jd(),l=Yd();if(!s&&!l)return await Xd(50),{translations:r.map(p=>({text:"mock: "+p,detected_source_language:"EN"}))};let c=await n(i.url,i),m=JSON.parse(c.body),g=[];if(m.result&&m.result.texts)g=m.result.texts.map(p=>({text:p.text,detected_source_language:m.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function H1(e){let t=0;for(let n of e)t+=n.length;return t}async function W1(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let r=await $1(t,a);if(r.ok&&r.status>=200&&r.status<400)if(n==="json"){let u=await r.json();return b0.debug("response",JSON.stringify(u,null,2)),u}else{if(n==="text")return await r.text();if(n==="raw"){let u=await r.text(),o=Object.fromEntries([...r.headers.entries()]),i=r.url;return{body:u,headers:o,status:r.status,statusText:r.statusText,url:i}}}else{let u;try{u=await r.text()}catch(o){b0.error("parse response failed",o)}throw new Error(r.status+": "+r.statusText||" "+u||"")}}async function $1(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,r=setTimeout(()=>a.abort(),n),u=await fetch(e,{...t,signal:a.signal});return clearTimeout(r),u}var mo=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>W1({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((u,o)=>{a.append("text",u)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let r=await Gd(this.state.accessToken,a.toString(),this.onFetch);if(r&&r.translations&&r.translations.length>0)return Array.isArray(e)?r.translations.map(u=>({text:u.text,detectedSourceLanguage:u.detected_source_language})):{text:r.translations[0].text,detectedSourceLanguage:r.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await Gd(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw b0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=iu(e);if(t)n&&Vd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:r})=>{this.setState({...this.state,...a}),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:r}=await Vd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})}).catch(u=>{})}catch(a){this.onFetchTokenError(a)}}};var q1={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},eg={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},et={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},Rt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},ta={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},U=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=U.getVersionPrecision(e),r=U.getVersionPrecision(t),u=Math.max(a,r),o=0,i=U.map([e,t],s=>{let l=u-U.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return U.map(c.split("."),m=>new Array(20-m.length).join("0")+m).reverse()});for(n&&(o=u-Math.min(a,r)),u-=1;u>=o;){if(i[0][u]>i[1][u])return 1;if(i[0][u]===i[1][u]){if(u===o)return 0;u-=1}else if(i[0][u]{n[o]=u[o]})}return e}static getBrowserAlias(e){return q1[e]}static getBrowserTypeByAlias(e){return eg[e]||""}},je=/version\/(\d+(\.?_?\d+)+)/i,K1=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=U.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=U.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=U.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=U.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=U.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=U.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=U.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=U.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=U.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=U.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=U.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=U.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=U.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=U.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=U.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=U.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=U.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=U.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=U.getFirstMatch(je,e)||U.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=U.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=U.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=U.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=U.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=U.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=U.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=U.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=U.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=U.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=U.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:U.getFirstMatch(a,e),version:U.getSecondMatch(a,e)}}}],V1=K1,G1=[{test:[/Roku\/DVP/],describe(e){let t=U.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:Rt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=U.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:Rt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=U.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=U.getWindowsVersionName(t);return{name:Rt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:Rt.iOS},n=U.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=U.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=U.getMacOSVersionName(t),a={name:Rt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=U.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:Rt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=U.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=U.getAndroidVersionName(t),a={name:Rt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=U.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:Rt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=U.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||U.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||U.getFirstMatch(/\bbb(\d+)/i,e);return{name:Rt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=U.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:Rt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=U.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:Rt.Linux}}},{test:[/CrOS/],describe(){return{name:Rt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=U.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.PlayStation4,version:t}}}],J1=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=U.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:et.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:et.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:et.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:et.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:et.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=U.getFirstMatch(/(ipod|iphone)/i,e);return{type:et.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:et.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:et.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:et.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:et.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:et.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:et.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:et.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:et.tv}}}],Y1=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:ta.Blink};let t=U.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:ta.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:ta.Trident},n=U.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:ta.Presto},n=U.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:ta.Gecko},n=U.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:ta.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:ta.WebKit},n=U.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],X1=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=U.find(V1,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=U.find(G1,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=U.find(J1,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=U.find(Y1,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return U.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},r=0;if(Object.keys(e).forEach(u=>{let o=e[u];typeof o=="string"?(a[u]=o,r+=1):typeof o=="object"&&(t[u]=o,n+=1)}),n>0){let u=Object.keys(t),o=U.find(u,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=U.find(u,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(r>0){let u=Object.keys(a),o=U.find(u,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),r=U.getBrowserTypeByAlias(a);return t&&r&&(a=r.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,r=this.getBrowserVersion();if(typeof r=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(U.compareVersions(r,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Qd=X1,Z1=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Qd(e,t)}static parse(e){return new Qd(e).getResult()}static get BROWSER_MAP(){return eg}static get ENGINE_MAP(){return ta}static get OS_MAP(){return Rt}static get PLATFORMS_MAP(){return et}},po=Z1;var{entries:sg,setPrototypeOf:tg,isFrozen:Q1,getPrototypeOf:e6,getOwnPropertyDescriptor:t6}=Object,{freeze:It,seal:pn,create:n6}=Object,{apply:w0,construct:v0}=typeof Reflect<"u"&&Reflect;w0||(w0=function(e,t,n){return e.apply(t,n)});It||(It=function(e){return e});pn||(pn=function(e){return e});v0||(v0=function(e,t){return new e(...t)});var a6=nn(Array.prototype.forEach),ng=nn(Array.prototype.pop),su=nn(Array.prototype.push),bo=nn(String.prototype.toLowerCase),y0=nn(String.prototype.toString),r6=nn(String.prototype.match),mn=nn(String.prototype.replace),u6=nn(String.prototype.indexOf),o6=nn(String.prototype.trim),Yt=nn(RegExp.prototype.test),lu=i6(TypeError);function nn(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r/gm),g6=pn(/\${[\w\W]*}/gm),m6=pn(/^data-[\-\w.\u00B7-\uFFFF]/),p6=pn(/^aria-[\-\w]+$/),lg=pn(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),f6=pn(/^(?:\w+script|data):/i),h6=pn(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),cg=pn(/^html$/i),ig=Object.freeze({__proto__:null,MUSTACHE_EXPR:c6,ERB_EXPR:d6,TMPLIT_EXPR:g6,DATA_ATTR:m6,ARIA_ATTR:p6,IS_ALLOWED_URI:lg,IS_SCRIPT_OR_DATA:f6,ATTR_WHITESPACE:h6,DOCTYPE_NAME:cg}),b6=()=>typeof window>"u"?null:window,y6=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let r="dompurify"+(n?"#"+n:"");try{return e.createPolicy(r,{createHTML(u){return u},createScriptURL(u){return u}})}catch{return null}};function dg(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b6(),t=C=>dg(C);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:r}=e,{DocumentFragment:u,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:m,DOMParser:g,trustedTypes:p}=e,f=s.prototype,A=fo(f,"cloneNode"),k=fo(f,"nextSibling"),h=fo(f,"childNodes"),S=fo(f,"parentNode");if(typeof o=="function"){let C=r.createElement("template");C.content&&C.content.ownerDocument&&(r=C.content.ownerDocument)}let _,B="",{implementation:L,createNodeIterator:v,createDocumentFragment:y,getElementsByTagName:T}=r,{importNode:b}=n,x={};t.isSupported=typeof sg=="function"&&typeof S=="function"&&L&&L.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:R,ERB_EXPR:D,TMPLIT_EXPR:I,DATA_ATTR:M,ARIA_ATTR:F,IS_SCRIPT_OR_DATA:$,ATTR_WHITESPACE:Z}=ig,{IS_ALLOWED_URI:de}=ig,V=null,me=Se({},[...ag,...T0,...x0,...E0,...rg]),ge=null,w=Se({},[...ug,...C0,...og,...ho]),H=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Q=null,fe=null,se=!0,O=!0,N=!1,re=!0,te=!1,ae=!1,ne=!1,oe=!1,Y=!1,ce=!1,Le=!1,Oe=!0,he=!1,Xe="user-content-",pt=!0,We=!1,$e={},qe=null,Ht=Se({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Jn=null,Ze=Se({},["audio","video","img","source","image","track"]),vn=null,dn=Se({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ft="http://www.w3.org/1998/Math/MathML",Vt="http://www.w3.org/2000/svg",j="http://www.w3.org/1999/xhtml",pe=j,Be=!1,Ae=null,De=Se({},[ft,Vt,j],y0),Ge,xt=["application/xhtml+xml","text/html"],Pe="text/html",Re,Gt=null,Eh=r.createElement("form"),Zc=function(C){return C instanceof RegExp||C instanceof Function},Es=function(C){if(!(Gt&&Gt===C)){if((!C||typeof C!="object")&&(C={}),C=nr(C),Ge=xt.indexOf(C.PARSER_MEDIA_TYPE)===-1?Ge=Pe:Ge=C.PARSER_MEDIA_TYPE,Re=Ge==="application/xhtml+xml"?y0:bo,V="ALLOWED_TAGS"in C?Se({},C.ALLOWED_TAGS,Re):me,ge="ALLOWED_ATTR"in C?Se({},C.ALLOWED_ATTR,Re):w,Ae="ALLOWED_NAMESPACES"in C?Se({},C.ALLOWED_NAMESPACES,y0):De,vn="ADD_URI_SAFE_ATTR"in C?Se(nr(dn),C.ADD_URI_SAFE_ATTR,Re):dn,Jn="ADD_DATA_URI_TAGS"in C?Se(nr(Ze),C.ADD_DATA_URI_TAGS,Re):Ze,qe="FORBID_CONTENTS"in C?Se({},C.FORBID_CONTENTS,Re):Ht,Q="FORBID_TAGS"in C?Se({},C.FORBID_TAGS,Re):{},fe="FORBID_ATTR"in C?Se({},C.FORBID_ATTR,Re):{},$e="USE_PROFILES"in C?C.USE_PROFILES:!1,se=C.ALLOW_ARIA_ATTR!==!1,O=C.ALLOW_DATA_ATTR!==!1,N=C.ALLOW_UNKNOWN_PROTOCOLS||!1,re=C.ALLOW_SELF_CLOSE_IN_ATTR!==!1,te=C.SAFE_FOR_TEMPLATES||!1,ae=C.WHOLE_DOCUMENT||!1,Y=C.RETURN_DOM||!1,ce=C.RETURN_DOM_FRAGMENT||!1,Le=C.RETURN_TRUSTED_TYPE||!1,oe=C.FORCE_BODY||!1,Oe=C.SANITIZE_DOM!==!1,he=C.SANITIZE_NAMED_PROPS||!1,pt=C.KEEP_CONTENT!==!1,We=C.IN_PLACE||!1,de=C.ALLOWED_URI_REGEXP||lg,pe=C.NAMESPACE||j,H=C.CUSTOM_ELEMENT_HANDLING||{},C.CUSTOM_ELEMENT_HANDLING&&Zc(C.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(H.tagNameCheck=C.CUSTOM_ELEMENT_HANDLING.tagNameCheck),C.CUSTOM_ELEMENT_HANDLING&&Zc(C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(H.attributeNameCheck=C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),C.CUSTOM_ELEMENT_HANDLING&&typeof C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(H.allowCustomizedBuiltInElements=C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),te&&(O=!1),ce&&(Y=!0),$e&&(V=Se({},[...rg]),ge=[],$e.html===!0&&(Se(V,ag),Se(ge,ug)),$e.svg===!0&&(Se(V,T0),Se(ge,C0),Se(ge,ho)),$e.svgFilters===!0&&(Se(V,x0),Se(ge,C0),Se(ge,ho)),$e.mathMl===!0&&(Se(V,E0),Se(ge,og),Se(ge,ho))),C.ADD_TAGS&&(V===me&&(V=nr(V)),Se(V,C.ADD_TAGS,Re)),C.ADD_ATTR&&(ge===w&&(ge=nr(ge)),Se(ge,C.ADD_ATTR,Re)),C.ADD_URI_SAFE_ATTR&&Se(vn,C.ADD_URI_SAFE_ATTR,Re),C.FORBID_CONTENTS&&(qe===Ht&&(qe=nr(qe)),Se(qe,C.FORBID_CONTENTS,Re)),pt&&(V["#text"]=!0),ae&&Se(V,["html","head","body"]),V.table&&(Se(V,["tbody"]),delete Q.tbody),C.TRUSTED_TYPES_POLICY){if(typeof C.TRUSTED_TYPES_POLICY.createHTML!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof C.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');_=C.TRUSTED_TYPES_POLICY,B=_.createHTML("")}else _===void 0&&(_=y6(p,a)),_!==null&&typeof B=="string"&&(B=_.createHTML(""));It&&It(C),Gt=C}},Qc=Se({},["mi","mo","mn","ms","mtext"]),e4=Se({},["foreignobject","desc","title","annotation-xml"]),Ch=Se({},["title","style","font","a","script"]),ju=Se({},T0);Se(ju,x0),Se(ju,s6);let Cs=Se({},E0);Se(Cs,l6);let wh=function(C){let ee=S(C);(!ee||!ee.tagName)&&(ee={namespaceURI:pe,tagName:"template"});let q=bo(C.tagName),Ie=bo(ee.tagName);return Ae[C.namespaceURI]?C.namespaceURI===Vt?ee.namespaceURI===j?q==="svg":ee.namespaceURI===ft?q==="svg"&&(Ie==="annotation-xml"||Qc[Ie]):!!ju[q]:C.namespaceURI===ft?ee.namespaceURI===j?q==="math":ee.namespaceURI===Vt?q==="math"&&e4[Ie]:!!Cs[q]:C.namespaceURI===j?ee.namespaceURI===Vt&&!e4[Ie]||ee.namespaceURI===ft&&!Qc[Ie]?!1:!Cs[q]&&(Ch[q]||!ju[q]):!!(Ge==="application/xhtml+xml"&&Ae[C.namespaceURI]):!1},Ja=function(C){su(t.removed,{element:C});try{C.parentNode.removeChild(C)}catch{C.remove()}},ws=function(C,ee){try{su(t.removed,{attribute:ee.getAttributeNode(C),from:ee})}catch{su(t.removed,{attribute:null,from:ee})}if(ee.removeAttribute(C),C==="is"&&!ge[C])if(Y||ce)try{Ja(ee)}catch{}else try{ee.setAttribute(C,"")}catch{}},t4=function(C){let ee,q;if(oe)C=""+C;else{let Bt=r6(C,/^[\r\n\t ]+/);q=Bt&&Bt[0]}Ge==="application/xhtml+xml"&&pe===j&&(C=''+C+"");let Ie=_?_.createHTML(C):C;if(pe===j)try{ee=new g().parseFromString(Ie,Ge)}catch{}if(!ee||!ee.documentElement){ee=L.createDocument(pe,"template",null);try{ee.documentElement.innerHTML=Be?B:Ie}catch{}}let ct=ee.body||ee.documentElement;return C&&q&&ct.insertBefore(r.createTextNode(q),ct.childNodes[0]||null),pe===j?T.call(ee,ae?"html":"body")[0]:ae?ee.documentElement:ct},n4=function(C){return v.call(C.ownerDocument||C,C,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},vh=function(C){return C instanceof m&&(typeof C.nodeName!="string"||typeof C.textContent!="string"||typeof C.removeChild!="function"||!(C.attributes instanceof c)||typeof C.removeAttribute!="function"||typeof C.setAttribute!="function"||typeof C.namespaceURI!="string"||typeof C.insertBefore!="function"||typeof C.hasChildNodes!="function")},zu=function(C){return typeof i=="object"?C instanceof i:C&&typeof C=="object"&&typeof C.nodeType=="number"&&typeof C.nodeName=="string"},On=function(C,ee,q){x[C]&&a6(x[C],Ie=>{Ie.call(t,ee,q,Gt)})},a4=function(C){let ee;if(On("beforeSanitizeElements",C,null),vh(C))return Ja(C),!0;let q=Re(C.nodeName);if(On("uponSanitizeElement",C,{tagName:q,allowedTags:V}),C.hasChildNodes()&&!zu(C.firstElementChild)&&(!zu(C.content)||!zu(C.content.firstElementChild))&&Yt(/<[/\w]/g,C.innerHTML)&&Yt(/<[/\w]/g,C.textContent))return Ja(C),!0;if(!V[q]||Q[q]){if(!Q[q]&&u4(q)&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,q)||H.tagNameCheck instanceof Function&&H.tagNameCheck(q)))return!1;if(pt&&!qe[q]){let Ie=S(C)||C.parentNode,ct=h(C)||C.childNodes;if(ct&&Ie){let Bt=ct.length;for(let Wt=Bt-1;Wt>=0;--Wt)Ie.insertBefore(A(ct[Wt],!0),k(C))}}return Ja(C),!0}return C instanceof s&&!wh(C)||(q==="noscript"||q==="noembed")&&Yt(/<\/no(script|embed)/i,C.innerHTML)?(Ja(C),!0):(te&&C.nodeType===3&&(ee=C.textContent,ee=mn(ee,R," "),ee=mn(ee,D," "),ee=mn(ee,I," "),C.textContent!==ee&&(su(t.removed,{element:C.cloneNode()}),C.textContent=ee)),On("afterSanitizeElements",C,null),!1)},r4=function(C,ee,q){if(Oe&&(ee==="id"||ee==="name")&&(q in r||q in Eh))return!1;if(!(O&&!fe[ee]&&Yt(M,ee))&&!(se&&Yt(F,ee))){if(!ge[ee]||fe[ee]){if(!(u4(C)&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,C)||H.tagNameCheck instanceof Function&&H.tagNameCheck(C))&&(H.attributeNameCheck instanceof RegExp&&Yt(H.attributeNameCheck,ee)||H.attributeNameCheck instanceof Function&&H.attributeNameCheck(ee))||ee==="is"&&H.allowCustomizedBuiltInElements&&(H.tagNameCheck instanceof RegExp&&Yt(H.tagNameCheck,q)||H.tagNameCheck instanceof Function&&H.tagNameCheck(q))))return!1}else if(!vn[ee]&&!Yt(de,mn(q,Z,""))&&!((ee==="src"||ee==="xlink:href"||ee==="href")&&C!=="script"&&u6(q,"data:")===0&&Jn[C])&&!(N&&!Yt($,mn(q,Z,"")))&&q)return!1}return!0},u4=function(C){return C.indexOf("-")>0},o4=function(C){let ee,q,Ie,ct;On("beforeSanitizeAttributes",C,null);let{attributes:Bt}=C;if(!Bt)return;let Wt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ge};for(ct=Bt.length;ct--;){ee=Bt[ct];let{name:ht,namespaceURI:Ya}=ee;if(q=ht==="value"?ee.value:o6(ee.value),Ie=Re(ht),Wt.attrName=Ie,Wt.attrValue=q,Wt.keepAttr=!0,Wt.forceKeepAttr=void 0,On("uponSanitizeAttribute",C,Wt),q=Wt.attrValue,Wt.forceKeepAttr||(ws(ht,C),!Wt.keepAttr))continue;if(!re&&Yt(/\/>/i,q)){ws(ht,C);continue}te&&(q=mn(q,R," "),q=mn(q,D," "),q=mn(q,I," "));let i4=Re(C.nodeName);if(r4(i4,Ie,q)){if(he&&(Ie==="id"||Ie==="name")&&(ws(ht,C),q=Xe+q),_&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!Ya)switch(p.getAttributeType(i4,Ie)){case"TrustedHTML":{q=_.createHTML(q);break}case"TrustedScriptURL":{q=_.createScriptURL(q);break}}try{Ya?C.setAttributeNS(Ya,ht,q):C.setAttribute(ht,q),ng(t.removed)}catch{}}}On("afterSanitizeAttributes",C,null)},kh=function C(ee){let q,Ie=n4(ee);for(On("beforeSanitizeShadowDOM",ee,null);q=Ie.nextNode();)On("uponSanitizeShadowNode",q,null),!a4(q)&&(q.content instanceof u&&C(q.content),o4(q));On("afterSanitizeShadowDOM",ee,null)};return t.sanitize=function(C){let ee=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},q,Ie,ct,Bt;if(Be=!C,Be&&(C=""),typeof C!="string"&&!zu(C))if(typeof C.toString=="function"){if(C=C.toString(),typeof C!="string")throw lu("dirty is not a string, aborting")}else throw lu("toString is not a function");if(!t.isSupported)return C;if(ne||Es(ee),t.removed=[],typeof C=="string"&&(We=!1),We){if(C.nodeName){let Ya=Re(C.nodeName);if(!V[Ya]||Q[Ya])throw lu("root node is forbidden and cannot be sanitized in-place")}}else if(C instanceof i)q=t4(""),Ie=q.ownerDocument.importNode(C,!0),Ie.nodeType===1&&Ie.nodeName==="BODY"||Ie.nodeName==="HTML"?q=Ie:q.appendChild(Ie);else{if(!Y&&!te&&!ae&&C.indexOf("<")===-1)return _&&Le?_.createHTML(C):C;if(q=t4(C),!q)return Y?null:Le?B:""}q&&oe&&Ja(q.firstChild);let Wt=n4(We?C:q);for(;ct=Wt.nextNode();)a4(ct)||(ct.content instanceof u&&kh(ct.content),o4(ct));if(We)return C;if(Y){if(ce)for(Bt=y.call(q.ownerDocument);q.firstChild;)Bt.appendChild(q.firstChild);else Bt=q;return(ge.shadowroot||ge.shadowrootmod)&&(Bt=b.call(n,Bt,!0)),Bt}let ht=ae?q.outerHTML:q.innerHTML;return ae&&V["!doctype"]&&q.ownerDocument&&q.ownerDocument.doctype&&q.ownerDocument.doctype.name&&Yt(cg,q.ownerDocument.doctype.name)&&(ht=" +`+ht),te&&(ht=mn(ht,R," "),ht=mn(ht,D," "),ht=mn(ht,I," ")),_&&Le?_.createHTML(ht):ht},t.setConfig=function(C){Es(C),ne=!0},t.clearConfig=function(){Gt=null,ne=!1},t.isValidAttribute=function(C,ee,q){Gt||Es({});let Ie=Re(C),ct=Re(ee);return r4(Ie,ct,q)},t.addHook=function(C,ee){typeof ee=="function"&&(x[C]=x[C]||[],su(x[C],ee))},t.removeHook=function(C){if(x[C])return ng(x[C])},t.removeHooks=function(C){x[C]&&(x[C]=[])},t.removeAllHooks=function(){x={}},t}var _e=dg();var k0=so.alert;var gg={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var mg={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var pg={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var C6=[{code:"zh-CN",messages:gg},{code:"zh-TW",messages:mg},{code:"en",messages:pg}],fn="immersiveTranslateDeeplGlobalState",yo="immersiveTranslateBingGlobalState",an={};for(let e of C6)an[e.code]=e.messages;var La="Immersive Translate",X="immersive-translate";var Ee="immersiveTranslate",To="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",Dn=Ee+"GoogleAccessToken",cu=Ee+"AuthFlow",xo="immersive-translate-config-latest.json",A0=Ee+"AuthState",Eo=Ee+"IframeMessage",aw=Ee+"WaitForRateLimit",hg=Ee+"DocumentMessageAsk",Ot=Ee+"DocumentMessageTellThirdParty",bg=Ee+"DocumentMessageThirdPartyTell",w6=Ee+"DocumentMessageHandler",v6=`${Ee}Container`,yg=`${Ee}SpecifiedContainer`,Un="buildinConfig",ar="localConfig",du="openOptionsPage",S0="openAboutPage",Tg="translateLocalPdfFile";var gu="openEbookViewer",mu="openEbookBuilder";var Co=`${Ee}PageTranslatedStatus`,rw=`${Ee}PageUrlChanged`,na=`${Ee}ReceiveCommand`,xg=Ee+"LastUseMouseHoverTime",Eg=Ee+"LastUseInputTime",jn=Ee+"LastUseManualTranslatePageTime",uw=`${Ee}PopupReceiveMessage`,k6="immersivetranslate.com",A6="config.immersivetranslate.com",ow=`https://${k6}/`,aa=`https://${A6}/default_config.json`,iw=`${Ee}Mark`,pu="immersiveTranslateEffect",$t=`${Ee}Root`,sw=`data-${X}-effect`,Ln=`data-${X}-translation-element-mark`,Cg=`${Ee}TranslationElementMark`,lw=`${Ee}TranslatedMark`,cw=`${Ee}ParagraphId`,wg=`${Ee}LoadingId`,D0=`data-${X}-loading-id`,vg=`${Ee}ErrorId`,wo=`data-${X}-error-id`,S6=`${Ee}AtomicBlockMark`,kg=`${Ee}ExcludeMark`,dw=`data-${X}-exclude-mark`,D6=`${Ee}StayOriginalMark`,gw=`${Ee}PreWhitespaceMark`,vo=`${Ee}InlineMark`,Ag=`${Ee}BlockMark`,mw=`${Ee}Left`,pw=`${Ee}Right`,fw=`${Ee}Width`,hw=`${Ee}Height`,bw=`${Ee}Top`,yw=`${Ee}FontSize`,Sg="lastRunTime",Tw=`${Ee}GlobalStyleMark`,ko=["@","#"],Ao=" --- ",Dg=` +`,rn=`${X}-target-wrapper`,xw=`${X}-pdf-target-container`,Lg=`${X}-target-inner`,Ew=`${X}-source-wrapper`,L0=`${X}-target-translation-block-wrapper`,Cw=`${X}-root-translation-theme`,rr=`${Ee}RootTranslationTheme`,Pg=`${X}-target-translation-vertical-block-wrapper`,Mg=`${X}-target-translation-pdf-block-wrapper`,Fg=`${X}-target-translation-pre-whitespace`,P0=`${X}-target-translation-inline-wrapper`,M0=["none","dashed","underline","dashedBorder","solidBorder","mask","opacity","dotted","dividingLine","highlight","marker","marker2","blockquote","weakening","grey","paper","italic","bold","thinDashed","wavy","nativeDotted","nativeDashed","nativeUnderline"],fu={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Xt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],_g={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},Bg={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},Rg={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var Ig=["toggleTranslatePage","toggleTranslateTheWholePage","toggleOnlyTransation","toggleTranslateToThePageEndImmediately","toggleTranslateTheMainPage","toggleTranslationMask"],Og=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"],Ng="Night gathers, and now my watch begins. It shall not end until my death. I shall take no wife, hold no lands, father no children. I shall wear no crowns and win no glory. I shall live and die at my post.",F0="\u957F\u591C\u5C06\u81F3\uFF0C\u6211\u4ECE\u4ECA\u5F00\u59CB\u5B88\u671B\uFF0C\u81F3\u6B7B\u65B9\u4F11\u3002\u6211\u5C06\u4E0D\u5A36\u59BB\u3001\u4E0D\u5C01\u5730\u3001\u4E0D\u751F\u5B50\u3002\u6211\u5C06\u4E0D\u6234\u5B9D\u51A0\uFF0C\u4E0D\u4E89\u8363\u5BA0\u3002\u6211\u5C06\u5C3D\u5FE0\u804C\u5B88\uFF0C\u751F\u6B7B\u4E8E\u65AF\u3002",So="zh-CN",Do="https://immersivetranslate.com/docs/communities/",fg=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],hn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...dg,{type:"password",name:"apikey",required:!0}],props:dg},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},F0={type:xe+"ChildFrameToRootFrameIdentifier"},Lo=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"],Po=[{key:"/"},{key:"="},{key:";"},{key:","},{key:"."},{key:":"},{key:"space",labelKey:"spaceKey",skipForStarting:!0},{key:"none",labelKey:"noneKey",skipForTrailing:!0}],Rg='';var ur=console,_0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),r=tn.green;a>1e4?r=tn.red:a>1e3&&(r=tn.yellow),ur.debug(tn.dim(La+" TIMING:"),t,"in",r(a+"ms")),this.#e=n}},hu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&ur.log(tn.dim(La+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&ur.log(tn.green(La+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&ur.warn(tn.yellow(La+" WARN:"),...t)}error(...t){this.#e<=3&&ur.error(tn.red(La+" ERROR:"),...t)}fatal(...t){this.#e<=4&&ur.error(tn.red(La+" FATAL:"),...t)}timing(){return this.level===0?new _0:{reset:()=>{},stop:()=>{}}}},P=new hu;function tt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():x}var ve=tt();function le(){return ve.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function Og(){return ve.HAS_CSP_ERROR=="1"}function Dt(){if(ve.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function Ig(){return typeof Deno<"u"}var Dv=tt().PROD==="1",or=tt().PROD!=="1";function Ng(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function bu(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}function Ct(){try{return globalThis.self!==globalThis.top}catch{return!0}}var Mo=!1,v1=le();function Ug(e,t){let n=[];for(let a of t){let r=e.querySelectorAll(a);for(let u of r)n.push(u)}return n}function w1(e,t){let n=function(u){return u.nodeType===Node.ELEMENT_NODE||u.nodeType===Node.TEXT_NODE?u.nodeType===Node.ELEMENT_NODE&&jg(u,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),r=!0;for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.ELEMENT_NODE){if(ra(u,wo)){if(r===!0)return!0;continue}if(yu(u.nodeName,t.inlineTags))return!0;if(!B0(u,t))return!1}}return!0}function R0(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(yu(e.nodeName,n)||B0(e,t)){if(ra(e,Cg)||yu(e.nodeName,["BR"]))return!1;if(ra(e,wo))return!0;if(B0(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return w1(e,t)}else return ra(e,wo);return!1}function jg(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&ra(e,xg,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&ra(e,pg))return!1;let{stayOriginalTags:a,excludeTags:r}=t,u=[];return n&&r&&r.length>0?u=r||[]:u=r.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||yu(e.nodeName,u))}function Fo(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!Hg(a)&&a.length>=n}function zg(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(Hg(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function Hg(e){for(let t=0;t127)return!1;return!0}function Wg(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function $g(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function qg(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function Kg(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function ra(e,t,n=!1){return O0(e,t,"1",n)}function O0(e,t,n,a=!1){return Mo&&!a?e[$t]?!!(e[$t]&&e[$t][t]===n):!1:e.dataset[t]===n}function ir(e){return(e.innerText||e.textContent||"").trim()}function I0(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function _o(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function st(e,t,n,a=!1){e.isContentEditable||(Mo&&!a?(e.dataset[pu]||(e.dataset[pu]="1"),e[$t]||(e[$t]={}),e[$t][t]||(e[$t][t]=n)):(e.dataset[pu]||(e.dataset[pu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Bo(e,t,n=!1){if(Mo&&!n){if(!e[$t]||!e[$t][t])return;delete e[$t][t]}else delete e.dataset[t]}function sr(e,t,n=!1){return Mo&&!n?!e[$t]||!e[$t][t]?void 0:e[$t][t]:e.dataset[t]}function B0(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!yu(e.nodeName,n)}function lr(e){let{config:t}=e,n=ko;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function vt(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Ct())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Pa(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){P.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let r=e.querySelector(`style[data-id="${n}"]`);r&&r.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else P.warn("injectCSS failed, rootDocument does not have head node",e)}function cr(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(v1){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function yu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Gg(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),r=parseInt(t.substring(4,6),16);return{r:n,g:a,b:r}}function Vg(e,t,n,a){if(a.document.caretPositionFromPoint){let r=a.document.caretPositionFromPoint(e,t);if(r){let u=a.document.createRange(),o=r.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||jg(o,n,!0))return null;try{u.setStart(o,r.offset),u.setEnd(o,r.offset)}catch(i){return P.warn("getRangeFromPoint error",i),null}return u}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function Jg(e,t,n){let a=0,r=(u,o,i,s)=>{if(++a>100||s===u)return u;let l=u.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return u;let c=l.elementFromPoint(o,i);return c?r(c,o,i,u):u};return r(e,t,n)}function dr(e,t,n,a){let r=t,u=fu[r]||[],o="";e&&u&&u.length>0&&u.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let m=n[c];if(["borderRadius"].includes(c)&&(m+="px"),o+=`--immersive-translate-theme-${r}-${c}: ${m}; -`,t==="marker"&&c==="backgroundColor"&&typeof m=="string"){let{r:g,g:p,b:f}=Gg(m);o+=`--immersive-translate-theme-${r}-${c}-rgb: ${g}, ${p}, ${f}; +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...fg,{type:"password",name:"apikey",required:!0}],props:fg},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},_0={type:Ee+"ChildFrameToRootFrameIdentifier"},Lo=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"],Po=[{key:"/"},{key:"="},{key:";"},{key:","},{key:"."},{key:":"},{key:"space",labelKey:"spaceKey",skipForStarting:!0},{key:"none",labelKey:"noneKey",skipForTrailing:!0}],Ug='';var ur=console,B0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),r=tn.green;a>1e4?r=tn.red:a>1e3&&(r=tn.yellow),ur.debug(tn.dim(La+" TIMING:"),t,"in",r(a+"ms")),this.#e=n}},hu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&ur.log(tn.dim(La+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&ur.log(tn.green(La+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&ur.warn(tn.yellow(La+" WARN:"),...t)}error(...t){this.#e<=3&&ur.error(tn.red(La+" ERROR:"),...t)}fatal(...t){this.#e<=4&&ur.error(tn.red(La+" FATAL:"),...t)}timing(){return this.level===0?new B0:{reset:()=>{},stop:()=>{}}}},P=new hu;function tt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var we=tt();function le(){return we.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function jg(){return we.HAS_CSP_ERROR=="1"}function Dt(){if(we.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function zg(){return typeof Deno<"u"}var Fw=tt().PROD==="1",or=tt().PROD!=="1";function Hg(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function bu(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}function Ct(){try{return globalThis.self!==globalThis.top}catch{return!0}}var Mo=!1,L6=le();function Wg(e,t){let n=[];for(let a of t){let r=e.querySelectorAll(a);for(let u of r)n.push(u)}return n}function P6(e,t){let n=function(u){return u.nodeType===Node.ELEMENT_NODE||u.nodeType===Node.TEXT_NODE?u.nodeType===Node.ELEMENT_NODE&&$g(u,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),r=!0;for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.ELEMENT_NODE){if(ra(u,vo)){if(r===!0)return!0;continue}if(yu(u.nodeName,t.inlineTags))return!0;if(!R0(u,t))return!1}}return!0}function I0(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(yu(e.nodeName,n)||R0(e,t)){if(ra(e,Ag)||yu(e.nodeName,["BR"]))return!1;if(ra(e,vo))return!0;if(R0(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return P6(e,t)}else return ra(e,vo);return!1}function $g(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&ra(e,kg,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&ra(e,yg))return!1;let{stayOriginalTags:a,excludeTags:r}=t,u=[];return n&&r&&r.length>0?u=r||[]:u=r.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||yu(e.nodeName,u))}function Fo(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!Kg(a)&&a.length>=n}function qg(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(Kg(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function Kg(e){for(let t=0;t127)return!1;return!0}function Vg(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function Gg(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function Jg(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function Yg(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function ra(e,t,n=!1){return O0(e,t,"1",n)}function O0(e,t,n,a=!1){return Mo&&!a?e[$t]?!!(e[$t]&&e[$t][t]===n):!1:e.dataset[t]===n}function ir(e){return(e.innerText||e.textContent||"").trim()}function N0(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function _o(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function it(e,t,n,a=!1){e.isContentEditable||(Mo&&!a?(e.dataset[pu]||(e.dataset[pu]="1"),e[$t]||(e[$t]={}),e[$t][t]||(e[$t][t]=n)):(e.dataset[pu]||(e.dataset[pu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Bo(e,t,n=!1){if(Mo&&!n){if(!e[$t]||!e[$t][t])return;delete e[$t][t]}else delete e.dataset[t]}function sr(e,t,n=!1){return Mo&&!n?!e[$t]||!e[$t][t]?void 0:e[$t][t]:e.dataset[t]}function R0(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!yu(e.nodeName,n)}function lr(e){let{config:t}=e,n=ko;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function wt(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Ct())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Pa(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){P.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let r=e.querySelector(`style[data-id="${n}"]`);r&&r.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else P.warn("injectCSS failed, rootDocument does not have head node",e)}function cr(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(L6){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function yu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Xg(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),r=parseInt(t.substring(4,6),16);return{r:n,g:a,b:r}}function Zg(e,t,n,a){if(a.document.caretPositionFromPoint){let r=a.document.caretPositionFromPoint(e,t);if(r){let u=a.document.createRange(),o=r.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||$g(o,n,!0))return null;try{u.setStart(o,r.offset),u.setEnd(o,r.offset)}catch(i){return P.warn("getRangeFromPoint error",i),null}return u}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function Qg(e,t,n){let a=0,r=(u,o,i,s)=>{if(++a>100||s===u)return u;let l=u.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return u;let c=l.elementFromPoint(o,i);return c?r(c,o,i,u):u};return r(e,t,n)}function dr(e,t,n,a){let r=t,u=fu[r]||[],o="";e&&u&&u.length>0&&u.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let m=n[c];if(["borderRadius"].includes(c)&&(m+="px"),o+=`--immersive-translate-theme-${r}-${c}: ${m}; +`,t==="marker"&&c==="backgroundColor"&&typeof m=="string"){let{r:g,g:p,b:f}=Xg(m);o+=`--immersive-translate-theme-${r}-${c}-rgb: ${g}, ${p}, ${f}; `}}});let i="";if(n&&n.textColor){let l=n.textColor;i+=` .immersive-translate-target-translation-theme-${r}-inner{color: ${l};} `}if(n&&n.zoom){let l=n.zoom;i+=` @@ -4074,7 +4082,7 @@ ${o}} `),i&&(s+=i),s?Pa(e,s,"immersive-translate-user-custom-style"):a&&Pa(e,"","immersive-translate-user-custom-style")}function ua(e,t){let a=tt().IMMERSIVE_TRANSLATE_INJECTED_CSS;Pa(e,a,"immersive-translate-default-injected-css");let r=t.config.translationThemePatterns||{},u=t.state.translationTheme,o=r[u]||{};dr(e,u,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` `)),t.rule.additionalInjectedCss&&t.rule.additionalInjectedCss.length>0&&(i+=` `+t.rule.additionalInjectedCss.join(` -`))),i&&Pa(e,i,"immersive-translate-dynamic-injected-css")}var k1=0;function d(e,t,n,a,r){var u,o,i={};for(o in t)o=="ref"?u=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:u,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--k1,__source:r,__self:a};if(typeof e=="function"&&(u=e.defaultProps))for(o in u)i[o]===void 0&&(i[o]=u[o]);return we.vnode&&we.vnode(s),s}function N0({value:e,defaultCase:t=null,cases:n}){return e==null?null:d(ut,{children:n[e]!=null?n[e]:t})}function U0(){let[e,t]=W(location.hash);return ke(()=>{let n=()=>t(location.hash);return globalThis.addEventListener("hashchange",n,!1),()=>{globalThis.removeEventListener("hashchange",n)}},[]),e}function Je(e){w0({type:"success",text:e})}function Lt(e){w0({type:"error",text:e})}var j0=/iPhone/i,Yg=/iPod/i,Xg=/iPad/i,Zg=/\biOS-universal(?:.+)Mac\b/i,z0=/\bAndroid(?:.+)Mobile\b/i,Qg=/Android/i,gr=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ro=/Silk/i,zn=/Windows Phone/i,em=/\bWindows(?:.+)ARM\b/i,tm=/BlackBerry/i,nm=/BB10/i,am=/Opera Mini/i,rm=/\b(CriOS|Chrome)(?:.+)Mobile/i,um=/Mobile(?:.+)Firefox\b/i,om=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function A1(e){return t=>t.test(e)}function Ma(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let r=A1(n),u={apple:{phone:r(j0)&&!r(zn),ipod:r(Yg),tablet:!r(j0)&&(r(Xg)||om(t))&&!r(zn),universal:r(Zg),device:(r(j0)||r(Yg)||r(Xg)||r(Zg)||om(t))&&!r(zn)},amazon:{phone:r(gr),tablet:!r(gr)&&r(Ro),device:r(gr)||r(Ro)},android:{phone:!r(zn)&&r(gr)||!r(zn)&&r(z0),tablet:!r(zn)&&!r(gr)&&!r(z0)&&(r(Ro)||r(Qg)),device:!r(zn)&&(r(gr)||r(Ro)||r(z0)||r(Qg))||r(/\bokhttp\b/i)},windows:{phone:r(zn),tablet:r(em),device:r(zn)||r(em)},other:{blackberry:r(tm),blackberry10:r(nm),opera:r(am),firefox:r(um),chrome:r(rm),device:r(tm)||r(nm)||r(am)||r(um)||r(rm)},any:!1,phone:!1,tablet:!1};return u.any=u.apple.device||u.android.device||u.windows.device||u.other.device,u.phone=u.apple.phone||u.android.phone||u.windows.phone,u.tablet=u.apple.tablet||u.android.tablet||u.windows.tablet,u}var H0="DENO",Oo="CHROME",Io="FIREFOX";function im(e){let t=Oo;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Io:/deno/i.test(n)&&(t=H0)}catch{}return e===Oo&&t===Oo||e===Io&&t===Io||e===H0&&t===H0}function No(){return im(Oo)}function sm(){return typeof Deno<"u"}function Fa(){return im(Io)}function mr(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function _a(){return!!globalThis.matchMedia("(pointer:fine)").matches}var lm={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},cm={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:lm,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:lm,query:()=>{},sendMessage:()=>{}}};var z;sm()?z=cm:z=globalThis.immersiveTranslateBrowserAPI;var W0={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return z.storage[n].get(a)},set:(e,t,n)=>z.storage[n].set({[e]:t})};function Uo(e,t,n){let[a]=W(()=>typeof t=="function"?t():t),[r]=W(n),[u,o]=W(a),[i,s]=W(!1),[l,c]=W("");ke(()=>{W0.get(e,a,r).then(g=>{g[e]&&o(g[e]),s(!0),c("")}).catch(g=>{s(!1),c(g)})},[e,a,r]);let m=Xn(g=>{let p=typeof g=="function"?g(u):g;P.debug("new settings",p),W0.set(e,p,r).then(()=>{o(p),s(!0),c("")}).catch(f=>{o(p),s(!1),c(f)})},[r,e,u]);return[u,m,i,l]}function jo(e,t,n){let a=[];return function(){let[u,o,i,s]=Uo(e,t,n),l=Xn(c=>{for(let m of a)m(c)},[]);return ke(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[u,l,i,s]}}function dm(e,t){return jo(e,t,"local")}function gm(e,t){return jo(e,t,"sync")}var S1="userConfig",D1={},L1=gm(S1,D1);function bt(e){let[t,n,a,r]=L1(),u=Xn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,u,a,r,n]}function oa(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Xt.map(r=>r.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let r=n.indexOf(t);return r===-1?"auto":Xt[r]}else return"auto";else return Xt[a]}var zo={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`))),i&&Pa(e,i,"immersive-translate-dynamic-injected-css")}var M6=0;function d(e,t,n,a,r){var u,o,i={};for(o in t)o=="ref"?u=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:u,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--M6,__source:r,__self:a};if(typeof e=="function"&&(u=e.defaultProps))for(o in u)i[o]===void 0&&(i[o]=u[o]);return ve.vnode&&ve.vnode(s),s}function U0({value:e,defaultCase:t=null,cases:n}){return e==null?null:d(rt,{children:n[e]!=null?n[e]:t})}function j0(){let[e,t]=W(location.hash);return ke(()=>{let n=()=>t(location.hash);return globalThis.addEventListener("hashchange",n,!1),()=>{globalThis.removeEventListener("hashchange",n)}},[]),e}function Je(e){k0({type:"success",text:e})}function Lt(e){k0({type:"error",text:e})}var z0=/iPhone/i,em=/iPod/i,tm=/iPad/i,nm=/\biOS-universal(?:.+)Mac\b/i,H0=/\bAndroid(?:.+)Mobile\b/i,am=/Android/i,gr=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ro=/Silk/i,zn=/Windows Phone/i,rm=/\bWindows(?:.+)ARM\b/i,um=/BlackBerry/i,om=/BB10/i,im=/Opera Mini/i,sm=/\b(CriOS|Chrome)(?:.+)Mobile/i,lm=/Mobile(?:.+)Firefox\b/i,cm=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function F6(e){return t=>t.test(e)}function Ma(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let r=F6(n),u={apple:{phone:r(z0)&&!r(zn),ipod:r(em),tablet:!r(z0)&&(r(tm)||cm(t))&&!r(zn),universal:r(nm),device:(r(z0)||r(em)||r(tm)||r(nm)||cm(t))&&!r(zn)},amazon:{phone:r(gr),tablet:!r(gr)&&r(Ro),device:r(gr)||r(Ro)},android:{phone:!r(zn)&&r(gr)||!r(zn)&&r(H0),tablet:!r(zn)&&!r(gr)&&!r(H0)&&(r(Ro)||r(am)),device:!r(zn)&&(r(gr)||r(Ro)||r(H0)||r(am))||r(/\bokhttp\b/i)},windows:{phone:r(zn),tablet:r(rm),device:r(zn)||r(rm)},other:{blackberry:r(um),blackberry10:r(om),opera:r(im),firefox:r(lm),chrome:r(sm),device:r(um)||r(om)||r(im)||r(lm)||r(sm)},any:!1,phone:!1,tablet:!1};return u.any=u.apple.device||u.android.device||u.windows.device||u.other.device,u.phone=u.apple.phone||u.android.phone||u.windows.phone,u.tablet=u.apple.tablet||u.android.tablet||u.windows.tablet,u}var W0="DENO",Io="CHROME",Oo="FIREFOX";function dm(e){let t=Io;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Oo:/deno/i.test(n)&&(t=W0)}catch{}return e===Io&&t===Io||e===Oo&&t===Oo||e===W0&&t===W0}function No(){return dm(Io)}function gm(){return typeof Deno<"u"}function Fa(){return dm(Oo)}function mr(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function _a(){return!!globalThis.matchMedia("(pointer:fine)").matches}var mm={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},pm={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:mm,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:mm,query:()=>{},sendMessage:()=>{}}};var z;gm()?z=pm:z=globalThis.immersiveTranslateBrowserAPI;var $0={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return z.storage[n].get(a)},set:(e,t,n)=>z.storage[n].set({[e]:t})};function Uo(e,t,n){let[a]=W(()=>typeof t=="function"?t():t),[r]=W(n),[u,o]=W(a),[i,s]=W(!1),[l,c]=W("");ke(()=>{$0.get(e,a,r).then(g=>{g[e]&&o(g[e]),s(!0),c("")}).catch(g=>{s(!1),c(g)})},[e,a,r]);let m=Xn(g=>{let p=typeof g=="function"?g(u):g;P.debug("new settings",p),$0.set(e,p,r).then(()=>{o(p),s(!0),c("")}).catch(f=>{o(p),s(!1),c(f)})},[r,e,u]);return[u,m,i,l]}function jo(e,t,n){let a=[];return function(){let[u,o,i,s]=Uo(e,t,n),l=Xn(c=>{for(let m of a)m(c)},[]);return ke(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[u,l,i,s]}}function fm(e,t){return jo(e,t,"local")}function hm(e,t){return jo(e,t,"sync")}var _6="userConfig",B6={},R6=hm(_6,B6);function bt(e){let[t,n,a,r]=R6(),u=Xn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,u,a,r,n]}function oa(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Xt.map(r=>r.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let r=n.indexOf(t);return r===-1?"auto":Xt[r]}else return"auto";else return Xt[a]}var zo={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4094,64 +4102,75 @@ ${o}} ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};function $0(e){return Array.isArray(e)?e:e?[e]:[]}function un(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Ye(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function Ho(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let r={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))r[o]=i;else if(o.startsWith("additional")){let s=$0(i);r[o]=Array.from(new Set([...r[o],...s]))}else r[o]=$0(i)}),r}function Ba(){if(ve.PROD==="1")return{};let e={};if(ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:ve.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:ve.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:ve.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(ve.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=ve.DEEPL_PROXY_ENDPOINT),ve.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=ve.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),ve.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:ve.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return ve.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),ve.MOCK==="1"&&(e.translationService="mock"),ve.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=ve.IMMERSIVE_TRANSLATE_SERVICE),e}async function Hn(){let e=await z.storage.local.get(ar);if(e[ar]){let t=e[ar],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),r=!1;a.length!==n.length&&(n=a,r=!0);let u={...t,tempTranslationUrlMatches:[...n]};return r&&await Wn(u),u}else return{}}async function Wn(e){await z.storage.local.set({[ar]:e})}async function mm(e){await z.storage.local.set({[Un]:e})}async function pr(){await z.storage.local.set({[Un]:{}})}async function ia(){await z.storage.local.set({[ar]:{}})}async function pm(){let e=await z.storage.local.get(Un),n={...fr(),...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};if(e[Un]){let a=e[Un];if(a&&a.buildinConfigUpdatedAt){let r=new Date(a.buildinConfigUpdatedAt),u=new Date(n.buildinConfigUpdatedAt);r>u&&(n=a)}}return n}async function ze(){let e=await z.storage.local.get(Un),t={...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};if(e[Un]){let h=e[Un];if(h&&h.buildinConfigUpdatedAt){let A=new Date(h.buildinConfigUpdatedAt),_=new Date(t.buildinConfigUpdatedAt);A>_&&(t=h)}}let n={};if(!le()&&z.commands&&z.commands.getAll){let h=await z.commands.getAll();for(let A of h)A.name&&A.shortcut&&(n[A.name]=A.shortcut)}let a=fr(),r=Ba(),u=await Eu(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Hn(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let h=i.tempTranslationUrlMatches.filter(A=>new Date(A.expiredAt)>s);if(h.length>0){let A=u.translationUrlPattern?u.translationUrlPattern?.matches||[]:[],_=Array.isArray(A)?A:[A],B=Array.from(new Set(_.concat(h.map(L=>L.match))));u.translationUrlPattern={...u.translationUrlPattern,matches:B}}}let l=Object.assign({},o,r,u);if(!l.interfaceLanguage){let h=await M1();l.interfaceLanguage=h}let c=l.interfaceLanguage==="en",m=l.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,p=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!m&&!g&&p?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),S=Object.keys(f),k=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let h of S){let A=h;if(A==="generalRule")typeof l[A]=="object"&&(f[A]=Ho(a[A],l[A]));else if(A==="translationServices"){let _=l[A]||{},B=t[A]||{},L=Object.keys(B),w=Object.keys(_),y=[...new Set([...L,...w])],T={};for(let b of y)T[b]={...B[b],..._[b]};f[A]=T}else if(typeof l[A]!="string"&&typeof l[A]!="boolean"&&typeof l[A]!="number"&&k.includes(A))l[A]&&(f[A]=Object.assign(f[A],l[A])),A==="shortcuts"&&(le()||Dt()?f[A]={...f[A],...n}:f[A]={...n});else if(A==="rules"){if(Array.isArray(l[A])&&(f[A]=[...l[A],...f[A]]),ve.PROD==="0"&&ve.DEV_RULES){let _=JSON.parse(ve.DEV_RULES);f[A]=[..._,...f[A]]}}else l[A]!==void 0&&(f[A]=l[A])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function Eu(){return(await z.storage.sync.get("userConfig")||{}).userConfig||{}}async function Wo(e){await z.storage.sync.set({userConfig:e})}var M1=async()=>{let e=["zh-CN"];try{e=await z.i18n.getAcceptLanguages()}catch(a){P.warn("get browser language error:",a)}let n=e.map(a=>oa(a)).find(a=>an[a]);return n||"en"},fr=()=>{let e={...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};return{...e,targetLanguage:So,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function xu(e){if(Math.abs(e)<1024)return e+" Byte";let n=["KB","MB","GB","TB","PB","EB","ZB","YB"],a=-1;do e/=1024,++a;while(Math.abs(e)>=1024&&as+l.text.length,0)+o.text.length>t||u.tempSentences.length>=n)&&(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(u.from!==o.from||u.to!==o.to)&&(u.tempSentences.length>0?(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(u.from=o.from,u.to=o.to)),u.tempSentences.push(o);return u.tempSentences.length>0&&r.push(u),r}function F1(e,t){let n=[],a=[];for(let r=0;r0?f"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};function q0(e){return Array.isArray(e)?e:e?[e]:[]}function un(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Ye(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function Ho(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let r={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))r[o]=i;else if(o.startsWith("additional")){let s=q0(i);r[o]=Array.from(new Set([...r[o],...s]))}else r[o]=q0(i)}),r}function Ba(){if(we.PROD==="1")return{};let e={};if(we.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&we.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:we.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:we.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(we.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&we.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:we.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:we.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(we.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:we.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(we.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:we.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(we.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&we.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:we.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:we.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(we.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&we.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:we.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:we.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(we.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:we.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(we.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=we.DEEPL_PROXY_ENDPOINT),we.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=we.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),we.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:we.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return we.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),we.MOCK==="1"&&(e.translationService="mock"),we.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=we.IMMERSIVE_TRANSLATE_SERVICE),e}async function Hn(){let e=await z.storage.local.get(ar);if(e[ar]){let t=e[ar],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),r=!1;a.length!==n.length&&(n=a,r=!0);let u={...t,tempTranslationUrlMatches:[...n]};return r&&await Wn(u),u}else return{}}async function Wn(e){await z.storage.local.set({[ar]:e})}async function bm(e){await z.storage.local.set({[Un]:e})}async function pr(){await z.storage.local.set({[Un]:{}})}async function ia(){await z.storage.local.set({[ar]:{}})}async function ym(){let e=await z.storage.local.get(Un),n={...fr(),...zo,buildinConfigUpdatedAt:we.BUILD_TIME};if(e[Un]){let a=e[Un];if(a&&a.buildinConfigUpdatedAt){let r=new Date(a.buildinConfigUpdatedAt),u=new Date(n.buildinConfigUpdatedAt);r>u&&(n=a)}}return n}async function ze(){let e=await z.storage.local.get(Un),t={...zo,buildinConfigUpdatedAt:we.BUILD_TIME};if(e[Un]){let h=e[Un];if(h&&h.buildinConfigUpdatedAt){let S=new Date(h.buildinConfigUpdatedAt),_=new Date(t.buildinConfigUpdatedAt);S>_&&(t=h)}}let n={};if(!le()&&z.commands&&z.commands.getAll){let h=await z.commands.getAll();for(let S of h)S.name&&S.shortcut&&(n[S.name]=S.shortcut)}let a=fr(),r=Ba(),u=await xu(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Hn(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let h=i.tempTranslationUrlMatches.filter(S=>new Date(S.expiredAt)>s);if(h.length>0){let S=u.translationUrlPattern?u.translationUrlPattern?.matches||[]:[],_=Array.isArray(S)?S:[S],B=Array.from(new Set(_.concat(h.map(L=>L.match))));u.translationUrlPattern={...u.translationUrlPattern,matches:B}}}let l=Object.assign({},o,r,u);if(!l.interfaceLanguage){let h=await O6();l.interfaceLanguage=h}let c=l.interfaceLanguage==="en",m=l.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,p=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!m&&!g&&p?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),A=Object.keys(f),k=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let h of A){let S=h;if(S==="generalRule")typeof l[S]=="object"&&(f[S]=Ho(a[S],l[S]));else if(S==="translationServices"){let _=l[S]||{},B=t[S]||{},L=Object.keys(B),v=Object.keys(_),y=[...new Set([...L,...v])],T={};for(let b of y)T[b]={...B[b],..._[b]};f[S]=T}else if(typeof l[S]!="string"&&typeof l[S]!="boolean"&&typeof l[S]!="number"&&k.includes(S))l[S]&&(f[S]=Object.assign(f[S],l[S])),S==="shortcuts"&&(le()||Dt()?f[S]={...f[S],...n}:f[S]={...n});else if(S==="rules"){if(Array.isArray(l[S])&&(f[S]=[...l[S],...f[S]]),we.PROD==="0"&&we.DEV_RULES){let _=JSON.parse(we.DEV_RULES);f[S]=[..._,...f[S]]}}else l[S]!==void 0&&(f[S]=l[S])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function xu(){return(await z.storage.sync.get("userConfig")||{}).userConfig||{}}async function Wo(e){await z.storage.sync.set({userConfig:e})}var O6=async()=>{let e=["zh-CN"];try{e=await z.i18n.getAcceptLanguages()}catch(a){P.warn("get browser language error:",a)}let n=e.map(a=>oa(a)).find(a=>an[a]);return n||"en"},fr=()=>{let e={...zo,buildinConfigUpdatedAt:we.BUILD_TIME};return{...e,targetLanguage:So,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function Eu(e){if(Math.abs(e)<1024)return e+" Byte";let n=["KB","MB","GB","TB","PB","EB","ZB","YB"],a=-1;do e/=1024,++a;while(Math.abs(e)>=1024&&as+l.text.length,0)+o.text.length>t||u.tempSentences.length>=n)&&(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(u.from!==o.from||u.to!==o.to)&&(u.tempSentences.length>0?(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(u.from=o.from,u.to=o.to)),u.tempSentences.push(o);return u.tempSentences.length>0&&r.push(u),r}function N6(e,t){let n=[],a=[];for(let r=0;r0?ft){let h=[];q0(S,t,h);for(let A=0;A0&&f{let i=e.lastIndexOf(o,t);return i>u?i:u},-1);if(r===-1){let u=e.slice(0,t);if(u&&!u.trim())return;n.push({text:u,prefix:"",suffix:""}),e.length>t&&q0(e.slice(t),t,n)}else{let u=e.slice(0,r+1);if(u&&u.trim()==="")return;u.startsWith(" ")?n.push({text:u.slice(1),prefix:" ",suffix:""}):n.push({text:u,prefix:"",suffix:""}),r+10){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,optionalProps:i,explicitProps:o}}var $o=e=>{let{config:t}=e,n=t.alpha,a=t.beta,r=t.canary,u=t.debug;return Object.keys(hn).filter(i=>{let s=hn[i];if(i.startsWith("mock"))return u?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,m=!!s.beta;return i===e.translationService||l&&r||c&&(n||r)||m&&(a||n||r)?!0:!c&&!m&&!l}).map(i=>K0(i,e))};function Zt(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var d8=bm(2),hm=bm(3);function bm(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let r=typeof n.slice=="function"?n:String(n),u=r.length-e+1;if(u<1)return a;for(;u--;)a[u]=r.slice(u,u+e);return a}}var _1=/\s+/g,B1=/[\t\n\v\f\r ]+/g;function ym(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?R1:O1;return String(e).replace(t.style==="html"?B1:_1,t.trim?I1(n):n)}function R1(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function O1(){return" "}function I1(e){return t;function t(n,a,r){return a===0||a+n.length===r.length?"":e(n)}}var Tm={}.hasOwnProperty;function N1(e){return e==null?"":ym(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function U1(e){return hm(" "+N1(e)+" ")}function j1(e){let t=U1(e),n={},a=-1;for(;++an&&(n=u,a=r)}return[a,n]}function G1(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function V1(e,t,n,a){t=Y1(t,n,a);let r=[],u;if(t)for(u in t)qo.call(t,u)&&r.push([u,J1(e,t[u])]);return r.length===0?V0():r.sort(X1)}function J1(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let u=e.length-a;for(let o of ib){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/u>.5?t==="zh-CN"?Sm(e)?"zh-TW":"zh-CN":t:"auto"}var Lm=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function Pm(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Go(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...Lm.keys()]},r=Cm(e,a);if(r&&r.length>0){if(r.length>1&&r[0][0]!=="eng"&&r[1][0]==="eng"&&r[1][1]>.6)return"en";let[u]=r[0],o=Lm.get(u);if(o)return o}return"auto"}var gt=class extends Error{constructor(n,a,r){super(a);this.name=n,r&&(this.details=r)}};async function hr(e){let t;if(e&&e.retry&&e.retry>0)try{t=await o0(Mm.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await Mm(e);return t}async function Mm(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let r=!0;e.fetchPolyfill&&(r=!1);let u=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),r){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await u(t,a)}catch(s){P.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of sb(i.body)){let m=new TextDecoder().decode(c);s+=m;let g;for(;(g=s.indexOf(` -`))>=0;){let p=s.slice(0,g).trim();if(s=s.slice(g+1),p.startsWith("event:")||p==="")continue;let f="";if(p.startsWith("data:")&&(f=p.slice(5).trim()),f==="[DONE]")break;let S;try{S=JSON.parse(f??"")}catch(k){P.debug("json error",k);continue}l=S}}return l}}else{let s;try{s=await i.text()}catch(m){P.error("parse response failed",m)}s&&P.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new gt("fetchError",c,s)}}async function*sb(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function la(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function lb(e,t){return e<>>32-t}function Jo(e,t,n,a,r,u){return la(lb(la(la(t,e),la(a,u)),r),n)}function Pt(e,t,n,a,r,u,o){return Jo(t&n|~t&a,e,t,r,u,o)}function Mt(e,t,n,a,r,u,o){return Jo(t&a|n&~a,e,t,r,u,o)}function Ft(e,t,n,a,r,u,o){return Jo(t^n^a,e,t,r,u,o)}function _t(e,t,n,a,r,u,o){return Jo(n^(t|~a),e,t,r,u,o)}function Vo(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,r,u,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function J0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Vo(a,e.length*8)),n=0;n<16;n+=1)r[n]=a[n]^909522486,u[n]=a[n]^1549556828;return o=Vo(r.concat(J0(t)),512+t.length*8),Fm(Vo(u.concat(o),512+128))}function _m(e){var t="0123456789abcdef",n="",a,r;for(r=0;r>>4&15)+t.charAt(a&15);return n}function Y0(e){return unescape(encodeURIComponent(e))}function Bm(e){return cb(Y0(e))}function gb(e){return _m(Bm(e))}function Rm(e,t){return db(Y0(e),Y0(t))}function mb(e,t){return _m(Rm(e,t))}function ca(e,t,n){return t?n?Rm(t,e):mb(t,e):n?Bm(e):gb(e)}var br=[];async function vu(e,t){return await new Promise((n,a)=>{let r=e,u=1,o=indexedDB.open(r,u);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function X0(e){let t=`${X}-${e.service}@${e.from}->${e.to}`;return await fb(t,e)}async function Z0(e){let t=ca(e.originalText),n=`${X}-${e.service}@${e.from}->${e.to}`;return await pb(n,t)}async function pb(e,t){let n=await vu(e);return await new Promise((a,r)=>{if(!n)return r();let u="cache",i=n.transaction([u],"readonly").objectStore(u).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),r()}})}async function fb(e,t){let n=await vu(e);return(await Q0()).includes(e)||await hb(e),await new Promise(r=>{if(!n)return r(!1);let u="cache",i=n.transaction([u],"readwrite").objectStore(u).put(t);i.onsuccess=s=>{n.close(),r(!0)},i.onerror=s=>{n.close(),r(!1)}})}async function hb(e){let t="cache_list",n=await vu(X+"-cacheList",t),r=n.transaction([t],"readwrite").objectStore(t).put({key:e});r.onsuccess=u=>{n.close(),br.push(e)},r.onerror=u=>{n.close()}}async function Q0(){if(br&&br.length>0)return br;let e=await vu(X+"-cacheList","cache_list");return br=await new Promise(t=>{let n="cache_list",r=e.transaction([n],"readonly").objectStore(n).getAllKeys();r.onsuccess=u=>{e.close(),t(r.result)},r.onerror=u=>{e.close(),t([])}}),br}async function el(){try{let e=[];(await Q0()).forEach(a=>{e.push(bb(a))});let n=await Promise.all(e);return xu(n.reduce((a,r)=>a+r,0))}catch{return xu(0)}}async function bb(e){let t=await vu(e),a=[...t.objectStoreNames].reduce((o,i)=>{let s=yb(t,i);return o.push(s),o},[]),r=await Promise.all(a);return t.close(),r.reduce((o,i)=>o+i,0)}async function yb(e,t){return await new Promise((n,a)=>{if(e==null)return a();let r=0,u=e.transaction([t]).objectStore(t).openCursor();u.onsuccess=o=>{let i=u.result;if(i){let s=i.value,l=JSON.stringify(s);r+=l.length,i.continue()}else n(r)},u.onerror=o=>a("error in "+t+": "+o)})}async function Om(){try{let t=(await Q0()).map(a=>Tb(a));return!!(await Promise.all(t)).every(a=>a)}catch{return!1}}async function Tb(e){return await new Promise(t=>{let n=indexedDB.deleteDatabase(e);n.onsuccess=()=>{t(!0)},n.onerror=a=>{t(!1)}})}var Im=xe+"StoreKey_";function Yo(e,t){let n=Im+e;return z.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Nm(e,t){let n=Im+e;return z.storage.local.set({[n]:t})}var Um=xe+"SyncStoreKey_";function tl(e,t){let n=Um+e;return z.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function mt(e,t){let n=Um+e;return z.storage.sync.set({[n]:t})}var Xo={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.1",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function da(){return Xo.version}function Zo(){return z.runtime.getManifest().version}var jm="G-MKMD9LWFTR";async function nt(e,t,n){try{let a=tt();if(a.INSTALL_FROM==="firefox_store")return;let u=le(),o=Ct(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let T=await Yo(s,0),b=Qo(new Date(T)),E=Date.now(),R=Qo(new Date(E));if(b===R)return;await Nm(s,E)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",m=await tl("fakeUserId","");m||(m=await Yo("fakeUserId",""),m&&await mt("fakeUserId",m));let g=da(),p=new Date,f=await tl("installedAt","");f||(f=await Yo("installedAt",""),f&&await mt("installedAt",f)),m?f||(f=new Date(0).toISOString(),await mt("installedAt",f)):(m=xb(32),await mt("fakeUserId",m)),f||(f=p.toISOString(),await mt("installedAt",f));let S=new Date(f),k=Qo(S),h=Qo(p),A=k===h,_=p.getTime()-S.getTime()<7*24*60*60*1e3,B=`https://www.google-analytics.com/mp/collect?measurement_id=${jm}&api_secret=${c}`;i||(B=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${jm}&api_secret=${c}`);let L=po.parse(window.navigator.userAgent),w=t.map(T=>{let b=T.params||{};L.os&&(b.os_name=L.os.name||"unknown",b.os_version=L.os.version||"unknown",b.os_version_name=L.os.versionName||"unknown"),L.browser&&(b.browser_name=L.browser.name||"unknown",b.browser_version=L.browser.version||"unknown"),L.platform&&(b.platform_type=L.platform.type||"unknown"),L.engine&&(b.engine_name=L.engine.name||"unknown",b.engine_version=L.engine.version||"unknown"),n.translationService&&(b.translation_service=n.translationService),n.targetLanguage&&(b.target_language=n.targetLanguage),n.config.interfaceLanguage&&(b.interface_language=n.config.interfaceLanguage),g&&(b.version=g),n.config.translationTheme&&(b.translation_theme=n.config.translationTheme),n.config.alpha&&(b.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?b.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):b.always_translate_languages="none",a.INSTALL_FROM&&(b.install_from=a.INSTALL_FROM),n.config.beta&&(b.beta=n.config.alpha.toString()),n.config.translationArea&&(b.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(b.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),k&&(b.install_day=Cb(S)),n.config.translationMode&&(b.translation_mode=n.config.translationMode),b.userscript=u.toString(),A?b.is_new_user_today="1":b.is_new_user_today="0",_?b.is_new_user_this_week="1":b.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?b.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():b.temp_translate_domain_minutes="0";let E="html";if(n.rule.isEbook?E="ebookReader":n.rule.isPdf?E="pdfReader":n.rule.isEbookBuilder?E="ebookBuilder":n.rule.isSubtitleBuilder&&(E="subtitleBuilder"),b.page_type=E,o?b.main_frame=0:b.main_frame=1,!l){let R=n.url;try{let D=new URL(R);b.site_host=D.hostname}catch{b.site_host="unknown"}n.sourceLanguage&&(b.source_language=n.sourceLanguage)}return{...T,params:b}}),y=await ue({responseType:"text",url:B,method:"POST",body:JSON.stringify({client_id:m,user_id:m,events:w})})}catch{}}function xb(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r0){if(a.includes(e)||a.includes(""))return!1;for(let r of a)if(r.includes("*")&&new RegExp(r).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let r of n)if(r.includes("*")&&new RegExp(r).test(e))return!0}return!1}var Wm="auto",ei="auto",Hm="auto";function ti(e){Wm=e}function sn(e){ei=e}function Ln(){return ei!=="auto"?ei:Hm!=="auto"?Hm:Wm}function yr(){return ei}var vb=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function $n(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function nl(e,t,n){let{blockSelectors:a,extraBlockSelectors:r,extraInlineSelectors:u}=t;if($n(e,u))return!1;if($n(e,r)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!vb.includes(n.display):$n(e,a)}var Qt=$n;function Ra(e){return!!e.shadowRoot}function ga(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function wu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function ni(e){let t=ko;return e&&(t=e),t}async function Pn(e,t="",n=100){let a="auto";return t?await lt({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=yr()),a)}function ai(e,t){return sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function wb(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${X}-loading-${n} notranslate">`}function ku(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",rn),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),st(a,Tg,t.toString());let r=wb(e);return a.innerHTML=Ie.sanitize(r),a}function Tr(e,t){return e.querySelector(`[${S0}='${t}']`)}function $m(){document.querySelectorAll(`[${S0}]`).forEach(t=>{t.remove()})}function qm(){document.querySelectorAll(`.${rn}-error`).forEach(t=>{t.remove()})}function Km(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{cr(n)&&t.push(n)}),t}function Gm(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:r,text:u}=e,o=new RegExp(`${r[0]}(\\d+)${r[1]}`,"gi");if(r.length>2){let s=r[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=u.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(u)||i.includes("")||i.includes("< styles>")||Kg(i)||Wg(i)||qg(i)||$g(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Fo(u,n,a)}function Mn(e){return e.nodeType===Node.ELEMENT_NODE}function Vm(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function Jm(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var kb=1e5;function ma(e){let{onParagraph:t,filterRule:n,id:a}=e;n=Ab(n);let{stayOriginalSelectors:r,globalStyles:u,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,m={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,p=null;function f(B){let{container:L,onFrame:w,onIgnoreElement:y,id:T}=B,b=document.createTreeWalker(L,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,D=>{let O=R(D);return O==NodeFilter.FILTER_ACCEPT?qt.mark(D,T):O==NodeFilter.FILTER_REJECT,O}),E=L;if(R(E)===NodeFilter.FILTER_REJECT)return;for(qt.mark(E,T);E;){if(o&&o.length>0){let{currentNode:D,isMatchedSelection:O}=S(b,E,o);if(D)E=D;else break;if(!O)continue}if(E.nodeType===Node.ELEMENT_NODE||E.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let D=E;if(D.nodeName==="IFRAME"){w&&w(D);break}D.nodeType===Node.ELEMENT_NODE&&(u&&rl(D,u),l&&ol(D,l));let O=nl(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&!O){h(D);let $=null;for(;!($=b.nextSibling())&&b.parentNode(););E=$;continue}let M=Ra(D);(!Ym(m,D)||O)&&(k(),D.childNodes.length>0&&A(m,D,D.immersiveTranslateComputedStyle||null)),M&&D.shadowRoot?.mode==="open"&&(O?w?.(D.shadowRoot):f({...B,container:D.shadowRoot})),D.nodeType===Node.ELEMENT_NODE&&D.nodeName==="PRE"&&i&&Pb(D)}else if(E.nodeType===Node.TEXT_NODE)h(E);else throw new Error("should not be here");E=b.nextNode(),m.commonAncestorContainer&&E&&E.parentNode===m.commonAncestorContainer&&(m._currentStacks=[]),m.commonAncestorContainer&&E&&E.nodeType===Node.ELEMENT_NODE&&m._currentStacks.push(E)}function R(D){if(D.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(Mn(D)){if(l){let F=Object.keys(l);if(F.length>0&&Qt(D,F))for(let Z of F){let de=l[Z];if(D.matches(Z)){let G=l[Z],me=Object.keys(G);for(let ge of me){let v=G[ge];D.getAttribute(ge)!==v&&(v===null?D.removeAttribute(ge):D.setAttribute(ge,v))}break}}}if(!B.force&&qt.isMarked(D,T)||Vm(D,T)||il(D,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:r})||D.nodeName==="IFRAME"&&!cr(D))return NodeFilter.FILTER_REJECT;if(D.nodeType===Node.ELEMENT_NODE){let F=window.getComputedStyle(D);if(D.immersiveTranslateComputedStyle={display:F.display,whiteSpace:F.whiteSpace},ul(D.immersiveTranslateComputedStyle))return y&&y(D),NodeFilter.FILTER_REJECT;let $=nl(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&$)return NodeFilter.FILTER_REJECT}let{width:O,height:M}=D.getBoundingClientRect();return D.nodeName==="IMG"&&(O>48&&M>48?D.immersiveTranslateComputedStyle={display:"block"}:O>0&&M>0&&c!==!1&&(D.setAttribute("width",O),D.setAttribute("height",M))),!D.childNodes||D.childNodes&&D.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!m.isPreWhitespace&&(O>0&&O<4||M>0&&M<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(D.nodeType===Node.TEXT_NODE){let O=D.textContent?.trim();if(!O)return m.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let M=D.parentNode;if(M.getBoundingClientRect){let{width:F,height:$}=M.getBoundingClientRect();if(F>0&&F<4||$>0&&$<4)return NodeFilter.FILTER_REJECT}return s>0&&O.length>=s&&al(D,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),m&&m.commonAncestorContainer&&m.flatNodes.length>0&&k();function S(B,L,w){let y=L.immersiveTranslateComputedStyle||null;if(p){if(!p.contains(L))if(g=!1,L&&L.nodeType===Node.ELEMENT_NODE)if(ri(L,w))g=!0,p=L,k(),A(m,p,y);else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g}}else if(L&&L.nodeType===Node.ELEMENT_NODE)if(ri(L,w))g=!0,p=L,k(),A(m,p,y);else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};return{currentNode:L,isMatchedSelection:!0}}function k(){let B=Lb(m,a);B&&t&&t(B),Xm(m)}function h(B){if(!Ym(m,B)){k(),Xm(m);let L=B.parentNode;L&&A(m,L,L.computedStyle)}m.flatNodes.push(B)}function A(B,L,w){B.commonAncestorContainer=L;let y=_(w);B.isPreWhitespace=y}function _(B){return B&&B.whiteSpace&&B.whiteSpace.startsWith("pre")||B&&B.whiteSpace==="break-spaces"||!1}}function Ym(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=Ra(t));let a=Db(e),r=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?r=!0:e.commonAncestorContainer&&(r=!1,e._currentStacks=[])),r}function Ab(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function Sb(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function rl(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){e.style.cssText=u;break}}}}function Db(e){return e&&e._currentStacks?e._currentStacks.some(t=>Ra(t)):!1}function Lb(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let u=Mb(n,a);u||(u=a);let o=[];for(let g of n){let p=Sb(e,u,g);p&&(o.includes(p)||o.push(p))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,m=0;for(;c&&(l.push(c),c!==s);){if(m++,m>kb){P.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:u,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function Xm(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function ul(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,r=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(r)&&(r=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||r<-1e3}var qt={_marked_key:"immersive_translate_walked",isMarked(e,t){return O0(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return Bo(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return st(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=sr(e,"markWalk")||"";return st(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||Ra(e)):!1}};function Pb(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=Ie.sanitize(n)}function Mb(e,t){if(!e.length)return null;let n=e.map(a=>{let r=new Set;for(;(a=a.parentNode)&&(r.add(a),a!==t););return r});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(r=>r.has(a)))return a;return null}function al(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let u=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(u>1){let o=n[u-1]||"",i=n[u-2]||"",s=n[u+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?u=-1:isNaN(Number(o))||(u=-1)}if(u===-1)n.length>t+20&&al(e,t+20);else{let o=n.slice(u+1);u++,o.startsWith(" ")&&u++;let i=e.splitText(u),s=document.createElement("br");i.parentNode?.insertBefore(s,i),u+10)for(let a of n){let r=t[a],u=Object.keys(r),o=Ug(e,[a]);for(let i of o)for(let s of u){let l=r[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function Qm(e,t,n,a,r,u){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let m of l){let g=s[m];if(m==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||Fb(c,r,u)||!zg(f,n,a))continue}c.getAttribute(m)!==g&&(g===null?c.removeAttribute(m):c.setAttribute(m,g))}}}function ol(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){let o=t[r],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function il(e,t){return Qt(e,t.excludeSelectors||[])?Qt(e,t.selectors||[])?!1:!Qt(e,t.stayOriginalSelectors||[]):!1}function ri(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Qt(e,t.concat(n))}function Fb(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,r=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.TEXT_NODE&&parent){let u=r.textContent||"";if(u.includes("Copyright"))continue;if(Fo(u,t,n))return!0}}return!1}var e3=["*://*/*","*","*://*"],n3="immersive-translate-wildcard-placeholder.com";function sl(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>e3.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let r=a.href,u=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===u)return!0;if(e3.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===u:Bb(r,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let k=i.split("://");l=k[0],l==="*"&&k.length>1&&(l="*",i="https://"+k[1])}else l="*",i="https://"+i;let m=i.replace(/\*/g,n3),g;try{g=new URL(m)}catch{return P.debug("invalid match pattern",m,"raw match value:",c),!1}let p=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let S=_b(l+":",t3(p),t3(f));if(S){let k=new URL(r);return k.port="",S.test(k.href)}else return!1}});if(o)return o}return null}function t3(e){return e.replaceAll(n3,"*")}function _b(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Fn(e,t){return sl(e,t)!==null}function Bb(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}var Er="input is invalid type",ll=typeof window=="object",pa=ll?window:{};pa.JS_SHA256_NO_WINDOW&&(ll=!1);var Rb=!ll&&typeof self=="object",Ob=!pa.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Ob?pa=global:Rb&&(pa=self);var H7=!pa.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,W7=typeof define=="function"&&define.amd,Au=!pa.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",ie="0123456789abcdef".split(""),Ib=[-2147483648,8388608,32768,128],bn=[24,16,8,0],ui=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],oi=["hex","array","digest","arrayBuffer"],yt=[];(pa.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});Au&&(pa.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var a3=function(e,t){return function(n){return new Tt(t,!0).update(n)[e]()}},u3=function(e){var t=a3("hex",e);t.create=function(){return new Tt(e)},t.update=function(r){return t.create().update(r)};for(var n=0;n>2]|=e[r]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[u>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=u-64,this.hash(),this.hashed=!0):this.start=u}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};Tt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Ib[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};Tt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,m,g,p,f,S,k,h,A,_;for(l=16;l<64;++l)p=s[l-15],c=(p>>>7|p<<25)^(p>>>18|p<<14)^p>>>3,p=s[l-2],m=(p>>>17|p<<15)^(p>>>19|p<<13)^p>>>10,s[l]=s[l-16]+c+s[l-7]+m<<0;for(_=t&n,l=0;l<64;l+=4)this.first?(this.is224?(k=300032,p=s[0]-1413257819,i=p-150054599<<0,a=p+24177077<<0):(k=704751109,p=s[0]-210244248,i=p-1521486534<<0,a=p+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),m=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),k=e&t,g=k^e&n^_,S=r&u^~r&o,p=i+m+S+ui[l]+s[l],f=c+g,i=a+p<<0,a=p+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),m=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),h=a&e,g=h^a&t^k,S=i&r^~i&u,p=o+m+S+ui[l+1]+s[l+1],f=c+g,o=n+p<<0,n=p+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),m=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),A=n&a,g=A^n&e^h,S=o&i^~o&r,p=u+m+S+ui[l+2]+s[l+2],f=c+g,u=t+p<<0,t=p+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),m=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),_=t&n,g=_^t&a^A,S=u&o^~u&i,p=r+m+S+ui[l+3]+s[l+3],f=c+g,r=e+p<<0,e=p+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+r<<0,this.h5=this.h5+u<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};Tt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=ie[e>>28&15]+ie[e>>24&15]+ie[e>>20&15]+ie[e>>16&15]+ie[e>>12&15]+ie[e>>8&15]+ie[e>>4&15]+ie[e&15]+ie[t>>28&15]+ie[t>>24&15]+ie[t>>20&15]+ie[t>>16&15]+ie[t>>12&15]+ie[t>>8&15]+ie[t>>4&15]+ie[t&15]+ie[n>>28&15]+ie[n>>24&15]+ie[n>>20&15]+ie[n>>16&15]+ie[n>>12&15]+ie[n>>8&15]+ie[n>>4&15]+ie[n&15]+ie[a>>28&15]+ie[a>>24&15]+ie[a>>20&15]+ie[a>>16&15]+ie[a>>12&15]+ie[a>>8&15]+ie[a>>4&15]+ie[a&15]+ie[r>>28&15]+ie[r>>24&15]+ie[r>>20&15]+ie[r>>16&15]+ie[r>>12&15]+ie[r>>8&15]+ie[r>>4&15]+ie[r&15]+ie[u>>28&15]+ie[u>>24&15]+ie[u>>20&15]+ie[u>>16&15]+ie[u>>12&15]+ie[u>>8&15]+ie[u>>4&15]+ie[u&15]+ie[o>>28&15]+ie[o>>24&15]+ie[o>>20&15]+ie[o>>16&15]+ie[o>>12&15]+ie[o>>8&15]+ie[o>>4&15]+ie[o&15];return this.is224||(s+=ie[i>>28&15]+ie[i>>24&15]+ie[i>>20&15]+ie[i>>16&15]+ie[i>>12&15]+ie[i>>8&15]+ie[i>>4&15]+ie[i&15]),s};Tt.prototype.toString=Tt.prototype.hex;Tt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,r>>24&255,r>>16&255,r>>8&255,r&255,u>>24&255,u>>16&255,u>>8&255,u&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};Tt.prototype.array=Tt.prototype.digest;Tt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function ii(e,t,n){var a,r=typeof e;if(r==="string"){var u=[],o=e.length,i=0,s;for(a=0;a>6,u[i++]=128|s&63):s<55296||s>=57344?(u[i++]=224|s>>12,u[i++]=128|s>>6&63,u[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),u[i++]=240|s>>18,u[i++]=128|s>>12&63,u[i++]=128|s>>6&63,u[i++]=128|s&63);e=u}else if(r==="object"){if(e===null)throw new Error(Er);if(Au&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!Au||!ArrayBuffer.isView(e)))throw new Error(Er)}else throw new Error(Er);e.length>64&&(e=new Tt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var m=e[a]||0;l[a]=92^m,c[a]=54^m}Tt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}ii.prototype=new Tt;ii.prototype.finalize=function(){if(Tt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();Tt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),Tt.prototype.finalize.call(this)}};var xr=u3();xr.sha256=xr;xr.sha224=u3(!0);xr.sha256.hmac=o3();xr.sha224.hmac=o3(!0);var i3=xr;var s3=i3.sha256;function yn(e){return Promise.resolve(s3(e))}function si(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function fa(e,t){let n=s3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function l3(e,t){let n=await fa(e,t);return si(n)}async function li(e,t){let n=Nb(t),a=await fa(e,n);return si(a)}function Nb(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}async function wt(e){let{url:t,config:n,state:a}=e,r=new URL(t),u="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:m,targetLanguage:g,sourceLanguageUrlPattern:p,immediateTranslationPattern:f}=n,S=Cr(t,o),k=Cr(t,f),h=i,A=Object.keys(s);for(let N of A){let re=s[N];if(Cr(t,re)){h=N;break}}let _=l,B=Object.keys(c);for(let N of B){let re=c[N];if(re&&Cr(t,re)){_=N;break}}let L=Cr(t,m),w=c3(t,m);w||(w=Fn(t,_g)),w||(w=Fn(t,n.blockUrls));let y=c3(t,n.inputTranslationUrlPattern);y||(y=Fn(t,n.inputTranslationBlockUrls));let T=Fn(t,n.mutationBlockUrls),b=Object.keys(p),E={};for(let N of b){let re=p[N];if(re&&re.matches)for(let te of re.matches)E[te]=N}let R=Object.keys(E),D=sl(t,R);D&&(u=E[D]??"auto",E[D]&&E[D]!=="auto"&&sn(E[D]));let O=g||"zh-CN",M=r.hostname,F=await yn(M),$=r.pathname+r.search+r.hash,Z=await yn($),de=`https://${F}.com/${Z}`,G=await Hn(),me=await pm(),ge=n.translationStartMode;ge==="dynamic"&&k&&(ge="immediate");let v={targetLanguage:O,config:n,translationService:h,isTranslateUrl:L,sourceLanguage:u,mainFrame:document.body,isTranslateExcludeUrl:w,isMutationTranslationExcludeUrl:T,isInputTranslationExcludeUrl:y,rule:n.generalRule,url:t,encryptedUrl:de,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ge,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:S,cache:n.cache,translationTheme:_},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ge,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:S,cache:n.cache,translationTheme:_},localConfig:G};v.state.translationArea==="body"&&(v.config.generalRule.excludeTags=v.config.generalRule.excludeTags.filter(N=>!v.config.generalRule.bodyTranslateTags.includes(N)),v.config.generalRule.additionalExcludeSelectors=v.config.generalRule.additionalExcludeSelectors.filter(N=>N!==".btn"));let H=n.translationServices[v.translationService]||{};H.immediateTranslationTextCount!==void 0&&Ub(H.immediateTranslationTextCount)&&H.immediateTranslationTextCount>=0&&(v.state.immediateTranslationTextCount=H.immediateTranslationTextCount),v.translationService==="deepl"&&H&&H.authKey&&H.authKey.startsWith("immersive_")&&H.immediateTranslationTextCountForImmersiveDeepl!==void 0&&H.immediateTranslationTextCountForImmersiveDeepl>=0&&(v.state.immediateTranslationTextCount=H.immediateTranslationTextCountForImmersiveDeepl),H&&H.translationDebounce&&typeof H.translationDebounce=="number"&&(v.state.translationDebounce=H.translationDebounce);let Q=me.immediateTranslationTextCount;n.immediateTranslationTextCount!==Q&&(v.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let fe=n.rules,se;globalThis.PDFViewerApplication?se=fe.find(N=>N.isPdf):globalThis.immersiveTranslateEbookViewer?se=fe.find(N=>N.isEbook):globalThis.immersiveTranslateEbookBuilder?se=fe.find(N=>N.isEbookBuilder):se=fe.find(N=>Cr(t,N)),v.rule.isPdf&&(v.state.translationArea="main"),v.state.translationArea==="body"&&(v.rule.paragraphMinTextCount=1,v.rule.paragraphMinWordCount=1),se&&se.isEbookBuilder&&(v.state.translationStartMode="immediate");let I=n.generalRule;if(se&&(v.rule=Ho(I,se)),v.rule.selectors.length>0&&(v.rule.paragraphMinTextCount=2,v.rule.paragraphMinWordCount=1),v.state.translationArea==="body"&&v.rule.excludeTags&&(v.rule.excludeTags=v.rule.excludeTags.filter(N=>!v.rule.bodyTranslateTags.includes(N)&&!v.rule.forceTranslateTags.includes(N))),v.rule.mainFrameSelector){let N=document.querySelector(v.rule.mainFrameSelector);N&&(v.mainFrame=N)}return v}function Cr(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:r,excludeSelectorMatches:u}=t;return a&&a.length>0&&Fn(e,a)?!1:n&&n.length>0&&Fn(e,n)?!0:u&&u.length>0&&_o(u)?!1:!!(r&&r.length>0&&_o(r))}function c3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Fn(e,n)||a&&a.length>0&&_o(a))}function Ub(e){return typeof e=="number"}async function d3(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await lt({text:ir(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=oa(document.documentElement.lang)),e}function g3(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function cl(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let r=t[a],u=jb(a);if(typeof r=="object"||u){let o=r;u&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let m=n.substring(s+i.length,c),g=Object.keys(o).filter(p=>p!=="tag").map(p=>`${p}="${o[p]}"`).join(" ");n=n.replace(`${i}${m}`,`<${l} ${g}>${m}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,r.toString())}}),n}function Su(e,t,n){let a=e[t];if(!a)return n;let r=n.split("."),u="";do{u+=r.shift();let o=a[u];o!==void 0&&(typeof o=="object"||!r.length)?(a=o,u=""):r.length?u+=".":a=n}while(r.length);return a}function Oa(e,t,n,a,r){if(!e.hasOwnProperty(n))return t;let u=Su(e,n,t);return u===t&&n!==a&&(u=Su(e,a,t)),cl(u,r)}function jb(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function ci(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function vr(e,t,n=[],a,r){let u=["notranslate"];return a&&u.push(Dg),e&&(u.push(`${X}-target-translation-theme-${e}`),t?u.push(`${L0}-theme-${e}`):u.push(`${D0}-theme-${e}`)),n.length>0&&u.push(...n),t?u.push(L0):(u.push(D0),r&&u.push(Sg)),u}function wr(e){let t=["notranslate",kg];return e&&t.push(`${X}-target-translation-theme-${e}-inner`),t}function m3(e,t,n){let{rule:a,state:r}=n,{translationTheme:u}=r,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,m=lr(n),g="afterend",p=m[0].replace(/\//g,"/");p=p.replace(/"/g,'\\"'),p=p.replace(//g,">");let f=m[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let S=`${p}(\\d+)${f}`,k=new RegExp(S,"g"),h=ci(s);h=Ie.sanitize(h),o.length>0&&(h=h.replace(k,L=>{let w=h.indexOf(L),y=h[w-1]===" ",T=h[w+L.length]===" ",b=L.slice(m[0].length,-m[1].length),E=Number(b);if(isNaN(E))return L;let R=o[Number(E)];if(R&&R.type==="element"){let D=R.value.outerHTML;return y||(D=" "+D),T||(D=D+" "),D}else P.error("variable type not supported",R,L);return L}));let A=vr(u,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&A.push(Ag);let _=wr(u),B="";return a.translationBlockStyle&&(B=`style="${a.translationBlockStyle}"`),h=`<${n.rule.targetWrapperTag} ${B} class="${A.join(" ")}" ${Dn}="1"><${a.targetWrapperTag} class="${_.join(" ")}" ${Dn}="1">${h}`,e.inline||(l==="smart"?h=`
${h}`:h=`${l}${h}`),e.inline&&(l!=="smart"?h=`${l}${h}`:h=`<${a.targetWrapperTag} class="notranslate" ${Dn}="1"> ${h}`),c==="smart"?h=`${h}`:h=`${h}${c}`,{html:h,position:g}}function di(e,t){let n=null,{stayOriginalSelectors:a,delimiters:r,isPreWhitespace:u}=t,o=[],i={};for(let s=0;s2&&(k=`<${r[2]}${S}>`),i[S]=l,o.push({text:k,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";m&&(f=ga(dl(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Qt(l,a)){let S=Object.keys(i).length,k=`${r[0]}${S}${r[1]}`;r.length>2&&(k=`<${r[2]}${S}>`),i[S]=l;let h=gl(o).endsWith(" ")?" ":"",A=ga(l.innerText||l.textContent),_=ga(l.nextSibling).startsWith(" ")?" ":"",B=wu(h+A+_),L=B[0]+k+B[1];if(h===" ")L=L.trimStart();else if(!L.startsWith(" ")){let w=wu(l.previousSibling)[1];w===""&&(w=" "),L=w+L}o.push({text:L,type:"variable"})}else{let f=gl(o).endsWith(" ")?" ":"",S=ga(l.innerText||l.textContent);m&&(S=ga(dl(l)));let k=ga(l.nextSibling).startsWith(" ")?" ":"",h=wu(f+S+k),A=h[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+h[1];if(f===" ")A=A.trimStart();else{let _=wu(l.previousSibling)[1];_===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(_=" "),A=_+A}o.push({text:A,type:"text"})}else{let f=gl(o).endsWith(" ")?" ":"",S="";l.textContent&&(S=ga(dl(l))),f===" "&&(S=S.trimStart()),o.push({text:S,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(m=o[l-1].text),l2){let c=l[2];return zb({delimiterTag:c,targetText:e.targetText,inline:r,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=m3(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function dl(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function zb(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:r,wrapperPrefix:u,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:m}=e;o=o||[];let g=ci(e.targetText);g=Ie.sanitize(g);let p=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),S=new RegExp(`<${t}(\\d+)>`);o.length>0&&(p=p.replace(f,_=>{let B=p.indexOf(_),L=p[B-1]===" ",w=p[B+_.length]===" ",y=_.match(S);if(!y)return _;let T=y[1],b=Number(T);if(isNaN(b))return _;let E=o[Number(b)];if(E&&E.type==="element"){let R=E.value.outerHTML;return L||(R=" "+R),w||(R=R+" "),R}else if(E&&E.type==="text"){let R=E.value;return L||(R=" "+R),w||(R=R+" "),R}else P.error("variable type not supported",E,_);return _}));let k=vr(l,n,a||[],i,c),h=wr(l),A="";return m&&(A=`style="${m}"`),p=`<${r} ${A} class="${k.join(" ")}" ${Dn}="1"><${r} class="${h.join(" ")}" ${Dn}="1">${p}`,n||(u==="smart"?p=`
${p}`:p=`${u}${p}`),n&&(u!=="smart"?p=`${u}${p}`:p=`<${r} class="notranslate" ${Dn}="1"> ${p}`),s==="smart"?p=`${p}`:p=`${p}${s}`,{html:p,position:"afterend"}}function gl(e){let t=e[e.length-1];return t?t.text:""}function ln(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var Hb={sanitize:e=>e};function mi(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:ln(e.ctx),onParagraph:Du.bind(null,e),onFrame:n=>{pl(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),or&&st(t,"consumeContainer",e.id))}function pl(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!cr(t))return;P.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ar(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else P.debug("onFrame shadowRoot",t.host),Ar(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ar(e,t,n=!0){let{globalStyles:a,globalAttributes:r}=ln(t.ctx),u=0;if(s(t,e,n))return;if(Mn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(Mn(c)&&(a&&rl(c,a),r&&ol(c,r)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(qt.mark(l.currentNode,t.id);l.nextNode();){qt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let m=l.currentNode;if(qt.mark(l.currentNode,t.id),i(m)){o(m);continue}else break}if(!l.parentNode())return}}}catch{}if(u==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){qt.clearMark(l),u++,t.immediateTranslateCapacity>=0?mi(t,l):(or&&st(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return pl(t,l.shadowRoot,n),!1;if(c==="iframe")return pl(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let m=t.containerRule;if(m.selectors&&m.selectors?.length>0)return ri(l,m.selectors);if(m.pageHeight){let g=l.scrollHeight;if(g>0&&g0)return!0}return!1}function s(l,c,m){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||m&&qt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let p=ln(l.ctx);return!!il(c,{excludeSelectors:p.excludeSelectors,selectors:p.selectors,stayOriginalSelectors:p.stayOriginalSelectors})}}function fl(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!qt.isMarked(a,e.ctxId))return;let r=a.contains(e.rootNodes[0]),u=a.contains(e.targetNodes[0]);if(r&&u)n="dual";else if(r)n="original";else if(u)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(gi(e.rootNodes),f3(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=ml(e.rootNodes);gi(e.rootNodes),kr(o,a,e.targetNodes||[]),f3(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];kr(o,a,e.rootNodes||[]),h3(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=ml(e.rootNodes);kr(o,a,e.targetNodes||[]),h3(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=ml(e.targetNodes);gi(e.targetNodes),kr(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&gi(e.targetNodes)}catch(o){P.error(o)}}}function f3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{st(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function h3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let r=sr(a,"immersiveTranslateClassBak");Bo(a,"immersiveTranslateClassBak"),a.className=r});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function ml(e){return e?e[e.length-1].nextSibling:null}function gi(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function kr(e,t,n){let a=e;t&&(a?n.forEach(r=>{a.parentNode?.insertBefore(r,a)}):n.forEach(r=>{t.appendChild(r)}))}var Wb=St(bl,300);async function Du(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||$b(t.rootNodes)||t.stepState>=2)return;t.stepState=2,or&&st(a,"onParseParagraph",e.id);let{ctx:r}=e,{rule:u}=r,o=lr(r),i=di(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:r.rule.stayOriginalTags.concat(r.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(r.rule.stayOriginalSelectors).concat(r.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await yl(t,{excludeLanguages:r?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:r.state.isDetectParagraphLanguage,targetLanguage:r.targetLanguage,noTranslateRegexp:r.rule.noTranslateRegexp,delimiters:ni(r.config.translationServices[r.translationService]?.placeholderDelimiters),minTextCount:n||r.state.translationArea==="body"?2:u.paragraphMinTextCount,minWordCount:n||r.state.translationArea==="body"?1:u.paragraphMinWordCount,ignoreZhCNandZhTW:r.rule.ignoreZhCNandZhTW});if(s){if(P.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(qb(e,t.text),hl(e,t)):(or&&st(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function $b(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?Mn(t)&&t.classList.contains(rn):!1}function qb(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function hl(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),or&&st(t.commonAncestorContainer,"consumeParagraph",e.id),Wb.call(e,e.ctx)}async function bl(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await _n(a,t,(r,u,o)=>{let i=o.id,s=Kb(e,i.toString());s&&Gb.call(null,r,u,o,s,t,n)})}catch(r){P.error("translateCurrentQueue error",r);return}}function Kb(e,t){return e.find(n=>n.id===t)}function Gb(e,t,n,a,r,u){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${X}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Tr(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(P.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=r,l=n.id,c=document.createElement(s.targetWrapperTag);st(c,Eg,l.toString()),c.classList.add("notranslate",rn,rn+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",r.targetLanguage);let m=a.rootNodes[a.rootNodes.length-1].nextSibling;kr(m,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` -`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let p=Oa(an,"retryAllParagraphs",r.config.interfaceLanguage,"zh-CN"),f=Oa(an,"errorTooltipTitle",r.config.interfaceLanguage,"zh-CN"),S=`<${s.targetWrapperTag} class="${X}-error notranslate"><${s.targetWrapperTag} class="${X}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=Ie.sanitize(S)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=p3(a,r),l=document.createElement(r.rule.targetWrapperTag);l.classList.add("notranslate",rn),l.setAttribute("lang",r.targetLanguage),l.setAttribute(Dn,"1");let c=Hb.sanitize(s);l.innerHTML=c,a.targetNodes=[l],fl(a,u),o=!0}else P.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function yl(e,t){let{text:n}=e,a=await lt({text:n||"",minLength:10}),{targetLanguage:r}=t;if(!Gm({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=yr());let s=Ln(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return sa(c,r,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(p=>sa(c,p,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var Vb=[];function b3(e){Vb.push(e)}function y3(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(Ao)||Tl(e).catch(u=>{P.error("translateTitle error:",u.name,u.message,u.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var fi="";async function Tl(e){let t=document.title;if(!t||t.includes(Ao))return;fi!==t&&(fi=t);let n=await Pn(e,t);if(!ai(e,n))try{let a=await ha({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=fi+Ao+a.text)}catch(a){throw a}}function T3(e){e.rule.isTranslateTitle&&(document.title=fi)}var El="Original";function Ke(){return El}function Nt(e){El=e,E3(El)}var xl;function x3(e){let t=e.ctx.rule.aiRule;if(P.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=ln(e.ctx),r=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(r,1);let u,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{hi(e,l,a)}),xl=new MutationObserver(l=>{l.forEach(function(c){if(Mn(c.target)){if(o==u&&c.target===u&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=u){c.removedNodes?.forEach(m=>{m===u&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==u){if(o.translated)return;o.translated=!0,P.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),hi(e,o,a);return}t.streamingChange&&u&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(m=>{let g=m.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(P.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),hi(e,g,a))},100))})}})}),xl.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){$n(l,[t.streamingSelector])&&(u=l,P.debug("streamingNode",u)),$n(l,[t.messageWrapperSelector])&&(o=l,P.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),P.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),hi(e,o,a),u=void 0,o=null}}function hi(e,t,n){ma({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Du(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function C3(){xl?.disconnect()}var J=null;function yi(){return J||null}function Ti(e){Jb(e),ny(e),Qb(e),ty(e),ua(document,e),Nt("Translated"),ey(J),Zb(J),b3(ba),Yb(J)}function Jb(e){e.rule.initialSelectorGlobalAttributes&&Qm(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function Yb(e){x3(e)}function Xb(){C3()}function Zb(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ar(n,e)})}async function Qb(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,r=e.localConfig.tempTranslationUrlMatches||[],u=r.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;u>-1||(r.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Wn({...e.localConfig,tempTranslationUrlMatches:[...r]})}}function ey(e){e.ctx.rule.isTranslateTitle&&(Tl(e.ctx),e.titleDynamicObserver=y3(e.ctx))}function ty(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function ny(e){let t=Zt();J&&(t=J.id),J=J||{},J.ctx=e,J.id=t,J.paragraphQueue=J.paragraphQueue||[],J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.containerRule={pageHeight:screen.availHeight,selectors:J.rule.selectors},J.paragraphEntities=J.paragraphEntities||{},J.autoIncreaseParagraphId=J.autoIncreaseParagraphId||1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.immediateTranslateCapacity=e.state.immediateTranslationTextCount,J.observeContainers=J.observeContainers||[],J.observeParagraphs=J.observeParagraphs||[],J.dynamicContainerObserver=J.dynamicContainerObserver||iy(J),J.ignoreResizeObserver=J.ignoreResizeObserver||sy(J),J.containerVisibleObserver=J.containerVisibleObserver||ry(J),J.paragraphVisibleObserver=J.paragraphVisibleObserver||uy(J),J.injectCssToDocument=bi,J.walkContainer=ma,J.translateState=e.state.translationMode||e.config.translationMode||"dual",J.allInlineWindows=[window],window.onerror=ay(J,e),window.immersiveTranslateSwitchTranslateState=vl.bind(J)}function w3(e,t){t.getRootNode()instanceof ShadowRoot?bi(t.getRootNode(),e):bi(t.ownerDocument,e),Cl(e)}function Cl(e){J||(J={},J.ctx=e,J.id=Zt(),J.paragraphQueue=[],J.injectCssToDocument=bi,J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.paragraphEntities={},J.autoIncreaseParagraphId=1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.translateState=e.config.translationMode||"dual",J.observeContainers=[],J.observeParagraphs=[],J.allInlineWindows=[window],window.switchTranslateState=vl.bind(J))}function ba(e=!0){J&&(Nt("Original"),Xb(),J.interruptEffectDOM=!0,J.ignoreResizeObserver?.disconnect(),J.dynamicContainerObserver?.disconnect(),J.containerVisibleObserver?.disconnect(),J.paragraphVisibleObserver?.disconnect(),J.titleDynamicObserver?.disconnect(),T3(J.ctx),$m(),qm(),e&&vl.call(J,"original"),Object.values(J.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),J=null)}function ay(e,t){e.interruptEffectDOM=!1;let n;return function(a){let r=a.message,u=!1;return r?.indexOf("Minified React error")>=0&&(u=!0),u&&(clearTimeout(n),ba(),n=setTimeout(()=>{Ti(t)},e.urlChangeDelay||2e3)),!0}}function ry(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(mi(e,a.target),n.unobserve(a.target))})})}function uy(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let r=a.target;(r.paragraphs||[]).forEach(o=>{hl(e,o)}),n.unobserve(r)}})})}var v3;function oy(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(v3),e.translateState=="original"?!1:(ba(e.urlChangeDelay>20),v3=setTimeout(()=>{let r=e.ctx;Ti(r)},e.urlChangeDelay),!0)):!1}function iy(e){return new MutationObserver(t=>{if(!oy(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!qt.isSkipMarkEle(n.target)&&!qt.isMarked(n.target,e.id))continue;let r=(n.target?.paragraphs||[]).reduce((u,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...u,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&$n(n.target,e.ctx.rule.mutationObserverContainerSelectors)){qt.clearMark(n.target),n.target.paragraphs=void 0,mi(e,n.target);return}n.addedNodes.forEach((u,o)=>{u.nodeType===Node.ELEMENT_NODE&&(r.includes(u)||Ar(u,e))})}})}function sy(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let r=a.target,u=globalThis.getComputedStyle(r);ul(u)||(n.unobserve(a.target),Ar(r,e))}})}function vl(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{fl(t,e)}),e=="original"&&document.querySelectorAll(`.${rn}`).forEach(t=>t.remove())}function bi(e,t){if(e instanceof HTMLIFrameElement){ua(e.contentDocument,t);return}ua(e,t)}async function k3(e){let t=Ct(),n="auto";if(le()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=I0(e.mainFrame):a=ir(e.mainFrame).slice(0,1e3),n=await lt({text:a})}else if(t)n=await lt({text:ir(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=I0(e.mainFrame),n=await lt({text:a})}else n=await S3();return n==="auto"&&(n=await d3()),ti(n),n}async function A3(){if(!J)return;document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=J.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){J.paragraphQueue.push(n);let u=a.commonAncestorContainer.querySelector(`[${vo}='${n}']`);u&&u.remove()}}bl.call(J,J.ctx)}var D3={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},L3={...an,"zh-CN":{...D3["zh-CN"],...an["zh-CN"]},"zh-TW":{...D3["zh-TW"],...an["zh-TW"]}},Sr=L3;function ya(e,t,n){return Oa(L3,e,t,So,n)}var Ei=()=>Xt.filter(e=>e!=="auto"),kt=(e,t,n,a)=>{let r=Lg[e]||e,u=Pg[e],o=Mg[e],i={"zh-CN":u,"zh-TW":o,en:r};if(n)return i[e]?i[e]:r;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${r})`}else return r};function Dr(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{P.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:xo,payload:e},"*")});let n=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(n)}function wl(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((u,o)=>(u[t[o]]=o,u),{}),r=Object.keys(a);for(let u of r){let o=u.replace(/MacCtrl/ig,"Ctrl");o&&Ne(o,i=>{i.preventDefault(),Dr({method:a[u]})})}}var At=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,r=Date.now();if(t.length=u?(t.push(r),0):(t.push(u),u-r)}};function Ta(e){return e!=null}function F3(e,t,n){return`${e.type}#${t}#${n}`}function _3(e,t,n,a,r){return{body:r,id:a,type:F3(e,t,n)}}function ly(e,t,n,a){return{id:n,response:a,type:F3(e,"ask",t)}}function B3(e,t,n,a){if(Ta(a)){let r=a.type;if(Ta(r)&&Ta(a.body)){let[u,o,i]=r.split("#");return u===e.type&&o===t&&i===n}else return!1}else return!1}function cy(e,t,n){if(Ta(n)){let a=n.type;if(Ta(a)&&Ta(n.response)){let[r,u,o]=a.split("#");return r===e.type&&u==="ask"&&o===t}else return!1}else return!1}function dy(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function gy(e,t,n,a){return new Promise(r=>{let u=o=>{let i=o.data;cy(t,n,i)&&i.id===a&&(e.removeEventListener("message",u),r(i.response))};e.addEventListener("message",u)})}function my(e,t,n,a){let r=u=>{let o=u.data;B3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",r),[e,r]}function P3(e,t,n,a,r,u){let o=async i=>{let s=i.data;if(B3(n,"ask",a,s)){let l=await u(s.body);t=i.source,t.postMessage(ly(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function py(e,t,n,a,r){let u=Math.random().toString();return e.postMessage(_3(t,"tell",n,u,a),r)}async function M3(e,t,n,a,r,u,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let m=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await gy(e,n,a,i);clearTimeout(m),l(g)});return t.postMessage(_3(n,"ask",a,i,r),u),s}var Bn=class{constructor(t,n,a=window,r="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=r;this.listeners=[];P3(a,n,this.getSystemProtocol("ping"),"ping",r,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let r=0;r<=n;r++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",r=window){let u=n.contentWindow;if(Ta(u))return new Bn(t,u,r,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:r=window.parent}={}){return new Bn(t,r,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new Bn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await M3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(my(this.thisWindow,this.protocol,t,n))}tell(t,n){py(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(P3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return M3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){dy(this.listeners)}};var fy;function xi(){return fy}var hy=new At({limit:7,interval:1250}),by={tencent:new At({limit:3,interval:1350}),baidu:new At({limit:1,interval:1550}),strict:new At({limit:1,interval:1050}),d:new At({limit:1,interval:1050}),youdao:new At({limit:5,interval:1050}),you:new At({limit:5,interval:1050}),cai:new At({limit:5,interval:1050}),google:new At({limit:10,interval:1050}),deepl:new At({limit:10,interval:1050}),transmart:new At({limit:30,interval:1050}),papago:new At({limit:3,interval:1150}),openai:new At({limit:10,interval:1300}),chatgpt:new At({limit:1,interval:1350})};function Lu(e){return by[e]||hy}async function R3(e){if(Ct()){let n=xi();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return P.error("can not comunicate with root frame, use strict limiter",a),Lu("strict").getDelay()}else return Lu("strict").getDelay()}else return Lu(e).getDelay()}async function O3(e,t){if(!Ct()){let a=Lu(e);t&&a.setOptions(t)}}async function I3(e){let t=e.key;return{value:Lu(t).getDelay()}}var Ci=new Map;async function kl(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=ca(e.body)),Ci.has(t))return Ci.get(t);let n=ue(e);Ci.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Ci.delete(t)},3e4)}}async function N3(e){return kl(e)}async function Pu(e){if(Ct()){let n=xi();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw P.error("can not comunicate with root frame, use strict limiter",a),a}else return kl(e)}else return kl(e)}var Pr={},yy={root:"",lang:"en",fallbackLang:"en"};function Al(e,t){let n=Object.assign({},yy,e);Pr=t||Pr;let[a,r]=W(n.lang),[u,o]=W(Pr),[i,s]=W(!1),l=m=>{if(u.hasOwnProperty(m))return;s(!1);let g=g3(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(p=>p.json()).then(p=>{Pr[m]=p,o({...Pr}),s(!0)}).catch(p=>{o({...Pr}),s(!0)}))};return ke(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:r,t:(m,g)=>{if(!u.hasOwnProperty(a))return m;let p=Su(u,a,m);return p===m&&a!==n.fallbackLang&&(p=Su(u,n.fallbackLang,m)),cl(p,g)},isReady:i}}var Dl=Ju(null),Sl={root:"assets",lang:"en",fallbackLang:"en"},vi=e=>{let{t,setLang:n,lang:a,isReady:r}=Al({root:e.root||Sl.root,lang:e.lang||Sl.lang,fallbackLang:e.fallbackLang||Sl.fallbackLang,getUrl:e.getUrl},e.translations);return d(Dl.Provider,{value:{t,setLang:n,lang:a,isReady:r},children:e.children})};function U3(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let r={},u=Object.keys(n);for(let l of u){let m=n[l].matches;for(let g of m)r[g]||(r[g]=[]),r[g].push(l)}let o=r[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(m=>m!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Mu(e,t=2e3){return n=>{let a,r=0;return u=>{++r==e&&(n(u),r=0),clearTimeout(a),a=setTimeout(()=>r=0,t)}}}function j3(e){let t;try{t=new URL(e)}catch{return!1}let n=z3(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(Ty(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function Ty(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function H3(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function W3(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function qn(e){let{items:t,maxWidth:n}=e;return n=n||128,d("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let r=a.target.value,u=t.find(o=>o.value===r);u&&u.onSelected(u)},children:t.map((a,r)=>d("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+r))})}function $3(e){let{items:t,maxWidth:n,isInput:a,value:r}=e;return n=n||128,a?d("input",{value:r,onChange:u=>{e.onChange(u.target.value)}}):d("select",{autoComplete:"off",style:{maxWidth:`${n}px`},value:t.find(u=>u.selected)?.value,onChange:u=>{let o=u.target.value,i=t.find(s=>s.value===o);i&&i.onSelected(i)},children:t.map((u,o)=>d("option",{value:u.value,selected:u.selected,children:u.label},"selectlink"+o))})}var wi="DROP_DOWN_DEFAULT_VALUE";function Ll(e){let{showArrow:t,onSelected:n,className:a,menus:r,maxWidth:u}=e;a=a||"",t=t??!0,u=u||70;let o=wn(null);return d("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:wi,style:{maxWidth:`${u}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==wi){o.current.value=wi,o.current?.dispatchEvent(new Event("change"));let l=r.find(c=>c.value===s);l&&n(l)}},children:[{value:wi,label:e.label}].concat(r).map((i,s)=>d("option",{value:i.value,children:i.label},"option-"+s))})}function be(){return Qu(Dl)}function Pl(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:r}=be(),u=t.name;return t.label&&(u=t.label),t.labelKey&&(u=r(t.labelKey)),t.type==="select"?d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[u,"\uFF1A"]}),d(qn,{items:t.options.map(o=>({label:`${o.label?r(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Ea(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var Ey=({date:e})=>{let{t}=be(),[n,a]=W(!1);return ke(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},xy=({minVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},Cy=()=>{let{t:e}=be();return d("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},vy=({message:e,handleSyncing:t,date:n})=>{let{t:a}=be();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Ml(e){let{isShowError:t,request:n}=e,[a,r]=W(null),{t:u}=be(),[o,i]=W(null),[s,l]=W(null),[c,m]=W(""),[g,p]=W(!1),[f,S]=W(!1),[k,h]=W(!1),[A,_]=W(null),[B,L]=W(null),w=da(),y=async()=>{m("");let T=o;if(o===null)try{let b=await n({url:aa});b?(i(b),T=b,p(!0)):(m(u("unknownError")),l(null))}catch(b){l(null),m(b.message);return}T!==null?(e.setStorageBuildinConfig(T),l(!1),r(T.buildinConfigUpdatedAt)):(m(u("canNotFetchRemoteRule")),l(null))};return ke(()=>{ze().then(T=>{let b=T.buildinConfigUpdatedAt;_(T);let E=new Date(b);if(r(b),w==="0.0.0"){h(!0);return}n({url:aa}).then(R=>{let D=R,O=D.minVersion,M=w;i(D);let F=D.latestVersion;if(F&&(Ea(M,F)?L(!0):L(!1)),Ea(M,O)){let $=D.buildinConfigUpdatedAt;new Date($)>E?(l(!0),y()):l(!1)}else S(!0),l(null)}).catch(R=>{l(null),m(R.message)})})},[]),ke(()=>{ze().then(T=>{_(T)})},[a]),A?d("div",{class:"text-sm mt-2",style:{maxWidth:218},children:k?d(Cy,{}):c?t===!1?null:d(vy,{handleSyncing:y,message:c,date:a||""}):f?t===!1?null:d(xy,{minVersion:o.minVersion}):s===null||s===!0?null:g?d(Ey,{date:a}):null}):null}function Fl(e){let t=da(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:r,onTranslateLocalHtmlFile:u,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:m,config:g,openAboutPage:p,onTranslateTheWholePage:f,onToggleEnabled:S,openOptionsPage:k,ontranslateToThePageEndImmediately:h,onSetPageLanguage:A,onToggleTranslate:_,onTranslateLocalPdfFile:B,onTranslatePdf:L,onRestorePage:w,ctx:y,currentUrl:T,currentLang:b,onClose:E,onTranslatePage:R,onSetLocalConfig:D,onMouseTriggerChanged:O,errorMsg:M,disabledButton:F,noPermissionPDF:$}=e,Z=a,[de,G]=W(""),[me,ge]=W(M),{t:v,lang:H}=be(),Q=60;H.startsWith("zh")||(Q=65);let fe=null,se=null,I=null,N=null,re=null,te=null,ae=null,ne=null,oe=null,Y=null,ce=null,Le=null,Oe=!0;if(g){Dt()&&g&&(Oe=g.generalRule.showSponsorOnSafari);let{translationService:j,translationServices:pe,translationUrlPattern:_e}=g;hn[j]&&(ne=K0(j,y)),pe&&pe[j]?Le=pe[j]||{}:Le={};try{oe=new URL(T||"")}catch{}if(T&&j3(T)){Y=H3(oe.hostname),ce=W3(T);let{matches:Ae,excludeMatches:De}=_e;se=Ae.includes(Y),fe=Ae.includes(oe.hostname),N=De.includes(Y),I=De.includes(oe.hostname),te=Ae.includes(ce),ae=De.includes(ce)}}if(g&&b&&b!=="auto"){let{translationLanguagePattern:j}=g,{matches:pe}=j;pe.includes(b)?re=!0:re=!1}let he=j=>{j.preventDefault(),k()},Xe=j=>{Z(pe=>(pe.alpha?G("Success disable alpha!"):G("Success enable alpha!"),{...pe,alpha:!pe.alpha}))},pt=j=>{Z(pe=>({...pe,translationMode:j})),o(j)},We=()=>{Z(j=>({...j,translationArea:"body"})),f()},$e=()=>{Z(j=>({...j,translationArea:"main"})),n()},qe=(j,pe,_e,Ae)=>{if(j==="default"){Z(Et=>{let Pe={...Et.translationUrlPattern};return{...Et,translationUrlPattern:{...Et.translationUrlPattern,matches:Ye([oe?.hostname,Y,T],Pe.matches),excludeMatches:Ye([oe?.hostname,Y,T],Pe.excludeMatches)}}});return}let De=j,Ve=De==="matches"?"excludeMatches":"matches";oe&&Z(Et=>{let Pe={...Et.translationUrlPattern};return Pe[De]=un(pe,Pe[De]),Ae.length>0&&(Pe[De]=Ye(Ae,Pe[De])),Pe[Ve]=Ye(_e,Pe[Ve]),{...Et,translationUrlPattern:{...Et.translationUrlPattern,...Pe}}}),De==="matches"&&l==="Original"?setTimeout(()=>{R(),E()},100):De==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{w(),E()},100)},Ht=j=>{if(!j){Z(Ae=>{let De={...Ae.translationLanguagePattern};return{...Ae,translationLanguagePattern:{...Ae.translationLanguagePattern,matches:Ye(b,De.matches),excludeMatches:Ye(b,De.excludeMatches)}}});return}let pe=j,_e=pe==="matches"?"excludeMatches":"matches";b&&Z(Ae=>{let De={...Ae.translationLanguagePattern};return De[pe]=un(b,De[pe]),De[_e]=Ye(b,De[_e]),{...Ae,translationLanguagePattern:{...Ae.translationLanguagePattern,...De}}}),pe==="matches"&&l==="Original"&&setTimeout(()=>{R(),E()},100)},Jn=oe?.pathname.toLowerCase().endsWith(".pdf"),Ze=v("translate");l==="Translated"||l==="Error"?Ze=v("show-original"):l==="Original"?Jn?Fa()&&oe.protocol==="file:"||$?Ze=v("translate-firefox-local-pdf"):le()?Ze=v("noSupportTranslate-pdf"):Ze=v("translate-pdf"):Ze=v("translate"):Ze=v(l);let vn=v("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(g.shortcuts.toggleTranslatePage&&(mr()&&y.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ze+=` (${v(`fingers.${y.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ze+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(vn+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let dn=[];y&&(dn=$o(y));let ft=j=>{j.preventDefault(),E()},Gt=Mr(y.config.translationService,y.config.targetLanguage);return d("div",{class:"p-3",children:[d("div",{class:"text-sm",children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[v("popupSourceLanguage"),"\uFF1A"]}),d(qn,{items:Xt.map(j=>({label:kt(j,g.interfaceLanguage),value:j,selected:j===y.sourceLanguage,onSelected:pe=>{A(pe.value)}}))})]}),g&&g.targetLanguage&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[v("popupTarget"),"\uFF1A"]}),d(qn,{items:Gt.filter(j=>j!=="auto").map(j=>({label:kt(j,g.interfaceLanguage),value:j,selected:j===g.targetLanguage,onSelected:pe=>{Z(_e=>({..._e,targetLanguage:pe.value}))}}))})]}),ne&&dn.length>0&&d(ut,{children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[v("popupService"),"\uFF1A"]}),d(qn,{items:dn.map(j=>({label:`${v("translationServices."+j.id)}${j.ok?"":" "+v("needAction")}`,value:j.id,selected:j.selected,onSelected:pe=>{let _e=dn.find(Ae=>Ae.id===pe.value);_e.ok?(Z(Ae=>({...Ae,translationService:_e.id})),_e.props.length===0?setTimeout(()=>{R()},1):setTimeout(()=>{w()},1)):(Z(Ae=>({...Ae,translationService:_e.id})),setTimeout(()=>{k()},100))}}))})]}),Le&&ne.props.length>0&&ne.props.map((j,pe)=>d("div",{class:"pl-4 text-sm",children:d(Pl,{field:j,value:Le[j.name],onChange:_e=>{Z(Ae=>{let De=Ae.translationServices||{},Ve=De[ne.id]||{};return setTimeout(()=>{w()},1),{...Ae,translationServices:{...De,[ne.id]:{...Ve,[j.name]:_e}}}})}},"field-"+pe)},"service"+pe))]}),oe&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:v("forThisSite")}),d(qn,{items:[{label:v("default"),value:"default",selected:fe===!1&&I===!1&&!se&&!N&&!te&&!ae,onSelected:()=>{qe("default",oe.hostname,[],[]);let j=oe.hostname,pe=y.localConfig.tempTranslationUrlMatches||[],_e=pe.filter(De=>De.match!==j),Ae=!1;_e.length!==pe.length&&(Ae=!0),Ae&&D({...y.localConfig,tempTranslationUrlMatches:[..._e]})}},ce&&{label:v("alwaysTranslateSomeSite",{hostname:v("currentUrl")}),value:"matchesUrl",selected:te,onSelected:()=>{qe("matches",ce,[ce],[])}},{label:v("alwaysTranslateSomeSite",{hostname:oe.hostname}),value:"matches",selected:fe,onSelected:j=>{qe(j.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:v("alwaysTranslateSomeSite",{hostname:Y}),value:"matchesWild",selected:se,onSelected:()=>{qe("matches",Y,[ce,oe.hostname,Y],[oe.hostname])}},ce&&{label:v("neverTranslateSomeSite",{hostname:v("currentUrl")}),value:"excludeMatchesUrl",selected:ae,onSelected:()=>{qe("excludeMatches",ce,[ce],[])}},{label:v("neverTranslateSomeSite",{hostname:oe.hostname}),value:"excludeMatches",selected:I,onSelected:j=>{qe(j.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:v("neverTranslateSomeSite",{hostname:Y}),value:"excludeMatchesWild",selected:N,onSelected:()=>{qe("excludeMatches",Y,[oe.hostname,ce,Y],[oe.hostname])}}].filter(Boolean)})]}),O&&_a()&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[v("mouse-translate"),"\uFF1A"]}),d(qn,{items:Lo.filter(j=>!(Lo.includes(g.generalRule.mouseHoverHoldKey)&&j==="OtherCustom")).map(j=>{let pe=v("mouseHoldKey",{key:j}),_e=Lo.includes(g.generalRule.mouseHoverHoldKey),Ae=j===g.generalRule.mouseHoverHoldKey;return j==="Auto"?pe=v("mouseHoldKeyAuto"):j==="Off"?pe=v("mouseHoldKeyOff"):j==="OtherCustom"?pe=_e?v("mouseHoldKeyOther"):v("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):j==="Other"&&(pe=v("mouseHoldKeyOther")),_e||j==="OtherCustom"&&(Ae=!0),{label:pe,value:j,selected:Ae,onSelected:De=>{De.value==="Other"?k("#interface"):O(De.value)}}})})]})]}),d("div",{class:"",children:d("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Jn?L&&L():_()},"aria-busy":l==="Translating",disabled:F||l==="Translating",children:Ze})}),d("div",{class:"text-sm",children:de}),d("div",{class:"text-sm",children:me}),d("div",{class:"flex justify-between flex-wrap",children:[b&&b!=="auto"?d("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[d("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!re,onChange:j=>{let pe=j.target.checked;Ht(pe?"matches":void 0)}}),v("alwaysTranslateSomeLanguage",{language:kt(b,g.interfaceLanguage,!1,!0)})]}):d("span",{}),d("div",{class:"flex flex-end flex-grow",children:d(Ll,{label:v("more"),showArrow:!0,maxWidth:Q,onSelected:j=>{j.value==="changeToOnlyTranslationMode"?pt("translation"):j.value==="changeToDualTranslationMode"?pt("dual"):j.value==="translateTheWholePage"?f():j.value==="translateToThePageEndImmediately"?h():j.value==="translateTheMainPage"?n():j.value==="showTranslationOnly"||(j.value==="translateLocalPdfFile"?B&&B():j.value==="translateLocalHtmlFile"?u&&u():j.value==="translateLocalSubtitleFile"?i&&i():j.value==="donate"?(globalThis.open(g.donateUrl),E()):j.value==="feedback"?(globalThis.open(g.feedbackUrl),E()):j.value==="options"?(k(),E()):j.value==="changeToTranslateTheWholePage"?We():j.value==="changeToTranslateTheMainPage"?$e():j.value==="about"?p():j.value==="toggleEnabled"?S():j.value==="openEbookViewer"?m():j.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+v("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+v("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+v("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+v("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+vn,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+v("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+v("browser.openEbookBuilder"),value:"openEbookBuilder"},!le()&&{label:"\u{1F4C1} "+v("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!le()&&{label:"\u{1F310} "+v("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+v("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?v("clickToDisableExtension"):v("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+v(Oe?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),d("footer",{children:[d(Ml,{isShowError:!1,request:r,setStorageBuildinConfig:s}),d("div",{class:"mt-3 text-sm flex justify-between",children:[d("a",{href:"#",class:"secondary",onClick:he,children:v("options")}),le()&&d("a",{href:"#",class:"secondary",onClick:ft,children:v("close")}),d("span",{class:"immersive-translate-no-select muted",onClick:Mu(7)(Xe),children:["V",t,g.enabled?null:d("a",{href:"#",onClick:S,children:[" ","(",v("hasBeenDisabled"),")"]})]})]})]})]})}async function q3(e){try{let t=new Date;P.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await z.storage.local.set({[vg]:t.toISOString()}),await wy(),le()||await K3()}catch(t){P.error("run cron task failed",t)}}async function wy(){try{let e=await Tn(),t=await ue({url:aa}),n=e.buildinConfigUpdatedAt,a=new Date(n),r=t.buildinConfigUpdatedAt,u=new Date(r),o=t.minVersion,i=z.runtime.getManifest().version;Ea(i,o)?u>a?(await z.storage.local.set({buildinConfig:t}),P.info(`sync remote rules success, latest: ${new Date(r).toLocaleString()}`)):P.debug(`no need to sync rules, latest: ${a}`):P.info(`local version is too old, please update to ${o} or later`)}catch(e){P.error("sync rules error: ",e)}}function Bl(e){let{onClose:t}=e,[n,a]=W("Original"),[r,u,o,i]=bt(()=>{setTimeout(()=>{_("updateGlobalContext",!1)()},250)}),[s,l]=W(null),[c,m]=W(globalThis.location.href),[g,p]=W("auto"),[f,S]=W(null),k=F=>{a(F.detail)},h=F=>{p(F);let $=U3(c,F,s.sourceLanguageUrlPattern);u(Z=>({...Z,sourceLanguageUrlPattern:$})),sn(F)},A=()=>{m(globalThis.location.href)};ke(()=>(document.addEventListener(Co,k,!1),Tn().then(F=>{l(F);let $=Ln();p($);let Z=Ke();a(Z),q3(F.interval)}),document.addEventListener("urlChange",A),()=>{document.removeEventListener("pageTranslatedStatus",k),document.removeEventListener("urlChange",A)}),[]),ke(()=>{Tn().then(F=>{l(F)})},[r]),ke(()=>{c&&s&&wt({url:c,config:s}).then(F=>{S(F)})},[c,s]);let _=(F,$,Z={})=>()=>{Dr({method:F,data:Z||{}}),$&&t()},B=()=>{t()},L=()=>{u(F=>({...F,enabled:!F.enabled})),setTimeout(()=>{B()},50)},w=()=>{_l(),setTimeout(()=>{B()},50)},y=()=>{_l(),setTimeout(()=>{B()},50)},T=(F="")=>{Ai(!0,F),setTimeout(()=>{t()},50)},b=()=>{Si(),setTimeout(()=>{t()},50)},E=()=>{Di(),setTimeout(()=>{t()},50)},R=()=>{V3(),setTimeout(()=>{t()},50)},D=()=>{Li(),setTimeout(()=>{t()},50)},O=()=>{J3(),setTimeout(()=>{t()},50)},M=F=>{u($=>({...$,generalRule:{...$.generalRule,mouseHoverHoldKey:F}}))};return!s||!f?null:d(Fl,{openEbookViewerPage:E,openEbookBuilderPage:D,onSwitchTranslationMode:F=>{_("switchTranslationMode",!0,{mode:F})()},onTranslateLocalHtmlFile:R,onTranslateLocalSubtitleFile:O,request:ue,onClose:B,onToggleEnabled:L,onTranslateTheWholePage:_("translateTheWholePage",!0),openOptionsPage:T,onToggleTranslate:_("toggleTranslatePage",!0),onTranslateTheMainPage:_("translateTheMainPage",!0),ontranslateToThePageEndImmediately:_("translateToThePageEndImmediately",!0),onTranslatePage:_("translatePage",!0),onRestorePage:_("restorePage",!1),onTranslatePdf:w,openAboutPage:b,onTranslateLocalPdfFile:y,onSetPageLanguage:h,onUserConfigChange:u,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:ki,onSetBuildinConfig:G3,onMouseTriggerChanged:M})}function ky(e,t){for(let n of t){if(le()&&!Fa()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Rl={position:"right",right:0,top:335},Ut={...Rl},Fi=!1,Ia=null,Rn=null,_i=null,Ol=null,Fr=null,Il=null,Y3=6,Pi,Mi,Z3=null,Q3=null;async function ep(){let e=tt();Il=await ap(),Ut=Il.pagePopupConfig||Ut;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Ol=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` -`);ky(n,[a]);let r=document.createElement("div");r.innerHTML=Ie.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(r),Ia=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");Rn=o,_i=n.querySelector("#mount"),Ia.setAttribute("style",Nl(Ut)),Hl(),o.addEventListener("mousedown",tp),o.addEventListener("touchstart",Dy),globalThis.addEventListener("resize",s=>{Ia.setAttribute("style",Nl(Ut))})}function Ay(){ka(null,_i),_i.style.display="none",Rn.style.display="block",Fr=setTimeout(()=>{Hl(!0)},2e3)}function X3(e){let t=e.querySelector("#mount"),n=()=>{Ay()},a=r=>{r&&r.target&&r.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let r=await Tn();ka(d(vi,{lang:r.interfaceLanguage,fallbackLang:"zh-CN",translations:Sr,children:d("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:d("div",{class:"immersive-translate-popup-wrapper",style:Sy(),children:d(Bl,{onClose:n})})})}),t)})().then(()=>{Rn.style.display="none",_i.style.display="block"})}function Sy(){let e=Ul(),t=e.height,{position:n,top:a,left:r}=Ut,u={position:"fixed"},o=300,i=300,s=100;return Og()&&(n=Rl.position,a=Rl.top),n==="right"||n==="left"?(u.top=a-s,u.top+o>=t?(u.bottom=30,delete u.top):u.top<=10&&(u.top=10),n==="right"?u.right=0:n==="left"&&(u.left=0)):(n==="top"||n==="bottom")&&(u.left=r-s,u.left+i>=e.width?(u.right=0,delete u.left):u.left<=10&&(u.left=0),n==="top"?u.top=0:n==="bottom"&&(u.bottom=0)),u}function Ul(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function tp(e){Q3=Ia.getAttribute("style"),Pi=e.pageX,Mi=e.pageY,Fr&&clearTimeout(Fr),Fi=!1,Rn.style.opacity="1",Rn.style.transform="none",Z3=Rn.getAttribute("style"),globalThis.addEventListener("mousemove",jl),globalThis.addEventListener("mouseup",zl),globalThis.addEventListener("touchmove",np),globalThis.addEventListener("touchend",Bi),globalThis.addEventListener("touchcancel",Bi)}function Dy(e){e.preventDefault&&e.preventDefault(),tp(e.changedTouches[0])}function np(e){jl(e.changedTouches[0])}function Bi(e){e.preventDefault&&e.preventDefault(),zl(e.changedTouches[0])}function jl(e){e.preventDefault&&e.preventDefault(),Fi=!0,Ia.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function zl(e){e.preventDefault&&e.preventDefault(),Py(),Fr&&clearTimeout(Fr),Pi=Pi||0,Mi=Mi||0;let t=Math.abs(e.pageX-Pi),n=Math.abs(e.pageY-Mi);t{Hl(!0)},2e3)}function Hl(e=!1){Rn.style.opacity="0.4";let t="";Ut.position==="left"?t="translateX(-40%)":Ut.position==="right"?t="translateX(40%)":Ut.position==="top"?t="translateY(-40%)":Ut.position==="bottom"&&(t="translateY(40%)"),Rn.style.transform=t,e&&(Rn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function Py(){globalThis.removeEventListener("mousemove",jl),globalThis.removeEventListener("mouseup",zl),globalThis.removeEventListener("touchmove",np),globalThis.removeEventListener("touchend",Bi),globalThis.removeEventListener("touchcancel",Bi)}function Nl(e){let t=My(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function My(e){let{position:t,...n}=e,a=Ul(),r={};return t==="left"?(r.left=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="right"?(r.right=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="top"?(r.top=0,n.left>a.width?r.left=a.width-100:r.left=n.left):t==="bottom"&&(r.bottom=0,n.left>a.width?r.left=a.width-100:r.left=n.left),r}var rp=!1;async function up(){rp||(rp=!0,ep().catch(e=>{P.error("init popup error",e)}))}var op=!1,lp=[()=>{Ne.unbind()}],$l=[...lp],Fy=St(async()=>{await Ai()},50),_y=St(async()=>{await Si()},50),By=St(async()=>{await Li()},50),Ry=St(async()=>{await Di()},50),cp=St(e=>{Dr({method:e})},50),Oy=St(()=>{Ri();let e=new CustomEvent(na,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),Iy=St(()=>{Ni();let e=new CustomEvent(na,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),Ny=St(()=>{Ii();let e=new CustomEvent(na,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function Uy(e,t){let n=e.document;if(op)return;if(op=!0,le()||pp(),n.addEventListener("securitypolicyviolation",Jy),n.addEventListener("immersiveTranslateEbookLoaded",Vy),n.addEventListener(mg,Gy),n.addEventListener("click",r=>{Wy(r,t)}),le()&&(globalThis.top!=globalThis.self?e.addEventListener("message",zy,!1):n.addEventListener(na,jy)),globalThis.top===globalThis.self){let r=Bn.rootIframe(F0);r.handleAsk("getRateLimitDelay",I3),r.handleAsk("throttleRequest",N3)}}function dp(e,t){Yy(),Uy(t,e);let n=t.document,a=Hy.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),$l.push(()=>{n.removeEventListener("touchstart",a)}),le()&&globalThis.top===globalThis.self&&(wl(e.config),Xy(e.config)),Dt()&&wl(e.config)}function jy(e){up()}function zy(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===xo&&Lr(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function Hy(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?Oy():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?Ny():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&Iy()}function Wy(e,t){let n=e.target;if(!n||!n.getAttribute){Wl(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&nt(a,[{name:a}],{...t,sourceLanguage:"none"});let r=n.getAttribute(`data-${X}-action`);if(r)if(r==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Oi(),Wl(n,!0);return}else if(r=="toast-error"){let u=n.getAttribute(`data-${X}-tooltip-text`);sp(qy.bind(null,t,u||""))}else r=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),sp($y.bind(null,t)));Wl(n)}async function ip(e=!1){let t=document.querySelector(`.${X}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await hp();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await fp(n)}function sp(e){let t=`${X}-modal`,n=`${X}-modal-title`,a=`${X}-modal-body`,r=`${X}-modal-footer`,u=document.querySelector(`.${t}`);if(u){let o=u.querySelector(`.${n}`),i=u.querySelector(`.${r}`),s=u.querySelector(`.${a}`);e(u,o,s,i)}else{u=document.createElement("div"),u.className=t+" notranslate",u.id=t;let o=document.createElement("div");o.className=X+"-modal-content notranslate",u.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=X+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=r,o.appendChild(c),document.body.appendChild(u),i.onclick=function(){u.style.display="none"},window.onclick=function(m){m.target==u&&(u.style.display="none")},e(u,s,l,c)}setTimeout(()=>{Ky()},100)}function $y(e,t,n,a,r){let u=gp.bind(null,e);n.innerHTML=`
${Rg} ${u("disableConfirm")}
`,a.innerHTML="";let o=document.createElement("p");o.innerHTML=`${u("searchEnhancementNotes")}`,a.appendChild(o);let i=[{id:"enable-search-enhancement",value:"enable",text:u("enableSearchEnhancement")},{id:"disable-once",value:"once",text:u("disableOnce")},{id:"disable-global",value:"global",text:u("disableGlobal")}];for(let g=0;g${u("option")}`})),a.appendChild(s);let l=a.querySelector(`.${X}-open-enhancement`);l&&(l.onclick=function(){bp(!0)});let c=document.createElement("button");c.innerText=u("closeModal"),c.className=`${X}-btn ${X}-cancel-btn`;let m=document.createElement("button");m.className=`${X}-btn`,m.innerText=u("saveSettings"),r.innerHTML="",r.appendChild(c),r.appendChild(m),c.onclick=function(){t.style.display="none"},m.onclick=function(){let g=a.getElementsByTagName("input"),p="";for(let f=0;f{mp()},10)}function Jy(e){ve.HAS_CSP_ERROR="1"}function Yy(){$l.forEach(e=>{e()}),$l=lp}function Xy(e){if(le()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Xo.commands,r=[...Object.keys(t).filter(u=>u==="toggleTranslatePage").map(u=>{let o=t[u].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=ya(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:u,title:i}}),{id:gu,title:ya("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:mu,title:ya("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:du,title:ya("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:A0,title:ya("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let u of r)GM.registerMenuCommand(u.title,()=>{u.id===du?Fy():u.id===A0?_y():u.id===mu?By():u.id===gu?Ry():cp(u.id)},u.key)}}function Zy(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{P.error("send content message request failed",e,n)});let t=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(t)}function Tp(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let r=a[a.length-1];if(!r)return{};let u=n-r.right,o=t.find(i=>Ge(i.left,u)&&Ge(i.width,r.width));return{prevP:r,curP:o}}function ql(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function Ep(e){return e?e==e[0].repeat(e.length):!0}function Ge(e,t,n=5){return Math.abs(e-t)<=n}var Kl=[",","\\.","\uFF0C","\u3002"];function xp(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],r=t[0];return Ge(a.left,r.left,7)&&Ge(a.nextTop,r.top,10)&&Ui(a,r)}function Cp({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Ap(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Sp({prevLineP:e,prevP:t},n){return Ge(e.left,n.left,1)&&Ge(e.right,t.right,1)&&t.mergedTimes>=1}function Gl(e,t){let{prevLineP:n}=e;return Ap(e,t)&&(Ge(n.bottom,t.bottom)||Ge(n.nextTop,t.top)&&Ge(n.left,t.left))}function Dp(e,t){let{prevLineP:n,prevP:a,scale:r}=e;return Ap(e,t)&&n.width0&&a/r<.1&&n.left!ql(u.str)).filter(u=>u.translateStatus!="success"&&u.translateStatus!="pending").map(u=>(u.translateStatus="pending",u));if(n.length<=0)return;let a=await lt({text:n.map(u=>u.str).join(` -`).slice(0,1e3)});ti(a);let r=n.map((u,o)=>({text:u.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=n[s];u?(l.translatedStr=u.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),eT(l)})}var Jl={};async function Qy(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Jl).filter(n=>!!n);await ji(_p,t)}function eT(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Jl[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",Qy)):e.translateStatus=="success"&&(Jl[e.id]=void 0,t.innerHTML=Ie.sanitize(e.translatedStr)))}function Bp(e,t){let n=[],a=nT(e,t);return aT(e,a).forEach(u=>{if(!(u.length<=0)){if(u.length==1){Fp(e,n,u[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),u.forEach(o=>{Fp(e,n,o,!1)}),n.push("
")}}),` +`;continue}else if(A.length>t){let h=[];K0(A,t,h);for(let S=0;S0&&f{let i=e.lastIndexOf(o,t);return i>u?i:u},-1);if(r===-1){let u=e.slice(0,t);if(u&&!u.trim())return;n.push({text:u,prefix:"",suffix:""}),e.length>t&&K0(e.slice(t),t,n)}else{let u=e.slice(0,r+1);if(u&&u.trim()==="")return;u.startsWith(" ")?n.push({text:u.slice(1),prefix:" ",suffix:""}):n.push({text:u,prefix:"",suffix:""}),r+10){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,optionalProps:i,explicitProps:o}}var $o=e=>{let{config:t}=e,n=t.alpha,a=t.beta,r=t.canary,u=t.debug;return Object.keys(hn).filter(i=>{let s=hn[i];if(i.startsWith("mock"))return u?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,m=!!s.beta;return i===e.translationService||l&&r||c&&(n||r)||m&&(a||n||r)?!0:!c&&!m&&!l}).map(i=>V0(i,e))};function Zt(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var f8=Em(2),xm=Em(3);function Em(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let r=typeof n.slice=="function"?n:String(n),u=r.length-e+1;if(u<1)return a;for(;u--;)a[u]=r.slice(u,u+e);return a}}var U6=/\s+/g,j6=/[\t\n\v\f\r ]+/g;function Cm(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?z6:H6;return String(e).replace(t.style==="html"?j6:U6,t.trim?W6(n):n)}function z6(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function H6(){return" "}function W6(e){return t;function t(n,a,r){return a===0||a+n.length===r.length?"":e(n)}}var wm={}.hasOwnProperty;function $6(e){return e==null?"":Cm(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function q6(e){return xm(" "+$6(e)+" ")}function K6(e){let t=q6(e),n={},a=-1;for(;++an&&(n=u,a=r)}return[a,n]}function Q6(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function eb(e,t,n,a){t=nb(t,n,a);let r=[],u;if(t)for(u in t)qo.call(t,u)&&r.push([u,tb(e,t[u])]);return r.length===0?J0():r.sort(ab)}function tb(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let u=e.length-a;for(let o of mb){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/u>.5?t==="zh-CN"?Mm(e)?"zh-TW":"zh-CN":t:"auto"}var _m=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function Bm(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Vo(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[..._m.keys()]},r=Am(e,a);if(r&&r.length>0){if(r.length>1&&r[0][0]!=="eng"&&r[1][0]==="eng"&&r[1][1]>.6)return"en";let[u]=r[0],o=_m.get(u);if(o)return o}return"auto"}var gt=class extends Error{constructor(n,a,r){super(a);this.name=n,r&&(this.details=r)}};async function hr(e){let t;if(e&&e.retry&&e.retry>0)try{t=await i0(Rm.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await Rm(e);return t}async function Rm(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let r=!0;e.fetchPolyfill&&(r=!1);let u=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),r){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await u(t,a)}catch(s){P.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of pb(i.body)){let m=new TextDecoder().decode(c);s+=m;let g;for(;(g=s.indexOf(` +`))>=0;){let p=s.slice(0,g).trim();if(s=s.slice(g+1),p.startsWith("event:")||p==="")continue;let f="";if(p.startsWith("data:")&&(f=p.slice(5).trim()),f==="[DONE]")break;let A;try{A=JSON.parse(f??"")}catch(k){P.debug("json error",k);continue}l=A}}return l}}else{let s;try{s=await i.text()}catch(m){P.error("parse response failed",m)}s&&P.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new gt("fetchError",c,s)}}async function*pb(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function la(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function fb(e,t){return e<>>32-t}function Jo(e,t,n,a,r,u){return la(fb(la(la(t,e),la(a,u)),r),n)}function Pt(e,t,n,a,r,u,o){return Jo(t&n|~t&a,e,t,r,u,o)}function Mt(e,t,n,a,r,u,o){return Jo(t&a|n&~a,e,t,r,u,o)}function Ft(e,t,n,a,r,u,o){return Jo(t^n^a,e,t,r,u,o)}function _t(e,t,n,a,r,u,o){return Jo(n^(t|~a),e,t,r,u,o)}function Go(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,r,u,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function Y0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Go(a,e.length*8)),n=0;n<16;n+=1)r[n]=a[n]^909522486,u[n]=a[n]^1549556828;return o=Go(r.concat(Y0(t)),512+t.length*8),Im(Go(u.concat(o),512+128))}function Om(e){var t="0123456789abcdef",n="",a,r;for(r=0;r>>4&15)+t.charAt(a&15);return n}function X0(e){return unescape(encodeURIComponent(e))}function Nm(e){return hb(X0(e))}function yb(e){return Om(Nm(e))}function Um(e,t){return bb(X0(e),X0(t))}function Tb(e,t){return Om(Um(e,t))}function ca(e,t,n){return t?n?Um(t,e):Tb(t,e):n?Nm(e):yb(e)}var br=[];async function wu(e,t){return await new Promise((n,a)=>{let r=e,u=1,o=indexedDB.open(r,u);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function Z0(e){let t=`${X}-${e.service}@${e.from}->${e.to}`;return await Eb(t,e)}async function Q0(e){let t=ca(e.originalText),n=`${X}-${e.service}@${e.from}->${e.to}`;return await xb(n,t)}async function xb(e,t){let n=await wu(e);return await new Promise((a,r)=>{if(!n)return r();let u="cache",i=n.transaction([u],"readonly").objectStore(u).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),r()}})}async function Eb(e,t){let n=await wu(e);return(await el()).includes(e)||await Cb(e),await new Promise(r=>{if(!n)return r(!1);let u="cache",i=n.transaction([u],"readwrite").objectStore(u).put(t);i.onsuccess=s=>{n.close(),r(!0)},i.onerror=s=>{n.close(),r(!1)}})}async function Cb(e){let t="cache_list",n=await wu(X+"-cacheList",t),r=n.transaction([t],"readwrite").objectStore(t).put({key:e});r.onsuccess=u=>{n.close(),br.push(e)},r.onerror=u=>{n.close()}}async function el(){if(br&&br.length>0)return br;let e=await wu(X+"-cacheList","cache_list");return br=await new Promise(t=>{let n="cache_list",r=e.transaction([n],"readonly").objectStore(n).getAllKeys();r.onsuccess=u=>{e.close(),t(r.result)},r.onerror=u=>{e.close(),t([])}}),br}async function tl(){try{let e=[];(await el()).forEach(a=>{e.push(wb(a))});let n=await Promise.all(e);return Eu(n.reduce((a,r)=>a+r,0))}catch{return Eu(0)}}async function wb(e){let t=await wu(e),a=[...t.objectStoreNames].reduce((o,i)=>{let s=vb(t,i);return o.push(s),o},[]),r=await Promise.all(a);return t.close(),r.reduce((o,i)=>o+i,0)}async function vb(e,t){return await new Promise((n,a)=>{if(e==null)return a();let r=0,u=e.transaction([t]).objectStore(t).openCursor();u.onsuccess=o=>{let i=u.result;if(i){let s=i.value,l=JSON.stringify(s);r+=l.length,i.continue()}else n(r)},u.onerror=o=>a("error in "+t+": "+o)})}async function jm(){try{let t=(await el()).map(a=>kb(a));return!!(await Promise.all(t)).every(a=>a)}catch{return!1}}async function kb(e){return await new Promise(t=>{let n=indexedDB.deleteDatabase(e);n.onsuccess=()=>{t(!0)},n.onerror=a=>{t(!1)}})}var zm=Ee+"StoreKey_";function Yo(e,t){let n=zm+e;return z.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Hm(e,t){let n=zm+e;return z.storage.local.set({[n]:t})}var Wm=Ee+"SyncStoreKey_";function nl(e,t){let n=Wm+e;return z.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function mt(e,t){let n=Wm+e;return z.storage.sync.set({[n]:t})}var Xo={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.2",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function da(){return Xo.version}function Zo(){return z.runtime.getManifest().version}var $m="G-MKMD9LWFTR";async function st(e,t,n){try{let a=tt();if(a.INSTALL_FROM==="firefox_store")return;let u=le(),o=Ct(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let T=await Yo(s,0),b=Qo(new Date(T)),x=Date.now(),R=Qo(new Date(x));if(b===R)return;await Hm(s,x)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",m=await nl("fakeUserId","");m||(m=await Yo("fakeUserId",""),m&&await mt("fakeUserId",m));let g=da(),p=new Date,f=await nl("installedAt","");f||(f=await Yo("installedAt",""),f&&await mt("installedAt",f)),m?f||(f=new Date(0).toISOString(),await mt("installedAt",f)):(m=Sb(32),await mt("fakeUserId",m)),f||(f=p.toISOString(),await mt("installedAt",f));let A=new Date(f),k=Qo(A),h=Qo(p),S=k===h,_=p.getTime()-A.getTime()<7*24*60*60*1e3,B=`https://www.google-analytics.com/mp/collect?measurement_id=${$m}&api_secret=${c}`;i||(B=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${$m}&api_secret=${c}`);let L=po.parse(window.navigator.userAgent),v=t.map(T=>{let b=T.params||{};L.os&&(b.os_name=L.os.name||"unknown",b.os_version=L.os.version||"unknown",b.os_version_name=L.os.versionName||"unknown"),L.browser&&(b.browser_name=L.browser.name||"unknown",b.browser_version=L.browser.version||"unknown"),L.platform&&(b.platform_type=L.platform.type||"unknown"),L.engine&&(b.engine_name=L.engine.name||"unknown",b.engine_version=L.engine.version||"unknown"),n.translationService&&(b.translation_service=n.translationService),n.targetLanguage&&(b.target_language=n.targetLanguage),n.config.interfaceLanguage&&(b.interface_language=n.config.interfaceLanguage),g&&(b.version=g),n.config.translationTheme&&(b.translation_theme=n.config.translationTheme),n.config.alpha&&(b.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?b.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):b.always_translate_languages="none",a.INSTALL_FROM&&(b.install_from=a.INSTALL_FROM),n.config.beta&&(b.beta=n.config.alpha.toString()),n.config.translationArea&&(b.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(b.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),k&&(b.install_day=Db(A)),n.config.translationMode&&(b.translation_mode=n.config.translationMode),b.userscript=u.toString(),S?b.is_new_user_today="1":b.is_new_user_today="0",_?b.is_new_user_this_week="1":b.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?b.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():b.temp_translate_domain_minutes="0";let x="html";if(n.rule.isEbook?x="ebookReader":n.rule.isPdf?x="pdfReader":n.rule.isEbookBuilder?x="ebookBuilder":n.rule.isSubtitleBuilder&&(x="subtitleBuilder"),b.page_type=x,o?b.main_frame=0:b.main_frame=1,!l){let R=n.url;try{let D=new URL(R);b.site_host=D.hostname}catch{b.site_host="unknown"}n.sourceLanguage&&(b.source_language=n.sourceLanguage)}return{...T,params:b}}),y=await ue({responseType:"text",url:B,method:"POST",body:JSON.stringify({client_id:m,user_id:m,events:v})})}catch{}}function Sb(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r0){if(a.includes(e)||a.includes(""))return!1;for(let r of a)if(r.includes("*")&&new RegExp(r).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let r of n)if(r.includes("*")&&new RegExp(r).test(e))return!0}return!1}var Vm="auto",ei="auto",Km="auto";function ti(e){Vm=e}function sn(e){ei=e}function Pn(){return ei!=="auto"?ei:Km!=="auto"?Km:Vm}function yr(){return ei}var Lb=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function $n(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function al(e,t,n){let{blockSelectors:a,extraBlockSelectors:r,extraInlineSelectors:u}=t;if($n(e,u))return!1;if($n(e,r)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!Lb.includes(n.display):$n(e,a)}var Qt=$n;function Ra(e){return!!e.shadowRoot}function ga(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function vu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function ni(e){let t=ko;return e&&(t=e),t}async function bn(e,t="",n=100){let a="auto";return t?await lt({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=yr()),a)}function ai(e,t){return sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function Pb(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${X}-loading-${n} notranslate">`}function ku(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",rn),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),it(a,wg,t.toString());let r=Pb(e);return a.innerHTML=_e.sanitize(r),a}function Tr(e,t){return e.querySelector(`[${D0}='${t}']`)}function Gm(){document.querySelectorAll(`[${D0}]`).forEach(t=>{t.remove()})}function Jm(){document.querySelectorAll(`.${rn}-error`).forEach(t=>{t.remove()})}function Ym(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{cr(n)&&t.push(n)}),t}function Xm(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:r,text:u}=e,o=new RegExp(`${r[0]}(\\d+)${r[1]}`,"gi");if(r.length>2){let s=r[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=u.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(u)||i.includes("")||i.includes("< styles>")||Yg(i)||Vg(i)||Jg(i)||Gg(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Fo(u,n,a)}function Mn(e){return e.nodeType===Node.ELEMENT_NODE}function Zm(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function Qm(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var Mb=1e5;function ma(e){let{onParagraph:t,filterRule:n,id:a}=e;n=Fb(n);let{stayOriginalSelectors:r,globalStyles:u,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,m={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,p=null;function f(B){let{container:L,onFrame:v,onIgnoreElement:y,id:T}=B,b=document.createTreeWalker(L,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,D=>{let I=R(D);return I==NodeFilter.FILTER_ACCEPT?qt.mark(D,T):I==NodeFilter.FILTER_REJECT,I}),x=L;if(R(x)===NodeFilter.FILTER_REJECT)return;for(qt.mark(x,T);x;){if(o&&o.length>0){let{currentNode:D,isMatchedSelection:I}=A(b,x,o);if(D)x=D;else break;if(!I)continue}if(x.nodeType===Node.ELEMENT_NODE||x.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let D=x;if(D.nodeName==="IFRAME"){v&&v(D);break}D.nodeType===Node.ELEMENT_NODE&&(u&&ul(D,u),l&&il(D,l));let I=al(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&!I){h(D);let $=null;for(;!($=b.nextSibling())&&b.parentNode(););x=$;continue}let M=Ra(D);(!e3(m,D)||I)&&(k(),D.childNodes.length>0&&S(m,D,D.immersiveTranslateComputedStyle||null)),M&&D.shadowRoot?.mode==="open"&&(I?v?.(D.shadowRoot):f({...B,container:D.shadowRoot})),D.nodeType===Node.ELEMENT_NODE&&D.nodeName==="PRE"&&i&&Ib(D)}else if(x.nodeType===Node.TEXT_NODE)h(x);else throw new Error("should not be here");x=b.nextNode(),m.commonAncestorContainer&&x&&x.parentNode===m.commonAncestorContainer&&(m._currentStacks=[]),m.commonAncestorContainer&&x&&x.nodeType===Node.ELEMENT_NODE&&m._currentStacks.push(x)}function R(D){if(D.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(Mn(D)){if(l){let F=Object.keys(l);if(F.length>0&&Qt(D,F))for(let Z of F){let de=l[Z];if(D.matches(Z)){let V=l[Z],me=Object.keys(V);for(let ge of me){let w=V[ge];D.getAttribute(ge)!==w&&(w===null?D.removeAttribute(ge):D.setAttribute(ge,w))}break}}}if(!B.force&&qt.isMarked(D,T)||Zm(D,T)||sl(D,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:r})||D.nodeName==="IFRAME"&&!cr(D))return NodeFilter.FILTER_REJECT;if(D.nodeType===Node.ELEMENT_NODE){let F=window.getComputedStyle(D);if(D.immersiveTranslateComputedStyle={display:F.display,whiteSpace:F.whiteSpace},ol(D.immersiveTranslateComputedStyle))return y&&y(D),NodeFilter.FILTER_REJECT;let $=al(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&$)return NodeFilter.FILTER_REJECT}let{width:I,height:M}=D.getBoundingClientRect();return D.nodeName==="IMG"&&(I>48&&M>48?D.immersiveTranslateComputedStyle={display:"block"}:I>0&&M>0&&c!==!1&&(D.setAttribute("width",I),D.setAttribute("height",M))),!D.childNodes||D.childNodes&&D.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!m.isPreWhitespace&&(I>0&&I<4||M>0&&M<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(D.nodeType===Node.TEXT_NODE){let I=D.textContent?.trim();if(!I)return m.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let M=D.parentNode;if(M.getBoundingClientRect){let{width:F,height:$}=M.getBoundingClientRect();if(F>0&&F<4||$>0&&$<4)return NodeFilter.FILTER_REJECT}return s>0&&I.length>=s&&rl(D,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),m&&m.commonAncestorContainer&&m.flatNodes.length>0&&k();function A(B,L,v){let y=L.immersiveTranslateComputedStyle||null;if(p){if(!p.contains(L))if(g=!1,L&&L.nodeType===Node.ELEMENT_NODE)if(ri(L,v))g=!0,p=L,k(),S(m,p,y);else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g}}else if(L&&L.nodeType===Node.ELEMENT_NODE)if(ri(L,v))g=!0,p=L,k(),S(m,p,y);else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};else return g=!1,L=B.nextNode(),{currentNode:L,isMatchedSelection:g};return{currentNode:L,isMatchedSelection:!0}}function k(){let B=Rb(m,a);B&&t&&t(B),t3(m)}function h(B){if(!e3(m,B)){k(),t3(m);let L=B.parentNode;L&&S(m,L,L.computedStyle)}m.flatNodes.push(B)}function S(B,L,v){B.commonAncestorContainer=L;let y=_(v);B.isPreWhitespace=y}function _(B){return B&&B.whiteSpace&&B.whiteSpace.startsWith("pre")||B&&B.whiteSpace==="break-spaces"||!1}}function e3(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=Ra(t));let a=Bb(e),r=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?r=!0:e.commonAncestorContainer&&(r=!1,e._currentStacks=[])),r}function Fb(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function _b(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function ul(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){e.style.cssText=u;break}}}}function Bb(e){return e&&e._currentStacks?e._currentStacks.some(t=>Ra(t)):!1}function Rb(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let u=Ob(n,a);u||(u=a);let o=[];for(let g of n){let p=_b(e,u,g);p&&(o.includes(p)||o.push(p))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,m=0;for(;c&&(l.push(c),c!==s);){if(m++,m>Mb){P.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:u,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function t3(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function ol(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,r=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(r)&&(r=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||r<-1e3}var qt={_marked_key:"immersive_translate_walked",isMarked(e,t){return O0(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return Bo(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return it(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=sr(e,"markWalk")||"";return it(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||Ra(e)):!1}};function Ib(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=_e.sanitize(n)}function Ob(e,t){if(!e.length)return null;let n=e.map(a=>{let r=new Set;for(;(a=a.parentNode)&&(r.add(a),a!==t););return r});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(r=>r.has(a)))return a;return null}function rl(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let u=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(u>1){let o=n[u-1]||"",i=n[u-2]||"",s=n[u+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?u=-1:isNaN(Number(o))||(u=-1)}if(u===-1)n.length>t+20&&rl(e,t+20);else{let o=n.slice(u+1);u++,o.startsWith(" ")&&u++;let i=e.splitText(u),s=document.createElement("br");i.parentNode?.insertBefore(s,i),u+10)for(let a of n){let r=t[a],u=Object.keys(r),o=Wg(e,[a]);for(let i of o)for(let s of u){let l=r[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function a3(e,t,n,a,r,u){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let m of l){let g=s[m];if(m==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||Nb(c,r,u)||!qg(f,n,a))continue}c.getAttribute(m)!==g&&(g===null?c.removeAttribute(m):c.setAttribute(m,g))}}}function il(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){let o=t[r],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function sl(e,t){return Qt(e,t.excludeSelectors||[])?Qt(e,t.selectors||[])?!1:!Qt(e,t.stayOriginalSelectors||[]):!1}function ri(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Qt(e,t.concat(n))}function Nb(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,r=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.TEXT_NODE&&parent){let u=r.textContent||"";if(u.includes("Copyright"))continue;if(Fo(u,t,n))return!0}}return!1}var r3=["*://*/*","*","*://*"],o3="immersive-translate-wildcard-placeholder.com";function ll(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>r3.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let r=a.href,u=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===u)return!0;if(r3.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===u:jb(r,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let k=i.split("://");l=k[0],l==="*"&&k.length>1&&(l="*",i="https://"+k[1])}else l="*",i="https://"+i;let m=i.replace(/\*/g,o3),g;try{g=new URL(m)}catch{return P.debug("invalid match pattern",m,"raw match value:",c),!1}let p=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let A=Ub(l+":",u3(p),u3(f));if(A){let k=new URL(r);return k.port="",A.test(k.href)}else return!1}});if(o)return o}return null}function u3(e){return e.replaceAll(o3,"*")}function Ub(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Fn(e,t){return ll(e,t)!==null}function jb(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}var xr="input is invalid type",cl=typeof window=="object",pa=cl?window:{};pa.JS_SHA256_NO_WINDOW&&(cl=!1);var zb=!cl&&typeof self=="object",Hb=!pa.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Hb?pa=global:zb&&(pa=self);var K7=!pa.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,V7=typeof define=="function"&&define.amd,Au=!pa.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",ie="0123456789abcdef".split(""),Wb=[-2147483648,8388608,32768,128],yn=[24,16,8,0],ui=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],oi=["hex","array","digest","arrayBuffer"],yt=[];(pa.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});Au&&(pa.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var i3=function(e,t){return function(n){return new Tt(t,!0).update(n)[e]()}},l3=function(e){var t=i3("hex",e);t.create=function(){return new Tt(e)},t.update=function(r){return t.create().update(r)};for(var n=0;n>2]|=e[r]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[u>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=u-64,this.hash(),this.hashed=!0):this.start=u}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};Tt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Wb[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};Tt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,m,g,p,f,A,k,h,S,_;for(l=16;l<64;++l)p=s[l-15],c=(p>>>7|p<<25)^(p>>>18|p<<14)^p>>>3,p=s[l-2],m=(p>>>17|p<<15)^(p>>>19|p<<13)^p>>>10,s[l]=s[l-16]+c+s[l-7]+m<<0;for(_=t&n,l=0;l<64;l+=4)this.first?(this.is224?(k=300032,p=s[0]-1413257819,i=p-150054599<<0,a=p+24177077<<0):(k=704751109,p=s[0]-210244248,i=p-1521486534<<0,a=p+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),m=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),k=e&t,g=k^e&n^_,A=r&u^~r&o,p=i+m+A+ui[l]+s[l],f=c+g,i=a+p<<0,a=p+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),m=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),h=a&e,g=h^a&t^k,A=i&r^~i&u,p=o+m+A+ui[l+1]+s[l+1],f=c+g,o=n+p<<0,n=p+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),m=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),S=n&a,g=S^n&e^h,A=o&i^~o&r,p=u+m+A+ui[l+2]+s[l+2],f=c+g,u=t+p<<0,t=p+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),m=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),_=t&n,g=_^t&a^S,A=u&o^~u&i,p=r+m+A+ui[l+3]+s[l+3],f=c+g,r=e+p<<0,e=p+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+r<<0,this.h5=this.h5+u<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};Tt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=ie[e>>28&15]+ie[e>>24&15]+ie[e>>20&15]+ie[e>>16&15]+ie[e>>12&15]+ie[e>>8&15]+ie[e>>4&15]+ie[e&15]+ie[t>>28&15]+ie[t>>24&15]+ie[t>>20&15]+ie[t>>16&15]+ie[t>>12&15]+ie[t>>8&15]+ie[t>>4&15]+ie[t&15]+ie[n>>28&15]+ie[n>>24&15]+ie[n>>20&15]+ie[n>>16&15]+ie[n>>12&15]+ie[n>>8&15]+ie[n>>4&15]+ie[n&15]+ie[a>>28&15]+ie[a>>24&15]+ie[a>>20&15]+ie[a>>16&15]+ie[a>>12&15]+ie[a>>8&15]+ie[a>>4&15]+ie[a&15]+ie[r>>28&15]+ie[r>>24&15]+ie[r>>20&15]+ie[r>>16&15]+ie[r>>12&15]+ie[r>>8&15]+ie[r>>4&15]+ie[r&15]+ie[u>>28&15]+ie[u>>24&15]+ie[u>>20&15]+ie[u>>16&15]+ie[u>>12&15]+ie[u>>8&15]+ie[u>>4&15]+ie[u&15]+ie[o>>28&15]+ie[o>>24&15]+ie[o>>20&15]+ie[o>>16&15]+ie[o>>12&15]+ie[o>>8&15]+ie[o>>4&15]+ie[o&15];return this.is224||(s+=ie[i>>28&15]+ie[i>>24&15]+ie[i>>20&15]+ie[i>>16&15]+ie[i>>12&15]+ie[i>>8&15]+ie[i>>4&15]+ie[i&15]),s};Tt.prototype.toString=Tt.prototype.hex;Tt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,r>>24&255,r>>16&255,r>>8&255,r&255,u>>24&255,u>>16&255,u>>8&255,u&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};Tt.prototype.array=Tt.prototype.digest;Tt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function ii(e,t,n){var a,r=typeof e;if(r==="string"){var u=[],o=e.length,i=0,s;for(a=0;a>6,u[i++]=128|s&63):s<55296||s>=57344?(u[i++]=224|s>>12,u[i++]=128|s>>6&63,u[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),u[i++]=240|s>>18,u[i++]=128|s>>12&63,u[i++]=128|s>>6&63,u[i++]=128|s&63);e=u}else if(r==="object"){if(e===null)throw new Error(xr);if(Au&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!Au||!ArrayBuffer.isView(e)))throw new Error(xr)}else throw new Error(xr);e.length>64&&(e=new Tt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var m=e[a]||0;l[a]=92^m,c[a]=54^m}Tt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}ii.prototype=new Tt;ii.prototype.finalize=function(){if(Tt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();Tt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),Tt.prototype.finalize.call(this)}};var Er=l3();Er.sha256=Er;Er.sha224=l3(!0);Er.sha256.hmac=c3();Er.sha224.hmac=c3(!0);var d3=Er;var g3=d3.sha256;function Tn(e){return Promise.resolve(g3(e))}function si(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function fa(e,t){let n=g3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function m3(e,t){let n=await fa(e,t);return si(n)}async function li(e,t){let n=$b(t),a=await fa(e,n);return si(a)}function $b(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}async function vt(e){let{url:t,config:n,state:a}=e,r=new URL(t),u="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:m,targetLanguage:g,sourceLanguageUrlPattern:p,immediateTranslationPattern:f}=n,A=Cr(t,o),k=Cr(t,f),h=i,S=Object.keys(s);for(let N of S){let re=s[N];if(Cr(t,re)){h=N;break}}let _=l,B=Object.keys(c);for(let N of B){let re=c[N];if(re&&Cr(t,re)){_=N;break}}let L=Cr(t,m),v=p3(t,m);v||(v=Fn(t,Og)),v||(v=Fn(t,n.blockUrls));let y=p3(t,n.inputTranslationUrlPattern);y||(y=Fn(t,n.inputTranslationBlockUrls));let T=Fn(t,n.mutationBlockUrls),b=Object.keys(p),x={};for(let N of b){let re=p[N];if(re&&re.matches)for(let te of re.matches)x[te]=N}let R=Object.keys(x),D=ll(t,R);D&&(u=x[D]??"auto",x[D]&&x[D]!=="auto"&&sn(x[D]));let I=g||"zh-CN",M=r.hostname,F=await Tn(M),$=r.pathname+r.search+r.hash,Z=await Tn($),de=`https://${F}.com/${Z}`,V=await Hn(),me=await ym(),ge=n.translationStartMode;ge==="dynamic"&&k&&(ge="immediate");let w={targetLanguage:I,config:n,translationService:h,isTranslateUrl:L,sourceLanguage:u,mainFrame:document.body,isTranslateExcludeUrl:v,isMutationTranslationExcludeUrl:T,isInputTranslationExcludeUrl:y,rule:n.generalRule,url:t,encryptedUrl:de,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ge,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:A,cache:n.cache,translationTheme:_},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ge,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:A,cache:n.cache,translationTheme:_},localConfig:V};w.state.translationArea==="body"&&(w.config.generalRule.excludeTags=w.config.generalRule.excludeTags.filter(N=>!w.config.generalRule.bodyTranslateTags.includes(N)),w.config.generalRule.additionalExcludeSelectors=w.config.generalRule.additionalExcludeSelectors.filter(N=>N!==".btn"));let H=n.translationServices[w.translationService]||{};H.immediateTranslationTextCount!==void 0&&qb(H.immediateTranslationTextCount)&&H.immediateTranslationTextCount>=0&&(w.state.immediateTranslationTextCount=H.immediateTranslationTextCount),w.translationService==="deepl"&&H&&H.authKey&&H.authKey.startsWith("immersive_")&&H.immediateTranslationTextCountForImmersiveDeepl!==void 0&&H.immediateTranslationTextCountForImmersiveDeepl>=0&&(w.state.immediateTranslationTextCount=H.immediateTranslationTextCountForImmersiveDeepl),H&&H.translationDebounce&&typeof H.translationDebounce=="number"&&(w.state.translationDebounce=H.translationDebounce);let Q=me.immediateTranslationTextCount;n.immediateTranslationTextCount!==Q&&(w.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let fe=n.rules,se;globalThis.PDFViewerApplication?se=fe.find(N=>N.isPdf):globalThis.immersiveTranslateEbookViewer?se=fe.find(N=>N.isEbook):globalThis.immersiveTranslateEbookBuilder?se=fe.find(N=>N.isEbookBuilder):se=fe.find(N=>Cr(t,N)),w.rule.isPdf&&(w.state.translationArea="main"),w.state.translationArea==="body"&&(w.rule.paragraphMinTextCount=1,w.rule.paragraphMinWordCount=1),se&&se.isEbookBuilder&&(w.state.translationStartMode="immediate");let O=n.generalRule;if(se&&(w.rule=Ho(O,se)),w.rule.selectors.length>0&&(w.rule.paragraphMinTextCount=2,w.rule.paragraphMinWordCount=1),w.state.translationArea==="body"&&w.rule.excludeTags&&(w.rule.excludeTags=w.rule.excludeTags.filter(N=>!w.rule.bodyTranslateTags.includes(N)&&!w.rule.forceTranslateTags.includes(N))),w.rule.mainFrameSelector){let N=document.querySelector(w.rule.mainFrameSelector);N&&(w.mainFrame=N)}return w}function Cr(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:r,excludeSelectorMatches:u}=t;return a&&a.length>0&&Fn(e,a)?!1:n&&n.length>0&&Fn(e,n)?!0:u&&u.length>0&&_o(u)?!1:!!(r&&r.length>0&&_o(r))}function p3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Fn(e,n)||a&&a.length>0&&_o(a))}function qb(e){return typeof e=="number"}async function f3(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await lt({text:ir(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=oa(document.documentElement.lang)),e}function h3(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function dl(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let r=t[a],u=Kb(a);if(typeof r=="object"||u){let o=r;u&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let m=n.substring(s+i.length,c),g=Object.keys(o).filter(p=>p!=="tag").map(p=>`${p}="${o[p]}"`).join(" ");n=n.replace(`${i}${m}`,`<${l} ${g}>${m}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,r.toString())}}),n}function Su(e,t,n){let a=e[t];if(!a)return n;let r=n.split("."),u="";do{u+=r.shift();let o=a[u];o!==void 0&&(typeof o=="object"||!r.length)?(a=o,u=""):r.length?u+=".":a=n}while(r.length);return a}function Ia(e,t,n,a,r){if(!e.hasOwnProperty(n))return t;let u=Su(e,n,t);return u===t&&n!==a&&(u=Su(e,a,t)),dl(u,r)}function Kb(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function ci(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function wr(e,t,n=[],a,r){let u=["notranslate"];return a&&u.push(Fg),e&&(u.push(`${X}-target-translation-theme-${e}`),t?u.push(`${P0}-theme-${e}`):u.push(`${L0}-theme-${e}`)),n.length>0&&u.push(...n),t?u.push(P0):(u.push(L0),r&&u.push(Mg)),u}function vr(e){let t=["notranslate",Lg];return e&&t.push(`${X}-target-translation-theme-${e}-inner`),t}function b3(e,t,n){let{rule:a,state:r}=n,{translationTheme:u}=r,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,m=lr(n),g="afterend",p=m[0].replace(/\//g,"/");p=p.replace(/"/g,'\\"'),p=p.replace(//g,">");let f=m[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let A=`${p}(\\d+)${f}`,k=new RegExp(A,"g"),h=ci(s);h=_e.sanitize(h),o.length>0&&(h=h.replace(k,L=>{let v=h.indexOf(L),y=h[v-1]===" ",T=h[v+L.length]===" ",b=L.slice(m[0].length,-m[1].length),x=Number(b);if(isNaN(x))return L;let R=o[Number(x)];if(R&&R.type==="element"){let D=R.value.outerHTML;return y||(D=" "+D),T||(D=D+" "),D}else P.error("variable type not supported",R,L);return L}));let S=wr(u,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&S.push(Pg);let _=vr(u),B="";return a.translationBlockStyle&&(B=`style="${a.translationBlockStyle}"`),h=`<${n.rule.targetWrapperTag} ${B} class="${S.join(" ")}" ${Ln}="1"><${a.targetWrapperTag} class="${_.join(" ")}" ${Ln}="1">${h}`,e.inline||(l==="smart"?h=`
${h}`:h=`${l}${h}`),e.inline&&(l!=="smart"?h=`${l}${h}`:h=`<${a.targetWrapperTag} class="notranslate" ${Ln}="1"> ${h}`),c==="smart"?h=`${h}`:h=`${h}${c}`,{html:h,position:g}}function di(e,t){let n=null,{stayOriginalSelectors:a,delimiters:r,isPreWhitespace:u}=t,o=[],i={};for(let s=0;s2&&(k=`<${r[2]}${A}>`),i[A]=l,o.push({text:k,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";m&&(f=ga(gl(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Qt(l,a)){let A=Object.keys(i).length,k=`${r[0]}${A}${r[1]}`;r.length>2&&(k=`<${r[2]}${A}>`),i[A]=l;let h=ml(o).endsWith(" ")?" ":"",S=ga(l.innerText||l.textContent),_=ga(l.nextSibling).startsWith(" ")?" ":"",B=vu(h+S+_),L=B[0]+k+B[1];if(h===" ")L=L.trimStart();else if(!L.startsWith(" ")){let v=vu(l.previousSibling)[1];v===""&&(v=" "),L=v+L}o.push({text:L,type:"variable"})}else{let f=ml(o).endsWith(" ")?" ":"",A=ga(l.innerText||l.textContent);m&&(A=ga(gl(l)));let k=ga(l.nextSibling).startsWith(" ")?" ":"",h=vu(f+A+k),S=h[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+h[1];if(f===" ")S=S.trimStart();else{let _=vu(l.previousSibling)[1];_===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(_=" "),S=_+S}o.push({text:S,type:"text"})}else{let f=ml(o).endsWith(" ")?" ":"",A="";l.textContent&&(A=ga(gl(l))),f===" "&&(A=A.trimStart()),o.push({text:A,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(m=o[l-1].text),l2){let c=l[2];return Vb({delimiterTag:c,targetText:e.targetText,inline:r,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=b3(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function gl(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function Vb(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:r,wrapperPrefix:u,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:m}=e;o=o||[];let g=ci(e.targetText);g=_e.sanitize(g);let p=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),A=new RegExp(`<${t}(\\d+)>`);o.length>0&&(p=p.replace(f,_=>{let B=p.indexOf(_),L=p[B-1]===" ",v=p[B+_.length]===" ",y=_.match(A);if(!y)return _;let T=y[1],b=Number(T);if(isNaN(b))return _;let x=o[Number(b)];if(x&&x.type==="element"){let R=x.value.outerHTML;return L||(R=" "+R),v||(R=R+" "),R}else if(x&&x.type==="text"){let R=x.value;return L||(R=" "+R),v||(R=R+" "),R}else P.error("variable type not supported",x,_);return _}));let k=wr(l,n,a||[],i,c),h=vr(l),S="";return m&&(S=`style="${m}"`),p=`<${r} ${S} class="${k.join(" ")}" ${Ln}="1"><${r} class="${h.join(" ")}" ${Ln}="1">${p}`,n||(u==="smart"?p=`
${p}`:p=`${u}${p}`),n&&(u!=="smart"?p=`${u}${p}`:p=`<${r} class="notranslate" ${Ln}="1"> ${p}`),s==="smart"?p=`${p}`:p=`${p}${s}`,{html:p,position:"afterend"}}function ml(e){let t=e[e.length-1];return t?t.text:""}function ln(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var Gb={sanitize:e=>e};function mi(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:ln(e.ctx),onParagraph:Du.bind(null,e),onFrame:n=>{fl(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),or&&it(t,"consumeContainer",e.id))}function fl(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!cr(t))return;P.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ar(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else P.debug("onFrame shadowRoot",t.host),Ar(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ar(e,t,n=!0){let{globalStyles:a,globalAttributes:r}=ln(t.ctx),u=0;if(s(t,e,n))return;if(Mn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(Mn(c)&&(a&&ul(c,a),r&&il(c,r)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(qt.mark(l.currentNode,t.id);l.nextNode();){qt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let m=l.currentNode;if(qt.mark(l.currentNode,t.id),i(m)){o(m);continue}else break}if(!l.parentNode())return}}}catch{}if(u==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){qt.clearMark(l),u++,t.immediateTranslateCapacity>=0?mi(t,l):(or&&it(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return fl(t,l.shadowRoot,n),!1;if(c==="iframe")return fl(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let m=t.containerRule;if(m.selectors&&m.selectors?.length>0)return ri(l,m.selectors);if(m.pageHeight){let g=l.scrollHeight;if(g>0&&g0)return!0}return!1}function s(l,c,m){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||m&&qt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let p=ln(l.ctx);return!!sl(c,{excludeSelectors:p.excludeSelectors,selectors:p.selectors,stayOriginalSelectors:p.stayOriginalSelectors})}}function hl(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!qt.isMarked(a,e.ctxId))return;let r=a.contains(e.rootNodes[0]),u=a.contains(e.targetNodes[0]);if(r&&u)n="dual";else if(r)n="original";else if(u)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(gi(e.rootNodes),T3(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=pl(e.rootNodes);gi(e.rootNodes),kr(o,a,e.targetNodes||[]),T3(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];kr(o,a,e.rootNodes||[]),x3(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=pl(e.rootNodes);kr(o,a,e.targetNodes||[]),x3(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=pl(e.targetNodes);gi(e.targetNodes),kr(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&gi(e.targetNodes)}catch(o){P.error(o)}}}function T3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{it(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function x3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let r=sr(a,"immersiveTranslateClassBak");Bo(a,"immersiveTranslateClassBak"),a.className=r});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function pl(e){return e?e[e.length-1].nextSibling:null}function gi(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function kr(e,t,n){let a=e;t&&(a?n.forEach(r=>{a.parentNode?.insertBefore(r,a)}):n.forEach(r=>{t.appendChild(r)}))}var Jb=St(yl,300);async function Du(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||Yb(t.rootNodes)||t.stepState>=2)return;t.stepState=2,or&&it(a,"onParseParagraph",e.id);let{ctx:r}=e,{rule:u}=r,o=lr(r),i=di(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:r.rule.stayOriginalTags.concat(r.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(r.rule.stayOriginalSelectors).concat(r.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await Tl(t,{excludeLanguages:r?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:r.state.isDetectParagraphLanguage,targetLanguage:r.targetLanguage,noTranslateRegexp:r.rule.noTranslateRegexp,delimiters:ni(r.config.translationServices[r.translationService]?.placeholderDelimiters),minTextCount:n||r.state.translationArea==="body"?2:u.paragraphMinTextCount,minWordCount:n||r.state.translationArea==="body"?1:u.paragraphMinWordCount,ignoreZhCNandZhTW:r.rule.ignoreZhCNandZhTW});if(s){if(P.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(Xb(e,t.text),bl(e,t)):(or&&it(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function Yb(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?Mn(t)&&t.classList.contains(rn):!1}function Xb(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function bl(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),or&&it(t.commonAncestorContainer,"consumeParagraph",e.id),Jb.call(e,e.ctx)}async function yl(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await _n(a,t,(r,u,o)=>{let i=o.id,s=Zb(e,i.toString());s&&Qb.call(null,r,u,o,s,t,n)})}catch(r){P.error("translateCurrentQueue error",r);return}}function Zb(e,t){return e.find(n=>n.id===t)}function Qb(e,t,n,a,r,u){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${X}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Tr(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(P.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=r,l=n.id,c=document.createElement(s.targetWrapperTag);it(c,vg,l.toString()),c.classList.add("notranslate",rn,rn+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",r.targetLanguage);let m=a.rootNodes[a.rootNodes.length-1].nextSibling;kr(m,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` +`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let p=Ia(an,"retryAllParagraphs",r.config.interfaceLanguage,"zh-CN"),f=Ia(an,"errorTooltipTitle",r.config.interfaceLanguage,"zh-CN"),A=`<${s.targetWrapperTag} class="${X}-error notranslate"><${s.targetWrapperTag} class="${X}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=_e.sanitize(A)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=y3(a,r),l=document.createElement(r.rule.targetWrapperTag);l.classList.add("notranslate",rn),l.setAttribute("lang",r.targetLanguage),l.setAttribute(Ln,"1");let c=Gb.sanitize(s);l.innerHTML=c,a.targetNodes=[l],hl(a,u),o=!0}else P.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function Tl(e,t){let{text:n}=e,a=await lt({text:n||"",minLength:10}),{targetLanguage:r}=t;if(!Xm({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=yr());let s=Pn(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return sa(c,r,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(p=>sa(c,p,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var ey=[];function E3(e){ey.push(e)}function C3(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(Ao)||xl(e).catch(u=>{P.error("translateTitle error:",u.name,u.message,u.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var fi="";async function xl(e){let t=document.title;if(!t||t.includes(Ao))return;fi!==t&&(fi=t);let n=await bn(e,t);if(!ai(e,n))try{let a=await ha({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=fi+Ao+a.text)}catch(a){throw a}}function w3(e){e.rule.isTranslateTitle&&(document.title=fi)}var El="Original";function Ke(){return El}function Nt(e){El=e,v3(El)}var Cl;function k3(e){let t=e.ctx.rule.aiRule;if(P.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=ln(e.ctx),r=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(r,1);let u,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{hi(e,l,a)}),Cl=new MutationObserver(l=>{l.forEach(function(c){if(Mn(c.target)){if(o==u&&c.target===u&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=u){c.removedNodes?.forEach(m=>{m===u&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==u){if(o.translated)return;o.translated=!0,P.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),hi(e,o,a);return}t.streamingChange&&u&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(m=>{let g=m.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(P.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),hi(e,g,a))},100))})}})}),Cl.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){$n(l,[t.streamingSelector])&&(u=l,P.debug("streamingNode",u)),$n(l,[t.messageWrapperSelector])&&(o=l,P.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),P.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),hi(e,o,a),u=void 0,o=null}}function hi(e,t,n){ma({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Du(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function A3(){Cl?.disconnect()}var J=null;function yi(){return J||null}function Ti(e){ty(e),sy(e),uy(e),iy(e),ua(document,e),Nt("Translated"),oy(J),ry(J),E3(ba),ny(J)}function ty(e){e.rule.initialSelectorGlobalAttributes&&a3(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function ny(e){k3(e)}function ay(){A3()}function ry(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ar(n,e)})}async function uy(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,r=e.localConfig.tempTranslationUrlMatches||[],u=r.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;u>-1||(r.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Wn({...e.localConfig,tempTranslationUrlMatches:[...r]})}}function oy(e){e.ctx.rule.isTranslateTitle&&(xl(e.ctx),e.titleDynamicObserver=C3(e.ctx))}function iy(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function sy(e){let t=Zt();J&&(t=J.id),J=J||{},J.ctx=e,J.id=t,J.paragraphQueue=J.paragraphQueue||[],J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.containerRule={pageHeight:screen.availHeight,selectors:J.rule.selectors},J.paragraphEntities=J.paragraphEntities||{},J.autoIncreaseParagraphId=J.autoIncreaseParagraphId||1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.immediateTranslateCapacity=e.state.immediateTranslationTextCount,J.observeContainers=J.observeContainers||[],J.observeParagraphs=J.observeParagraphs||[],J.dynamicContainerObserver=J.dynamicContainerObserver||my(J),J.ignoreResizeObserver=J.ignoreResizeObserver||py(J),J.containerVisibleObserver=J.containerVisibleObserver||cy(J),J.paragraphVisibleObserver=J.paragraphVisibleObserver||dy(J),J.injectCssToDocument=bi,J.walkContainer=ma,J.translateState=e.state.translationMode||e.config.translationMode||"dual",J.allInlineWindows=[window],window.onerror=ly(J,e),window.immersiveTranslateSwitchTranslateState=vl.bind(J)}function D3(e,t){t.getRootNode()instanceof ShadowRoot?bi(t.getRootNode(),e):bi(t.ownerDocument,e),wl(e)}function wl(e){J||(J={},J.ctx=e,J.id=Zt(),J.paragraphQueue=[],J.injectCssToDocument=bi,J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.paragraphEntities={},J.autoIncreaseParagraphId=1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.translateState=e.config.translationMode||"dual",J.observeContainers=[],J.observeParagraphs=[],J.allInlineWindows=[window],window.switchTranslateState=vl.bind(J))}function ba(e=!0){J&&(Nt("Original"),ay(),J.interruptEffectDOM=!0,J.ignoreResizeObserver?.disconnect(),J.dynamicContainerObserver?.disconnect(),J.containerVisibleObserver?.disconnect(),J.paragraphVisibleObserver?.disconnect(),J.titleDynamicObserver?.disconnect(),w3(J.ctx),Gm(),Jm(),e&&vl.call(J,"original"),Object.values(J.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),J=null)}function ly(e,t){e.interruptEffectDOM=!1;let n;return function(a){let r=a.message,u=!1;return r?.indexOf("Minified React error")>=0&&(u=!0),u&&(clearTimeout(n),ba(),n=setTimeout(()=>{Ti(t)},e.urlChangeDelay||2e3)),!0}}function cy(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(mi(e,a.target),n.unobserve(a.target))})})}function dy(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let r=a.target;(r.paragraphs||[]).forEach(o=>{bl(e,o)}),n.unobserve(r)}})})}var S3;function gy(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(S3),e.translateState=="original"?!1:(ba(e.urlChangeDelay>20),S3=setTimeout(()=>{let r=e.ctx;Ti(r)},e.urlChangeDelay),!0)):!1}function my(e){return new MutationObserver(t=>{if(!gy(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!qt.isSkipMarkEle(n.target)&&!qt.isMarked(n.target,e.id))continue;let r=(n.target?.paragraphs||[]).reduce((u,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...u,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&$n(n.target,e.ctx.rule.mutationObserverContainerSelectors)){qt.clearMark(n.target),n.target.paragraphs=void 0,mi(e,n.target);return}n.addedNodes.forEach((u,o)=>{u.nodeType===Node.ELEMENT_NODE&&(r.includes(u)||Ar(u,e))})}})}function py(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let r=a.target,u=globalThis.getComputedStyle(r);ol(u)||(n.unobserve(a.target),Ar(r,e))}})}function vl(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{hl(t,e)}),e=="original"&&document.querySelectorAll(`.${rn}`).forEach(t=>t.remove())}function bi(e,t){if(e instanceof HTMLIFrameElement){ua(e.contentDocument,t);return}ua(e,t)}async function L3(e){let t=Ct(),n="auto";if(le()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=N0(e.mainFrame):a=ir(e.mainFrame).slice(0,1e3),n=await lt({text:a})}else if(t)n=await lt({text:ir(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=N0(e.mainFrame),n=await lt({text:a})}else n=await M3();return n==="auto"&&(n=await f3()),ti(n),n}async function P3(){if(!J)return;document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=J.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){J.paragraphQueue.push(n);let u=a.commonAncestorContainer.querySelector(`[${wo}='${n}']`);u&&u.remove()}}yl.call(J,J.ctx)}var F3={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},_3={...an,"zh-CN":{...F3["zh-CN"],...an["zh-CN"]},"zh-TW":{...F3["zh-TW"],...an["zh-TW"]}},Sr=_3;function ya(e,t,n){return Ia(_3,e,t,So,n)}var xi=()=>Xt.filter(e=>e!=="auto"),kt=(e,t,n,a)=>{let r=_g[e]||e,u=Bg[e],o=Rg[e],i={"zh-CN":u,"zh-TW":o,en:r};if(n)return i[e]?i[e]:r;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${r})`}else return r};function Dr(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{P.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:Eo,payload:e},"*")});let n=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(n)}function kl(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((u,o)=>(u[t[o]]=o,u),{}),r=Object.keys(a);for(let u of r){let o=u.replace(/MacCtrl/ig,"Ctrl");o&&Ne(o,i=>{i.preventDefault(),Dr({method:a[u]})})}}var At=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,r=Date.now();if(t.length=u?(t.push(r),0):(t.push(u),u-r)}};function Ta(e){return e!=null}function I3(e,t,n){return`${e.type}#${t}#${n}`}function O3(e,t,n,a,r){return{body:r,id:a,type:I3(e,t,n)}}function fy(e,t,n,a){return{id:n,response:a,type:I3(e,"ask",t)}}function N3(e,t,n,a){if(Ta(a)){let r=a.type;if(Ta(r)&&Ta(a.body)){let[u,o,i]=r.split("#");return u===e.type&&o===t&&i===n}else return!1}else return!1}function hy(e,t,n){if(Ta(n)){let a=n.type;if(Ta(a)&&Ta(n.response)){let[r,u,o]=a.split("#");return r===e.type&&u==="ask"&&o===t}else return!1}else return!1}function by(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function yy(e,t,n,a){return new Promise(r=>{let u=o=>{let i=o.data;hy(t,n,i)&&i.id===a&&(e.removeEventListener("message",u),r(i.response))};e.addEventListener("message",u)})}function Ty(e,t,n,a){let r=u=>{let o=u.data;N3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",r),[e,r]}function B3(e,t,n,a,r,u){let o=async i=>{let s=i.data;if(N3(n,"ask",a,s)){let l=await u(s.body);t=i.source,t.postMessage(fy(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function xy(e,t,n,a,r){let u=Math.random().toString();return e.postMessage(O3(t,"tell",n,u,a),r)}async function R3(e,t,n,a,r,u,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let m=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await yy(e,n,a,i);clearTimeout(m),l(g)});return t.postMessage(O3(n,"ask",a,i,r),u),s}var Bn=class{constructor(t,n,a=window,r="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=r;this.listeners=[];B3(a,n,this.getSystemProtocol("ping"),"ping",r,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let r=0;r<=n;r++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",r=window){let u=n.contentWindow;if(Ta(u))return new Bn(t,u,r,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:r=window.parent}={}){return new Bn(t,r,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new Bn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await R3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Ty(this.thisWindow,this.protocol,t,n))}tell(t,n){xy(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(B3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return R3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){by(this.listeners)}};var Ey;function Ei(){return Ey}var Cy=new At({limit:7,interval:1250}),wy={tencent:new At({limit:3,interval:1350}),baidu:new At({limit:1,interval:1550}),strict:new At({limit:1,interval:1050}),d:new At({limit:1,interval:1050}),youdao:new At({limit:5,interval:1050}),you:new At({limit:5,interval:1050}),cai:new At({limit:5,interval:1050}),google:new At({limit:10,interval:1050}),deepl:new At({limit:10,interval:1050}),transmart:new At({limit:30,interval:1050}),papago:new At({limit:3,interval:1150}),openai:new At({limit:10,interval:1300}),chatgpt:new At({limit:1,interval:1350})};function Lu(e){return wy[e]||Cy}async function U3(e){if(Ct()){let n=Ei();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return P.error("can not comunicate with root frame, use strict limiter",a),Lu("strict").getDelay()}else return Lu("strict").getDelay()}else return Lu(e).getDelay()}async function j3(e,t){if(!Ct()){let a=Lu(e);t&&a.setOptions(t)}}async function z3(e){let t=e.key;return{value:Lu(t).getDelay()}}var Ci=new Map;async function Al(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=ca(e.body)),Ci.has(t))return Ci.get(t);let n=ue(e);Ci.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Ci.delete(t)},3e4)}}async function H3(e){return Al(e)}async function Pu(e){if(Ct()){let n=Ei();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw P.error("can not comunicate with root frame, use strict limiter",a),a}else return Al(e)}else return Al(e)}var Pr={},vy={root:"",lang:"en",fallbackLang:"en"};function Sl(e,t){let n=Object.assign({},vy,e);Pr=t||Pr;let[a,r]=W(n.lang),[u,o]=W(Pr),[i,s]=W(!1),l=m=>{if(u.hasOwnProperty(m))return;s(!1);let g=h3(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(p=>p.json()).then(p=>{Pr[m]=p,o({...Pr}),s(!0)}).catch(p=>{o({...Pr}),s(!0)}))};return ke(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:r,t:(m,g)=>{if(!u.hasOwnProperty(a))return m;let p=Su(u,a,m);return p===m&&a!==n.fallbackLang&&(p=Su(u,n.fallbackLang,m)),dl(p,g)},isReady:i}}var Ll=Ju(null),Dl={root:"assets",lang:"en",fallbackLang:"en"},wi=e=>{let{t,setLang:n,lang:a,isReady:r}=Sl({root:e.root||Dl.root,lang:e.lang||Dl.lang,fallbackLang:e.fallbackLang||Dl.fallbackLang,getUrl:e.getUrl},e.translations);return d(Ll.Provider,{value:{t,setLang:n,lang:a,isReady:r},children:e.children})};function W3(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let r={},u=Object.keys(n);for(let l of u){let m=n[l].matches;for(let g of m)r[g]||(r[g]=[]),r[g].push(l)}let o=r[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(m=>m!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Mu(e,t=2e3){return n=>{let a,r=0;return u=>{++r==e&&(n(u),r=0),clearTimeout(a),a=setTimeout(()=>r=0,t)}}}function $3(e){let t;try{t=new URL(e)}catch{return!1}let n=q3(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(ky(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function ky(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function K3(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function V3(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function qn(e){let{items:t,maxWidth:n}=e;return n=n||128,d("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let r=a.target.value,u=t.find(o=>o.value===r);u&&u.onSelected(u)},children:t.map((a,r)=>d("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+r))})}function G3(e){let{items:t,maxWidth:n,isInput:a,value:r}=e;return n=n||128,a?d("input",{value:r,onChange:u=>{e.onChange(u.target.value)}}):d("select",{autoComplete:"off",style:{maxWidth:`${n}px`},value:t.find(u=>u.selected)?.value,onChange:u=>{let o=u.target.value,i=t.find(s=>s.value===o);i&&i.onSelected(i)},children:t.map((u,o)=>d("option",{value:u.value,selected:u.selected,children:u.label},"selectlink"+o))})}var vi="DROP_DOWN_DEFAULT_VALUE";function Pl(e){let{showArrow:t,onSelected:n,className:a,menus:r,maxWidth:u}=e;a=a||"",t=t??!0,u=u||70;let o=kn(null);return d("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:vi,style:{maxWidth:`${u}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==vi){o.current.value=vi,o.current?.dispatchEvent(new Event("change"));let l=r.find(c=>c.value===s);l&&n(l)}},children:[{value:vi,label:e.label}].concat(r).map((i,s)=>d("option",{value:i.value,children:i.label},"option-"+s))})}function be(){return Qu(Ll)}function Ml(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:r}=be(),u=t.name;return t.label&&(u=t.label),t.labelKey&&(u=r(t.labelKey)),t.type==="select"?d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[u,"\uFF1A"]}),d(qn,{items:t.options.map(o=>({label:`${o.label?r(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function xa(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var Ay=({date:e})=>{let{t}=be(),[n,a]=W(!1);return ke(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},Sy=({minVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},Dy=()=>{let{t:e}=be();return d("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},Ly=({message:e,handleSyncing:t,date:n})=>{let{t:a}=be();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Fl(e){let{isShowError:t,request:n}=e,[a,r]=W(null),{t:u}=be(),[o,i]=W(null),[s,l]=W(null),[c,m]=W(""),[g,p]=W(!1),[f,A]=W(!1),[k,h]=W(!1),[S,_]=W(null),[B,L]=W(null),v=da(),y=async()=>{m("");let T=o;if(o===null)try{let b=await n({url:aa});b?(i(b),T=b,p(!0)):(m(u("unknownError")),l(null))}catch(b){l(null),m(b.message);return}T!==null?(e.setStorageBuildinConfig(T),l(!1),r(T.buildinConfigUpdatedAt)):(m(u("canNotFetchRemoteRule")),l(null))};return ke(()=>{ze().then(T=>{let b=T.buildinConfigUpdatedAt;_(T);let x=new Date(b);if(r(b),v==="0.0.0"){h(!0);return}n({url:aa}).then(R=>{let D=R,I=D.minVersion,M=v;i(D);let F=D.latestVersion;if(F&&(xa(M,F)?L(!0):L(!1)),xa(M,I)){let $=D.buildinConfigUpdatedAt;new Date($)>x?(l(!0),y()):l(!1)}else A(!0),l(null)}).catch(R=>{l(null),m(R.message)})})},[]),ke(()=>{ze().then(T=>{_(T)})},[a]),S?d("div",{class:"text-sm mt-2",style:{maxWidth:218},children:k?d(Dy,{}):c?t===!1?null:d(Ly,{handleSyncing:y,message:c,date:a||""}):f?t===!1?null:d(Sy,{minVersion:o.minVersion}):s===null||s===!0?null:g?d(Ay,{date:a}):null}):null}function _l(e){let t=da(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:r,onTranslateLocalHtmlFile:u,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:m,config:g,openAboutPage:p,onTranslateTheWholePage:f,onToggleEnabled:A,openOptionsPage:k,ontranslateToThePageEndImmediately:h,onSetPageLanguage:S,onToggleTranslate:_,onTranslateLocalPdfFile:B,onTranslatePdf:L,onRestorePage:v,ctx:y,currentUrl:T,currentLang:b,onClose:x,onTranslatePage:R,onSetLocalConfig:D,onMouseTriggerChanged:I,errorMsg:M,disabledButton:F,noPermissionPDF:$}=e,Z=a,[de,V]=W(""),[me,ge]=W(M),{t:w,lang:H}=be(),Q=60;H.startsWith("zh")||(Q=65);let fe=null,se=null,O=null,N=null,re=null,te=null,ae=null,ne=null,oe=null,Y=null,ce=null,Le=null,Oe=!0;if(g){Dt()&&g&&(Oe=g.generalRule.showSponsorOnSafari);let{translationService:j,translationServices:pe,translationUrlPattern:Be}=g;hn[j]&&(ne=V0(j,y)),pe&&pe[j]?Le=pe[j]||{}:Le={};try{oe=new URL(T||"")}catch{}if(T&&$3(T)){Y=K3(oe.hostname),ce=V3(T);let{matches:Ae,excludeMatches:De}=Be;se=Ae.includes(Y),fe=Ae.includes(oe.hostname),N=De.includes(Y),O=De.includes(oe.hostname),te=Ae.includes(ce),ae=De.includes(ce)}}if(g&&b&&b!=="auto"){let{translationLanguagePattern:j}=g,{matches:pe}=j;pe.includes(b)?re=!0:re=!1}let he=j=>{j.preventDefault(),k()},Xe=j=>{Z(pe=>(pe.alpha?V("Success disable alpha!"):V("Success enable alpha!"),{...pe,alpha:!pe.alpha}))},pt=j=>{Z(pe=>({...pe,translationMode:j})),o(j)},We=()=>{Z(j=>({...j,translationArea:"body"})),f()},$e=()=>{Z(j=>({...j,translationArea:"main"})),n()},qe=(j,pe,Be,Ae)=>{if(j==="default"){Z(xt=>{let Pe={...xt.translationUrlPattern};return{...xt,translationUrlPattern:{...xt.translationUrlPattern,matches:Ye([oe?.hostname,Y,T],Pe.matches),excludeMatches:Ye([oe?.hostname,Y,T],Pe.excludeMatches)}}});return}let De=j,Ge=De==="matches"?"excludeMatches":"matches";oe&&Z(xt=>{let Pe={...xt.translationUrlPattern};return Pe[De]=un(pe,Pe[De]),Ae.length>0&&(Pe[De]=Ye(Ae,Pe[De])),Pe[Ge]=Ye(Be,Pe[Ge]),{...xt,translationUrlPattern:{...xt.translationUrlPattern,...Pe}}}),De==="matches"&&l==="Original"?setTimeout(()=>{R(),x()},100):De==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{v(),x()},100)},Ht=j=>{if(!j){Z(Ae=>{let De={...Ae.translationLanguagePattern};return{...Ae,translationLanguagePattern:{...Ae.translationLanguagePattern,matches:Ye(b,De.matches),excludeMatches:Ye(b,De.excludeMatches)}}});return}let pe=j,Be=pe==="matches"?"excludeMatches":"matches";b&&Z(Ae=>{let De={...Ae.translationLanguagePattern};return De[pe]=un(b,De[pe]),De[Be]=Ye(b,De[Be]),{...Ae,translationLanguagePattern:{...Ae.translationLanguagePattern,...De}}}),pe==="matches"&&l==="Original"&&setTimeout(()=>{R(),x()},100)},Jn=oe?.pathname.toLowerCase().endsWith(".pdf"),Ze=w("translate");l==="Translated"||l==="Error"?Ze=w("show-original"):l==="Original"?Jn?Fa()&&oe.protocol==="file:"||$?Ze=w("translate-firefox-local-pdf"):le()?Ze=w("noSupportTranslate-pdf"):Ze=w("translate-pdf"):Ze=w("translate"):Ze=w(l);let vn=w("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(g.shortcuts.toggleTranslatePage&&(mr()&&y.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ze+=` (${w(`fingers.${y.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ze+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(vn+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let dn=[];y&&(dn=$o(y));let ft=j=>{j.preventDefault(),x()},Vt=Mr(y.config.translationService,y.config.targetLanguage);return d("div",{class:"p-3",children:[d("div",{class:"text-sm",children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[w("popupSourceLanguage"),"\uFF1A"]}),d(qn,{items:Xt.map(j=>({label:kt(j,g.interfaceLanguage),value:j,selected:j===y.sourceLanguage,onSelected:pe=>{S(pe.value)}}))})]}),g&&g.targetLanguage&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[w("popupTarget"),"\uFF1A"]}),d(qn,{items:Vt.filter(j=>j!=="auto").map(j=>({label:kt(j,g.interfaceLanguage),value:j,selected:j===g.targetLanguage,onSelected:pe=>{Z(Be=>({...Be,targetLanguage:pe.value}))}}))})]}),ne&&dn.length>0&&d(rt,{children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[w("popupService"),"\uFF1A"]}),d(qn,{items:dn.map(j=>({label:`${w("translationServices."+j.id)}${j.ok?"":" "+w("needAction")}`,value:j.id,selected:j.selected,onSelected:pe=>{let Be=dn.find(Ae=>Ae.id===pe.value);Be.ok?(Z(Ae=>({...Ae,translationService:Be.id})),Be.props.length===0?setTimeout(()=>{R()},1):setTimeout(()=>{v()},1)):(Z(Ae=>({...Ae,translationService:Be.id})),setTimeout(()=>{k()},100))}}))})]}),Le&&ne.props.length>0&&ne.props.map((j,pe)=>d("div",{class:"pl-4 text-sm",children:d(Ml,{field:j,value:Le[j.name],onChange:Be=>{Z(Ae=>{let De=Ae.translationServices||{},Ge=De[ne.id]||{};return setTimeout(()=>{v()},1),{...Ae,translationServices:{...De,[ne.id]:{...Ge,[j.name]:Be}}}})}},"field-"+pe)},"service"+pe))]}),oe&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:w("forThisSite")}),d(qn,{items:[{label:w("default"),value:"default",selected:fe===!1&&O===!1&&!se&&!N&&!te&&!ae,onSelected:()=>{qe("default",oe.hostname,[],[]);let j=oe.hostname,pe=y.localConfig.tempTranslationUrlMatches||[],Be=pe.filter(De=>De.match!==j),Ae=!1;Be.length!==pe.length&&(Ae=!0),Ae&&D({...y.localConfig,tempTranslationUrlMatches:[...Be]})}},ce&&{label:w("alwaysTranslateSomeSite",{hostname:w("currentUrl")}),value:"matchesUrl",selected:te,onSelected:()=>{qe("matches",ce,[ce],[])}},{label:w("alwaysTranslateSomeSite",{hostname:oe.hostname}),value:"matches",selected:fe,onSelected:j=>{qe(j.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:w("alwaysTranslateSomeSite",{hostname:Y}),value:"matchesWild",selected:se,onSelected:()=>{qe("matches",Y,[ce,oe.hostname,Y],[oe.hostname])}},ce&&{label:w("neverTranslateSomeSite",{hostname:w("currentUrl")}),value:"excludeMatchesUrl",selected:ae,onSelected:()=>{qe("excludeMatches",ce,[ce],[])}},{label:w("neverTranslateSomeSite",{hostname:oe.hostname}),value:"excludeMatches",selected:O,onSelected:j=>{qe(j.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:w("neverTranslateSomeSite",{hostname:Y}),value:"excludeMatchesWild",selected:N,onSelected:()=>{qe("excludeMatches",Y,[oe.hostname,ce,Y],[oe.hostname])}}].filter(Boolean)})]}),I&&_a()&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[w("mouse-translate"),"\uFF1A"]}),d(qn,{items:Lo.filter(j=>!(Lo.includes(g.generalRule.mouseHoverHoldKey)&&j==="OtherCustom")).map(j=>{let pe=w("mouseHoldKey",{key:j}),Be=Lo.includes(g.generalRule.mouseHoverHoldKey),Ae=j===g.generalRule.mouseHoverHoldKey;return j==="Auto"?pe=w("mouseHoldKeyAuto"):j==="Off"?pe=w("mouseHoldKeyOff"):j==="OtherCustom"?pe=Be?w("mouseHoldKeyOther"):w("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):j==="Other"&&(pe=w("mouseHoldKeyOther")),Be||j==="OtherCustom"&&(Ae=!0),{label:pe,value:j,selected:Ae,onSelected:De=>{De.value==="Other"?k("#interface"):I(De.value)}}})})]})]}),d("div",{class:"",children:d("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Jn?L&&L():_()},"aria-busy":l==="Translating",disabled:F||l==="Translating",children:Ze})}),d("div",{class:"text-sm",children:de}),d("div",{class:"text-sm",children:me}),d("div",{class:"flex justify-between flex-wrap",children:[b&&b!=="auto"?d("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[d("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!re,onChange:j=>{let pe=j.target.checked;Ht(pe?"matches":void 0)}}),w("alwaysTranslateSomeLanguage",{language:kt(b,g.interfaceLanguage,!1,!0)})]}):d("span",{}),d("div",{class:"flex flex-end flex-grow",children:d(Pl,{label:w("more"),showArrow:!0,maxWidth:Q,onSelected:j=>{j.value==="changeToOnlyTranslationMode"?pt("translation"):j.value==="changeToDualTranslationMode"?pt("dual"):j.value==="translateTheWholePage"?f():j.value==="translateToThePageEndImmediately"?h():j.value==="translateTheMainPage"?n():j.value==="showTranslationOnly"||(j.value==="translateLocalPdfFile"?B&&B():j.value==="translateLocalHtmlFile"?u&&u():j.value==="translateLocalSubtitleFile"?i&&i():j.value==="donate"?(globalThis.open(g.donateUrl),x()):j.value==="feedback"?(globalThis.open(g.feedbackUrl),x()):j.value==="options"?(k(),x()):j.value==="changeToTranslateTheWholePage"?We():j.value==="changeToTranslateTheMainPage"?$e():j.value==="about"?p():j.value==="toggleEnabled"?A():j.value==="openEbookViewer"?m():j.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+w("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+w("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+w("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+w("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+vn,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+w("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+w("browser.openEbookBuilder"),value:"openEbookBuilder"},!le()&&{label:"\u{1F4C1} "+w("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!le()&&{label:"\u{1F310} "+w("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+w("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?w("clickToDisableExtension"):w("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+w(Oe?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),d("footer",{children:[d(Fl,{isShowError:!1,request:r,setStorageBuildinConfig:s}),d("div",{class:"mt-3 text-sm flex justify-between",children:[d("a",{href:"#",class:"secondary",onClick:he,children:w("options")}),le()&&d("a",{href:"#",class:"secondary",onClick:ft,children:w("close")}),d("span",{class:"immersive-translate-no-select muted",onClick:Mu(7)(Xe),children:["V",t,g.enabled?null:d("a",{href:"#",onClick:A,children:[" ","(",w("hasBeenDisabled"),")"]})]})]})]})]})}async function J3(e){try{let t=new Date;P.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await z.storage.local.set({[Sg]:t.toISOString()}),await Py(),le()||await Y3()}catch(t){P.error("run cron task failed",t)}}async function Py(){try{let e=await xn(),t=await ue({url:aa}),n=e.buildinConfigUpdatedAt,a=new Date(n),r=t.buildinConfigUpdatedAt,u=new Date(r),o=t.minVersion,i=z.runtime.getManifest().version;xa(i,o)?u>a?(await z.storage.local.set({buildinConfig:t}),P.info(`sync remote rules success, latest: ${new Date(r).toLocaleString()}`)):P.debug(`no need to sync rules, latest: ${a}`):P.info(`local version is too old, please update to ${o} or later`)}catch(e){P.error("sync rules error: ",e)}}function Rl(e){let{onClose:t}=e,[n,a]=W("Original"),[r,u,o,i]=bt(()=>{setTimeout(()=>{_("updateGlobalContext",!1)()},250)}),[s,l]=W(null),[c,m]=W(globalThis.location.href),[g,p]=W("auto"),[f,A]=W(null),k=F=>{a(F.detail)},h=F=>{p(F);let $=W3(c,F,s.sourceLanguageUrlPattern);u(Z=>({...Z,sourceLanguageUrlPattern:$})),sn(F)},S=()=>{m(globalThis.location.href)};ke(()=>(document.addEventListener(Co,k,!1),xn().then(F=>{l(F);let $=Pn();p($);let Z=Ke();a(Z),J3(F.interval)}),document.addEventListener("urlChange",S),()=>{document.removeEventListener("pageTranslatedStatus",k),document.removeEventListener("urlChange",S)}),[]),ke(()=>{xn().then(F=>{l(F)})},[r]),ke(()=>{c&&s&&vt({url:c,config:s}).then(F=>{A(F)})},[c,s]);let _=(F,$,Z={})=>()=>{Dr({method:F,data:Z||{}}),$&&t()},B=()=>{t()},L=()=>{u(F=>({...F,enabled:!F.enabled})),setTimeout(()=>{B()},50)},v=()=>{Bl(),setTimeout(()=>{B()},50)},y=()=>{Bl(),setTimeout(()=>{B()},50)},T=(F="")=>{Ai(!0,F),setTimeout(()=>{t()},50)},b=()=>{Si(),setTimeout(()=>{t()},50)},x=()=>{Di(),setTimeout(()=>{t()},50)},R=()=>{Z3(),setTimeout(()=>{t()},50)},D=()=>{Li(),setTimeout(()=>{t()},50)},I=()=>{Q3(),setTimeout(()=>{t()},50)},M=F=>{u($=>({...$,generalRule:{...$.generalRule,mouseHoverHoldKey:F}}))};return!s||!f?null:d(_l,{openEbookViewerPage:x,openEbookBuilderPage:D,onSwitchTranslationMode:F=>{_("switchTranslationMode",!0,{mode:F})()},onTranslateLocalHtmlFile:R,onTranslateLocalSubtitleFile:I,request:ue,onClose:B,onToggleEnabled:L,onTranslateTheWholePage:_("translateTheWholePage",!0),openOptionsPage:T,onToggleTranslate:_("toggleTranslatePage",!0),onTranslateTheMainPage:_("translateTheMainPage",!0),ontranslateToThePageEndImmediately:_("translateToThePageEndImmediately",!0),onTranslatePage:_("translatePage",!0),onRestorePage:_("restorePage",!1),onTranslatePdf:v,openAboutPage:b,onTranslateLocalPdfFile:y,onSetPageLanguage:h,onUserConfigChange:u,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:ki,onSetBuildinConfig:X3,onMouseTriggerChanged:M})}function My(e,t){for(let n of t){if(le()&&!Fa()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Il={position:"right",right:0,top:335},Ut={...Il},Fi=!1,Oa=null,Rn=null,_i=null,Ol=null,Fr=null,Nl=null,ep=6,Pi,Mi,np=null,ap=null;async function rp(){let e=tt();Nl=await ip(),Ut=Nl.pagePopupConfig||Ut;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Ol=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` +`);My(n,[a]);let r=document.createElement("div");r.innerHTML=_e.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(r),Oa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");Rn=o,_i=n.querySelector("#mount"),Oa.setAttribute("style",Ul(Ut)),Wl(),o.addEventListener("mousedown",up),o.addEventListener("touchstart",By),globalThis.addEventListener("resize",s=>{Oa.setAttribute("style",Ul(Ut))})}function Fy(){ka(null,_i),_i.style.display="none",Rn.style.display="block",Fr=setTimeout(()=>{Wl(!0)},2e3)}function tp(e){let t=e.querySelector("#mount"),n=()=>{Fy()},a=r=>{r&&r.target&&r.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let r=await xn();ka(d(wi,{lang:r.interfaceLanguage,fallbackLang:"zh-CN",translations:Sr,children:d("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:d("div",{class:"immersive-translate-popup-wrapper",style:_y(),children:d(Rl,{onClose:n})})})}),t)})().then(()=>{Rn.style.display="none",_i.style.display="block"})}function _y(){let e=jl(),t=e.height,{position:n,top:a,left:r}=Ut,u={position:"fixed"},o=300,i=300,s=100;return jg()&&(n=Il.position,a=Il.top),n==="right"||n==="left"?(u.top=a-s,u.top+o>=t?(u.bottom=30,delete u.top):u.top<=10&&(u.top=10),n==="right"?u.right=0:n==="left"&&(u.left=0)):(n==="top"||n==="bottom")&&(u.left=r-s,u.left+i>=e.width?(u.right=0,delete u.left):u.left<=10&&(u.left=0),n==="top"?u.top=0:n==="bottom"&&(u.bottom=0)),u}function jl(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function up(e){ap=Oa.getAttribute("style"),Pi=e.pageX,Mi=e.pageY,Fr&&clearTimeout(Fr),Fi=!1,Rn.style.opacity="1",Rn.style.transform="none",np=Rn.getAttribute("style"),globalThis.addEventListener("mousemove",zl),globalThis.addEventListener("mouseup",Hl),globalThis.addEventListener("touchmove",op),globalThis.addEventListener("touchend",Bi),globalThis.addEventListener("touchcancel",Bi)}function By(e){e.preventDefault&&e.preventDefault(),up(e.changedTouches[0])}function op(e){zl(e.changedTouches[0])}function Bi(e){e.preventDefault&&e.preventDefault(),Hl(e.changedTouches[0])}function zl(e){e.preventDefault&&e.preventDefault(),Fi=!0,Oa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Hl(e){e.preventDefault&&e.preventDefault(),Iy(),Fr&&clearTimeout(Fr),Pi=Pi||0,Mi=Mi||0;let t=Math.abs(e.pageX-Pi),n=Math.abs(e.pageY-Mi);t{Wl(!0)},2e3)}function Wl(e=!1){Rn.style.opacity="0.4";let t="";Ut.position==="left"?t="translateX(-40%)":Ut.position==="right"?t="translateX(40%)":Ut.position==="top"?t="translateY(-40%)":Ut.position==="bottom"&&(t="translateY(40%)"),Rn.style.transform=t,e&&(Rn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function Iy(){globalThis.removeEventListener("mousemove",zl),globalThis.removeEventListener("mouseup",Hl),globalThis.removeEventListener("touchmove",op),globalThis.removeEventListener("touchend",Bi),globalThis.removeEventListener("touchcancel",Bi)}function Ul(e){let t=Oy(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function Oy(e){let{position:t,...n}=e,a=jl(),r={};return t==="left"?(r.left=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="right"?(r.right=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="top"?(r.top=0,n.left>a.width?r.left=a.width-100:r.left=n.left):t==="bottom"&&(r.bottom=0,n.left>a.width?r.left=a.width-100:r.left=n.left),r}var sp=!1;async function lp(){sp||(sp=!0,rp().catch(e=>{P.error("init popup error",e)}))}var cp=!1,mp=[()=>{Ne.unbind()}],ql=[...mp],Ny=St(async()=>{await Ai()},50),Uy=St(async()=>{await Si()},50),jy=St(async()=>{await Li()},50),zy=St(async()=>{await Di()},50),pp=St(e=>{Dr({method:e})},50),Hy=St(()=>{Ri();let e=new CustomEvent(na,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),Wy=St(()=>{Ni();let e=new CustomEvent(na,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),$y=St(()=>{Oi();let e=new CustomEvent(na,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function qy(e,t){let n=e.document;if(cp)return;if(cp=!0,le()||yp(),n.addEventListener("securitypolicyviolation",tT),n.addEventListener("immersiveTranslateEbookLoaded",eT),n.addEventListener(bg,Qy),n.addEventListener("click",r=>{Jy(r,t)}),le()&&(globalThis.top!=globalThis.self?e.addEventListener("message",Vy,!1):n.addEventListener(na,Ky)),globalThis.top===globalThis.self){let r=Bn.rootIframe(_0);r.handleAsk("getRateLimitDelay",z3),r.handleAsk("throttleRequest",H3)}}function fp(e,t){nT(),qy(t,e);let n=t.document,a=Gy.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),ql.push(()=>{n.removeEventListener("touchstart",a)}),le()&&globalThis.top===globalThis.self&&(kl(e.config),aT(e.config)),Dt()&&kl(e.config)}function Ky(e){lp()}function Vy(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===Eo&&Lr(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function Gy(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?Hy():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?$y():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&Wy()}function Jy(e,t){let n=e.target;if(!n||!n.getAttribute){$l(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&st(a,[{name:a}],{...t,sourceLanguage:"none"});let r=n.getAttribute(`data-${X}-action`);if(r)if(r==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Ii(),$l(n,!0);return}else if(r=="toast-error"){let u=n.getAttribute(`data-${X}-tooltip-text`);gp(Xy.bind(null,t,u||""))}else r=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),gp(Yy.bind(null,t)));$l(n)}async function dp(e=!1){let t=document.querySelector(`.${X}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await xp();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Tp(n)}function gp(e){let t=`${X}-modal`,n=`${X}-modal-title`,a=`${X}-modal-body`,r=`${X}-modal-footer`,u=document.querySelector(`.${t}`);if(u){let o=u.querySelector(`.${n}`),i=u.querySelector(`.${r}`),s=u.querySelector(`.${a}`);e(u,o,s,i)}else{u=document.createElement("div"),u.className=t+" notranslate",u.id=t;let o=document.createElement("div");o.className=X+"-modal-content notranslate",u.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=X+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=r,o.appendChild(c),document.body.appendChild(u),i.onclick=function(){u.style.display="none"},window.onclick=function(m){m.target==u&&(u.style.display="none")},e(u,s,l,c)}setTimeout(()=>{Zy()},100)}function Yy(e,t,n,a,r){let u=hp.bind(null,e);n.innerHTML=`
${Ug} ${u("disableConfirm")}
`,a.innerHTML="";let o=document.querySelector(`div[data-${X}-cancel-desc]`),i=document.createElement("p");i.innerHTML=o?_e.sanitize(o.textContent||""):_e.sanitize(u("searchEnhancementNotes")),i.style.cssText="margin-bottom:12px",a.appendChild(i);let s=[{id:"enable-search-enhancement",value:"enable",text:u("enableSearchEnhancement")},{id:"disable-once",value:"once",text:u("disableOnce")},{id:"disable-global",value:"global",text:u("disableGlobal")}];for(let p=0;p${u("option")}`})),a.appendChild(l);let c=a.querySelector(`.${X}-open-enhancement`);c&&(c.onclick=function(){Ep(!0)});let m=document.createElement("button");m.innerText=u("closeModal"),m.className=`${X}-btn ${X}-cancel-btn`;let g=document.createElement("button");g.className=`${X}-btn`,g.innerText=u("saveSettings"),r.innerHTML="",r.appendChild(m),r.appendChild(g),m.onclick=function(){t.style.display="none"},g.onclick=function(){let p=a.getElementsByTagName("input"),f="";for(let A=0;A{bp()},10)}function tT(e){we.HAS_CSP_ERROR="1"}function nT(){ql.forEach(e=>{e()}),ql=mp}function aT(e){if(le()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Xo.commands,r=[...Object.keys(t).filter(u=>u==="toggleTranslatePage").map(u=>{let o=t[u].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=ya(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:u,title:i}}),{id:gu,title:ya("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:mu,title:ya("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:du,title:ya("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:S0,title:ya("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let u of r)GM.registerMenuCommand(u.title,()=>{u.id===du?Ny():u.id===S0?Uy():u.id===mu?jy():u.id===gu?zy():pp(u.id)},u.key)}}function rT(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{P.error("send content message request failed",e,n)});let t=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(t)}function wp(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let r=a[a.length-1];if(!r)return{};let u=n-r.right,o=t.find(i=>Ve(i.left,u)&&Ve(i.width,r.width));return{prevP:r,curP:o}}function Kl(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function vp(e){return e?e==e[0].repeat(e.length):!0}function Ve(e,t,n=5){return Math.abs(e-t)<=n}var Vl=[",","\\.","\uFF0C","\u3002"];function kp(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],r=t[0];return Ve(a.left,r.left,7)&&Ve(a.nextTop,r.top,10)&&Ui(a,r)}function Ap({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Pp(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Mp({prevLineP:e,prevP:t},n){return Ve(e.left,n.left,1)&&Ve(e.right,t.right,1)&&t.mergedTimes>=1}function Gl(e,t){let{prevLineP:n}=e;return Pp(e,t)&&(Ve(n.bottom,t.bottom)||Ve(n.nextTop,t.top)&&Ve(n.left,t.left))}function Fp(e,t){let{prevLineP:n,prevP:a,scale:r}=e;return Pp(e,t)&&n.width0&&a/r<.1&&n.left!Kl(u.str)).filter(u=>u.translateStatus!="success"&&u.translateStatus!="pending").map(u=>(u.translateStatus="pending",u));if(n.length<=0)return;let a=await lt({text:n.map(u=>u.str).join(` +`).slice(0,1e3)});ti(a);let r=n.map((u,o)=>({text:u.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=n[s];u?(l.translatedStr=u.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),oT(l)})}var Yl={};async function uT(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Yl).filter(n=>!!n);await ji(Op,t)}function oT(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Yl[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",uT)):e.translateStatus=="success"&&(Yl[e.id]=void 0,t.innerHTML=_e.sanitize(e.translatedStr)))}function Np(e,t){let n=[],a=sT(e,t);return lT(e,a).forEach(u=>{if(!(u.length<=0)){if(u.length==1){Ip(e,n,u[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),u.forEach(o=>{Ip(e,n,o,!1)}),n.push("
")}}),`
${n.join("")} -
`}function Fp(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:r,pageHeight:u,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(r*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(r*o)+1).toFixed(2)}%`:"auto",m=`${(l.left*100/(r*o)).toFixed(2)}%`,g=`${(l.top*100/(u*o)).toFixed(2)}%`,p=No()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,S=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${m};top: ${g};width:${c};max-width:${s};`,!p&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let k=ql(l.str)?"":"translate-pending",h=l.str;l.translateStatus=="success"&&(h=l.translatedStr,k=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${h}

`),t.push("
")})}function tT(e,t){let{pageWidth:n,pageHeight:a,scale:r}=e,u=t[0][0],o=u.width,i=u.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let l=`${(o*100/(n*r)).toFixed(2)}%`,c=`${(u.left*100/(n*r)).toFixed(2)}%`,m=`${(u.top*100/(a*r)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${m};height:${s-i}px;overflow:auto;`}function nT(e,t){let n=[];return t.forEach((a,r)=>{if(r==0){n.push([a]);return}let u=n[n.length-1][0];if(e.prevLineP=u,Vl(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function aT(e,t){let n=[];return t.forEach((a,r)=>{if(r==0||a.length>1){n.push([a]);return}let u=n[n.length-1];if(e.prevGroup=u[u.length-1],xp(e,a)){u.push(a);return}n.push([a])}),n}var Rp="immersive-translate",_r,Kn=[];async function Np(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(nt("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await Op(1);await ji(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Kn=[],_r=void 0,sT(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let r=await Op(a);await ji(e,r||[])})}}function rT(e){if(_r)return{..._r,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let u=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(u),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return _r={...i},i}async function Op(e){let t=rT(e);if(!t)return;Kn[e]||(Kn[e]=await uT(t,e,Kn[e-1]||[]));let n=Kn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),r=document.querySelector(`.${Rp}-page[data-page-number="${e}"]`);if(!a||r)return;r=document.createElement("div"),r.setAttribute("style",a.getAttribute("style")||""),r.setAttribute("data-page-number",e+""),r.classList.add("page"),r.classList.add(`${Rp}-page`);let u=Bp(t,n);return r.innerHTML=Ie.sanitize(u,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(r):a.parentNode?.insertBefore(r,a.nextSibling),n}async function uT(e,t,n){let a=await e.pdfDocument.getPage(t),r=await a.getTextContent(),[u,o,i,s]=a._pageInfo.view;_r.pageWidth=i,_r.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=iT(e,r);e.origLineParagraphs=l;let{prevP:c,curP:m}=Tp(e,l);return m&&Up(c,void 0,m),oT(e,l)}function oT(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,wp(e,o)){if(kp(e,o)){u(l,o);return}if(Sp(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},u(l,o);return}if(Dp(e,o)){u(l,o);return}if(Gl(e,o)){u(l,o);return}if(Lp(e,o)){u(l,o),o.left{let o=u.str;if(!o.trim())return;let i=u.transform[4],s=u.transform[5],l=u.width*n,c=t.styles[u.fontName].fontFamily,m=u.transform[3],g=t.styles[u.fontName].descent,f=(1+(1-t.styles[u.fontName].ascent)+g)*m;isNaN(f)&&(f=m);let S=i*n,k=S+l,h=(a-s-f)*n,A=h+m*n,_=A+m*n*.2,B=k+m*n*.3,L={str:o,left:S,nextLeft:B,top:h,nextTop:_,id:`pageNum-${Zt()}`,width:l,originFontName:u.fontName,fontName:c,fontSize:m,right:k,bottom:A,attachList:[],mergedTimes:0,translatedStr:""};if(r.length==0)r.push(L);else{let w=r[r.length-1];if(e.prevLineP=w,Pp(e,L)){vp(e,L)?w.str+=o:w.str+=" "+o,w.right=k,w.fontName=c,w.width=Math.max(w.width+l,k-w.left),w.nextLeft=B;return}if(Mp(e,L)){w.width=Math.max(w.width+l,k-w.left),w.right=k,w.nextLeft=B,w.attachList.push(L);return}r.push(L)}}),r}function Up(e,t,n){if(!Ui(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function sT(e){setTimeout(()=>{let t="";for(let n=1;n<=Kn.length;n++){let a=!1;if(Kn[n]){for(let r=0;r1e3){a=!0;break}}if(a)break}}lt({text:t}).then(n=>{nt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var Na={};async function Yl(e){let n=[...document.querySelectorAll(".source-text")].map(r=>r.textContent).join(""),a=await Pn(e,n,1e3);return sn(a),a}async function jp(e){Nt("Translating");let t=Ln(),n=yr(),a=[...document.querySelectorAll(".source-text")];if(ai(e,t))return;let r=a.filter(u=>u.innerText?.trim()).map((u,o)=>{let i=u.parentElement?.parentElement?.querySelector(".target-text");return st(u,"id",o+""),i&&(Tr(i,o)?.remove(),i.appendChild(ku(e,o))),{text:u.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=Tr(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),u?(c.innerHTML=Ie.sanitize(`${u.message}`),Na[s]={ok:!1,sentence:i}):o&&(c.innerHTML=Ie.sanitize(o.text),Na[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Nt("Translated")}}async function zp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Na),n=[],a=[];for(let r of t){let u=Na[r];if(!u.ok){let i=document.querySelector(`#error-id-${r}`);if(i){let s=i.parentElement;i.remove(),s&&(delete Na[r],s.appendChild(ku(e,r)),a.push(u.sentence))}}}try{await _n({sentences:a},e,(r,u,o)=>{let i=o.id,s=Tr(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),r?(l.innerHTML=Ie.sanitize(`${r.message}`),Na[i]={ok:!1,sentence:o}):u&&(l.innerHTML=Ie.sanitize(u.text),Na[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Nt("Translated")}}function Xl(){Nt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Zl={};async function Hp(e){let t=[...document.querySelectorAll("iframe")],n="";for(let r of t){let u=r.contentDocument;if(!u)continue;let o=u.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await Pn(e,n,1e3);return sn(a),a}async function Wp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Zl),n=[];for(let a of t){let r=Zl[a];if(r.error){let o=r.commonAncestorContainer.querySelector(`[${vo}='${a}']`);o&&o.remove(),n.push(r)}}try{await pi(n,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}function $p(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+rn);for(let r of a)r.remove()}Nt("Original")}async function qp(e){Nt("Translating");let t=Zt(),n=[...document.querySelectorAll("iframe")],a=[],r=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ua(s,e);let l=s.body;if(!l)continue;let c=ln(e);c.isModifyImage=!1,ma({id:t,container:l,filterRule:c,onParagraph:m=>{a.push(m)}})}let u=ni(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=di(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:u,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await yl(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:u,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(r.push(l),Zl[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await pi(r,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}var lT=new AbortController,{signal:cT}=lT,ac=0,rc=0,Ql=!1,ec=0,Fu=!1,Ua,Kp=0,ja=[];function zi(e,t){dT();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,r=a.config,u=r.generalRule.mouseHoverHoldKey==="Off",o=r.generalRule.mouseHoverHoldKey==="Auto",i=St(m=>{if(Ql==!1&&Math.abs(m.clientX-ac)+Math.abs(m.clientY-rc)>3&&(ec<2?ec+=1:Ql=!0),ac=m.clientX,rc=m.clientY,o||Fu&&!Ua){let g=Xp(a.rule,t);if(g){if(uc(g))return;Vp(a,g)}}},o?700:300),s=m=>{let g=m.target;uc(g)||Vp(a)},l=m=>{let g=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",p=Ne.getPressedKeyCodes();if(p.length>1&&Ne[g]&&(Kp=Date.now(),Fu=!1),p.length===1&&Ne[g]){let f=Date.now();Fu=!0,Ua&&clearTimeout(Ua),Ua=setTimeout(()=>{let S=Kp-f;S>0&&S<=150?Fu=!1:s(m),Ua=void 0},150)}};if(ja.push(()=>{Ua&&clearTimeout(Ua)}),u)return;tc("mousemove",i,t),ja.push(()=>{t.removeEventListener("mousemove",i)});function c(){Ql=!1,ec=0,i.cancel()}if(o)tc("blur",c,t),ja.push(()=>{t.removeEventListener("blur",c)});else{let m=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];tc("keyup",Gp,t),ja.push(()=>{t.removeEventListener("keyup",Gp)}),g.includes(m)?Ne("*","mouseHover",l):Ne(r.generalRule.mouseHoverHoldKey,"mouseHover",s),Ne.setScope("mouseHover"),ja.push(()=>{Ne.deleteScope("mouseHover")})}}function dT(){ja.forEach(e=>e()),ja=[]}function Gp(e){Fu=!1}function tc(e,t,n=window){return n.addEventListener(e,t,{signal:cT})}function Vp(e,t,n=window){if(t=t||Xp(e.rule,n),!t){P.debug("can not find selection part!");return}if(uc(t)){P.debug("exclude dom");return}w3(e,t);let a=yi();a?.currentUrl!==window.location.href&&(ba(),Cl(e)),a&&(a.setupMouseHoverListener=zi);let r=ln(e);r.excludeSelectors=[],r.selectors=[];let u=!1;ma({id:a.id,container:t,filterRule:r,force:!0,onParagraph:o=>{Du(a,o,!0).then(i=>{if(i&&!u){u=!0;let s=Date.now();mt(hg,s),nt("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function Xp(e,t){return gT(ac,rc,e,t)}function gT(e,t,n,a){let r=Vg(e,t,n,a);if(r==null)return;let u=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=Jg(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:Yp(l,n)},o=()=>{try{r.setStartBefore(r.startContainer),r.setEndAfter(r.startContainer)}catch(l){P.debug("get mouse over word fail",l)}let s=r.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let r={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},u=0,o=Date.now();Hi&&self.removeEventListener("keydown",Hi),Hi=i,self.addEventListener("keydown",Hi);function i(l){if(Br)return;let c=l,m=c.target||c.srcElement,g=m?.tagName;(m?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(DT(l,r.triggerKey,r.codePrefixAlias)?s(l):u=0)}function s(l){Date.now()-o=r.triggerTimes&&(hT(e,r),u=0)}}function mT({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],r=n[e]||[];r.includes(e)||r.unshift(e);for(let u of r){let o=t.map(i=>{let s=u+i;return r.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function Zp(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Rr;function pT(e){let t=e.parentElement;if(!t)return;Rr=document.createElement("div"),Rr.className=X+"-input",Rr.innerHTML=`
`,t.appendChild(Rr);let n=t,a=!1;do{let r=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(r)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function fT(){Rr&&Rr.remove()}async function hT(e,t){if(!Br)try{let m=function(){o=e.config.inputTargetLanguage;let p=u.split(" ")[0];p&&p[0]&&(p=p[0].toLowerCase()+p.slice(1)),p.trim()&&t.flatAlias.includes(p)?(o=Zp(p,t.codeAlias),r=u.slice(p.length+1)):r=u},g=function(){o="";let p=mT(t),f=u.split(p);if(f.length<2)return;if(r=f[f.length-1],a=f[0],f.length>2){let k=u.lastIndexOf(r),h=u.slice(0,k).lastIndexOf(f[f.length-2]);a=u.slice(0,h+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let S=u.slice(a.length+1,u.indexOf(r)).trim();if(o=Zp(S,t.codeAlias),!o){P.warn("not found alias",S);return}},n=document.activeElement;Br=!0,pT(n);let a="",r="",u=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?m():(g(),o||m()),ST(e);let i=bT(r,t),s=await Pn(e,i);P.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;mt(bg,Date.now());let c=await ha(l,e);AT(n,a+c.text),Br=!1}catch(n){throw Br=!1,n}finally{Br=!1,fT()}}function bT(e,t){let{triggerTimes:n,triggerKey:a}=t,r=0,u=" ";a.length==1?(r=n,u=a):a.toLowerCase()=="space"&&(r=n);let o=e.length;for(let i=e.length-1;i>=e.length-r;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],u].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function yT(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function Qp(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function za(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function TT(e,t,n){await za(10);let a=new DataTransfer;e.forEach(r=>{r==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await za(10)}async function ET(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await za(10))}async function xT(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await za(20),(t.value||t.value==="")&&(t.value=e.text)}async function CT(e,t){tf(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await za(20))}var vT=[TT.bind(null,["plain"])];function wT(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function tf(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function kT(e){if(tf(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function AT(e,t){await kT(e),await za(50);let n=yT(t,e);wT(e),P.debug("clearContnet",_u(e)),await za(50);for(let a of[...vT,CT,xT,ET])if(await a(n,e),P.debug("setContent",a.name,Qp(n,e),_u(e),n),Qp(n,e))break}function ST(e){nt("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function DT(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let r="";e&&e.key&&(r=e.key.toLowerCase());let u=e.keyCode,o=n[t]||[];return u===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(r)||a===t||r===t)}async function uf(e){if(Ma().any||!e.rule.enableSearchEnhancement||!/https:\/\/www\.google\..+\/search/.test(e.url))return;let t=_T(e.url);if(!t)return;let n=await Pn(e,t);if(nt("detect_search_action",[{name:"detect_search_action"}],{...e,sourceLanguage:n}),!["zh-CN","zh-TW"].includes(n))return;P.debug("use dual search");let a=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")a=!0;else if(!rf(document.body))return;let u=document.querySelector(e.rule.searchEnhancementSelector);if(!u){let o=document.querySelector("#rcnt");if(!o)return;let i=o.children;if(i&&i.length>1)u=i[1];else{let s=i[0];u=document.createElement("div"),u.id="rhs",u.style.maxWidth="372px",u.style.marginLeft="50px",o.insertBefore(u,s.nextSibling)}}if(a||rf(document.body)){P.debug("find story");let o=await BT(e,t,n);P.debug("enKeyword",o);let i=await PT(o);if(P.debug("news list",i),i&&i.length<=0)return;let s=await FT(i,t,o);if(!s)return;nt("show_search_enhancement",[{name:"show_search_enhancement"}],{...e,sourceLanguage:"search_enhancement"}),LT(e,s,n),u.insertBefore(s,u?.firstChild)}}async function LT(e,t,n){let a=t.querySelectorAll('[translate="true"]');return RT(e,[...a],n),t}async function PT(e){let n=(await ue({url:MT(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,r=new DOMParser().parseFromString(n,"text/xml"),u=[],o=r.querySelectorAll("item");for(let i=0;i\u82F1\u6587\u641C\u7D22 ${n} \u7684\u76F8\u5173\u65B0\u95FB:
-
${u}
`,{ADD_ATTR:["target"]});let i=a.querySelector(`.${X}-search-more`);return i&&(i.onclick=()=>{let s=a.querySelector(`.${X}-expand-items`);s.style.display=="none"?(s.style.display="block",i.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(nf(n))}),a}function af(e){return e.map((t,n)=>{let a=t.title||"",r=t.source||"",u=a.split("-");return u.length>1&&(r=u[u.length-1].trim(),u=u.slice(0,u.length-1)),a=u.join("-"),a=a.trim(),`
${r}
`}function Ip(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:r,pageHeight:u,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(r*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(r*o)+1).toFixed(2)}%`:"auto",m=`${(l.left*100/(r*o)).toFixed(2)}%`,g=`${(l.top*100/(u*o)).toFixed(2)}%`,p=No()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,A=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${m};top: ${g};width:${c};max-width:${s};`,!p&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let k=Kl(l.str)?"":"translate-pending",h=l.str;l.translateStatus=="success"&&(h=l.translatedStr,k=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${h}

`),t.push("
")})}function iT(e,t){let{pageWidth:n,pageHeight:a,scale:r}=e,u=t[0][0],o=u.width,i=u.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let l=`${(o*100/(n*r)).toFixed(2)}%`,c=`${(u.left*100/(n*r)).toFixed(2)}%`,m=`${(u.top*100/(a*r)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${m};height:${s-i}px;overflow:auto;`}function sT(e,t){let n=[];return t.forEach((a,r)=>{if(r==0){n.push([a]);return}let u=n[n.length-1][0];if(e.prevLineP=u,Jl(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function lT(e,t){let n=[];return t.forEach((a,r)=>{if(r==0||a.length>1){n.push([a]);return}let u=n[n.length-1];if(e.prevGroup=u[u.length-1],kp(e,a)){u.push(a);return}n.push([a])}),n}var Up="immersive-translate",_r,Kn=[];async function Hp(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(st("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await jp(1);await ji(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Kn=[],_r=void 0,pT(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let r=await jp(a);await ji(e,r||[])})}}function cT(e){if(_r)return{..._r,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let u=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(u),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return _r={...i},i}async function jp(e){let t=cT(e);if(!t)return;Kn[e]||(Kn[e]=await dT(t,e,Kn[e-1]||[]));let n=Kn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),r=document.querySelector(`.${Up}-page[data-page-number="${e}"]`);if(!a||r)return;r=document.createElement("div"),r.setAttribute("style",a.getAttribute("style")||""),r.setAttribute("data-page-number",e+""),r.classList.add("page"),r.classList.add(`${Up}-page`);let u=Np(t,n);return r.innerHTML=_e.sanitize(u,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(r):a.parentNode?.insertBefore(r,a.nextSibling),n}async function dT(e,t,n){let a=await e.pdfDocument.getPage(t),r=await a.getTextContent(),[u,o,i,s]=a._pageInfo.view;_r.pageWidth=i,_r.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=mT(e,r);e.origLineParagraphs=l;let{prevP:c,curP:m}=wp(e,l);return m&&Wp(c,void 0,m),gT(e,l)}function gT(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,Dp(e,o)){if(Lp(e,o)){u(l,o);return}if(Mp(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},u(l,o);return}if(Fp(e,o)){u(l,o);return}if(Gl(e,o)){u(l,o);return}if(_p(e,o)){u(l,o),o.left{let o=u.str;if(!o.trim())return;let i=u.transform[4],s=u.transform[5],l=u.width*n,c=t.styles[u.fontName].fontFamily,m=u.transform[3]||u.height,g=t.styles[u.fontName].descent,f=(1+(1-t.styles[u.fontName].ascent)+g)*m;isNaN(f)&&(f=m);let A=i*n,k=A+l,h=(a-s-f)*n,S=h+m*n,_=S+m*n*.2,B=k+m*n*.3,L={str:o,left:A,nextLeft:B,top:h,nextTop:_,id:`pageNum-${Zt()}`,width:l,originFontName:u.fontName,fontName:c,fontSize:m,right:k,bottom:S,attachList:[],mergedTimes:0,translatedStr:""};if(r.length==0)r.push(L);else{let v=r[r.length-1];if(e.prevLineP=v,Bp(e,L)){Sp(e,L)?v.str+=o:v.str+=" "+o,v.right=k,v.fontName=c,v.width=Math.max(v.width+l,k-v.left),v.nextLeft=B;return}if(Rp(e,L)){v.width=Math.max(v.width+l,k-v.left),v.right=k,v.nextLeft=B,v.attachList.push(L);return}r.push(L)}}),r}function Wp(e,t,n){if(!Ui(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function pT(e){setTimeout(()=>{let t="";for(let n=1;n<=Kn.length;n++){let a=!1;if(Kn[n]){for(let r=0;r1e3){a=!0;break}}if(a)break}}lt({text:t}).then(n=>{st("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var Na={};async function Xl(e){let n=[...document.querySelectorAll(".source-text")].map(r=>r.textContent).join(""),a=await bn(e,n,1e3);return sn(a),a}async function $p(e){Nt("Translating");let t=Pn(),n=yr(),a=[...document.querySelectorAll(".source-text")];if(ai(e,t))return;let r=a.filter(u=>u.innerText?.trim()).map((u,o)=>{let i=u.parentElement?.parentElement?.querySelector(".target-text");return it(u,"id",o+""),i&&(Tr(i,o)?.remove(),i.appendChild(ku(e,o))),{text:u.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=Tr(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),u?(c.innerHTML=_e.sanitize(`${u.message}`),Na[s]={ok:!1,sentence:i}):o&&(c.innerHTML=_e.sanitize(o.text),Na[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Nt("Translated")}}async function qp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Na),n=[],a=[];for(let r of t){let u=Na[r];if(!u.ok){let i=document.querySelector(`#error-id-${r}`);if(i){let s=i.parentElement;i.remove(),s&&(delete Na[r],s.appendChild(ku(e,r)),a.push(u.sentence))}}}try{await _n({sentences:a},e,(r,u,o)=>{let i=o.id,s=Tr(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),r?(l.innerHTML=_e.sanitize(`${r.message}`),Na[i]={ok:!1,sentence:o}):u&&(l.innerHTML=_e.sanitize(u.text),Na[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Nt("Translated")}}function Zl(){Nt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Ql={};async function Kp(e){let t=[...document.querySelectorAll("iframe")],n="";for(let r of t){let u=r.contentDocument;if(!u)continue;let o=u.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await bn(e,n,1e3);return sn(a),a}async function Vp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Ql),n=[];for(let a of t){let r=Ql[a];if(r.error){let o=r.commonAncestorContainer.querySelector(`[${wo}='${a}']`);o&&o.remove(),n.push(r)}}try{await pi(n,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}function Gp(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+rn);for(let r of a)r.remove()}Nt("Original")}async function Jp(e){Nt("Translating");let t=Zt(),n=[...document.querySelectorAll("iframe")],a=[],r=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ua(s,e);let l=s.body;if(!l)continue;let c=ln(e);c.isModifyImage=!1,ma({id:t,container:l,filterRule:c,onParagraph:m=>{a.push(m)}})}let u=ni(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=di(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:u,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await Tl(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:u,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(r.push(l),Ql[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await pi(r,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}var fT=new AbortController,{signal:hT}=fT,rc=0,uc=0,ec=!1,tc=0,Fu=!1,Ua,Yp=0,ja=[];function zi(e,t){bT();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,r=a.config,u=r.generalRule.mouseHoverHoldKey==="Off",o=r.generalRule.mouseHoverHoldKey==="Auto",i=St(m=>{if(ec==!1&&Math.abs(m.clientX-rc)+Math.abs(m.clientY-uc)>3&&(tc<2?tc+=1:ec=!0),rc=m.clientX,uc=m.clientY,o||Fu&&!Ua){let g=tf(a.rule,t);if(g){if(oc(g))return;Zp(a,g)}}},o?700:300),s=m=>{let g=m.target;oc(g)||Zp(a)},l=m=>{let g=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",p=Ne.getPressedKeyCodes();if(p.length>1&&Ne[g]&&(Yp=Date.now(),Fu=!1),p.length===1&&Ne[g]){let f=Date.now();Fu=!0,Ua&&clearTimeout(Ua),Ua=setTimeout(()=>{let A=Yp-f;A>0&&A<=150?Fu=!1:s(m),Ua=void 0},150)}};if(ja.push(()=>{Ua&&clearTimeout(Ua)}),u)return;nc("mousemove",i,t),ja.push(()=>{t.removeEventListener("mousemove",i)});function c(){ec=!1,tc=0,i.cancel()}if(o)nc("blur",c,t),ja.push(()=>{t.removeEventListener("blur",c)});else{let m=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];nc("keyup",Xp,t),ja.push(()=>{t.removeEventListener("keyup",Xp)}),g.includes(m)?Ne("*","mouseHover",l):Ne(r.generalRule.mouseHoverHoldKey,"mouseHover",s),Ne.setScope("mouseHover"),ja.push(()=>{Ne.deleteScope("mouseHover")})}}function bT(){ja.forEach(e=>e()),ja=[]}function Xp(e){Fu=!1}function nc(e,t,n=window){return n.addEventListener(e,t,{signal:hT})}function Zp(e,t,n=window){if(t=t||tf(e.rule,n),!t){P.debug("can not find selection part!");return}if(oc(t)){P.debug("exclude dom");return}D3(e,t);let a=yi();a?.currentUrl!==window.location.href&&(ba(),wl(e)),a&&(a.setupMouseHoverListener=zi);let r=ln(e);r.excludeSelectors=[],r.selectors=[];let u=!1;ma({id:a.id,container:t,filterRule:r,force:!0,onParagraph:o=>{Du(a,o,!0).then(i=>{if(i&&!u){u=!0;let s=Date.now();mt(xg,s),st("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function tf(e,t){return yT(rc,uc,e,t)}function yT(e,t,n,a){let r=Zg(e,t,n,a);if(r==null)return;let u=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=Qg(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:ef(l,n)},o=()=>{try{r.setStartBefore(r.startContainer),r.setEndAfter(r.startContainer)}catch(l){P.debug("get mouse over word fail",l)}let s=r.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let r={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},u=0,o=Date.now();Hi&&self.removeEventListener("keydown",Hi),Hi=i,self.addEventListener("keydown",Hi);function i(l){if(Br)return;let c=l,m=c.target||c.srcElement,g=m?.tagName;(m?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(BT(l,r.triggerKey,r.codePrefixAlias)?s(l):u=0)}function s(l){Date.now()-o=r.triggerTimes&&(CT(e,r),u=0)}}function TT({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],r=n[e]||[];r.includes(e)||r.unshift(e);for(let u of r){let o=t.map(i=>{let s=u+i;return r.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function nf(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Rr;function xT(e){let t=e.parentElement;if(!t)return;Rr=document.createElement("div"),Rr.className=X+"-input",Rr.innerHTML=`
`,t.appendChild(Rr);let n=t,a=!1;do{let r=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(r)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function ET(){Rr&&Rr.remove()}async function CT(e,t){if(!Br)try{let m=function(){o=e.config.inputTargetLanguage;let p=u.split(" ")[0];p&&p[0]&&(p=p[0].toLowerCase()+p.slice(1)),p.trim()&&t.flatAlias.includes(p)?(o=nf(p,t.codeAlias),r=u.slice(p.length+1)):r=u},g=function(){o="";let p=TT(t),f=u.split(p);if(f.length<2)return;if(r=f[f.length-1],a=f[0],f.length>2){let k=u.lastIndexOf(r),h=u.slice(0,k).lastIndexOf(f[f.length-2]);a=u.slice(0,h+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let A=u.slice(a.length+1,u.indexOf(r)).trim();if(o=nf(A,t.codeAlias),!o){P.warn("not found alias",A);return}},n=document.activeElement;Br=!0,xT(n);let a="",r="",u=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?m():(g(),o||m()),_T(e);let i=wT(r,t),s=await bn(e,i);P.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;mt(Eg,Date.now());let c=await ha(l,e);FT(n,a+c.text),Br=!1}catch(n){throw Br=!1,n}finally{Br=!1,ET()}}function wT(e,t){let{triggerTimes:n,triggerKey:a}=t,r=0,u=" ";a.length==1?(r=n,u=a):a.toLowerCase()=="space"&&(r=n);let o=e.length;for(let i=e.length-1;i>=e.length-r;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],u].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function vT(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function af(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function za(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function kT(e,t,n){await za(10);let a=new DataTransfer;e.forEach(r=>{r==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await za(10)}async function AT(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await za(10))}async function ST(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await za(20),(t.value||t.value==="")&&(t.value=e.text)}async function DT(e,t){uf(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await za(20))}var LT=[kT.bind(null,["plain"])];function PT(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function uf(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function MT(e){if(uf(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function FT(e,t){await MT(e),await za(50);let n=vT(t,e);PT(e),P.debug("clearContnet",_u(e)),await za(50);for(let a of[...LT,DT,ST,AT])if(await a(n,e),P.debug("setContent",a.name,af(n,e),_u(e),n),af(n,e))break}function _T(e){st("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function BT(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let r="";e&&e.key&&(r=e.key.toLowerCase());let u=e.keyCode,o=n[t]||[];return u===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(r)||a===t||r===t)}async function lf(e,t,n){return(await ha({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}function RT(e,t,n,a){let r=[],u="en";for(let o of n)r.push({text:o.textContent||"",id:r.length,from:u,to:a,url:"https://google.com",fromByClient:u});return new Promise((o,i)=>{_n({sentences:r},{...e,translationService:"google"},(s,l,c)=>{if(s)return o([]);let m=l?.id||0,g=n[m];g&&g.className==X+"-search-title-wrapper"&&(g.innerHTML+=_e.sanitize(`
${l?.text}
`,{ADD_ATTR:["target"]}))})})}function Wi(e,t,n){t&&st(t.key,[{name:t.key}],{...e,sourceLanguage:t.sourceLanguage||n})}function ic(e,t,n,a){let r=n.querySelectorAll('[translate="true"]');return RT(e,t,[...r],a),n}async function sc(e,t){let a=(await ue({url:IT(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,u=new DOMParser().parseFromString(a,"text/xml"),o=[],i=u.querySelectorAll("item");for(let s=0;s${e.cancelDescription}
`:""} +

\u82F1\u6587\u641C\u7D22 + ${n} \u7684\u76F8\u5173\u65B0\u95FB:
+

+
${o}
+ + `.replaceAll(` +`,""),{ADD_ATTR:["target"]});let l=r.querySelector(`.${X}-search-more`);return l&&(l.onclick=()=>{let c=r.querySelector(`.${X}-expand-items`);c.style.display=="none"?(c.style.display="block",l.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(of(n))}),r}function sf(e,t){let n=e.style;return t.map((a,r)=>{let u=a.title||"",o=a.source||"",i=u.split("-");return i.length>1&&(o=i[i.length-1].trim(),i=i.slice(0,i.length-1)),u=i.join("-"),u=u.trim(),`
${o}
+
+ ${a}
${Jm(t.pubDate||"")}
+ >${u} +
+
${Qm(a.pubDate||"")}
`}).join(` -`)}function rf(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}function _T(e){let n=new URL(e).searchParams.get("q");return n||""}async function BT(e,t,n){return(await ha({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}async function RT(e,t,n){let a=[],r="en";for(let u of t)a.push({text:u.textContent||"",id:a.length,from:r,to:n,url:"https://google.com",fromByClient:r});return new Promise((u,o)=>{_n({sentences:a},{...e,translationService:"google"},(i,s,l)=>{if(i)return u([]);let c=s?.id||0,m=t[c];m&&m.className==X+"-search-title-wrapper"&&(m.innerHTML+=Ie.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}var Ce=null,Wi={},Or,$i;async function Ri(){if(Ke()==="Original"){let e={};$i&&(e.translationMode=$i),Or&&(e.translationTheme=Or),Ce&&(e={...Ce.state,...e}),await jt(vt(),e),await En(Ce)}else(Ke()==="Translated"||Ke()==="Error")&&Ha()}async function Oi(){if(Ce=await jt(vt(),{}),Ce.rule.isEbookBuilder)return Wp(Ce);if(Ce.rule.isSubtitleBuilder)return zp(Ce);A3()}async function Ii(){if(Ke()==="Original")Ce=await jt(vt(),{}),Or||(Or=Ce.state.translationTheme),Ce=await jt(vt(),{translationTheme:"mask"}),await En(Ce);else if(Ke()==="Translated"){let e=Km().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[Ce.mainFrame,...e],n=Ce?.state.translationTheme;for(let a of t){let r=sr(a,rr,!0);n==="mask"?r!=="none"?st(a,rr,"none",!0):st(a,rr,"mask",!0):r!=="mask"?st(a,rr,"mask",!0):st(a,rr,"none",!0)}}}async function oc(){let e=await jt(vt(),{});return e.rule.isSubtitleBuilder?Yl(e):k3(e)}function OT(e){Ke()==="Original"?jp(e):Xl()}function IT(e){Ke()==="Original"?Ti(e):ba()}async function Ha(){let e=await jt(vt(),{});if(e.rule.isSubtitleBuilder){Xl();return}else e.rule.isEbookBuilder&&$p();ba()}async function En(e){if(Ke()!=="Original"&&await Ha(),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(It,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Wi[e.translationService]||(Wi[e.translationService]=!0,Ct()||sc(e).catch(t=>{P.warn("init translation engine error",t)})),nt("translage_page_daily",[{name:"translage_page_daily"}],e),nt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:Ln()}),e.rule.isSubtitleBuilder)return OT(e);if(e.rule.isEbookBuilder)return qp(e);e.rule.isPdf||IT(e)}async function of(){Ke()==="Original"?await qi():(Ke()==="Translated"||Ke()==="Error")&&(Ce=await jt(vt(),{}),Ce.state.translationArea!=="main"?await qi():Ha())}async function qi(){Ce=await jt(vt(),{translationArea:"main"}),await En(Ce)}async function ic(){Ce=await jt(vt(),{translationArea:"body"}),await En(Ce)}async function Ni(){if(Ke()==="Original"){let e=await jt(vt(),{translationMode:"translation"});await En(e)}else(Ke()==="Translated"||Ke()==="Error")&&await Ha()}async function sf(e){if(Ce=await jt(vt(),{}),nt("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...Ce,sourceLanguage:"unknown"}),Ke()==="Original"){En(Ce);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function lf(){if(Ke()==="Original")await ic();else if(Ke()==="Translated"||Ke()==="Error"){let e={};Ce&&Ce.state&&(e=Ce.state),Ce=await jt(vt(),e),Ce.state.translationArea!=="body"?(Ce.state.translationArea="body",Ce=await jt(vt(),Ce.state),await En(Ce)):Ha()}}async function cf(){Ce=await jt(vt(),{translationStartMode:"immediate"}),await En(Ce)}async function mp(){let e=await jt(vt(),{});if(P.debug("init page ctx",e),e.rule.isSubtitleBuilder){Yl(e);return}if(e.rule.isEbookBuilder){Hp(e);return}if(e.rule.isPdf){await Np(e);return}if(uf(e),$i||($i=e.state.translationMode),Or||(Or=e.state.translationTheme),e.rule.urlChangeDelay&&await Qn(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await NT(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=gf(),r=document.createElement("meta");r.name="immersive-translate-options-url",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){P.warn("inject options url failed",u)}}if(e.rule.isInjectVersion){let a=da(),r=document.createElement("meta");r.name="immersive-translate-version",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){P.warn("inject version failed",u)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(r=>{let u=document.createElement("meta");u.name=r,u.content=e.rule.globalMeta[r],document.head.appendChild(u)}),e.rule.initialGlobalAttributes&&Zm(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await oc():sn(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(P.debug(`detect page language: ${e.url} ${t}`),sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||zm(t,e.config.translationLanguagePattern)&&(n=!0,P.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&_a()&&zi(e,window),n)Ce.state.isAutoTranslate=!0,En(Ce);else if(P.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Wi[e.translationService]||(Wi[e.translationService]=!0,Ct()||sc(e).catch(a=>{P.warn("init translation engine error",a)})))}}async function jt(e,t){let n=Object.keys(t);if(Ce){let a={url:e,config:Ce.config,state:{...Ce.state,...t}};Ce=await wt(a)}else{let a=await Tn(),r=t;n.length===0&&(r=void 0),Ce=await wt({url:e,config:a,state:r})}return Ce}async function df(){let e=await Tn(),t;Ce&&Ce.state&&(t=Ce.state);let n={url:vt(),config:e,state:t},a=await wt(n);Ce=a;let r=yi(),u=[];return r?u=r.allInlineWindows||[window]:u=[window],u.forEach(o=>{dp(a,o),_a()&&zi(a,o),ef(a)}),a}function NT(e,t=3e3){return new Promise((n,a)=>{let r=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,u=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(u),r&&clearTimeout(r),n(null))},50)})}var Bu=new Map,Wa=class{constructor(t,n=!1){this.logger=new hu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),z.runtime.onMessage.addListener((a,r,u)=>{let o=a.from,i=a.to,s,l,c;r.tab&&r.tab.id&&(s=r.tab.id,o=`${o}:${s}`,l=r.tab.url,c=r.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let m=cc(i),{type:g,name:p}=m;if(g!==t)return!1;let f=cc(o),k=Bu.get(g).get(p);if(!k)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:h,sync:A}=k,_={type:t,name:f.name,id:s,url:l,active:c};if(A){try{let B=h(a.payload,_);u({ok:!0,data:B})}catch(B){u({ok:!1,errorName:B.name,errorMessage:B.message,errorDetails:B.details})}return!1}else return h(a.payload,_).then(B=>{u({ok:!0,data:B})}).catch(B=>{u({ok:!1,errorName:B.name,errorMessage:B.message,errorDetails:B.details})}),!0}))}getConnection(t,n,a){let r=!1;a&&a.sync&&(r=!0);let u=this.fromType,o=Bu.get(u);if(o.has(t))return o.get(t).connectionInstance;{let i=new lc(`${u}:${t}`,this.logger);return Bu.get(u).set(t,{messageHandler:n,sync:r,connectionInstance:i}),i}}},lc=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=cc(t),{type:r,id:u}=a;if(r!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await z.runtime.sendMessage(o);return mf(o,i,this.logger)}catch(i){if(r==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await z.tabs.sendMessage(u,o);return mf(o,i,this.logger)}}};function mf(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new gt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new gt("noResponse","Unknown error")}function cc(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Lr=async function(e,t){let{method:n,data:a}=e,r=await df(),u=Date.now();P.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await ic(),mt(jn,u)):n==="translateTheMainPage"?(await qi(),mt(jn,u)):n==="translateToThePageEndImmediately"?(await cf(),mt(jn,u)):n==="toggleTranslatePage"?(await Ri(),mt(jn,u)):n==="toggleTranslateTheWholePage"?(await lf(),mt(jn,u)):n==="toggleTranslateTheMainPage"?(await of(),mt(jn,u)):n==="toggleOnlyTransation"?(await Ni(),mt(jn,u)):n==="translatePage"?(await En(r),mt(jn,u)):n==="toggleTranslationMask"?await Ii():n==="restorePage"?Ha():n==="setCurrentPageLanguageByClient"?sn(a):n==="retryFailedParagraphs"?Oi():n==="switchTranslationMode"&&a&&a.mode&&sf(a.mode)},UT=function(e,t){let{method:n,data:a}=e;if(P.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ke();if(n==="getCurrentPageLanguage"){let r=Ln();return oc().catch(u=>{P.warn("detectCurrentPageLanguage failed",u)}),r}},Ki,Gi;function pp(){let e=Vi();Ct()||jT(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Vi(){return Ki||(Ki=new Wa("content_script",!1).getConnection("main",Lr),Ki)}function jT(){return Gi||(Gi=new Wa("content_script",!1).getConnection("main_sync",UT,{sync:!0}),Gi)}var zT=new Map;function pf(e){let t=HT(64),n=new CustomEvent(gg,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,r)=>{zT.set(t,(u,o)=>{u?r(u):a(o)})})}function HT(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r{})}function ff(e){return le()?Z0(e):at({method:"queryParagraphCache",data:e})}async function hf(e){if(le()){await X0(e);return}return at({method:"setParagraphCache",data:e})}async function bf(){if(le())return Promise.resolve();await at({method:"mockRequest"})}function Ai(e=!1,t=""){return le()?(z.runtime.openOptionsPage(e,t),Promise.resolve()):at({method:"openOptionsPage"})}function gf(e=""){return le()||Dt()?tt().OPTIONS_URL:z.runtime.getURL("options.html")}function z3(e=""){return z&&z.runtime&&z.runtime.getURL?z.runtime.getURL("options.html"):""}function Si(e=!1){return le()?(z.extra.openAboutPage(e),Promise.resolve()):at({method:"openAboutPage"})}function bp(e=!1){return le()?(z.extra.openSearchEnhancement(e),Promise.resolve()):at({method:"openSearchEnhancement"})}function Di(e=!1){return le()?(z.extra.openEbookViewerPage(e),Promise.resolve()):at({method:"openEbookViewerPage"})}function V3(e=!1){return le()?Promise.resolve():at({method:"openHtmlViewerPage"})}function Li(e=!1){return le()?(z.extra.openEbookBuilderPage(e),Promise.resolve()):at({method:"openEbookBuilderPage"})}function yp(e){Dt()}function _l(e=!1){return le()?(alert("it's not support in userscript"),Promise.resolve()):at({method:"openPdfViewerPage"})}function J3(e=!1){return le()?(z.extra.openSubtitleBuilderPage(e),Promise.resolve()):at({method:"openSubtitleBuilderPage"})}function K3(){return le()?(P.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):at({method:"autoSyncLatestConfig"})}var ye=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:r}=t,u=[],o=null,i=new Set;for(let k of r)k.from&&k.from!=="auto"&&i.add(k.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{u=fm(r,l,c)}catch(k){if(a)for(let h=0;hk));let m=[],g=[],p=(k,h,A)=>{let _=h.translatedTexts[0];g[k]||(g[k]=h,g[k].translatedTexts=Array(h.sentenceTotalParts).fill(null)),g[k].translatedTexts[h.partIndex]=_;let B=g[k],L=0;for(let w=0;w{let B=await R3(this.translationOptions.translationService);await Qn(B||0);let L=h.from;if(s&&(L="auto"),h.fromByClient&&h.fromByClient!=="auto"&&(L=h.fromByClient),this.isSupportList)return{...await this.translateList({text:h.tempSentences.map(y=>y.text),from:L,to:h.to,url:A,options:n}),sourceTempSentences:h.tempSentences};{let w=wg;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(w=this.serviceConfig.translationTextSeparator);let y=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(y=this.serviceConfig.newlinePlaceholderDelimiters);let T="";y&&y.length>=2?T=h.tempSentences.map((O,M)=>M===h.tempSentences.length-1?O.text:O.text+y[0]+(M+1)+y[1]).join(""):T=h.tempSentences.map(O=>O.text).join(w);let b=await this.translate({text:T,from:L,to:h.to,url:A,options:n}),{text:E}=b,R=[];if(y&&y.length>=2){let O=`${y[0]}\\d+${y[1]}`;y&&y.length>=3&&(O=y[2]);let M=new RegExp(O,"g");R=E.split(M)}else R=E.split(w);let D=[];if(R.length>h.tempSentences.length){for(let O=0;O{let{text:L,sourceTempSentences:w}=B;for(let y=0;y{if(a){for(let L=0;L({...k.sentence,text:k.translatedTexts.join("")}))}}detectLanguageLocally(t){return lt({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ye.langMap=new Map;var yf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],xn=class extends ye{constructor(n,a,r){super(n,a,r);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),r=`${n.getUTCMonth()+1}`.padStart(2,"0"),u=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${r}-${u}`}async translate(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:xn.langMap.get(r)||"auto",SourceText:a,Target:xn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:xn.langMapReverse.get(i.Response.Source)||r,to:xn.langMapReverse.get(i.Response.Target)||u}}async translateList(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:xn.langMap.get(r)||"auto",SourceTextList:a,Target:xn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:xn.langMapReverse.get(i.Response.Source)||r,to:xn.langMapReverse.get(i.Response.Target)||u}}async signedRequest({secretId:n,secretKey:a,action:r,payload:u,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),m=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await yn(u)].join(` -`),g=xn.getUTCDate(l),p=["TC3-HMAC-SHA256",c,`${g}/${o}/tc3_request`,await yn(m)].join(` -`),f=await l3(g,`TC3${a}`),S=await li(o,f),k=await li("tc3_request",S),h=await li(p,k),A=await ue({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":r,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${h}`},body:u});if(A instanceof Error)throw A;if(A.Response&&A.Response.Error&&A.Response.Error.Message)throw new Error(A.Response.Error.Message);return A}},$a=xn;$a.langMap=new Map(yf),$a.langMapReverse=new Map(yf.map(([n,a])=>[a,n]));var Tf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],WT={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Ji=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=new URLSearchParams({source:r,target:u,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await ue({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:WT});return{text:i.targetText,from:Ji.langMapReverse.get(i.source)||r,to:Ji.langMapReverse.get(i.target)||u}}},qa=Ji;qa.langMap=new Map(Tf),qa.langMapReverse=new Map(Tf.map(([n,a])=>[a,n]));var Ef=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],xa=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=xa.langMap.get(r)||"auto",i=xa.langMap.get(u)||u,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:xa.langMapReverse.get(s.data[2])||"auto",to:u}}async translateXml(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=xa.langMap.get(r)||"auto",i=xa.langMap.get(u)||u,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:xa.langMapReverse.get(s.data[2])||"auto",to:u}}async fetchXmlWithoutToken(n,a,r){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}).toString();return{data:await ue({retry:2,url:o})}}async fetchWithoutToken(n,a,r){let u=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}),o=this.apiUrl+"?"+u.toString();return{data:await ue({retry:2,url:o})}}},Gn=xa;Gn.langMap=new Map(Ef),Gn.langMapReverse=new Map(Ef.map(([n,a])=>[a,n]));function $T(e,t){return t?e+(t-e%t):e}function qT(e,t){return e.split(t).length-1}function dc(e){let t=Date.now(),n=1;for(let a of e)n+=qT(a,"i");return $T(t,n)}function KT(e,t){return Math.floor(Math.random()*(t-e+1))+e}function gc(){return KT(1e6,1e8)}var mc="https://www2.deepl.com/jsonrpc",pc="auto",xf=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function GT(e=xf){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function fc(e){return GT()[e.toLowerCase()]}var VT={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function JT(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function YT(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function XT(e,t,n,a,r,u,o){let i=gc(),s=YT(a,n),l=[];t.forEach(g=>{l.push({text:g,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=dc(t);let c=await ue({retry:2,method:"POST",url:e,body:JT(s),headers:VT}),m={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{m.text.push(g.text)}),m}async function Cf(e,t,n,a=pc,r,u,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:XT(e,t,fc(n),fc(a)??"auto",r,u,o):{text:[],from:a,to:n}}var vf=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Ir=class extends ye{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=mc;n&&n.apiUrl&&(this.API_URL=on(mc,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:r,from:u}=n,o=await Cf(this.API_URL,a,Ir.langMap.get(r)||r,Ir.langMap.get(u)||"auto");return{text:o.text,from:Ir.langMapReverse.get(o.from),to:Ir.langMapReverse.get(o.to)}}},Ca=Ir;Ca.langMap=new Map(vf),Ca.langMapReverse=new Map(vf.map(([n,a])=>[a,n]));var wf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],hc="https://transmart.qq.com/api/imt",Ka=class extends ye{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:r}=n,u=await this.detectLanguage(a),o=Ka.langMap.get(u)||u,i=Ka.langMap.get(r)||r;if(u===r)return{text:a,from:u,to:r};let s=tt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=kf());let m=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),g=await ue({url:hc,body:m,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:u||"auto",to:r}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:r,to:u}=n,o=tt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=kf()),r.length===1){let f=await this.translate({from:a,text:r[0],to:u,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(r.join(` -`));if(l===u)return{text:r,from:l,to:u};let c=Ka.langMap.get(l)||l,m=Ka.langMap.get(u)||u,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:r,lang:c,orig_url:i},target:{lang:m},type:"plain"}),p=await ue({url:hc,body:g,method:"POST"});if(p.header.ret_code!=="succ")throw new Error(p.message||p.header.ret_code);return{text:p.auto_translation,from:l||"auto",to:u}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},r=await ue({url:hc,method:"POST",body:JSON.stringify(a)});if(r.header.ret_code!=="succ")throw new Error(r.message||r.header.ret_code);let u=r.language,o=Ka.langMapReverse.get(u);return o||u}},Ga=Ka;Ga.langMap=new Map(wf),Ga.langMapReverse=new Map(wf.map(([n,a])=>[a,n]));function kf(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function Af(){return Math.random()>=0}var Nr=class extends ye{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,r=a.match(/^\s*/)[0].length;return{text:a.slice(0,r)+"\u6A21\u62DF\uFF1A"+a.slice(r,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:r,to:u}=n;if(await bf(),!Af())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:r,to:u,text:[""]}:{from:r,to:u,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var Df=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],bc=new Map(Df),Sf=new Map(Df.map(([e,t])=>[t,e])),yc=class extends ye{constructor(n,a,r){super(n,a,r);this.apikey="";this.codename=yc.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:r,to:u}=n,o=await ue({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:bc.get(r)||"auto",target_lang:bc.get(u)||u})});if(o.status){let i=o;return i.result&&u=="zh-TW",{text:i.result,from:Sf.get(i.source_lang),to:Sf.get(i.target_lang)}}else throw new Error(o.msg)}},Ru=yc;Ru.langMap=bc,Ru.DEFAULT_CODENAME="deepl";var Yi=Ru;var Kt=null,Lf=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Tc=new Map(Lf),ZT=new Map(Lf.map(([e,t])=>[t,e])),Xi=class extends ye{constructor(n,a,r){super(n,a,r);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=on(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=on(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=on(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=on(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(u=>u.trim())}static async clearState(){Kt=null,await z.storage.local.remove(fn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Kt){Kt={};let a=await z.storage.local.get(fn);a&&a[fn]&&(Kt=a[fn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new mo(n,{state:Kt,onFetch:(r,u)=>{let i=new URL(r).pathname;return i==="/refresh_token"||i==="/oidc/token"?Pu({url:r,...u}):ue({url:r,...u})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:r=>{Kt=r,z.storage.local.set({[fn]:Kt})}});await a.updateToken(),Kt=a.getState(),a.getIsStateChanged()&&await z.storage.local.set({[fn]:Kt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:r,text:u}=n,o={source_lang:Tc.get(a)||"",target_lang:Tc.get(r)||r},i=this.getRandomKey(),s=new URLSearchParams(o);u.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let m;if(i.startsWith("immersive_")){let f=new mo(i,{state:Kt,onFetch:(S,k)=>{let A=new URL(S).pathname;return A==="/refresh_token"||A==="/oidc/token"?Pu({url:S,...k}):ue({url:S,...k})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:S=>{Kt=S,z.storage.local.set({[fn]:Kt})}});m=await f.translateApi(l),f.getIsStateChanged()&&(Kt=f.getState(),await z.storage.local.set({[fn]:Kt}))}else m=await ue({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=m,p=g.map(f=>f.text);if(r==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let k=await new Gn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(h=>h.text).join(` +`)}function cf(e,t){if(!e.keyword)return;let n=e.keyword.value||"";for(let a=0;anew RegExp(a.urlMatch).test(t))}async function gf(e){if(Ma().any)return;if(!e.rule.enableSearchEnhancement){P.debug("enable is false");return}let t=OT(e.rule.searchEnhancementConfig||[],e.url);if(!t){P.debug("not found siteConfig",e.url);return}let n=cf(t,e.url);if(!n){P.debug("not found keyword",e.url);return}t.id=="google"?UT(e,t,n):NT(e,t,n)}async function NT(e,t,n){let a=await bn(e,document.title);t.selector&&setTimeout(async()=>{let r=document.querySelector(t.selector);if(!r){P.debug("selector node not found",t.selector);return}let u=await sc(n,t.showCount);if(u&&u.length<=0){P.debug("list not found");return}let o=await lc(t,u,n,t.showCount);if(!o){P.debug("getInseredNode none");return}o.style.cssText=t.style.container||"";let i=t.selectorAction||"appendChild";i=="insertBefore"?r.parentElement?.insertBefore(o,r):i=="appendChild"?r.appendChild(o):i=="replace"&&r?.replaceWith(o),ic(e,t,o,a),Wi(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a)},t.delayTime||0)}async function UT(e,t,n){let a=await bn(e,n);if(Wi(e,{key:"detect_search_action"},a),!["zh-CN","zh-TW"].includes(a))return;P.debug("use dual search");let r=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")r=!0;else if(!df(document.body))return;let o=document.querySelector("#rhs");if(!o){let i=document.querySelector("#rcnt");if(!i)return;let s=i.children;if(s&&s.length>1)o=s[1];else{let l=s[0];o=document.createElement("div"),o.id="rhs",o.style.maxWidth="372px",o.style.marginLeft="50px",i.insertBefore(o,l.nextSibling)}}if(r||df(document.body)){P.debug("find story");let i=await lf(e,n,a);P.debug("enKeyword",i);let s=await sc(i,t.showCount);if(P.debug("news list",s),s&&s.length<=0)return;let l=await lc(t,s,i,t.showCount);if(!l)return;Wi(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a),ic(e,t,l,a),o.insertBefore(l,o?.firstChild)}}function df(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}var Ce=null,$i={},Ir,qi;async function Ri(){if(Ke()==="Original"){let e={};qi&&(e.translationMode=qi),Ir&&(e.translationTheme=Ir),Ce&&(e={...Ce.state,...e}),await jt(wt(),e),await En(Ce)}else(Ke()==="Translated"||Ke()==="Error")&&Ha()}async function Ii(){if(Ce=await jt(wt(),{}),Ce.rule.isEbookBuilder)return Vp(Ce);if(Ce.rule.isSubtitleBuilder)return qp(Ce);P3()}async function Oi(){if(Ke()==="Original")Ce=await jt(wt(),{}),Ir||(Ir=Ce.state.translationTheme),Ce=await jt(wt(),{translationTheme:"mask"}),await En(Ce);else if(Ke()==="Translated"){let e=Ym().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[Ce.mainFrame,...e],n=Ce?.state.translationTheme;for(let a of t){let r=sr(a,rr,!0);n==="mask"?r!=="none"?it(a,rr,"none",!0):it(a,rr,"mask",!0):r!=="mask"?it(a,rr,"mask",!0):it(a,rr,"none",!0)}}}async function cc(){let e=await jt(wt(),{});return e.rule.isSubtitleBuilder?Xl(e):L3(e)}function jT(e){Ke()==="Original"?$p(e):Zl()}function zT(e){Ke()==="Original"?Ti(e):ba()}async function Ha(){let e=await jt(wt(),{});if(e.rule.isSubtitleBuilder){Zl();return}else e.rule.isEbookBuilder&&Gp();ba()}async function En(e){if(Ke()!=="Original"&&await Ha(),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),$i[e.translationService]||($i[e.translationService]=!0,Ct()||gc(e).catch(t=>{P.warn("init translation engine error",t)})),st("translage_page_daily",[{name:"translage_page_daily"}],e),st("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:Pn()}),e.rule.isSubtitleBuilder)return jT(e);if(e.rule.isEbookBuilder)return Jp(e);e.rule.isPdf||zT(e)}async function mf(){Ke()==="Original"?await Ki():(Ke()==="Translated"||Ke()==="Error")&&(Ce=await jt(wt(),{}),Ce.state.translationArea!=="main"?await Ki():Ha())}async function Ki(){Ce=await jt(wt(),{translationArea:"main"}),await En(Ce)}async function dc(){Ce=await jt(wt(),{translationArea:"body"}),await En(Ce)}async function Ni(){if(Ke()==="Original"){let e=await jt(wt(),{translationMode:"translation"});await En(e)}else(Ke()==="Translated"||Ke()==="Error")&&await Ha()}async function pf(e){if(Ce=await jt(wt(),{}),st("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...Ce,sourceLanguage:"unknown"}),Ke()==="Original"){En(Ce);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function ff(){if(Ke()==="Original")await dc();else if(Ke()==="Translated"||Ke()==="Error"){let e={};Ce&&Ce.state&&(e=Ce.state),Ce=await jt(wt(),e),Ce.state.translationArea!=="body"?(Ce.state.translationArea="body",Ce=await jt(wt(),Ce.state),await En(Ce)):Ha()}}async function hf(){Ce=await jt(wt(),{translationStartMode:"immediate"}),await En(Ce)}async function bp(){let e=await jt(wt(),{});if(P.debug("init page ctx",e),e.rule.isSubtitleBuilder){Xl(e);return}if(e.rule.isEbookBuilder){Kp(e);return}if(e.rule.isPdf){await Hp(e);return}if(gf(e),qi||(qi=e.state.translationMode),Ir||(Ir=e.state.translationTheme),e.rule.urlChangeDelay&&await Qn(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await HT(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=yf(),r=document.createElement("meta");r.name="immersive-translate-options-url",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){P.warn("inject options url failed",u)}}if(e.rule.isInjectVersion){let a=da(),r=document.createElement("meta");r.name="immersive-translate-version",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){P.warn("inject version failed",u)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(r=>{let u=document.createElement("meta");u.name=r,u.content=e.rule.globalMeta[r],document.head.appendChild(u)}),e.rule.initialGlobalAttributes&&n3(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await cc():sn(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(P.debug(`detect page language: ${e.url} ${t}`),sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||qm(t,e.config.translationLanguagePattern)&&(n=!0,P.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&_a()&&zi(e,window),n)Ce.state.isAutoTranslate=!0,En(Ce);else if(P.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&($i[e.translationService]||($i[e.translationService]=!0,Ct()||gc(e).catch(a=>{P.warn("init translation engine error",a)})))}}async function jt(e,t){let n=Object.keys(t);if(Ce){let a={url:e,config:Ce.config,state:{...Ce.state,...t}};Ce=await vt(a)}else{let a=await xn(),r=t;n.length===0&&(r=void 0),Ce=await vt({url:e,config:a,state:r})}return Ce}async function bf(){let e=await xn(),t;Ce&&Ce.state&&(t=Ce.state);let n={url:wt(),config:e,state:t},a=await vt(n);Ce=a;let r=yi(),u=[];return r?u=r.allInlineWindows||[window]:u=[window],u.forEach(o=>{fp(a,o),_a()&&zi(a,o),rf(a)}),a}function HT(e,t=3e3){return new Promise((n,a)=>{let r=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,u=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(u),r&&clearTimeout(r),n(null))},50)})}var Bu=new Map,Wa=class{constructor(t,n=!1){this.logger=new hu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),z.runtime.onMessage.addListener((a,r,u)=>{let o=a.from,i=a.to,s,l,c;r.tab&&r.tab.id&&(s=r.tab.id,o=`${o}:${s}`,l=r.tab.url,c=r.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let m=pc(i),{type:g,name:p}=m;if(g!==t)return!1;let f=pc(o),k=Bu.get(g).get(p);if(!k)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:h,sync:S}=k,_={type:t,name:f.name,id:s,url:l,active:c};if(S){try{let B=h(a.payload,_);u({ok:!0,data:B})}catch(B){u({ok:!1,errorName:B.name,errorMessage:B.message,errorDetails:B.details})}return!1}else return h(a.payload,_).then(B=>{u({ok:!0,data:B})}).catch(B=>{u({ok:!1,errorName:B.name,errorMessage:B.message,errorDetails:B.details})}),!0}))}getConnection(t,n,a){let r=!1;a&&a.sync&&(r=!0);let u=this.fromType,o=Bu.get(u);if(o.has(t))return o.get(t).connectionInstance;{let i=new mc(`${u}:${t}`,this.logger);return Bu.get(u).set(t,{messageHandler:n,sync:r,connectionInstance:i}),i}}},mc=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=pc(t),{type:r,id:u}=a;if(r!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await z.runtime.sendMessage(o);return Tf(o,i,this.logger)}catch(i){if(r==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await z.tabs.sendMessage(u,o);return Tf(o,i,this.logger)}}};function Tf(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new gt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new gt("noResponse","Unknown error")}function pc(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Lr=async function(e,t){let{method:n,data:a}=e,r=await bf(),u=Date.now();P.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await dc(),mt(jn,u)):n==="translateTheMainPage"?(await Ki(),mt(jn,u)):n==="translateToThePageEndImmediately"?(await hf(),mt(jn,u)):n==="toggleTranslatePage"?(await Ri(),mt(jn,u)):n==="toggleTranslateTheWholePage"?(await ff(),mt(jn,u)):n==="toggleTranslateTheMainPage"?(await mf(),mt(jn,u)):n==="toggleOnlyTransation"?(await Ni(),mt(jn,u)):n==="translatePage"?(await En(r),mt(jn,u)):n==="toggleTranslationMask"?await Oi():n==="restorePage"?Ha():n==="setCurrentPageLanguageByClient"?sn(a):n==="retryFailedParagraphs"?Ii():n==="switchTranslationMode"&&a&&a.mode&&pf(a.mode)},WT=function(e,t){let{method:n,data:a}=e;if(P.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ke();if(n==="getCurrentPageLanguage"){let r=Pn();return cc().catch(u=>{P.warn("detectCurrentPageLanguage failed",u)}),r}},Vi,Gi;function yp(){let e=Ji();Ct()||$T(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Ji(){return Vi||(Vi=new Wa("content_script",!1).getConnection("main",Lr),Vi)}function $T(){return Gi||(Gi=new Wa("content_script",!1).getConnection("main_sync",WT,{sync:!0}),Gi)}var qT=new Map;function xf(e){let t=KT(64),n=new CustomEvent(hg,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,r)=>{qT.set(t,(u,o)=>{u?r(u):a(o)})})}function KT(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r{})}function Ef(e){return le()?Q0(e):nt({method:"queryParagraphCache",data:e})}async function Cf(e){if(le()){await Z0(e);return}return nt({method:"setParagraphCache",data:e})}async function wf(){if(le())return Promise.resolve();await nt({method:"mockRequest"})}function Ai(e=!1,t=""){return le()?(z.runtime.openOptionsPage(e,t),Promise.resolve()):nt({method:"openOptionsPage"})}function yf(e=""){return le()||Dt()?tt().OPTIONS_URL:z.runtime.getURL("options.html")}function q3(e=""){return z&&z.runtime&&z.runtime.getURL?z.runtime.getURL("options.html"):""}function Si(e=!1){return le()?(z.extra.openAboutPage(e),Promise.resolve()):nt({method:"openAboutPage"})}function Ep(e=!1){return le()?(z.extra.openSearchEnhancement(e),Promise.resolve()):nt({method:"openSearchEnhancement"})}function Di(e=!1){return le()?(z.extra.openEbookViewerPage(e),Promise.resolve()):nt({method:"openEbookViewerPage"})}function Z3(e=!1){return le()?Promise.resolve():nt({method:"openHtmlViewerPage"})}function Li(e=!1){return le()?(z.extra.openEbookBuilderPage(e),Promise.resolve()):nt({method:"openEbookBuilderPage"})}function Cp(e){Dt()}function Bl(e=!1){return le()?(alert("it's not support in userscript"),Promise.resolve()):nt({method:"openPdfViewerPage"})}function Q3(e=!1){return le()?(z.extra.openSubtitleBuilderPage(e),Promise.resolve()):nt({method:"openSubtitleBuilderPage"})}function Y3(){return le()?(P.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):nt({method:"autoSyncLatestConfig"})}var ye=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:r}=t,u=[],o=null,i=new Set;for(let k of r)k.from&&k.from!=="auto"&&i.add(k.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{u=Tm(r,l,c)}catch(k){if(a)for(let h=0;hk));let m=[],g=[],p=(k,h,S)=>{let _=h.translatedTexts[0];g[k]||(g[k]=h,g[k].translatedTexts=Array(h.sentenceTotalParts).fill(null)),g[k].translatedTexts[h.partIndex]=_;let B=g[k],L=0;for(let v=0;v{let B=await U3(this.translationOptions.translationService);await Qn(B||0);let L=h.from;if(s&&(L="auto"),h.fromByClient&&h.fromByClient!=="auto"&&(L=h.fromByClient),this.isSupportList)return{...await this.translateList({text:h.tempSentences.map(y=>y.text),from:L,to:h.to,url:S,options:n}),sourceTempSentences:h.tempSentences};{let v=Dg;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(v=this.serviceConfig.translationTextSeparator);let y=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(y=this.serviceConfig.newlinePlaceholderDelimiters);let T="";y&&y.length>=2?T=h.tempSentences.map((I,M)=>M===h.tempSentences.length-1?I.text:I.text+y[0]+(M+1)+y[1]).join(""):T=h.tempSentences.map(I=>I.text).join(v);let b=await this.translate({text:T,from:L,to:h.to,url:S,options:n}),{text:x}=b,R=[];if(y&&y.length>=2){let I=`${y[0]}\\d+${y[1]}`;y&&y.length>=3&&(I=y[2]);let M=new RegExp(I,"g");R=x.split(M)}else R=x.split(v);let D=[];if(R.length>h.tempSentences.length){for(let I=0;I{let{text:L,sourceTempSentences:v}=B;for(let y=0;y{if(a){for(let L=0;L({...k.sentence,text:k.translatedTexts.join("")}))}}detectLanguageLocally(t){return lt({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ye.langMap=new Map;var vf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Cn=class extends ye{constructor(n,a,r){super(n,a,r);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),r=`${n.getUTCMonth()+1}`.padStart(2,"0"),u=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${r}-${u}`}async translate(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:Cn.langMap.get(r)||"auto",SourceText:a,Target:Cn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Cn.langMapReverse.get(i.Response.Source)||r,to:Cn.langMapReverse.get(i.Response.Target)||u}}async translateList(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:Cn.langMap.get(r)||"auto",SourceTextList:a,Target:Cn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Cn.langMapReverse.get(i.Response.Source)||r,to:Cn.langMapReverse.get(i.Response.Target)||u}}async signedRequest({secretId:n,secretKey:a,action:r,payload:u,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),m=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Tn(u)].join(` +`),g=Cn.getUTCDate(l),p=["TC3-HMAC-SHA256",c,`${g}/${o}/tc3_request`,await Tn(m)].join(` +`),f=await m3(g,`TC3${a}`),A=await li(o,f),k=await li("tc3_request",A),h=await li(p,k),S=await ue({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":r,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${h}`},body:u});if(S instanceof Error)throw S;if(S.Response&&S.Response.Error&&S.Response.Error.Message)throw new Error(S.Response.Error.Message);return S}},$a=Cn;$a.langMap=new Map(vf),$a.langMapReverse=new Map(vf.map(([n,a])=>[a,n]));var kf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],VT={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Yi=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=new URLSearchParams({source:r,target:u,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await ue({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:VT});return{text:i.targetText,from:Yi.langMapReverse.get(i.source)||r,to:Yi.langMapReverse.get(i.target)||u}}},qa=Yi;qa.langMap=new Map(kf),qa.langMapReverse=new Map(kf.map(([n,a])=>[a,n]));var Af=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Ea=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=Ea.langMap.get(r)||"auto",i=Ea.langMap.get(u)||u,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Ea.langMapReverse.get(s.data[2])||"auto",to:u}}async translateXml(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=Ea.langMap.get(r)||"auto",i=Ea.langMap.get(u)||u,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Ea.langMapReverse.get(s.data[2])||"auto",to:u}}async fetchXmlWithoutToken(n,a,r){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}).toString();return{data:await ue({retry:2,url:o})}}async fetchWithoutToken(n,a,r){let u=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}),o=this.apiUrl+"?"+u.toString();return{data:await ue({retry:2,url:o})}}},Vn=Ea;Vn.langMap=new Map(Af),Vn.langMapReverse=new Map(Af.map(([n,a])=>[a,n]));function GT(e,t){return t?e+(t-e%t):e}function JT(e,t){return e.split(t).length-1}function fc(e){let t=Date.now(),n=1;for(let a of e)n+=JT(a,"i");return GT(t,n)}function YT(e,t){return Math.floor(Math.random()*(t-e+1))+e}function hc(){return YT(1e6,1e8)}var bc="https://www2.deepl.com/jsonrpc",yc="auto",Sf=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function XT(e=Sf){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function Tc(e){return XT()[e.toLowerCase()]}var ZT={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function QT(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function ex(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function tx(e,t,n,a,r,u,o){let i=hc(),s=ex(a,n),l=[];t.forEach(g=>{l.push({text:g,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=fc(t);let c=await ue({retry:2,method:"POST",url:e,body:QT(s),headers:ZT}),m={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{m.text.push(g.text)}),m}async function Df(e,t,n,a=yc,r,u,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:tx(e,t,Tc(n),Tc(a)??"auto",r,u,o):{text:[],from:a,to:n}}var Lf=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Or=class extends ye{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=bc;n&&n.apiUrl&&(this.API_URL=on(bc,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:r,from:u}=n,o=await Df(this.API_URL,a,Or.langMap.get(r)||r,Or.langMap.get(u)||"auto");return{text:o.text,from:Or.langMapReverse.get(o.from),to:Or.langMapReverse.get(o.to)}}},Ca=Or;Ca.langMap=new Map(Lf),Ca.langMapReverse=new Map(Lf.map(([n,a])=>[a,n]));var Pf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],xc="https://transmart.qq.com/api/imt",Ka=class extends ye{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:r}=n,u=await this.detectLanguage(a),o=Ka.langMap.get(u)||u,i=Ka.langMap.get(r)||r;if(u===r)return{text:a,from:u,to:r};let s=tt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=Mf());let m=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),g=await ue({url:xc,body:m,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:u||"auto",to:r}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:r,to:u}=n,o=tt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=Mf()),r.length===1){let f=await this.translate({from:a,text:r[0],to:u,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(r.join(` +`));if(l===u)return{text:r,from:l,to:u};let c=Ka.langMap.get(l)||l,m=Ka.langMap.get(u)||u,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:r,lang:c,orig_url:i},target:{lang:m},type:"plain"}),p=await ue({url:xc,body:g,method:"POST"});if(p.header.ret_code!=="succ")throw new Error(p.message||p.header.ret_code);return{text:p.auto_translation,from:l||"auto",to:u}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},r=await ue({url:xc,method:"POST",body:JSON.stringify(a)});if(r.header.ret_code!=="succ")throw new Error(r.message||r.header.ret_code);let u=r.language,o=Ka.langMapReverse.get(u);return o||u}},Va=Ka;Va.langMap=new Map(Pf),Va.langMapReverse=new Map(Pf.map(([n,a])=>[a,n]));function Mf(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function Ff(){return Math.random()>=0}var Nr=class extends ye{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,r=a.match(/^\s*/)[0].length;return{text:a.slice(0,r)+"\u6A21\u62DF\uFF1A"+a.slice(r,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:r,to:u}=n;if(await wf(),!Ff())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:r,to:u,text:[""]}:{from:r,to:u,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var Bf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],Ec=new Map(Bf),_f=new Map(Bf.map(([e,t])=>[t,e])),Cc=class extends ye{constructor(n,a,r){super(n,a,r);this.apikey="";this.codename=Cc.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:r,to:u}=n,o=await ue({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:Ec.get(r)||"auto",target_lang:Ec.get(u)||u})});if(o.status){let i=o;return i.result&&u=="zh-TW",{text:i.result,from:_f.get(i.source_lang),to:_f.get(i.target_lang)}}else throw new Error(o.msg)}},Ru=Cc;Ru.langMap=Ec,Ru.DEFAULT_CODENAME="deepl";var Xi=Ru;var Kt=null,Rf=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wc=new Map(Rf),nx=new Map(Rf.map(([e,t])=>[t,e])),Zi=class extends ye{constructor(n,a,r){super(n,a,r);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=on(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=on(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=on(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=on(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(u=>u.trim())}static async clearState(){Kt=null,await z.storage.local.remove(fn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Kt){Kt={};let a=await z.storage.local.get(fn);a&&a[fn]&&(Kt=a[fn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new mo(n,{state:Kt,onFetch:(r,u)=>{let i=new URL(r).pathname;return i==="/refresh_token"||i==="/oidc/token"?Pu({url:r,...u}):ue({url:r,...u})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:r=>{Kt=r,z.storage.local.set({[fn]:Kt})}});await a.updateToken(),Kt=a.getState(),a.getIsStateChanged()&&await z.storage.local.set({[fn]:Kt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:r,text:u}=n,o={source_lang:wc.get(a)||"",target_lang:wc.get(r)||r},i=this.getRandomKey(),s=new URLSearchParams(o);u.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let m;if(i.startsWith("immersive_")){let f=new mo(i,{state:Kt,onFetch:(A,k)=>{let S=new URL(A).pathname;return S==="/refresh_token"||S==="/oidc/token"?Pu({url:A,...k}):ue({url:A,...k})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:A=>{Kt=A,z.storage.local.set({[fn]:Kt})}});m=await f.translateApi(l),f.getIsStateChanged()&&(Kt=f.getState(),await z.storage.local.set({[fn]:Kt}))}else m=await ue({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=m,p=g.map(f=>f.text);if(r==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let k=await new Vn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(h=>h.text).join(` `),url:"",options:{}});k&&k.text&&(p=k.text.split(` -`))}return{text:p,from:g[0]&&ZT.get(g[0].detected_source_language)||a,to:r}}};Xi.langMap=Tc;var Pf=Xi;var QT=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],Ec=new Map(QT),Zi=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:r,to:u}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:Ec.get(r)||r,to:Ec.get(u)||u,apikey:this.APIKEY})},s=await ue(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` -`)&&(l=l.slice(0,-1)),{text:l,from:r,to:u}}else throw new Error(JSON.stringify(s))}};Zi.langMap=Ec;var Mf=Zi;var eE=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],xc=new Map(eE),Qi=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:[]};let o={"api-version":"3.0",to:xc.get(u)||u};r!=="auto"&&(o.from=xc.get(r)||r);let i=new URLSearchParams(o),s=JSON.stringify(a.map(m=>({text:m}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await ue(l);if(c.length===0)throw new Error("server response invalid");return{from:r,to:u,text:c.map(m=>m.translations.map(p=>p.text).join(" "))}}};Qi.langMap=xc;var Ff=Qi;var tE=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Ou=new Map(tE),Cc=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n,o;if(a.length===0)return{from:r,to:u,text:[]};let i=` +`))}return{text:p,from:g[0]&&nx.get(g[0].detected_source_language)||a,to:r}}};Zi.langMap=wc;var If=Zi;var ax=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],vc=new Map(ax),Qi=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:r,to:u}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:vc.get(r)||r,to:vc.get(u)||u,apikey:this.APIKEY})},s=await ue(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` +`)&&(l=l.slice(0,-1)),{text:l,from:r,to:u}}else throw new Error(JSON.stringify(s))}};Qi.langMap=vc;var Of=Qi;var rx=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],kc=new Map(rx),es=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:[]};let o={"api-version":"3.0",to:kc.get(u)||u};r!=="auto"&&(o.from=kc.get(r)||r);let i=new URLSearchParams(o),s=JSON.stringify(a.map(m=>({text:m}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await ue(l);if(c.length===0)throw new Error("server response invalid");return{from:r,to:u,text:c.map(m=>m.translations.map(p=>p.text).join(" "))}}};es.langMap=kc;var Nf=es;var ux=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Iu=new Map(ux),Ac=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n,o;if(a.length===0)return{from:r,to:u,text:[]};let i=`
-`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};r==="auto"||!Ou.get(r)?(o=(await ue({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Ou.get(r)||r,target:Ou.get(u)||u})):l.body=JSON.stringify({text:s,source:Ou.get(r),target:Ou.get(u)||u});let c=await ue(l);if(c.translatedText==="")throw new Error("server response invalid");let m=c.translatedText.split("
").map(g=>g.trim());return{from:r,to:u,text:m}}},_f=Cc;var nE=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],Iu=new Map(nE),es=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};r==="auto"||!Iu.get(r)?(o=(await ue({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Iu.get(r)||r,target:Iu.get(u)||u})):l.body=JSON.stringify({text:s,source:Iu.get(r),target:Iu.get(u)||u});let c=await ue(l);if(c.translatedText==="")throw new Error("server response invalid");let m=c.translatedText.split("
").map(g=>g.trim());return{from:r,to:u,text:m}}},Uf=Ac;var ox=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],Ou=new Map(ox),ts=class extends ye{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(u=>u.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=on(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=Iu.get(r)||r,i=Iu.get(u)||u,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let p=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:p})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},m=this.getRandomKey();m&&(c.headers.Authorization="Bearer "+m,c.headers["api-key"]=m,m.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await ue(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let p=g.choices[0].message.content.trim();return p.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(p=""),!a.includes(".")&&(p.endsWith("\u3002")||p.endsWith("."))&&(p=p.slice(0,-1)),{from:r,to:u,text:p}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=this.prompt.replace(/{{to}}/g,Iu.get(u)||u).replace(/{{text}}/g,a).replace(/{{from}}/g,Iu.get(r)||r),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await ue(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:r,to:u,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};es.langMap=Iu;var Bf=es;var ts=xe+"CacheKey_";function ns(e,t){let n=ts+e;return z.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:r,expired:u}=a[n];return u&&ua.startsWith(ts));if(n.length>0)return z.storage.local.remove(n)}}var aE=[["auto","auto"],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"],["en","en"],["yue","\u7CA4\u8BED"],["wyw","\u53E4\u6587"],["en","en"],["ja","ja"],["ko","ko"],["fr","fr"],["de","de"],["es","es"],["it","it"],["ru","ru"],["pt","pt"],["nl","nl"],["pl","pl"],["ar","ar"],["af","af"],["am","am"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["el","el"],["eo","eo"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ku","ku"],["ky","ky"],["la","lo"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["no","no"],["ny","ny"],["pa","pa"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["sr-Cyrl","sr"],["sr-Latn","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],us=new Map(aE),vc="chatgptWebAccessToken";async function Of(){let e=await ns(vc);if(e)return e;let t=await ue({url:"https://chat.openai.com/api/auth/session",method:"get",responseType:"json"});if(!t.accessToken)throw new Error("UNAUTHORIZED");return await as(vc,t.accessToken,10*60*1e3),t.accessToken}var Ur,os=class{constructor(){u4(this,Ur,Promise.resolve());return os.instance||(os.instance=this),this}enqueue(t){return o4(this,Ur,vs(this,Ur).then(()=>t())),vs(this,Ur)}},wc=os;Ur=new WeakMap;var kc=new wc;Object.freeze(kc);var Nu=class extends ye{constructor(n,a,r){super(n,a,r);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: +{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(u=>u.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=on(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=Ou.get(r)||r,i=Ou.get(u)||u,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let p=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:p})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},m=this.getRandomKey();m&&(c.headers.Authorization="Bearer "+m,c.headers["api-key"]=m,m.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await ue(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let p=g.choices[0].message.content.trim();return p.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(p=""),!a.includes(".")&&(p.endsWith("\u3002")||p.endsWith("."))&&(p=p.slice(0,-1)),{from:r,to:u,text:p}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=this.prompt.replace(/{{to}}/g,Ou.get(u)||u).replace(/{{text}}/g,a).replace(/{{from}}/g,Ou.get(r)||r),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await ue(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:r,to:u,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};ts.langMap=Ou;var jf=ts;var ns=Ee+"CacheKey_";function as(e,t){let n=ns+e;return z.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:r,expired:u}=a[n];return u&&ua.startsWith(ns));if(n.length>0)return z.storage.local.remove(n)}}var ix=[["auto","auto"],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"],["en","en"],["yue","\u7CA4\u8BED"],["wyw","\u53E4\u6587"],["en","en"],["ja","ja"],["ko","ko"],["fr","fr"],["de","de"],["es","es"],["it","it"],["ru","ru"],["pt","pt"],["nl","nl"],["pl","pl"],["ar","ar"],["af","af"],["am","am"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["el","el"],["eo","eo"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ku","ku"],["ky","ky"],["la","lo"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["no","no"],["ny","ny"],["pa","pa"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["sr-Cyrl","sr"],["sr-Latn","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],os=new Map(ix),Sc="chatgptWebAccessToken";async function Hf(){let e=await as(Sc);if(e)return e;let t=await ue({url:"https://chat.openai.com/api/auth/session",method:"get",responseType:"json"});if(!t.accessToken)throw new Error("UNAUTHORIZED");return await rs(Sc,t.accessToken,10*60*1e3),t.accessToken}var Ur,is=class{constructor(){l4(this,Ur,Promise.resolve());return is.instance||(is.instance=this),this}enqueue(t){return c4(this,Ur,vs(this,Ur).then(()=>t())),vs(this,Ur)}},Dc=is;Ur=new WeakMap;var Lc=new Dc;Object.freeze(Lc);var Nu=class extends ye{constructor(n,a,r){super(n,a,r);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: -{{text}}`}throttleDebounce(n,a,r){let u=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{u=s,n.apply(l,i)};s-u>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},r))}}async deleteConversation(n){if(n){let a=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return P.debug("delete conversation res:",a),a}}async translate(n){return await kc.enqueue(async()=>{let{text:a,from:r,to:u}=n;if(a.length===0)return Promise.resolve({from:r,to:u,text:""});let o=us.get(r)||r,i=us.get(u)||u;if(this.accessToken=await Of(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:Zt()})});return P.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:r,to:u,text:c?.message?.content?.parts?.[0]})}catch(c){throw P.debug("post chatgpt error:",c),await rs(vc),c}})}async translateStream(n,a){let{text:r,from:u,to:o}=n;if(r.length===0){a(null,{from:u,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:m}=s;a(null,{from:l,to:c,text:m})},300,200);await kc.enqueue(async()=>{let s="chatgpt"+Zt(),l=z.runtime.connect({name:s}),c,m;l.onMessage.addListener(k=>{if(!(!k||k==="")){if(k==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{m=JSON.parse(k)}catch(h){P.debug("chatgpt json error",h,k);return}c=m?.conversation_id,m?.message?.author?.role==="assistant"&&i({from:u,to:o,text:m?.message?.content?.parts?.[0]})}});let g=us.get(u)||u,p=us.get(o)||o;if(this.accessToken=await Of(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let S=this.prompt.replace(/{{to}}/g,p).replace(/{{text}}/g,r).replace(/{{from}}/g,g);ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[S]}}],model:f,parent_message_id:Zt()})}).catch(k=>{P.debug("chatgpt error",k),l.disconnect(),this.deleteConversation(c),a(k,{from:u,to:o,text:""})})})}};var rE=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],rt={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Ac=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Sc=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Ac(t);if(a)return Array.isArray(n)?`${a}=${n.map(Ac).sort().join(`&${a}=`)}`:`${a}=${Ac(n)}`}).filter(t=>t).join("&"),jr=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let r=t[a];return typeof r<"u"&&r!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],r=this.credentialString(n);return a.push(`${rt.algorithm} Credential=${t.accessKeyId}/${r}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),r={...this.request.params},u=this.request.params,o=this.request.headers;t.sessionToken&&(r[rt.tokenHeader]=t.sessionToken),r[rt.dateHeader]=a,r[rt.notSignBody]="",r[rt.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,r[rt.algorithmKey]=rt.algorithm,r[rt.signHeadersKey]="",r[rt.signQueriesKey]=void 0,r[rt.signatureKey]=void 0,r=this.sortParams(r),this.request.params=r,this.request.headers={};let i=await this.signature(t,a);return this.request.params=u,this.request.headers=o,r[rt.signQueriesKey]=Object.keys(r).sort().join(";"),r[rt.signatureKey]=i,Sc(r)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[rt.dateHeader]=n,t.sessionToken&&(this.request.headers[rt.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[rt.contentSha256Header]=await yn(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return si(await fa(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push(rt.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` -`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Sc(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} +{{text}}`}throttleDebounce(n,a,r){let u=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{u=s,n.apply(l,i)};s-u>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},r))}}async deleteConversation(n){if(n){let a=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return P.debug("delete conversation res:",a),a}}async translate(n){return await Lc.enqueue(async()=>{let{text:a,from:r,to:u}=n;if(a.length===0)return Promise.resolve({from:r,to:u,text:""});let o=os.get(r)||r,i=os.get(u)||u;if(this.accessToken=await Hf(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:Zt()})});return P.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:r,to:u,text:c?.message?.content?.parts?.[0]})}catch(c){throw P.debug("post chatgpt error:",c),await us(Sc),c}})}async translateStream(n,a){let{text:r,from:u,to:o}=n;if(r.length===0){a(null,{from:u,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:m}=s;a(null,{from:l,to:c,text:m})},300,200);await Lc.enqueue(async()=>{let s="chatgpt"+Zt(),l=z.runtime.connect({name:s}),c,m;l.onMessage.addListener(k=>{if(!(!k||k==="")){if(k==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{m=JSON.parse(k)}catch(h){P.debug("chatgpt json error",h,k);return}c=m?.conversation_id,m?.message?.author?.role==="assistant"&&i({from:u,to:o,text:m?.message?.content?.parts?.[0]})}});let g=os.get(u)||u,p=os.get(o)||o;if(this.accessToken=await Hf(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let A=this.prompt.replace(/{{to}}/g,p).replace(/{{text}}/g,r).replace(/{{from}}/g,g);ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[A]}}],model:f,parent_message_id:Zt()})}).catch(k=>{P.debug("chatgpt error",k),l.disconnect(),this.deleteConversation(c),a(k,{from:u,to:o,text:""})})})}};var sx=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],at={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Pc=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Mc=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Pc(t);if(a)return Array.isArray(n)?`${a}=${n.map(Pc).sort().join(`&${a}=`)}`:`${a}=${Pc(n)}`}).filter(t=>t).join("&"),jr=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let r=t[a];return typeof r<"u"&&r!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],r=this.credentialString(n);return a.push(`${at.algorithm} Credential=${t.accessKeyId}/${r}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),r={...this.request.params},u=this.request.params,o=this.request.headers;t.sessionToken&&(r[at.tokenHeader]=t.sessionToken),r[at.dateHeader]=a,r[at.notSignBody]="",r[at.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,r[at.algorithmKey]=at.algorithm,r[at.signHeadersKey]="",r[at.signQueriesKey]=void 0,r[at.signatureKey]=void 0,r=this.sortParams(r),this.request.params=r,this.request.headers={};let i=await this.signature(t,a);return this.request.params=u,this.request.headers=o,r[at.signQueriesKey]=Object.keys(r).sort().join(";"),r[at.signatureKey]=i,Mc(r)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[at.dateHeader]=n,t.sessionToken&&(this.request.headers[at.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[at.contentSha256Header]=await Tn(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return si(await fa(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push(at.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` +`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Mc(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} `),t.push(this.signedHeaders()),t.push(await this.hexEncodedBodyHash()),t.join(` `)}canonicalHeaders(){let t=[];Object.keys(this.request.headers).forEach(a=>{t.push([a,this.request.headers[a]])}),t.sort((a,r)=>a[0].toLowerCase(){let r=a[0].toLowerCase();if(this.isSignableHeader(r)){let u=a[1];if(typeof u>"u"||u===null||typeof u.toString!="function")throw new Error(`Header ${r} contains invalid value`);n.push(`${r}:${this.canonicalHeaderValues(u.toString())}`)}}),n.join(` -`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await yn(t)}async hexEncodedBodyHash(){return this.request.headers[rt.contentSha256Header]?this.request.headers[rt.contentSha256Header]:this.request.body?await this.hexEncodedHash(Sc(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return rE.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,r){let u=await fa(n,`${rt.kDatePrefix}${t.secretKey}`),o=await fa(a,u),i=await fa(r,o);return fa(rt.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,rt.v4Identifier].join("/")}};var If=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Dc=new Map(If),uE=new Map(If.map(([e,t])=>[t,e])),is=class extends ye{constructor(n,a,r){super(n,a,r);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let r={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},u=new jr(r,"translate");await u.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(r.params),i=await ue({retry:2,url:"https://open.volcengineapi.com"+r.pathname+"?"+o.toString(),headers:u.request.headers,method:r.method,body:r.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new gt(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new gt(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:r,to:u}=n,o=Dc.get(r),i={TargetLanguage:Dc.get(u)||u,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` -`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new jr(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),m=await ue({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(m.TranslationList){let g=m.TranslationList.map(f=>f.Translation),p=r;return m.TranslationList.length>0&&m.TranslationList[0].DetectedSourceLanguage&&(p=uE.get(m.TranslationList[0].DetectedSourceLanguage)||r),{text:g,from:p,to:u}}else if(m.ResponseMetadata&&m.ResponseMetadata.Error){let g=m.ResponseMetadata.Error;throw new gt(g.Code,g.Message)}else if(m.ResponseMetaData&&m.ResponseMetaData.Error){let g=m.ResponseMetaData.Error;throw new gt(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(m))}};is.langMap=Dc;var Nf=is;var Uf=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Lc=new Map(Uf),oE=new Map(Uf.map(([e,t])=>[t,e])),zr=class extends ye{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=Lc.get(r)||"detect",i=Lc.get(u)||u,l=await ue({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,m=r;return l.detected_language&&(m=oE.get(l.detected_language)||r),{text:c,from:m,to:u}}else{let c=l.base_resp;throw new gt(c.status_code.toString(),c.status_message)}}};zr.langMap=Lc;var iE=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Pc=new Map(iE),Hr=class extends ye{constructor(n,a,r){super(n,a,r);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:r,to:u}=n,i=await ue({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:Pc.get(r)||r,target_lang:Pc.get(u)||u,text:a})});if(i.code===200)return{text:i.data,from:r,to:u};throw new Error(i.message||i.message||"API Error")}};Hr.langMap=Pc;var Mc="https://{s}bing.com",$f=Mc+"/translator",sE=Mc+"/ttranslatev3",lE=Mc+"/tspellcheckv3",ss="bingGlobalConfig",qf=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],jf=new Map(qf),zf=new Map(qf.map(([e,t])=>[t,e])),Hf=1e3,Cn,Wr;function Fc(e,t){return e.replace("{s}",t?t+".":"")}async function cE(){if(!Cn){let n=await z.storage.local.get(ss);return n&&(Cn=n[ss]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Cn;return Date.now()-e>t}async function Wf(){let e,t,n,a,r,u,o,i,s,l;try{let c=Fc($f,e),m=await ue({retry:2,url:c,responseType:"raw"}),{body:g,headers:p,url:f}=m;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=p["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[r,a,u,o,i,s]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Cn={subdomain:e,IG:t,IID:n,key:r,token:a,tokenTs:r,tokenExpiryInterval:u,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await z.storage.local.set({[ss]:Cn}),Cn}function dE(e){let{IG:t,IID:n,subdomain:a,isVertical:r}=Cn;return Fc(e?lE:sE,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Cn.count++:"")}function gE(e,t,n,a){let{token:r,key:u}=Cn,o={fromLang:n,text:t,token:r,key:u};return!e&&a&&(o.to=a),o}async function Kf(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>Hf)throw new Error(`The supported maximum length of text is ${Hf}. Please shorten the text.`);Wr||(Wr=Wf()),await Wr,await cE()&&(Wr=Wf(),await Wr),t=t||"auto",n=n||"zh-CN",t=jf.get(t)||t,n=jf.get(n)||n;let r=dE(!1),u=gE(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Fc($f,Cn.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(u),s=r,l=i.toString(),c=await ue({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Cn=null,Wr=null,await z.storage.local.remove(ss),c.ShowCaptcha)throw new Error(` +`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Tn(t)}async hexEncodedBodyHash(){return this.request.headers[at.contentSha256Header]?this.request.headers[at.contentSha256Header]:this.request.body?await this.hexEncodedHash(Mc(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return sx.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,r){let u=await fa(n,`${at.kDatePrefix}${t.secretKey}`),o=await fa(a,u),i=await fa(r,o);return fa(at.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,at.v4Identifier].join("/")}};var Wf=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Fc=new Map(Wf),lx=new Map(Wf.map(([e,t])=>[t,e])),ss=class extends ye{constructor(n,a,r){super(n,a,r);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let r={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},u=new jr(r,"translate");await u.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(r.params),i=await ue({retry:2,url:"https://open.volcengineapi.com"+r.pathname+"?"+o.toString(),headers:u.request.headers,method:r.method,body:r.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new gt(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new gt(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:r,to:u}=n,o=Fc.get(r),i={TargetLanguage:Fc.get(u)||u,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` +`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new jr(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),m=await ue({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(m.TranslationList){let g=m.TranslationList.map(f=>f.Translation),p=r;return m.TranslationList.length>0&&m.TranslationList[0].DetectedSourceLanguage&&(p=lx.get(m.TranslationList[0].DetectedSourceLanguage)||r),{text:g,from:p,to:u}}else if(m.ResponseMetadata&&m.ResponseMetadata.Error){let g=m.ResponseMetadata.Error;throw new gt(g.Code,g.Message)}else if(m.ResponseMetaData&&m.ResponseMetaData.Error){let g=m.ResponseMetaData.Error;throw new gt(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(m))}};ss.langMap=Fc;var $f=ss;var qf=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],_c=new Map(qf),cx=new Map(qf.map(([e,t])=>[t,e])),zr=class extends ye{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=_c.get(r)||"detect",i=_c.get(u)||u,l=await ue({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,m=r;return l.detected_language&&(m=cx.get(l.detected_language)||r),{text:c,from:m,to:u}}else{let c=l.base_resp;throw new gt(c.status_code.toString(),c.status_message)}}};zr.langMap=_c;var dx=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Bc=new Map(dx),Hr=class extends ye{constructor(n,a,r){super(n,a,r);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:r,to:u}=n,i=await ue({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:Bc.get(r)||r,target_lang:Bc.get(u)||u,text:a})});if(i.code===200)return{text:i.data,from:r,to:u};throw new Error(i.message||i.message||"API Error")}};Hr.langMap=Bc;var Rc="https://{s}bing.com",Yf=Rc+"/translator",gx=Rc+"/ttranslatev3",mx=Rc+"/tspellcheckv3",ls="bingGlobalConfig",Xf=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],Kf=new Map(Xf),Vf=new Map(Xf.map(([e,t])=>[t,e])),Gf=1e3,wn,Wr;function Ic(e,t){return e.replace("{s}",t?t+".":"")}async function px(){if(!wn){let n=await z.storage.local.get(ls);return n&&(wn=n[ls]),!0}let{tokenTs:e,tokenExpiryInterval:t}=wn;return Date.now()-e>t}async function Jf(){let e,t,n,a,r,u,o,i,s,l;try{let c=Ic(Yf,e),m=await ue({retry:2,url:c,responseType:"raw"}),{body:g,headers:p,url:f}=m;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=p["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[r,a,u,o,i,s]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return wn={subdomain:e,IG:t,IID:n,key:r,token:a,tokenTs:r,tokenExpiryInterval:u,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await z.storage.local.set({[ls]:wn}),wn}function fx(e){let{IG:t,IID:n,subdomain:a,isVertical:r}=wn;return Ic(e?mx:gx,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+wn.count++:"")}function hx(e,t,n,a){let{token:r,key:u}=wn,o={fromLang:n,text:t,token:r,key:u};return!e&&a&&(o.to=a),o}async function Zf(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>Gf)throw new Error(`The supported maximum length of text is ${Gf}. Please shorten the text.`);Wr||(Wr=Jf()),await Wr,await px()&&(Wr=Jf(),await Wr),t=t||"auto",n=n||"zh-CN",t=Kf.get(t)||t,n=Kf.get(n)||n;let r=fx(!1),u=hx(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Ic(Yf,wn.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(u),s=r,l=i.toString(),c=await ue({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(wn=null,Wr=null,await z.storage.local.remove(ls),c.ShowCaptcha)throw new Error(` Sorry that bing translator seems to be asking for the captcha, Please take care not to request too frequently. The response code is ${c.StatusCode}. `);if(c.StatusCode===401)throw new Error(` Max count of translation exceeded. Please try it again later. The response code is 401. - `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let m=c[0].translations[0],g=c[0].detectedLanguage;return{text:m.text,from:zf.get(g.language),to:zf.get(m.to)}}function Gf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Va=null,mE=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],_c=new Map(mE),$r=class extends ye{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Va=null,await rs(yo)}async translate(n){let{text:a,from:r,to:u}=n;return a?await Kf(a,r,u):{...n}}async init(){if(!Va){Va={};let n=await ns(yo);n&&(Va=n)}await Vf(Va)}async translateList(n){let{from:a,to:r,text:u}=n,o=_c.get(a)||"auto",i=_c.get(r)||r;o==="auto"&&(o="");let s=await Vf(Va),l=[];for(let p of u)l.push({Text:p});let c=JSON.stringify(l),m=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await ue({url:m,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(p=>p.translations[0]?.text||""),from:a,to:r};throw new Error("Microsoft translate error "+JSON.stringify(g))}};$r.langMap=_c;async function Vf(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return Jf().catch(r=>{P.error(r)}),e}return Jf()}async function Jf(){let e=await Pu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=Gf(e),n=t.accessTokenExpiresAt,r=new Date(n).getTime()-Date.now();return Va=t,await as(yo,t,r-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var Yf=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Bc=new Map(Yf),pE=new Map(Yf.map(([e,t])=>[t,e])),ls=class extends ye{constructor(n,a,r){super(n,a,r);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:r}=this,{appid:u,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Bc.get(s)||"auto",to:Bc.get(l)||l,q:i,salt:a,appid:u,sign:ca(u+i+a+o)}),m=new URL(r);m.search=c.toString();let g=await ue({url:m.toString()});if(g.error_code)throw new gt("API_SERVER_ERROR",g.error_msg);let{trans_result:p,from:f}=g,S=p.map(({dst:h})=>h);return{from:pE.get(f)||f,to:l,text:S.join(` -`)}}};ls.langMap=Bc;var Xf=ls;var fE=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],cs=new Map(fE),ds=class extends ye{constructor(n,a,r){super(n,a,r);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(u=>u.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:r,to:u}=n;if(!cs.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${cs.get(r)||"auto"}2${cs.get(u)}`})})).target,from:r,to:u}}};ds.langMap=cs;var Zf=ds;var hE=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],gs=new Map(hE),ms=class extends ye{constructor(n,a,r){super(n,a,r);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n;if(!gs.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a;return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${gs.get(r)||"auto"}2${gs.get(u)}`})})).target,from:r,to:u}}};ms.langMap=gs;var Qf=ms;var eh=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Rc=new Map(eh),bE=new Map(eh.map(([e,t])=>[t,e]));function yE(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var ps=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o=TE(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+yE(a)+o+i+this.appSecret,l=await yn(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Rc.get(r)||"auto",to:Rc.get(u)||u,sign:l,signType:"v3",curtime:i.toString()},m=new URLSearchParams(c),p=await ue({url:"https://openapi.youdao.com/api",method:"POST",body:m.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!p.translation)throw new Error(JSON.stringify(p));let f=p.l,[S,k]=f.split("2");return{text:p.translation.join(` -`),from:bE.get(S),to:u}}};ps.langMap=Rc;function TE(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r[t,e]));var fs=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o={q:a,from:Oc.get(r)||"auto",to:Oc.get(u)||u},i=new URLSearchParams(o),s=await ue({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` -`),from:r,to:u};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};fs.langMap=Oc;var ah=fs;var EE={mock:Nr,mock2:Nr,google:Gn,transmart:Ga,deepl:Pf,volc:Nf,volcAlpha:zr,bing:$r,tencent:$a,tenAlpha:qa,baidu:Xf,caiyun:Zf,cai:Qf,openl:Yi,youdao:th,you:ah,d:Ca,dpro:Ca,deeplx:Hr,niu:Mf,azure:Ff,openai:Bf,chatgpt:Nu,papago:_f},Vn={};Object.keys(hn).forEach(e=>{Vn[e]={...hn[e],class:EE[e]}});function Mr(e,t){let n=Xt;if(Vn[e]&&Vn[e].class&&Vn[e].class.langMap&&Vn[e].class.langMap.size>0){let a=Vn[e].class.langMap,r=n.filter(u=>a.get(u));return r.includes(t)||r.unshift("placeholder"),r}else return Xt}function rh(e,t){let n=Vn[e],a=t.config.translationServices[e]||{},r=!0,u=n.allProps||[],o=[],i=[];if(u.length>0){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,explicitProps:o||[],optionalProps:i||[]}}async function ha(e,t){if(!e.text)return e;let n=await _n({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new gt("translateFailed","translate failed")}async function sc(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,r=t.translationServices,u=n,o=r[u]||{},i=new Vn[u].class(o,a,{translationService:u}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await O3(u,o),await i.init()}async function _n(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:r,state:u}=t,o=a.translationGeneralConfig,i=a.translationServices,s=r,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(h=>({...h,from:"auto"})));let c=[],m={sentences:Array(e.sentences.length)},g=e.sentences.length,p=-1;if(u.cache)for(let h of e.sentences){p++;let A=s;s==="openl"&&(A=s+"-"+l.codename||Yi.DEFAULT_CODENAME);let _=null;try{_=await oo(ff({originalText:h.text,from:h.from,to:h.to,service:A}),1e3)}catch(B){P.warn("query cache DB error, but it's ok",B)}if(_){let B={...h,text:_.translatedText};m.sentences[p]=B,n&&n(null,B,h)}else c.push(h)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&P.debug(`use ${g-f} sentences from cache`),!c.length)return m;let S;try{S=new Vn[s].class(l,o,{translationService:s}),await S.init()}catch(h){if(n)for(let A of c)n(h,null,A);throw h}let k=await S.multipleTranslate({sentences:c},l,(h,A,_)=>{if(n&&n(h,A,_),!h&&A&&!s.startsWith("mock")&&u.cache){let B=s;s==="openl"&&(B=s+"-"+l.codename||Yi.DEFAULT_CODENAME),u.cache&&oo(hf({translatedText:A.text,from:_.from,to:_.to,detectedFrom:A.from,key:ca(_.text),service:B}),3e3).catch(L=>{P.warn("set cache DB error",L)})}});for(let h of k.sentences){let A=m.sentences.findIndex(_=>!_);if(A===-1)throw new gt("translateFailed","can not match the result");m.sentences[A]=h}return m}function Fe(e){return d("div",{class:"nav-left",children:[d("div",{class:"title",children:e.title}),d("div",{class:"description",children:e.description})]})}function qr(e){let{t}=be(),n={};e.width&&(n={width:`${e.width}px`});let[a,r]=W(e.value),{field:u,onFinish:o}=e,i=u.name;u.label&&(i=u.label),u.labelKey&&(i=t(u.labelKey));let s={};return u.descriptionLink1&&(s[1]=u.descriptionLink1),d("div",{class:"mt-3",children:[d("label",{for:e.field.name,class:"mb-[var(--spacing)]",children:[i,"\uFF1A"]}),e.field.type==="textarea"?d(ut,{children:[d("textarea",{style:n,autoComplete:"off",required:e.field.required,placeholder:e.field.placeholder||e.field.name,class:"input",value:a,type:e.type,onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]}):d(ut,{children:[d("input",{style:n,required:e.field.required,placeholder:e.field.placeholder||e.field.name,value:a,type:e.type,disabled:e.field.disabled||!1,name:e.field.name,autoComplete:"off",onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{(e.type==="text"||e.type==="password")&&o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]})]})}function Kr(e){let{t}=be(),[n,a]=W(!0),[r,u]=W(!1),{onFinish:o,field:i,onChange:s,value:l}=e;l=l===void 0?i.default||"":l,ke(()=>{i.options&&(i.options.some(g=>g.value===l)||u(!0))},[]);let c=i.name;if(i.label&&(c=i.label),i.labelKey&&(c=t(i.labelKey)),i.type==="select")return d("div",{class:"flex flex-col mt-5 mb-6",children:[d("label",{class:"text-16 mb-2",children:[c,"\uFF1A"]}),d($3,{maxWidth:200,items:i.options.map(m=>({label:`${m.label?t(m.label):m.value}`,value:m.value,selected:l===m.value,onSelected:()=>{s(m.value)}})),onChange:s,isInput:r,value:l}),d("label",{for:"customContent",class:"text-sm",onClick:()=>{u(!r)},children:[d("input",{type:"checkbox",id:"customContent",name:"customContent",checked:r}),t("customContent")]})]});if(i.type==="text")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="textarea")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="number")return d("div",{children:d(qr,{field:i,value:l,type:i.type,width:196,onChange:s})});if(i.type==="password")return d("div",{children:[d(qr,{field:i,value:l,type:n?i.type:"text",onChange:s,onFinish:o}),d("label",{for:"translate",onClick:()=>{a(!n)},children:[d("input",{type:"checkbox",id:"translate",name:"translate"}),t("show password")]})]});if(i.type==="color"){let m=l,g="";return m||(m="#FFFFFF",g="#FFFFFF"),d("div",{children:d("label",{class:"flex items-center",for:i.name,children:[d("span",{class:"mr-2",children:i.label||i.name}),d("input",{type:"text",id:i.name,class:"border-color-text mr-2",placeholder:g||"",value:l,onInput:p=>{s(p.target.value)}}),d("input",{id:i.name,type:"color",name:i.name,value:m,onInput:p=>{s(p.target.value)}})]})})}else return null}function hs(e){let{t,lang:n}=be();return d("details",{role:"list",class:"nav-right",children:[d("summary",{"aria-haspopup":"listbox",children:t("edit")}),d("ul",{role:"listbox",class:"option-list",children:e.options.map((a,r)=>{let u=kt(a.value,n);return d("li",{children:d("label",{children:[d("input",{type:"checkbox",onChange:()=>{e.onToggleAlwaysLangs(!a.checked,a.value)},value:a.value,checked:a.checked}),u]})},"language-"+r)})})]})}function va(e){let{t}=be();return d("div",{children:e.urls.map((n,a)=>d("div",{class:"url-list",children:[d("div",{class:"url-left",children:d("div",{class:"url-name height-tight",children:n})}),d("nav",{children:d("ul",{children:d("li",{children:d("details",{role:"list",dir:"rtl",children:[d("summary",{"aria-haspopup":"listbox",role:"link"}),d("ul",{class:"delete",role:"listbox",children:[d("li",{children:d("a",{onClick:r=>{e.onEditUrl(n,e.type,a)},children:t("edit")})}),d("li",{children:d("a",{onClick:r=>{e.onDeleteUrl(n,e.type)},children:t("delete")})})]})]})})})})]},"menu"+a))})}function wa(e){let{t}=be(),n=wn(null),{toggleModal:a}=e;return d("dialog",{id:"immersive-translate-overlay",onClick:u=>{u.target&&u.target.id==="immersive-translate-overlay"&&a(u)},open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:e.toggleModal}),d("div",{class:"add-text",children:t("add url")}),d("input",{placeholder:"URL",ref:n,value:e.urlValue}),d("blockquote",{children:d("p",{class:"text-sm",children:t("addUrlDescription")})}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:e.toggleModal,children:t("cancel")})}),d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:u=>{if(u.preventDefault(),n.current&&n.current.value){if(e.onSubmitAddUrl){if(e.urlValue!==""){e.onSubmitAddUrl(n.current.value,e.index,e.type,"edit");return}e.onSubmitAddUrl(n.current.value,e.index,e.type);return}else if(e.onAddInterfaceUrl){if(e.urlValue!==""){e.onAddInterfaceUrl(n.current.value,"edit");return}e.onAddInterfaceUrl(n.current.value)}}},children:t("confirm")})})]})]})})}async function Gr(){let e=["bingGlobalConfig","baiduGlobalConfig",fn,Sn];for(let t of e)await z.storage.local.remove(t);le()||await Om(),await Rf()}function uh(){return le()?Promise.resolve("0 B"):el()}var oh=Ei();function bs(){let{t:e}=be(),[t,n,a,r,u]=bt(),[o,i]=W(null),[s,l]=W(null),[c,m]=W(0),[g,p]=W(!1),[f,S]=W(""),[k,h]=W(""),[A,_]=W(!1),[B,L]=W(!1),[w,y]=W(""),T=[];s&&(T=$o(s));let b=null,E=null,R=[],D=[];if(o&&s){let{translationService:I,translationServices:N}=o;hn[I]&&(E=rh(I,s)),N&&N[I]?b=Object.assign({},N[I]||{}):b={},R=oh.concat("").map(re=>o.translationLanguagePattern&&o.translationLanguagePattern.matches&&o.translationLanguagePattern.matches.includes(re)?{checked:!0,value:re}:{checked:!1,value:re}),D=oh.map(re=>o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&o.translationLanguagePattern.excludeMatches.includes(re)?{checked:!0,value:re}:{checked:!1,value:re})}ke(()=>(Ne("esc",()=>{_(!1),L(!1)}),ze().then(I=>{i(I),P.debug("current config",I)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(I=>{i(I)})},[t]),ke(()=>{o&&wt({url:"http://localhost",config:o,state:{cache:!1}}).then(I=>{l(I)})},[o]);let O=I=>{n(N=>({...N,translationService:I}))},M=I=>{n(()=>({...I}))},F=I=>{I.preventDefault(),confirm(e("confirmResetConfig"))&&(u(Ba()),ia().catch(N=>{P.error("clean local config error",N)}),pr().catch(N=>{P.error("clean buildin config error",N)}),Gr().catch(N=>{P.error("clean cache error",N)}),Je(e("resetSuccess")))},$=I=>{n(N=>({...N,targetLanguage:I}))},Z=(I,N)=>{if(!I){n(ae=>{let ne={...ae.translationLanguagePattern};return{...ae,translationLanguagePattern:{...ae.translationLanguagePattern,matches:Ye(N,ne.matches),excludeMatches:Ye(N,ne.excludeMatches)}}});return}let re=I,te=re==="matches"?"excludeMatches":"matches";N&&n(ae=>{let ne={...ae.translationLanguagePattern};return ne[re]=un(N,ne[re]),ne[te]=Ye(N,ne[te]),{...ae,translationLanguagePattern:{...ae.translationLanguagePattern,...ne}}})},de=(I,N)=>{Z(I?"matches":void 0,N)},G=(I,N)=>{Z(I?"excludeMatches":void 0,N)},me=I=>{I==="matches"?_(!A):L(!B)},ge=(I,N,re,te)=>{me(re),n(ae=>{let ne=t.translationUrlPattern,oe=[],Y=[];ne&&ne.matches&&ne.excludeMatches&&(oe=ne.matches,Y=ne.excludeMatches);let ce=[...oe],Le=[...Y];return te==="edit"&&(re==="matches"?ce[N]=I:Le[N]=I),re==="matches"?(ce=un(I,ce),Le=Ye(I,Y)):(ce=Ye(I,oe),Le=un(I,Le)),{...ae,translationUrlPattern:{...ae.translationUrlPattern,matches:ce,excludeMatches:Le}}})},v=(I,N)=>{n(re=>{let te=t.translationUrlPattern,ae=[];N==="matches"?te&&te.matches&&(ae=te.matches):te&&te.excludeMatches&&(ae=te.excludeMatches);let ne=[...ae];return ne=Ye(I,ne),{...re,translationUrlPattern:{...re.translationUrlPattern,[N]:ne}}})},H=(I,N,re)=>{me(N),y(I),m(re)};if(!o)return d("div",{children:"loading"});let Q=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.matches&&(Q=o.translationLanguagePattern.matches);let fe=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&(fe=o.translationLanguagePattern.excludeMatches);let se=Mr(o.translationService,o.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:[d("strong",{class:"text-lg",children:e("general")}),d("a",{class:"text-sm",href:"#",onClick:F,children:e("reset")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("target"),description:e("translate other languages into specific language")}),d("select",{class:"select",onChange:I=>{I.preventDefault(),$(I.target.value)},children:se.filter(I=>I!=="auto").map((I,N)=>d("option",{value:I,selected:I===o.targetLanguage,children:kt(I,o.interfaceLanguage)},"language"+N))})]}),d("div",{class:"nav",children:[d(Fe,{title:e("service"),description:e("select translation service")}),d("select",{class:"select",onChange:I=>{I.preventDefault(),S(""),h(""),O(I.target.value)},children:T.map((I,N)=>d("option",{value:I.id,selected:I.id===o.translationService,children:`${e("translationServices."+I.id)}${I.ok?"":" "+e("needActionForOptions")}`},"service-item="+N))})]}),E&&E.docUrl?d("div",{children:[d("a",{target:"_blank",class:"pb-1 docUrl",href:E.homepage,children:e(`translationServices.${E.id}`)}),"\xA0",d("span",{class:"description pb-1",children:e("please refer to")}),"\xA0",d("a",{target:"_blank",class:"pb-1 docUrl",href:E.docUrl,children:e("KeyAndConfigurationTutorial")})]}):null,b&&E&&E.explicitProps.length>0&&E.explicitProps.map((I,N)=>d("div",{class:"mt-2",children:d(Kr,{field:I,value:b[I.name],onChange:re=>{n(te=>{let ae=te.translationServices||{},ne=ae[E.id]||{};return{...te,translationServices:{...ae,[E.id]:{...ne,[I.name]:re}}}})},onFinish:()=>{Je(e("saved"))}},I.name+N)},"service-item-prop-"+I.name+N)),b&&E&&E.optionalProps&&E.optionalProps.length>0&&d("details",{class:"pt-2 border-none",children:[d("summary",{style:{lineHeight:"1rem"},children:[e("moreOptions"),"\xA0\u{1F449}"]}),d("div",{children:E.optionalProps.map((I,N)=>{let re=b[I.name];return I.name==="apiUrl"&&E&&E.id==="openai"&&b&&b.APIKEY&&b.APIKEY.startsWith("immersiveopenai_")&&(I={...I,disabled:!0},re="https://openai-api.immersivetranslate.com/v1/chat/completions"),d("div",{class:"mt-2",children:d(Kr,{field:I,value:re,onChange:te=>{n(ae=>{let ne=ae.translationServices||{},oe=ne[E.id]||{};return{...ae,translationServices:{...ne,[E.id]:{...oe,[I.name]:te}}}})},onFinish:()=>{Je(e("saved"))}},I.name+N)},"service-item-optional-prop-"+I.name+N)})}),d("a",{href:"#",class:"secondary",onClick:I=>{I.preventDefault(),n(N=>{let re=N.translationServices||{};return{...N,translationServices:{...re,[E.id]:{}}}}),setTimeout(()=>{window.location.reload()},100)},children:e("resetToDefaultSettings")})]}),b&&E&&d("div",{class:"text-right",children:[k&&d("span",{class:"verified text-green-500 mr-2",children:e("verified")}),f&&d("span",{class:"verified text-red-500 mr-2",children:f}),d("a",{"aria-busy":g,href:"#",class:"secondary",onClick:async I=>{I.preventDefault();try{S(""),h(""),p(!0),await Qn(500);let N=E.class;N&&N.clearState&&await N.clearState(),await ha({id:1e6,text:"Hello world",from:"en",to:"zh-CN",url:"https://google.com",fromByClient:"auto"},s),h("verified")}catch(N){S(N.message)}finally{p(!1)}},children:e("verifyService")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("always languages"),description:e("always translate the following languages")}),d(hs,{options:R,onToggleAlwaysLangs:de})]}),d("div",{class:"langs-list",children:Q.map((I,N)=>d("div",{class:"lang-card",children:[d("div",{id:`${I}`,children:kt(I,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${I}`,onClick:re=>{re.preventDefault(),de(!1,Q[N])}})]},"lang-"+N))}),d("div",{class:"nav",children:[d(Fe,{title:e("neverTranslateLanguagesLabel"),description:e("neverTranslateTheFollowingLanguagesDescription")}),d(hs,{options:D,onToggleAlwaysLangs:G})]}),d("div",{class:"langs-list",children:fe.map((I,N)=>d("div",{class:"lang-card",children:[d("div",{id:`${I}`,children:kt(I,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${I}`,onClick:re=>{re.preventDefault(),G(!1,fe[N])}})]},"never-lang-"+N))}),d("div",{class:"nav",children:[d(Fe,{title:e("always sites"),description:e("always translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:I=>{I.preventDefault(),me("matches")},children:e("add")})}),A?d(wa,{toggleModal:I=>{I.preventDefault(),me("matches")},onSubmitAddUrl:ge,type:"matches",urlValue:w,index:c}):null]}),d(va,{urls:o.translationUrlPattern.matches,type:"matches",onDeleteUrl:v,onEditUrl:H}),d("div",{class:"nav",children:[d(Fe,{title:e("never sites"),description:e("never translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:I=>{I.preventDefault(),me("excludeMatches")},children:e("add")})}),B?d(wa,{toggleModal:I=>{I.preventDefault(),me("excludeMatches")},onSubmitAddUrl:ge,type:"excludeMatches",urlValue:w,index:c}):null]}),d(va,{urls:o.translationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:v,onEditUrl:H})]})}var zt={};Po.forEach(e=>{e.labelKey&&(zt[e.key]=e.labelKey)});var rN=Ei();function Ic(){let e=fr(),[t,n,a,r]=bt(),[u,o]=W(null),{t:i}=be(),[s,l]=W(0),[c,m]=W("");ke(()=>{ze().then(b=>{wt({config:b,url:globalThis.location.href}).then(E=>{o(E)})})},[t]);let[g,p]=W(!1),f=b=>{p(!g)},S=(b,E,R)=>{f(E),m(b),l(R)},k=(b,E)=>{n(R=>{let D=t.inputTranslationUrlPattern,O=[];E==="matches"?D&&D.matches&&(O=D.matches):D&&D.excludeMatches&&(O=D.excludeMatches);let M=[...O];return M=Ye(b,M),{...R,inputTranslationUrlPattern:{...R.inputTranslationUrlPattern,[E]:M}}})},h=b=>{n(E=>({...E,translationTheme:b}))},A=b=>{n(E=>({...E,interfaceLanguage:b}))},_=b=>{n(E=>({...E,inputTargetLanguage:b}))},B=b=>{n(E=>({...E,inputStartingTriggerKey:b}))},L=(b,E,R,D)=>{f(R),n(O=>{let M=t.inputTranslationUrlPattern,F=[],$=[];M&&M.matches&&M.excludeMatches&&(F=M.matches,$=M.excludeMatches);let Z=[...F],de=[...$];return D==="edit"&&(R==="matches"?Z[E]=b:de[E]=b),R==="matches"?(Z=un(b,Z),de=Ye(b,$)):(Z=Ye(b,F),de=un(b,de)),{...O,inputTranslationUrlPattern:{...O.inputTranslationUrlPattern,matches:Z,excludeMatches:de}}})},w=b=>{n(E=>({...E,inputTrailingTriggerKey:b}))};if(!u)return d("div",{children:"loading"});let y=u.config,T=Mr(y.translationService,y.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("inputOptions")})}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslation"),description:y.enableInputTranslationWithoutTriggerKey?i("enableInputTranslationDescriptionForNoneKey",{inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage),trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:y.inputTrailingTriggerKeyRepeatTimes}):i("enableInputTranslationDescription",{inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage),startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey,trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:y.inputTrailingTriggerKeyRepeatTimes})}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let E=b.target.checked;n(R=>({...R,enableInputTranslation:!!E}))},checked:y.enableInputTranslation})})]}),d("details",{class:"mt-3",children:[d("summary",{children:[i("clickToSeeQuickDemo")," \u{1F447}\u{1F447}"]}),d("video",{controls:!0,src:"https://s.immersivetranslate.com/videos/immpersive-translate-input-translation-demo-202307044.mp4"})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTargetLanguage"),description:y.enableInputTranslationWithoutTriggerKey?i("inputTargetLanguageDescriptionForNoneKey"):i("inputTargetLanguageDescription",{startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),_(b.target.value)},children:T.filter(b=>b!=="auto").map((b,E)=>d("option",{value:b,selected:b===y.inputTargetLanguage,children:kt(b,y.interfaceLanguage)},"language"+E))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslationWithoutTriggerKeyTitle",{trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage)}),description:""}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let E=b.target.checked;n(R=>({...R,enableInputTranslationWithoutTriggerKey:!!E}))},checked:y.enableInputTranslationWithoutTriggerKey})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputStartingTriggerKeyTitle"),description:y.inputStartingTriggerKey==="none"?i("inputStartingTriggerKeyDescriptionForNoneKey"):i("inputStartingTriggerKeyDescription",{startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),B(b.target.value)},children:Po.filter(b=>b.skipForStarting!==!0).map((b,E)=>d("option",{value:b.key,selected:b.key===y.inputStartingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+E))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTrailingTriggerKeyTitle"),description:i("inputTrailingTriggerKeyDescription",{trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),w(b.target.value)},children:Po.filter(b=>b.skipForTrailing!==!0).map((b,E)=>d("option",{value:b.key,selected:b.key===y.inputTrailingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+E))})]}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:i("inputHelperInfo",{1:"https://immersivetranslate.com/docs/input/"})}}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTranslationBlockUrlsTitle"),description:i("inputTranslationBlockUrlsDescription")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:b=>{b.preventDefault(),f("excludeMatches")},children:i("add")})}),g?d(wa,{toggleModal:b=>{b.preventDefault(),f("excludeMatches")},onSubmitAddUrl:L,type:"excludeMatches",urlValue:c,index:s}):null]}),d(va,{urls:y.inputTranslationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:k,onEditUrl:S})]})}function Nc(e){let{t}=be(),{corfirmText:n,fingerCountToToggleTranslagePageWhenTouching:a,fingerCountToToggleTranslationMaskWhenTouching:r,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:u,onChange:o,onClose:i,shortcuts:s,mouseHoverHoldKey:l}=e,c={mouseHoverHoldKey:wn(null)},m=wn(null);for(let p=0;p{p.target&&p.target.id==="immersive-translate-overlay"&&i()};return ke(()=>{},[]),d("dialog",{id:"immersive-translate-overlay",onClick:g,open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()}}),s.map((p,f)=>{let{name:S,description:k,shortcut:h}=p;return d("div",{class:"flex justify-between items-center",children:[d("label",{class:"mb-2 text-sm",for:S,children:[k,":"]}),d("input",{type:"text",class:"!w-36",ref:c[S],disabled:p.disabled,id:S,name:S,value:h})]},`key-${f}`)}),_a()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("mouseHoverHoldKey")}),d("input",{type:"text",class:"!w-36",ref:c.mouseHoverHoldKey,id:"mouseHoverHoldKey",name:"mouseHoverHoldKey",value:l})]}),mr()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslatePageWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",ref:m,onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslagePageWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===a,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("fingerCountToToggleTranslagePageOnlyTranslationWhenTouching")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===u,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslationMaskWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslationMaskWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===r,children:`${t("fingers."+p)}`},"finger-"+f))})]}),e.note&&d(e.note,{}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()},children:t("cancel")})}),n&&d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:p=>{p.preventDefault();let f=[];for(let k=0;k{throw u});t.push(...r),n=a||""}while(n);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(n){return P.error("get config error, use default",n),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,n=Eo){let a=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:n,parents:["appDataFolder"],mimeType:"application/json"},a)}updateConfig(t,n){let a=new Blob([JSON.stringify(n,null,2)],{type:"application/json"});return this.updateContent(t,a)}async upload(t,n){let a=new FormData;a.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),a.append("file",n);let r=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:a});return r.ok?await r.json():Promise.reject(r.text())}async list(t,n){let a=new URL("https://www.googleapis.com/drive/v3/files");t&&a.searchParams.append("pageToken",t),n&&a.searchParams.append("q",n),a.searchParams.append("spaces","appDataFolder"),a.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),a.searchParams.append("pageSize","100"),a.searchParams.append("orderBy","createdTime desc");try{return P.debug("list api:",a.toString(),this.accessToken),await(await fetch(a.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){throw P.error("fetch google ip error",r),r}}async updateContent(t,n){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:n})).text()}};function sh(e,t){let n=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${To}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(n.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function lh(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function Uc(e,t,n,a,r,u,o){P.debug(`autoSyncStrategy accessToken: ${e}`);let i=new On(e);try{let s=(await i.findByName(Eo)).files;P.debug("files",s);let l=s[0]?.id,c=null;if(l&&(c=await i.getConfig(l).then(m=>({fileId:l,config:m}))),c){let{config:m,fileId:g}=c,p=m.updatedAt?new Date(m.updatedAt):new Date(0),f=t.updatedAt?new Date(t.updatedAt):new Date(0);if(P.debug("remoteUpdatedAt",p,"localUpdatedAt",f),p>f)P.debug("remote is newer, update local config",m),n(m),u&&u(!0);else if(p.getTime()===f.getTime())P.debug("remote and local are the same, do nothing"),u&&u(!1);else if(p(await cn.removeAuthInfo(),bu()&&globalThis.location.reload(),a))}static async getAuthInfo(){let t=await z.storage.local.get(Sn);if(t[Sn])return t[Sn]}static async removeAuthInfo(){return await z.storage.local.remove(Sn)}static setAuthInfo(t){return z.storage.local.set({[Sn]:t})}async auth(t=!1){let n=await cn.getAuthInfo();if(P.debug(this.CLASSNAME,"token from cache:",n),n&&n.access_token&&await ch(n.access_token).then(u=>!0).catch(u=>!1))return Promise.resolve(n);let a=sh(this._state,this._redirectUrl);return P.debug(this.CLASSNAME,"auth url: "+a),bu()?this.userscriptAuthWorkflow(a,t):this.extensionAuthWorkflow(a).then(r=>(cn.setAuthInfo(r),r))}async userscriptAuthWorkflow(t,n){return n&&await z.storage.local.set({[cu]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let n,a=!1;return new Promise((r,u)=>{let o=()=>{z.tabs.onUpdated.removeListener(i),z.tabs.onRemoved.removeListener(s)},i=(g,p,f)=>{if(P.debug(this.CLASSNAME,"create tab onUpdated: "+f.url),n===g){let S=new URL(f.url||""),k=lh(f.url);S.pathname.startsWith("/auth-done")&&k?.access_token&&(P.debug(this.CLASSNAME,"auth done: "+f.url),r({access_token:k.access_token}),a=!0,z.tabs.remove(g),o())}},s=(g,p)=>{P.debug(this.CLASSNAME,"create tab onRemoved: "+g),(g===n||!a)&&(o(),u(new Error("auth failed")))},l=Math.min(500,screen.availWidth),c=Math.min(650,screen.availHeight),m;z.windows===void 0?m=z.tabs.create({url:t}).then(g=>{n=g.id}):m=z.windows.create({url:t,type:"popup",width:l,height:c,left:Math.round((screen.width-l)/2),top:Math.round((screen.height-c)/2)}).then(g=>{n=g.tabs[0].id}),m.then(()=>{z.tabs.onUpdated.addListener(i),z.tabs.onRemoved.addListener(s)}).catch(g=>{P.debug(this.CLASSNAME,"create tab failed: "+g),u(g)})})}};var vE="https://www.googleapis.com/oauth2/v3/tokeninfo",wE=To,kE=tt().REDIRECT_URL;function ch(e){if(!e)throw"Authorization failure";let t=`${vE}?access_token=${e}`,n=new Request(t,{method:"GET"});function a(r){return new Promise((u,o)=>{r.status!=200&&o("Token validation error"),r.json().then(i=>{i.aud&&i.aud===wE?u(e):o("Token validation error")})})}return fetch(n).then(a)}function dh(e,t=!1){let n=kE;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let r=window.location.hostname,u=window.location.port;n=`${window.location.protocol}//${r}${u?`:${u}`:""}/auth-done/`}return new cn(e,n).auth(t)}function jc(e,t=!1){return dh(e,t).then(n=>n.access_token||null)}var Uu=No()?["action"]:["browser_action","page_action"],AE=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...Uu]},{id:du,contexts:Uu},{id:gu,contexts:Uu},{id:mu,contexts:Uu},{id:fg,contexts:Uu}];async function ys(e){e=e||await ze(),P.debug("update ContextMenu",e);for(let t of AE){let n=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(n=!1);let a=ya(`browser.${t.id}`,e.interfaceLanguage);z.contextMenus.update(t.id,{title:a,visible:n})}}var SE=Object.keys(Sr),DE=e=>{let t=e.translationTheme;return!e.translationThemePatterns[t]||!e.translationThemePatterns[t].matches?[]:[...e.translationThemePatterns[t].matches]};function zc(e){let t=[];return fu[e]&&(t=t.concat(fu[e])),t.push({name:"textColor",type:"color",required:!1}),t.push({name:"zoom",type:"number",default:100,required:!1}),t}function Hc(){let[e,t,n,a]=bt(),[r,u]=W(!1),[o,i]=W(!1),[s,l]=W(0),[c,m]=W(null),{t:g,setLang:p}=be(),[f,S]=W("");ke(()=>(Ne("esc",()=>{u(!1),i(!1)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(T=>{wt({config:T,url:globalThis.location.href}).then(b=>{m(b)})})},[e]);let k=T=>{t(b=>{let E={matches:[],excludeMatches:[]};return b&&b.translationThemePatterns&&b.translationThemePatterns[T]&&(E=b.translationThemePatterns[T]),dr(document,T,E),{...b,translationTheme:T}})},h=T=>{t(b=>({...b,interfaceLanguage:T}))},A=(T,b,E)=>{u(!r),t(R=>{let D=R.translationThemePatterns||{},O=D[b]||{},M=O.matches||[],F=[...M];return E==="edit"&&(F=Ye(f,M)),F=un(T,F),{...R,translationThemePatterns:{...D,[b]:{...O,matches:F}}}})},_=(T,b)=>{t(E=>{let R=E.translationThemePatterns||{},D=R[b]||{},M=[...D.matches||[]];return M=Ye(T,M),{...E,translationThemePatterns:{...R,[b]:{...D,matches:M}}}})},B=(T,b,E)=>{u(!r),S(T),l(E)};if(!c)return d("div",{children:"loading"});let L=c.config,w=g("confirm"),y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Command+C"}),"\xA0 ",d("kbd",{children:"Ctrl+Shift+D"})," "]});return le()||(Fa()?(y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsNoteForFirefox")," ",d("a",{target:"_blank",href:"https://support.mozilla.org/zh-CN/kb/%E7%AE%A1%E7%90%86Firefox%E7%9A%84%E6%89%A9%E5%B1%95%E5%BF%AB%E6%8D%B7%E6%96%B9%E5%BC%8F",children:[g("help"),"?"]}),d("br",{}),d("br",{}),g("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Cmd+C"}),"\xA0 ",d("kbd",{children:"Ctrl"}),"\xA0",d("kbd",{children:"D"})," "]}),w=g("confirm")):(y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsNoteForChrome"),"\xA0",d("a",{href:"#",onClick:T=>{T.preventDefault(),z.tabs.create({url:"chrome://extensions/shortcuts"})},children:g("goSettings")})]}),w=g("confirm"))),d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:g("interface")})}),d("div",{class:"nav",children:[d(Fe,{title:g("interface language")}),d("select",{class:"select",onChange:T=>{p(T.target.value),h(T.target.value),le()||setTimeout(()=>{ys()},200)},children:SE.map((T,b)=>d("option",{value:T,selected:T===L.interfaceLanguage,children:kt(T,L.interfaceLanguage,!0)},"locale"+b))})]}),d("div",{class:"nav",children:[d(Fe,{title:g("keyboard shortcuts")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:T=>{T.preventDefault(),i(!o)},children:g("modify")})})]}),d("div",{class:"nav",children:[d(Fe,{title:g("enableLineBreak"),description:g("enableLineBreakDescription")}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:T=>{let b=T.target.checked;t(E=>{let R=E.generalRule||{};return{...E,generalRule:{...R,lineBreakMaxTextCount:b?280:0}}})},checked:c.rule.lineBreakMaxTextCount>0,id:"switch",name:"switch",role:"switch"})})]}),c.rule.lineBreakMaxTextCount>0&&d("div",{class:"nav",children:[d(Fe,{title:g("lineBreakMaxTextCount")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:T=>{let b=T.target.value;t(E=>{let R=E.generalRule||{};return{...E,generalRule:{...R,lineBreakMaxTextCount:parseInt(b)}}})},name:"count",value:c.rule.lineBreakMaxTextCount,placeholder:"Text Length",required:!0})})]}),(Ma().any||le())&&d("div",{class:"nav",children:[d(Fe,{title:g("enableUserscriptPagePopup"),description:g("enableUserscriptPagePopupDescription",{touch:g("fingers."+L.generalRule.fingerCountToToggleTranslagePageWhenTouching)})}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:T=>{let b=T.target.checked;t(E=>{let R=E.generalRule||{};return{...E,generalRule:{...R,isShowUserscriptPagePopup:b}}})},checked:c.rule.isShowUserscriptPagePopup,id:"switch",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:g("translation display"),description:g("select diplay style")}),d("select",{class:"select",onChange:T=>{k(T.target.value)},children:P0.map((T,b)=>d("option",{value:T,selected:T===L.translationTheme,children:g(`translationTheme.${T}`)},"theme"+b))})]}),d("div",{class:"pt-2 text-sm",children:d("p",{children:[Bg,d("div",{class:"pt-2"}),d("font",{class:vr(L.translationTheme,!1,[],!1,!1).join(" "),children:d("font",{class:wr(L.translationTheme).join(" "),children:M0})}),L.translationTheme&&zc(L.translationTheme).length>0?d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:g("customTheme")}),d("div",{class:"flex flex-col items-end",children:[zc(L.translationTheme).map((T,b)=>{T.label=g(`customThemeLabel.${T.name}`);let E=L.translationThemePatterns||{},R=L.translationTheme,D=E[R]||{},O=`theme-${R}-${T.name}`,M=ih(O)||void 0,F=D[T.name]||M;return d(Kr,{field:T,value:F,onChange:$=>{t(Z=>{let de=Z.translationThemePatterns||{},me={...de[L.translationTheme]||{},[T.name]:$},ge={...Z,translationThemePatterns:{...de,[L.translationTheme]:me}};return dr(document,L.translationTheme,me),ge})}},"theme-prop"+b)}),d("a",{href:"#",class:"text-sm secondary",onClick:T=>{T.preventDefault(),t(b=>{let E=b.translationThemePatterns||{},R={...E[L.translationTheme]};zc(L.translationTheme).forEach(O=>{delete R[O.name]});let D={...b,translationThemePatterns:{...E,[L.translationTheme]:R}};return dr(document,L.translationTheme,{matches:[],excludeMatches:[]},!0),D})},children:g("resetToDefaultColor")})]})]}):null,d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:g("previewAllThemes")}),P0.map((T,b)=>d("div",{class:"pt-2",children:d("label",{children:[d("div",{class:"flex justify-between",children:d("div",{children:[d("input",{type:"radio",name:"theme",value:T,checked:T===L.translationTheme,onChange:E=>{k(E.target.value)}}),g(`translationTheme.${T}`)]})}),d("p",{children:d("font",{class:vr(T,!1,[],!1,!1).join(" "),children:d("font",{class:wr(T).join(" "),children:M0})})})]})},"theme-index-"+b))]})]})}),d("div",{class:"nav",children:[d(Fe,{title:"",description:g("useAboveStyleForTheseSites",{theme:g(`translationTheme.${L.translationTheme}`)})}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:T=>{T.preventDefault(),u(!r)},children:g("add")})})]}),r?d(wa,{toggleModal:T=>{T.preventDefault(),u(!r)},onAddInterfaceUrl:(T,b)=>{A(T,L.translationTheme,b)},urlValue:f,index:s}):null,d(va,{urls:DE(L),type:"matches",onDeleteUrl:T=>{_(T,L.translationTheme)},onEditUrl:B}),o?d(Nc,{note:y,corfirmText:w,fingerCountToToggleTranslagePageWhenTouching:L.generalRule.fingerCountToToggleTranslagePageWhenTouching,fingerCountToToggleTranslationMaskWhenTouching:L.generalRule.fingerCountToToggleTranslationMaskWhenTouching,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:L.generalRule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching,mouseHoverHoldKey:L.generalRule.mouseHoverHoldKey,shortcuts:Fg.map(T=>({name:T,shortcut:L.shortcuts[T],description:g(`browser.${T}`),disabled:!le()})),onChange:T=>{if(T){let{shortcuts:b,fingerCountToToggleTranslagePageWhenTouching:E,fingerCountToToggleTranslationMaskWhenTouching:R,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D,mouseHoverHoldKey:O}=T;le()?t(M=>{b=b||[];let F=b.reduce((Z,de)=>(Z[de.name]=de.shortcut,Z),{...M.shortcuts}),$={...M,shortcuts:F};return E!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslagePageWhenTouching:E}),R!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslationMaskWhenTouching:R}),D!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),O&&($.generalRule={...$.generalRule,mouseHoverHoldKey:O}),$}):(E!==void 0||R!==void 0||O||D!==void 0)&&t(M=>{let F={...M};return E!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslagePageWhenTouching:E}),R!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslationMaskWhenTouching:R}),D!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),O&&(F.generalRule={...F.generalRule,mouseHoverHoldKey:O}),F}),T&&T.isClose&&i(!1)}else i(!1),z.tabs.create({url:"chrome://extensions/shortcuts"})},onClose:()=>{i(!1)}}):null]})}function Wc(){let[e,t,n,a]=bt(),[r,u]=W(null),{t:o}=be(),[i,s]=W({}),[l,c]=W({});ke(()=>{ze().then(w=>{u(w)}),z.storage.sync.get(null).then(w=>{s(w),z.storage.local.get(null).then(y=>{c(y)})})},[e]);let m=w=>{t(y=>({...y,debug:w}))},g=w=>{t(y=>({...y,beta:w}))},p=w=>{t(()=>({...w}))},f=w=>{try{let y=w.target.value,T={...e};if(!y)delete T.rules;else{let b=JSON.parse(y);if(!Array.isArray(b)){Lt("Invalid rules, rules must be an array");return}T.rules=b}p(T),Je(o("saved"))}catch(y){Lt(`Invalid JSON ${y.message}`)}},S=w=>{let y={...e};y.generalRule||(y.generalRule={}),y.generalRule={...y.generalRule,injectedCss:w.target.value||""},p(y),Je(o("saved"))},k=w=>{try{let y=JSON.parse(w.target.value);p(y),Je(o("saved"))}catch(y){Lt(`Invalid JSON ${y.message}`)}},h=w=>{w.preventDefault()},A=w=>{w.preventDefault(),confirm(o("confirmResetConfig"))&&(p(Ba()),ia().catch(y=>{P.error("clean local config error",y)}),pr().catch(y=>{P.error("clean buildin config error",y)}),Gr().catch(y=>{P.error("clean cache error",y)}),Je(o("resetSuccess")))},_=w=>{w.preventDefault();let y={...e};delete y.rules,p(y),Je(o("resetThisSuccess"))},B=w=>{w.preventDefault();let y={...e};y.generalRule||(y.generalRule={}),y.generalRule={...y.generalRule},delete y.generalRule.injectedCss,p(y),Je(o("resetThisSuccess"))},L=`[{ + `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let m=c[0].translations[0],g=c[0].detectedLanguage;return{text:m.text,from:Vf.get(g.language),to:Vf.get(m.to)}}function Qf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Ga=null,bx=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Oc=new Map(bx),$r=class extends ye{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Ga=null,await us(yo)}async translate(n){let{text:a,from:r,to:u}=n;return a?await Zf(a,r,u):{...n}}async init(){if(!Ga){Ga={};let n=await as(yo);n&&(Ga=n)}await eh(Ga)}async translateList(n){let{from:a,to:r,text:u}=n,o=Oc.get(a)||"auto",i=Oc.get(r)||r;o==="auto"&&(o="");let s=await eh(Ga),l=[];for(let p of u)l.push({Text:p});let c=JSON.stringify(l),m=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await ue({url:m,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(p=>p.translations[0]?.text||""),from:a,to:r};throw new Error("Microsoft translate error "+JSON.stringify(g))}};$r.langMap=Oc;async function eh(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return th().catch(r=>{P.error(r)}),e}return th()}async function th(){let e=await Pu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=Qf(e),n=t.accessTokenExpiresAt,r=new Date(n).getTime()-Date.now();return Ga=t,await rs(yo,t,r-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var nh=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Nc=new Map(nh),yx=new Map(nh.map(([e,t])=>[t,e])),cs=class extends ye{constructor(n,a,r){super(n,a,r);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:r}=this,{appid:u,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Nc.get(s)||"auto",to:Nc.get(l)||l,q:i,salt:a,appid:u,sign:ca(u+i+a+o)}),m=new URL(r);m.search=c.toString();let g=await ue({url:m.toString()});if(g.error_code)throw new gt("API_SERVER_ERROR",g.error_msg);let{trans_result:p,from:f}=g,A=p.map(({dst:h})=>h);return{from:yx.get(f)||f,to:l,text:A.join(` +`)}}};cs.langMap=Nc;var ah=cs;var Tx=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ds=new Map(Tx),gs=class extends ye{constructor(n,a,r){super(n,a,r);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(u=>u.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:r,to:u}=n;if(!ds.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${ds.get(r)||"auto"}2${ds.get(u)}`})})).target,from:r,to:u}}};gs.langMap=ds;var rh=gs;var xx=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ms=new Map(xx),ps=class extends ye{constructor(n,a,r){super(n,a,r);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n;if(!ms.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a;return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${ms.get(r)||"auto"}2${ms.get(u)}`})})).target,from:r,to:u}}};ps.langMap=ms;var uh=ps;var oh=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Uc=new Map(oh),Ex=new Map(oh.map(([e,t])=>[t,e]));function Cx(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var fs=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o=wx(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+Cx(a)+o+i+this.appSecret,l=await Tn(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Uc.get(r)||"auto",to:Uc.get(u)||u,sign:l,signType:"v3",curtime:i.toString()},m=new URLSearchParams(c),p=await ue({url:"https://openapi.youdao.com/api",method:"POST",body:m.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!p.translation)throw new Error(JSON.stringify(p));let f=p.l,[A,k]=f.split("2");return{text:p.translation.join(` +`),from:Ex.get(A),to:u}}};fs.langMap=Uc;function wx(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r[t,e]));var hs=class extends ye{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o={q:a,from:jc.get(r)||"auto",to:jc.get(u)||u},i=new URLSearchParams(o),s=await ue({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` +`),from:r,to:u};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};hs.langMap=jc;var lh=hs;var vx={mock:Nr,mock2:Nr,google:Vn,transmart:Va,deepl:If,volc:$f,volcAlpha:zr,bing:$r,tencent:$a,tenAlpha:qa,baidu:ah,caiyun:rh,cai:uh,openl:Xi,youdao:ih,you:lh,d:Ca,dpro:Ca,deeplx:Hr,niu:Of,azure:Nf,openai:jf,chatgpt:Nu,papago:Uf},Gn={};Object.keys(hn).forEach(e=>{Gn[e]={...hn[e],class:vx[e]}});function Mr(e,t){let n=Xt;if(Gn[e]&&Gn[e].class&&Gn[e].class.langMap&&Gn[e].class.langMap.size>0){let a=Gn[e].class.langMap,r=n.filter(u=>a.get(u));return r.includes(t)||r.unshift("placeholder"),r}else return Xt}function ch(e,t){let n=Gn[e],a=t.config.translationServices[e]||{},r=!0,u=n.allProps||[],o=[],i=[];if(u.length>0){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,explicitProps:o||[],optionalProps:i||[]}}async function ha(e,t){if(!e.text)return e;let n=await _n({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new gt("translateFailed","translate failed")}async function gc(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,r=t.translationServices,u=n,o=r[u]||{},i=new Gn[u].class(o,a,{translationService:u}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await j3(u,o),await i.init()}async function _n(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:r,state:u}=t,o=a.translationGeneralConfig,i=a.translationServices,s=r,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(h=>({...h,from:"auto"})));let c=[],m={sentences:Array(e.sentences.length)},g=e.sentences.length,p=-1;if(u.cache)for(let h of e.sentences){p++;let S=s;s==="openl"&&(S=s+"-"+l.codename||Xi.DEFAULT_CODENAME);let _=null;try{_=await oo(Ef({originalText:h.text,from:h.from,to:h.to,service:S}),1e3)}catch(B){P.warn("query cache DB error, but it's ok",B)}if(_){let B={...h,text:_.translatedText};m.sentences[p]=B,n&&n(null,B,h)}else c.push(h)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&P.debug(`use ${g-f} sentences from cache`),!c.length)return m;let A;try{A=new Gn[s].class(l,o,{translationService:s}),await A.init()}catch(h){if(n)for(let S of c)n(h,null,S);throw h}let k=await A.multipleTranslate({sentences:c},l,(h,S,_)=>{if(n&&n(h,S,_),!h&&S&&!s.startsWith("mock")&&u.cache){let B=s;s==="openl"&&(B=s+"-"+l.codename||Xi.DEFAULT_CODENAME),u.cache&&oo(Cf({translatedText:S.text,from:_.from,to:_.to,detectedFrom:S.from,key:ca(_.text),service:B}),3e3).catch(L=>{P.warn("set cache DB error",L)})}});for(let h of k.sentences){let S=m.sentences.findIndex(_=>!_);if(S===-1)throw new gt("translateFailed","can not match the result");m.sentences[S]=h}return m}function Fe(e){return d("div",{class:"nav-left",children:[d("div",{class:"title",children:e.title}),d("div",{class:"description",children:e.description})]})}function qr(e){let{t}=be(),n={};e.width&&(n={width:`${e.width}px`});let[a,r]=W(e.value),{field:u,onFinish:o}=e,i=u.name;u.label&&(i=u.label),u.labelKey&&(i=t(u.labelKey));let s={};return u.descriptionLink1&&(s[1]=u.descriptionLink1),d("div",{class:"mt-3",children:[d("label",{for:e.field.name,class:"mb-[var(--spacing)]",children:[i,"\uFF1A"]}),e.field.type==="textarea"?d(rt,{children:[d("textarea",{style:n,autoComplete:"off",required:e.field.required,placeholder:e.field.placeholder||e.field.name,class:"input",value:a,type:e.type,onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]}):d(rt,{children:[d("input",{style:n,required:e.field.required,placeholder:e.field.placeholder||e.field.name,value:a,type:e.type,disabled:e.field.disabled||!1,name:e.field.name,autoComplete:"off",onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{(e.type==="text"||e.type==="password")&&o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]})]})}function Kr(e){let{t}=be(),[n,a]=W(!0),[r,u]=W(!1),{onFinish:o,field:i,onChange:s,value:l}=e;l=l===void 0?i.default||"":l,ke(()=>{i.options&&(i.options.some(g=>g.value===l)||u(!0))},[]);let c=i.name;if(i.label&&(c=i.label),i.labelKey&&(c=t(i.labelKey)),i.type==="select")return d("div",{class:"flex flex-col mt-5 mb-6",children:[d("label",{class:"text-16 mb-2",children:[c,"\uFF1A"]}),d(G3,{maxWidth:200,items:i.options.map(m=>({label:`${m.label?t(m.label):m.value}`,value:m.value,selected:l===m.value,onSelected:()=>{s(m.value)}})),onChange:s,isInput:r,value:l}),d("label",{for:"customContent",class:"text-sm",onClick:()=>{u(!r)},children:[d("input",{type:"checkbox",id:"customContent",name:"customContent",checked:r}),t("customContent")]})]});if(i.type==="text")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="textarea")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="number")return d("div",{children:d(qr,{field:i,value:l,type:i.type,width:196,onChange:s})});if(i.type==="password")return d("div",{children:[d(qr,{field:i,value:l,type:n?i.type:"text",onChange:s,onFinish:o}),d("label",{for:"translate",onClick:()=>{a(!n)},children:[d("input",{type:"checkbox",id:"translate",name:"translate"}),t("show password")]})]});if(i.type==="color"){let m=l,g="";return m||(m="#FFFFFF",g="#FFFFFF"),d("div",{children:d("label",{class:"flex items-center",for:i.name,children:[d("span",{class:"mr-2",children:i.label||i.name}),d("input",{type:"text",id:i.name,class:"border-color-text mr-2",placeholder:g||"",value:l,onInput:p=>{s(p.target.value)}}),d("input",{id:i.name,type:"color",name:i.name,value:m,onInput:p=>{s(p.target.value)}})]})})}else return null}function bs(e){let{t,lang:n}=be();return d("details",{role:"list",class:"nav-right",children:[d("summary",{"aria-haspopup":"listbox",children:t("edit")}),d("ul",{role:"listbox",class:"option-list",children:e.options.map((a,r)=>{let u=kt(a.value,n);return d("li",{children:d("label",{children:[d("input",{type:"checkbox",onChange:()=>{e.onToggleAlwaysLangs(!a.checked,a.value)},value:a.value,checked:a.checked}),u]})},"language-"+r)})})]})}function wa(e){let{t}=be();return d("div",{children:e.urls.map((n,a)=>d("div",{class:"url-list",children:[d("div",{class:"url-left",children:d("div",{class:"url-name height-tight",children:n})}),d("nav",{children:d("ul",{children:d("li",{children:d("details",{role:"list",dir:"rtl",children:[d("summary",{"aria-haspopup":"listbox",role:"link"}),d("ul",{class:"delete",role:"listbox",children:[d("li",{children:d("a",{onClick:r=>{e.onEditUrl(n,e.type,a)},children:t("edit")})}),d("li",{children:d("a",{onClick:r=>{e.onDeleteUrl(n,e.type)},children:t("delete")})})]})]})})})})]},"menu"+a))})}function va(e){let{t}=be(),n=kn(null),{toggleModal:a}=e;return d("dialog",{id:"immersive-translate-overlay",onClick:u=>{u.target&&u.target.id==="immersive-translate-overlay"&&a(u)},open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:e.toggleModal}),d("div",{class:"add-text",children:t("add url")}),d("input",{placeholder:"URL",ref:n,value:e.urlValue}),d("blockquote",{children:d("p",{class:"text-sm",children:t("addUrlDescription")})}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:e.toggleModal,children:t("cancel")})}),d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:u=>{if(u.preventDefault(),n.current&&n.current.value){if(e.onSubmitAddUrl){if(e.urlValue!==""){e.onSubmitAddUrl(n.current.value,e.index,e.type,"edit");return}e.onSubmitAddUrl(n.current.value,e.index,e.type);return}else if(e.onAddInterfaceUrl){if(e.urlValue!==""){e.onAddInterfaceUrl(n.current.value,"edit");return}e.onAddInterfaceUrl(n.current.value)}}},children:t("confirm")})})]})]})})}async function Vr(){let e=["bingGlobalConfig","baiduGlobalConfig",fn,Dn];for(let t of e)await z.storage.local.remove(t);le()||await jm(),await zf()}function dh(){return le()?Promise.resolve("0 B"):tl()}var gh=xi();function ys(){let{t:e}=be(),[t,n,a,r,u]=bt(),[o,i]=W(null),[s,l]=W(null),[c,m]=W(0),[g,p]=W(!1),[f,A]=W(""),[k,h]=W(""),[S,_]=W(!1),[B,L]=W(!1),[v,y]=W(""),T=[];s&&(T=$o(s));let b=null,x=null,R=[],D=[];if(o&&s){let{translationService:O,translationServices:N}=o;hn[O]&&(x=ch(O,s)),N&&N[O]?b=Object.assign({},N[O]||{}):b={},R=gh.concat("").map(re=>o.translationLanguagePattern&&o.translationLanguagePattern.matches&&o.translationLanguagePattern.matches.includes(re)?{checked:!0,value:re}:{checked:!1,value:re}),D=gh.map(re=>o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&o.translationLanguagePattern.excludeMatches.includes(re)?{checked:!0,value:re}:{checked:!1,value:re})}ke(()=>(Ne("esc",()=>{_(!1),L(!1)}),ze().then(O=>{i(O),P.debug("current config",O)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(O=>{i(O)})},[t]),ke(()=>{o&&vt({url:"http://localhost",config:o,state:{cache:!1}}).then(O=>{l(O)})},[o]);let I=O=>{n(N=>({...N,translationService:O}))},M=O=>{n(()=>({...O}))},F=O=>{O.preventDefault(),confirm(e("confirmResetConfig"))&&(u(Ba()),ia().catch(N=>{P.error("clean local config error",N)}),pr().catch(N=>{P.error("clean buildin config error",N)}),Vr().catch(N=>{P.error("clean cache error",N)}),Je(e("resetSuccess")))},$=O=>{n(N=>({...N,targetLanguage:O}))},Z=(O,N)=>{if(!O){n(ae=>{let ne={...ae.translationLanguagePattern};return{...ae,translationLanguagePattern:{...ae.translationLanguagePattern,matches:Ye(N,ne.matches),excludeMatches:Ye(N,ne.excludeMatches)}}});return}let re=O,te=re==="matches"?"excludeMatches":"matches";N&&n(ae=>{let ne={...ae.translationLanguagePattern};return ne[re]=un(N,ne[re]),ne[te]=Ye(N,ne[te]),{...ae,translationLanguagePattern:{...ae.translationLanguagePattern,...ne}}})},de=(O,N)=>{Z(O?"matches":void 0,N)},V=(O,N)=>{Z(O?"excludeMatches":void 0,N)},me=O=>{O==="matches"?_(!S):L(!B)},ge=(O,N,re,te)=>{me(re),n(ae=>{let ne=t.translationUrlPattern,oe=[],Y=[];ne&&ne.matches&&ne.excludeMatches&&(oe=ne.matches,Y=ne.excludeMatches);let ce=[...oe],Le=[...Y];return te==="edit"&&(re==="matches"?ce[N]=O:Le[N]=O),re==="matches"?(ce=un(O,ce),Le=Ye(O,Y)):(ce=Ye(O,oe),Le=un(O,Le)),{...ae,translationUrlPattern:{...ae.translationUrlPattern,matches:ce,excludeMatches:Le}}})},w=(O,N)=>{n(re=>{let te=t.translationUrlPattern,ae=[];N==="matches"?te&&te.matches&&(ae=te.matches):te&&te.excludeMatches&&(ae=te.excludeMatches);let ne=[...ae];return ne=Ye(O,ne),{...re,translationUrlPattern:{...re.translationUrlPattern,[N]:ne}}})},H=(O,N,re)=>{me(N),y(O),m(re)};if(!o)return d("div",{children:"loading"});let Q=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.matches&&(Q=o.translationLanguagePattern.matches);let fe=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&(fe=o.translationLanguagePattern.excludeMatches);let se=Mr(o.translationService,o.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:[d("strong",{class:"text-lg",children:e("general")}),d("a",{class:"text-sm",href:"#",onClick:F,children:e("reset")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("target"),description:e("translate other languages into specific language")}),d("select",{class:"select",onChange:O=>{O.preventDefault(),$(O.target.value)},children:se.filter(O=>O!=="auto").map((O,N)=>d("option",{value:O,selected:O===o.targetLanguage,children:kt(O,o.interfaceLanguage)},"language"+N))})]}),d("div",{class:"nav",children:[d(Fe,{title:e("service"),description:e("select translation service")}),d("select",{class:"select",onChange:O=>{O.preventDefault(),A(""),h(""),I(O.target.value)},children:T.map((O,N)=>d("option",{value:O.id,selected:O.id===o.translationService,children:`${e("translationServices."+O.id)}${O.ok?"":" "+e("needActionForOptions")}`},"service-item="+N))})]}),x&&x.docUrl?d("div",{children:[d("a",{target:"_blank",class:"pb-1 docUrl",href:x.homepage,children:e(`translationServices.${x.id}`)}),"\xA0",d("span",{class:"description pb-1",children:e("please refer to")}),"\xA0",d("a",{target:"_blank",class:"pb-1 docUrl",href:x.docUrl,children:e("KeyAndConfigurationTutorial")})]}):null,b&&x&&x.explicitProps.length>0&&x.explicitProps.map((O,N)=>d("div",{class:"mt-2",children:d(Kr,{field:O,value:b[O.name],onChange:re=>{n(te=>{let ae=te.translationServices||{},ne=ae[x.id]||{};return{...te,translationServices:{...ae,[x.id]:{...ne,[O.name]:re}}}})},onFinish:()=>{Je(e("saved"))}},O.name+N)},"service-item-prop-"+O.name+N)),b&&x&&x.optionalProps&&x.optionalProps.length>0&&d("details",{class:"pt-2 border-none",children:[d("summary",{style:{lineHeight:"1rem"},children:[e("moreOptions"),"\xA0\u{1F449}"]}),d("div",{children:x.optionalProps.map((O,N)=>{let re=b[O.name];return O.name==="apiUrl"&&x&&x.id==="openai"&&b&&b.APIKEY&&b.APIKEY.startsWith("immersiveopenai_")&&(O={...O,disabled:!0},re="https://openai-api.immersivetranslate.com/v1/chat/completions"),d("div",{class:"mt-2",children:d(Kr,{field:O,value:re,onChange:te=>{n(ae=>{let ne=ae.translationServices||{},oe=ne[x.id]||{};return{...ae,translationServices:{...ne,[x.id]:{...oe,[O.name]:te}}}})},onFinish:()=>{Je(e("saved"))}},O.name+N)},"service-item-optional-prop-"+O.name+N)})}),d("a",{href:"#",class:"secondary",onClick:O=>{O.preventDefault(),n(N=>{let re=N.translationServices||{};return{...N,translationServices:{...re,[x.id]:{}}}}),setTimeout(()=>{window.location.reload()},100)},children:e("resetToDefaultSettings")})]}),b&&x&&d("div",{class:"text-right",children:[k&&d("span",{class:"verified text-green-500 mr-2",children:e("verified")}),f&&d("span",{class:"verified text-red-500 mr-2",children:f}),d("a",{"aria-busy":g,href:"#",class:"secondary",onClick:async O=>{O.preventDefault();try{A(""),h(""),p(!0),await Qn(500);let N=x.class;N&&N.clearState&&await N.clearState(),await ha({id:1e6,text:"Hello world",from:"en",to:"zh-CN",url:"https://google.com",fromByClient:"auto"},s),h("verified")}catch(N){A(N.message)}finally{p(!1)}},children:e("verifyService")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("always languages"),description:e("always translate the following languages")}),d(bs,{options:R,onToggleAlwaysLangs:de})]}),d("div",{class:"langs-list",children:Q.map((O,N)=>d("div",{class:"lang-card",children:[d("div",{id:`${O}`,children:kt(O,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${O}`,onClick:re=>{re.preventDefault(),de(!1,Q[N])}})]},"lang-"+N))}),d("div",{class:"nav",children:[d(Fe,{title:e("neverTranslateLanguagesLabel"),description:e("neverTranslateTheFollowingLanguagesDescription")}),d(bs,{options:D,onToggleAlwaysLangs:V})]}),d("div",{class:"langs-list",children:fe.map((O,N)=>d("div",{class:"lang-card",children:[d("div",{id:`${O}`,children:kt(O,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${O}`,onClick:re=>{re.preventDefault(),V(!1,fe[N])}})]},"never-lang-"+N))}),d("div",{class:"nav",children:[d(Fe,{title:e("always sites"),description:e("always translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:O=>{O.preventDefault(),me("matches")},children:e("add")})}),S?d(va,{toggleModal:O=>{O.preventDefault(),me("matches")},onSubmitAddUrl:ge,type:"matches",urlValue:v,index:c}):null]}),d(wa,{urls:o.translationUrlPattern.matches,type:"matches",onDeleteUrl:w,onEditUrl:H}),d("div",{class:"nav",children:[d(Fe,{title:e("never sites"),description:e("never translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:O=>{O.preventDefault(),me("excludeMatches")},children:e("add")})}),B?d(va,{toggleModal:O=>{O.preventDefault(),me("excludeMatches")},onSubmitAddUrl:ge,type:"excludeMatches",urlValue:v,index:c}):null]}),d(wa,{urls:o.translationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:w,onEditUrl:H})]})}var zt={};Po.forEach(e=>{e.labelKey&&(zt[e.key]=e.labelKey)});var pN=xi();function zc(){let e=fr(),[t,n,a,r]=bt(),[u,o]=W(null),{t:i}=be(),[s,l]=W(0),[c,m]=W("");ke(()=>{ze().then(b=>{vt({config:b,url:globalThis.location.href}).then(x=>{o(x)})})},[t]);let[g,p]=W(!1),f=b=>{p(!g)},A=(b,x,R)=>{f(x),m(b),l(R)},k=(b,x)=>{n(R=>{let D=t.inputTranslationUrlPattern,I=[];x==="matches"?D&&D.matches&&(I=D.matches):D&&D.excludeMatches&&(I=D.excludeMatches);let M=[...I];return M=Ye(b,M),{...R,inputTranslationUrlPattern:{...R.inputTranslationUrlPattern,[x]:M}}})},h=b=>{n(x=>({...x,translationTheme:b}))},S=b=>{n(x=>({...x,interfaceLanguage:b}))},_=b=>{n(x=>({...x,inputTargetLanguage:b}))},B=b=>{n(x=>({...x,inputStartingTriggerKey:b}))},L=(b,x,R,D)=>{f(R),n(I=>{let M=t.inputTranslationUrlPattern,F=[],$=[];M&&M.matches&&M.excludeMatches&&(F=M.matches,$=M.excludeMatches);let Z=[...F],de=[...$];return D==="edit"&&(R==="matches"?Z[x]=b:de[x]=b),R==="matches"?(Z=un(b,Z),de=Ye(b,$)):(Z=Ye(b,F),de=un(b,de)),{...I,inputTranslationUrlPattern:{...I.inputTranslationUrlPattern,matches:Z,excludeMatches:de}}})},v=b=>{n(x=>({...x,inputTrailingTriggerKey:b}))};if(!u)return d("div",{children:"loading"});let y=u.config,T=Mr(y.translationService,y.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("inputOptions")})}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslation"),description:y.enableInputTranslationWithoutTriggerKey?i("enableInputTranslationDescriptionForNoneKey",{inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage),trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:y.inputTrailingTriggerKeyRepeatTimes}):i("enableInputTranslationDescription",{inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage),startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey,trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:y.inputTrailingTriggerKeyRepeatTimes})}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let x=b.target.checked;n(R=>({...R,enableInputTranslation:!!x}))},checked:y.enableInputTranslation})})]}),d("details",{class:"mt-3",children:[d("summary",{children:[i("clickToSeeQuickDemo")," \u{1F447}\u{1F447}"]}),d("video",{controls:!0,src:"https://s.immersivetranslate.com/videos/immpersive-translate-input-translation-demo-202307044.mp4"})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTargetLanguage"),description:y.enableInputTranslationWithoutTriggerKey?i("inputTargetLanguageDescriptionForNoneKey"):i("inputTargetLanguageDescription",{startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),_(b.target.value)},children:T.filter(b=>b!=="auto").map((b,x)=>d("option",{value:b,selected:b===y.inputTargetLanguage,children:kt(b,y.interfaceLanguage)},"language"+x))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslationWithoutTriggerKeyTitle",{trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey,inputTargetLanguage:kt(y.inputTargetLanguage,y.interfaceLanguage)}),description:""}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let x=b.target.checked;n(R=>({...R,enableInputTranslationWithoutTriggerKey:!!x}))},checked:y.enableInputTranslationWithoutTriggerKey})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputStartingTriggerKeyTitle"),description:y.inputStartingTriggerKey==="none"?i("inputStartingTriggerKeyDescriptionForNoneKey"):i("inputStartingTriggerKeyDescription",{startingKey:zt[y.inputStartingTriggerKey]?i(zt[y.inputStartingTriggerKey]):y.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),B(b.target.value)},children:Po.filter(b=>b.skipForStarting!==!0).map((b,x)=>d("option",{value:b.key,selected:b.key===y.inputStartingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+x))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTrailingTriggerKeyTitle"),description:i("inputTrailingTriggerKeyDescription",{trailingKey:zt[y.inputTrailingTriggerKey]?i(zt[y.inputTrailingTriggerKey]):y.inputTrailingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),v(b.target.value)},children:Po.filter(b=>b.skipForTrailing!==!0).map((b,x)=>d("option",{value:b.key,selected:b.key===y.inputTrailingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+x))})]}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:i("inputHelperInfo",{1:"https://immersivetranslate.com/docs/input/"})}}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTranslationBlockUrlsTitle"),description:i("inputTranslationBlockUrlsDescription")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:b=>{b.preventDefault(),f("excludeMatches")},children:i("add")})}),g?d(va,{toggleModal:b=>{b.preventDefault(),f("excludeMatches")},onSubmitAddUrl:L,type:"excludeMatches",urlValue:c,index:s}):null]}),d(wa,{urls:y.inputTranslationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:k,onEditUrl:A})]})}function Hc(e){let{t}=be(),{corfirmText:n,fingerCountToToggleTranslagePageWhenTouching:a,fingerCountToToggleTranslationMaskWhenTouching:r,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:u,onChange:o,onClose:i,shortcuts:s,mouseHoverHoldKey:l}=e,c={mouseHoverHoldKey:kn(null)},m=kn(null);for(let p=0;p{p.target&&p.target.id==="immersive-translate-overlay"&&i()};return ke(()=>{},[]),d("dialog",{id:"immersive-translate-overlay",onClick:g,open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()}}),s.map((p,f)=>{let{name:A,description:k,shortcut:h}=p;return d("div",{class:"flex justify-between items-center",children:[d("label",{class:"mb-2 text-sm",for:A,children:[k,":"]}),d("input",{type:"text",class:"!w-36",ref:c[A],disabled:p.disabled,id:A,name:A,value:h})]},`key-${f}`)}),_a()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("mouseHoverHoldKey")}),d("input",{type:"text",class:"!w-36",ref:c.mouseHoverHoldKey,id:"mouseHoverHoldKey",name:"mouseHoverHoldKey",value:l})]}),mr()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslatePageWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",ref:m,onChange:p=>{p.preventDefault();let f=p.target.value,A={fingerCountToToggleTranslagePageWhenTouching:parseInt(f)};o(A)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===a,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("fingerCountToToggleTranslagePageOnlyTranslationWhenTouching")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,A={fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:parseInt(f)};o(A)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===u,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslationMaskWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,A={fingerCountToToggleTranslationMaskWhenTouching:parseInt(f)};o(A)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===r,children:`${t("fingers."+p)}`},"finger-"+f))})]}),e.note&&d(e.note,{}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()},children:t("cancel")})}),n&&d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:p=>{p.preventDefault();let f=[];for(let k=0;k{throw u});t.push(...r),n=a||""}while(n);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(n){return P.error("get config error, use default",n),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,n=xo){let a=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:n,parents:["appDataFolder"],mimeType:"application/json"},a)}updateConfig(t,n){let a=new Blob([JSON.stringify(n,null,2)],{type:"application/json"});return this.updateContent(t,a)}async upload(t,n){let a=new FormData;a.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),a.append("file",n);let r=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:a});return r.ok?await r.json():Promise.reject(r.text())}async list(t,n){let a=new URL("https://www.googleapis.com/drive/v3/files");t&&a.searchParams.append("pageToken",t),n&&a.searchParams.append("q",n),a.searchParams.append("spaces","appDataFolder"),a.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),a.searchParams.append("pageSize","100"),a.searchParams.append("orderBy","createdTime desc");try{return P.debug("list api:",a.toString(),this.accessToken),await(await fetch(a.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){throw P.error("fetch google ip error",r),r}}async updateContent(t,n){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:n})).text()}};function ph(e,t){let n=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${To}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(n.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function fh(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function Wc(e,t,n,a,r,u,o){P.debug(`autoSyncStrategy accessToken: ${e}`);let i=new In(e);try{let s=(await i.findByName(xo)).files;P.debug("files",s);let l=s[0]?.id,c=null;if(l&&(c=await i.getConfig(l).then(m=>({fileId:l,config:m}))),c){let{config:m,fileId:g}=c,p=m.updatedAt?new Date(m.updatedAt):new Date(0),f=t.updatedAt?new Date(t.updatedAt):new Date(0);if(P.debug("remoteUpdatedAt",p,"localUpdatedAt",f),p>f)P.debug("remote is newer, update local config",m),n(m),u&&u(!0);else if(p.getTime()===f.getTime())P.debug("remote and local are the same, do nothing"),u&&u(!1);else if(p(await cn.removeAuthInfo(),bu()&&globalThis.location.reload(),a))}static async getAuthInfo(){let t=await z.storage.local.get(Dn);if(t[Dn])return t[Dn]}static async removeAuthInfo(){return await z.storage.local.remove(Dn)}static setAuthInfo(t){return z.storage.local.set({[Dn]:t})}async auth(t=!1){let n=await cn.getAuthInfo();if(P.debug(this.CLASSNAME,"token from cache:",n),n&&n.access_token&&await hh(n.access_token).then(u=>!0).catch(u=>!1))return Promise.resolve(n);let a=ph(this._state,this._redirectUrl);return P.debug(this.CLASSNAME,"auth url: "+a),bu()?this.userscriptAuthWorkflow(a,t):this.extensionAuthWorkflow(a).then(r=>(cn.setAuthInfo(r),r))}async userscriptAuthWorkflow(t,n){return n&&await z.storage.local.set({[cu]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let n,a=!1;return new Promise((r,u)=>{let o=()=>{z.tabs.onUpdated.removeListener(i),z.tabs.onRemoved.removeListener(s)},i=(g,p,f)=>{if(P.debug(this.CLASSNAME,"create tab onUpdated: "+f.url),n===g){let A=new URL(f.url||""),k=fh(f.url);A.pathname.startsWith("/auth-done")&&k?.access_token&&(P.debug(this.CLASSNAME,"auth done: "+f.url),r({access_token:k.access_token}),a=!0,z.tabs.remove(g),o())}},s=(g,p)=>{P.debug(this.CLASSNAME,"create tab onRemoved: "+g),(g===n||!a)&&(o(),u(new Error("auth failed")))},l=Math.min(500,screen.availWidth),c=Math.min(650,screen.availHeight),m;z.windows===void 0?m=z.tabs.create({url:t}).then(g=>{n=g.id}):m=z.windows.create({url:t,type:"popup",width:l,height:c,left:Math.round((screen.width-l)/2),top:Math.round((screen.height-c)/2)}).then(g=>{n=g.tabs[0].id}),m.then(()=>{z.tabs.onUpdated.addListener(i),z.tabs.onRemoved.addListener(s)}).catch(g=>{P.debug(this.CLASSNAME,"create tab failed: "+g),u(g)})})}};var Sx="https://www.googleapis.com/oauth2/v3/tokeninfo",Dx=To,Lx=tt().REDIRECT_URL;function hh(e){if(!e)throw"Authorization failure";let t=`${Sx}?access_token=${e}`,n=new Request(t,{method:"GET"});function a(r){return new Promise((u,o)=>{r.status!=200&&o("Token validation error"),r.json().then(i=>{i.aud&&i.aud===Dx?u(e):o("Token validation error")})})}return fetch(n).then(a)}function bh(e,t=!1){let n=Lx;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let r=window.location.hostname,u=window.location.port;n=`${window.location.protocol}//${r}${u?`:${u}`:""}/auth-done/`}return new cn(e,n).auth(t)}function $c(e,t=!1){return bh(e,t).then(n=>n.access_token||null)}var Uu=No()?["action"]:["browser_action","page_action"],Px=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...Uu]},{id:du,contexts:Uu},{id:gu,contexts:Uu},{id:mu,contexts:Uu},{id:Tg,contexts:Uu}];async function Ts(e){e=e||await ze(),P.debug("update ContextMenu",e);for(let t of Px){let n=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(n=!1);let a=ya(`browser.${t.id}`,e.interfaceLanguage);z.contextMenus.update(t.id,{title:a,visible:n})}}var Mx=Object.keys(Sr),Fx=e=>{let t=e.translationTheme;return!e.translationThemePatterns[t]||!e.translationThemePatterns[t].matches?[]:[...e.translationThemePatterns[t].matches]};function qc(e){let t=[];return fu[e]&&(t=t.concat(fu[e])),t.push({name:"textColor",type:"color",required:!1}),t.push({name:"zoom",type:"number",default:100,required:!1}),t}function Kc(){let[e,t,n,a]=bt(),[r,u]=W(!1),[o,i]=W(!1),[s,l]=W(0),[c,m]=W(null),{t:g,setLang:p}=be(),[f,A]=W("");ke(()=>(Ne("esc",()=>{u(!1),i(!1)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(T=>{vt({config:T,url:globalThis.location.href}).then(b=>{m(b)})})},[e]);let k=T=>{t(b=>{let x={matches:[],excludeMatches:[]};return b&&b.translationThemePatterns&&b.translationThemePatterns[T]&&(x=b.translationThemePatterns[T]),dr(document,T,x),{...b,translationTheme:T}})},h=T=>{t(b=>({...b,interfaceLanguage:T}))},S=(T,b,x)=>{u(!r),t(R=>{let D=R.translationThemePatterns||{},I=D[b]||{},M=I.matches||[],F=[...M];return x==="edit"&&(F=Ye(f,M)),F=un(T,F),{...R,translationThemePatterns:{...D,[b]:{...I,matches:F}}}})},_=(T,b)=>{t(x=>{let R=x.translationThemePatterns||{},D=R[b]||{},M=[...D.matches||[]];return M=Ye(T,M),{...x,translationThemePatterns:{...R,[b]:{...D,matches:M}}}})},B=(T,b,x)=>{u(!r),A(T),l(x)};if(!c)return d("div",{children:"loading"});let L=c.config,v=g("confirm"),y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Command+C"}),"\xA0 ",d("kbd",{children:"Ctrl+Shift+D"})," "]});return le()||(Fa()?(y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsNoteForFirefox")," ",d("a",{target:"_blank",href:"https://support.mozilla.org/zh-CN/kb/%E7%AE%A1%E7%90%86Firefox%E7%9A%84%E6%89%A9%E5%B1%95%E5%BF%AB%E6%8D%B7%E6%96%B9%E5%BC%8F",children:[g("help"),"?"]}),d("br",{}),d("br",{}),g("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Cmd+C"}),"\xA0 ",d("kbd",{children:"Ctrl"}),"\xA0",d("kbd",{children:"D"})," "]}),v=g("confirm")):(y=()=>d("blockquote",{class:"text-sm",children:[g("browserShortcutsNoteForChrome"),"\xA0",d("a",{href:"#",onClick:T=>{T.preventDefault(),z.tabs.create({url:"chrome://extensions/shortcuts"})},children:g("goSettings")})]}),v=g("confirm"))),d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:g("interface")})}),d("div",{class:"nav",children:[d(Fe,{title:g("interface language")}),d("select",{class:"select",onChange:T=>{p(T.target.value),h(T.target.value),le()||setTimeout(()=>{Ts()},200)},children:Mx.map((T,b)=>d("option",{value:T,selected:T===L.interfaceLanguage,children:kt(T,L.interfaceLanguage,!0)},"locale"+b))})]}),d("div",{class:"nav",children:[d(Fe,{title:g("keyboard shortcuts")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:T=>{T.preventDefault(),i(!o)},children:g("modify")})})]}),d("div",{class:"nav",children:[d(Fe,{title:g("enableLineBreak"),description:g("enableLineBreakDescription")}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:T=>{let b=T.target.checked;t(x=>{let R=x.generalRule||{};return{...x,generalRule:{...R,lineBreakMaxTextCount:b?280:0}}})},checked:c.rule.lineBreakMaxTextCount>0,id:"switch",name:"switch",role:"switch"})})]}),c.rule.lineBreakMaxTextCount>0&&d("div",{class:"nav",children:[d(Fe,{title:g("lineBreakMaxTextCount")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:T=>{let b=T.target.value;t(x=>{let R=x.generalRule||{};return{...x,generalRule:{...R,lineBreakMaxTextCount:parseInt(b)}}})},name:"count",value:c.rule.lineBreakMaxTextCount,placeholder:"Text Length",required:!0})})]}),(Ma().any||le())&&d("div",{class:"nav",children:[d(Fe,{title:g("enableUserscriptPagePopup"),description:g("enableUserscriptPagePopupDescription",{touch:g("fingers."+L.generalRule.fingerCountToToggleTranslagePageWhenTouching)})}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:T=>{let b=T.target.checked;t(x=>{let R=x.generalRule||{};return{...x,generalRule:{...R,isShowUserscriptPagePopup:b}}})},checked:c.rule.isShowUserscriptPagePopup,id:"switch",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:g("translation display"),description:g("select diplay style")}),d("select",{class:"select",onChange:T=>{k(T.target.value)},children:M0.map((T,b)=>d("option",{value:T,selected:T===L.translationTheme,children:g(`translationTheme.${T}`)},"theme"+b))})]}),d("div",{class:"pt-2 text-sm",children:d("p",{children:[Ng,d("div",{class:"pt-2"}),d("font",{class:wr(L.translationTheme,!1,[],!1,!1).join(" "),children:d("font",{class:vr(L.translationTheme).join(" "),children:F0})}),L.translationTheme&&qc(L.translationTheme).length>0?d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:g("customTheme")}),d("div",{class:"flex flex-col items-end",children:[qc(L.translationTheme).map((T,b)=>{T.label=g(`customThemeLabel.${T.name}`);let x=L.translationThemePatterns||{},R=L.translationTheme,D=x[R]||{},I=`theme-${R}-${T.name}`,M=mh(I)||void 0,F=D[T.name]||M;return d(Kr,{field:T,value:F,onChange:$=>{t(Z=>{let de=Z.translationThemePatterns||{},me={...de[L.translationTheme]||{},[T.name]:$},ge={...Z,translationThemePatterns:{...de,[L.translationTheme]:me}};return dr(document,L.translationTheme,me),ge})}},"theme-prop"+b)}),d("a",{href:"#",class:"text-sm secondary",onClick:T=>{T.preventDefault(),t(b=>{let x=b.translationThemePatterns||{},R={...x[L.translationTheme]};qc(L.translationTheme).forEach(I=>{delete R[I.name]});let D={...b,translationThemePatterns:{...x,[L.translationTheme]:R}};return dr(document,L.translationTheme,{matches:[],excludeMatches:[]},!0),D})},children:g("resetToDefaultColor")})]})]}):null,d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:g("previewAllThemes")}),M0.map((T,b)=>d("div",{class:"pt-2",children:d("label",{children:[d("div",{class:"flex justify-between",children:d("div",{children:[d("input",{type:"radio",name:"theme",value:T,checked:T===L.translationTheme,onChange:x=>{k(x.target.value)}}),g(`translationTheme.${T}`)]})}),d("p",{children:d("font",{class:wr(T,!1,[],!1,!1).join(" "),children:d("font",{class:vr(T).join(" "),children:F0})})})]})},"theme-index-"+b))]})]})}),d("div",{class:"nav",children:[d(Fe,{title:"",description:g("useAboveStyleForTheseSites",{theme:g(`translationTheme.${L.translationTheme}`)})}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:T=>{T.preventDefault(),u(!r)},children:g("add")})})]}),r?d(va,{toggleModal:T=>{T.preventDefault(),u(!r)},onAddInterfaceUrl:(T,b)=>{S(T,L.translationTheme,b)},urlValue:f,index:s}):null,d(wa,{urls:Fx(L),type:"matches",onDeleteUrl:T=>{_(T,L.translationTheme)},onEditUrl:B}),o?d(Hc,{note:y,corfirmText:v,fingerCountToToggleTranslagePageWhenTouching:L.generalRule.fingerCountToToggleTranslagePageWhenTouching,fingerCountToToggleTranslationMaskWhenTouching:L.generalRule.fingerCountToToggleTranslationMaskWhenTouching,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:L.generalRule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching,mouseHoverHoldKey:L.generalRule.mouseHoverHoldKey,shortcuts:Ig.map(T=>({name:T,shortcut:L.shortcuts[T],description:g(`browser.${T}`),disabled:!le()})),onChange:T=>{if(T){let{shortcuts:b,fingerCountToToggleTranslagePageWhenTouching:x,fingerCountToToggleTranslationMaskWhenTouching:R,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D,mouseHoverHoldKey:I}=T;le()?t(M=>{b=b||[];let F=b.reduce((Z,de)=>(Z[de.name]=de.shortcut,Z),{...M.shortcuts}),$={...M,shortcuts:F};return x!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslagePageWhenTouching:x}),R!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslationMaskWhenTouching:R}),D!==void 0&&($.generalRule={...$.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),I&&($.generalRule={...$.generalRule,mouseHoverHoldKey:I}),$}):(x!==void 0||R!==void 0||I||D!==void 0)&&t(M=>{let F={...M};return x!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslagePageWhenTouching:x}),R!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslationMaskWhenTouching:R}),D!==void 0&&(F.generalRule={...F.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),I&&(F.generalRule={...F.generalRule,mouseHoverHoldKey:I}),F}),T&&T.isClose&&i(!1)}else i(!1),z.tabs.create({url:"chrome://extensions/shortcuts"})},onClose:()=>{i(!1)}}):null]})}function Vc(){let[e,t,n,a]=bt(),[r,u]=W(null),{t:o}=be(),[i,s]=W({}),[l,c]=W({});ke(()=>{ze().then(v=>{u(v)}),z.storage.sync.get(null).then(v=>{s(v),z.storage.local.get(null).then(y=>{c(y)})})},[e]);let m=v=>{t(y=>({...y,debug:v}))},g=v=>{t(y=>({...y,beta:v}))},p=v=>{t(()=>({...v}))},f=v=>{try{let y=v.target.value,T={...e};if(!y)delete T.rules;else{let b=JSON.parse(y);if(!Array.isArray(b)){Lt("Invalid rules, rules must be an array");return}T.rules=b}p(T),Je(o("saved"))}catch(y){Lt(`Invalid JSON ${y.message}`)}},A=v=>{let y={...e};y.generalRule||(y.generalRule={}),y.generalRule={...y.generalRule,injectedCss:v.target.value||""},p(y),Je(o("saved"))},k=v=>{try{let y=JSON.parse(v.target.value);p(y),Je(o("saved"))}catch(y){Lt(`Invalid JSON ${y.message}`)}},h=v=>{v.preventDefault()},S=v=>{v.preventDefault(),confirm(o("confirmResetConfig"))&&(p(Ba()),ia().catch(y=>{P.error("clean local config error",y)}),pr().catch(y=>{P.error("clean buildin config error",y)}),Vr().catch(y=>{P.error("clean cache error",y)}),Je(o("resetSuccess")))},_=v=>{v.preventDefault();let y={...e};delete y.rules,p(y),Je(o("resetThisSuccess"))},B=v=>{v.preventDefault();let y={...e};y.generalRule||(y.generalRule={}),y.generalRule={...y.generalRule},delete y.generalRule.injectedCss,p(y),Je(o("resetThisSuccess"))},L=`[{ "matches": "www.google.com", "selectors": [".title"] }, { "matches": "*.twitter.com", "selectors": [".text"], "excludeSelectors": ["footer"] -}]`;return r?d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:o("developer")})}),d("div",{dangerouslySetInnerHTML:{__html:o("developerDescription",{1:"https://immersivetranslate.com/docs/advanced/"})},class:"secondary text-xs text-gray-500 mb-4"}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{m(!r.debug)},checked:r.debug}),o("toggleDebug")]})}),d("fieldset",{class:"mt-2",children:[d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"beta",name:"beta",role:"switch",onChange:()=>{g(!r.beta)},checked:!!r.beta}),o("toggleBeta")]}),d("small",{class:"text-gray-500",dangerouslySetInnerHTML:{__html:o("betaDescription",{1:Do})}})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit User Rules"}),d("textarea",{class:"user-rule",rows:10,onChange:f,placeholder:L,spellcheck:!1,value:e.rules?JSON.stringify(e.rules||[],null,2):""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:_,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Injected CSS"}),d("textarea",{rows:10,onChange:S,spellcheck:!1,placeholder:".title { color: red }",value:e.generalRule&&e.generalRule.injectedCss?e.generalRule.injectedCss:""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:B,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Full User Config"}),d("textarea",{rows:10,onChange:k,spellcheck:!1,value:JSON.stringify(e,null,2)}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:A,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the final config"}),d("pre",{children:d("code",{children:JSON.stringify(r,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the sync storage object"}),d("pre",{children:d("code",{children:JSON.stringify(i,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the local storage object"}),d("pre",{children:d("code",{children:JSON.stringify(l,null,2)})})]})]}):d("div",{children:"loading"})}function Ts(){let e=new Date;return`${e.getFullYear()}-${e.getMonth()+1}-${e.getDate()}_${e.getHours()}-${e.getMinutes()}-${e.getSeconds()}`}function LE(e){let{t}=be(),{accessToken:n,id:a,listAllFiles:r}=e,[u,o]=W(!1);function i(s,l){s.preventDefault(),o(!0),new On(n).delete(l).catch(c=>{Lt(t("delete"))}).then(()=>r()).finally(()=>o(!1))}return d("a",{href:"#",className:"secondary margin-left text-sm",onClick:s=>i(s,a),"aria-busy":u,children:t("delete")})}function $c(e){let{onClose:t,accessToken:n,authExpire:a}=e,{t:r}=be(),[u,o,i,s]=bt(),[l,c]=W([]),[m,g]=W(!0),[p,f]=W(!1),[S,k]=W({});ke(()=>{n&&A().then(()=>g(!1))},[n]);let h=y=>{y.target&&y.target.id==="immersive-translate-overlay"&&t()};function A(){return new On(n).listAll().then(T=>{c(T)}).catch(T=>a())}function _(y){if(y.preventDefault(),l.length>=10)return Lt(r("maxBackupFiles",{count:10}));f(!0);let T="immersive-translate-config-"+Ts()+".json";new On(n).uploadConfig(u,T).catch(b=>{Lt(r("uploadFail"))}).then(()=>A()).finally(()=>f(!1))}function B(y,T,b){y.preventDefault(),k({[b]:!0}),new On(n).getConfig(T).then(E=>{o(()=>({...E})),Je(r("importSuccess"))}).catch(E=>{P.error(E),Lt(r("importFail"))}).finally(()=>k({}))}function L(y,T){new On(n).getConfig(y).then(b=>{let E=document.createElement("a");E.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(JSON.stringify(b,null,2))),E.setAttribute("download",T),E.style.display="none",document.body.appendChild(E),E.click(),document.body.removeChild(E)}).catch(b=>{P.error("download google config file failed",b),Lt(r("downloadFail")+": "+b.message)})}function w(y){y.preventDefault(),o({...u,autoSync:!1}),cn.revoke(n).then(()=>t())}return d("dialog",{id:"immersive-translate-overlay",onClick:h,open:!0,children:d("article",{class:"md:w-[32rem] px-4",children:[d("a",{href:"#",title:r("clickToDownload"),"aria-label":"Close",className:"close","data-target":"modal-example",onClick:y=>{y.preventDefault(),t()}}),d("h4",{children:r("syncTitle")}),d("div",{className:"mb-4",children:l.map((y,T)=>d("div",{class:"flex flex-wrap justify-between",children:[d("div",{class:"mr-2 mb-2",children:[d("div",{children:d("a",{href:"#",onClick:b=>{b.preventDefault(),L(y.id,y.name)},class:"block truncate w-40 sm:w-auto",children:y.name.replace("immersive-translate-","")})}),d("div",{class:"text-xs text-gray-500",children:[new Date(y.modifiedTime).toLocaleString(),",\xA0",xu(parseInt(y.size))]})]}),d("div",{children:[d("a",{href:"#",role:"button",className:"margin-right secondary","aria-busy":S[T],disabled:S[T],onClick:b=>B(b,y.id,T),children:r("import_hint")}),d(LE,{accessToken:n,id:y.id,listAllFiles:A})]})]},"file"+T))}),d("div",{className:"flex items-center",children:[d("a",{href:"#",role:"button",className:"mr-4","data-target":"modal-example","aria-busy":p,onClick:_,disabled:m,children:r("create_new_backup")}),d("a",{href:"#",className:"secondary text-sm","data-target":"modal-example",onClick:w,disabled:m,children:r("revokeAuth")})]})]})})}function qc(){let[e,t,n,a,r]=bt(),[u,o]=W(null),[i,s]=W(null),l=M=>{s(M),Wn(M)},{t:c,setLang:m}=be();ke(()=>{ze().then(M=>{o(M)}),Hn().then(M=>{l(M)})},[]);let g=M=>{t(()=>({...M}))},p=M=>{M.preventDefault();let F=document.createElement("input");F.setAttribute("type","file"),F.setAttribute("accept","text/plain"),F.style.display="none",document.body.appendChild(F),F.oninput=$=>{let Z=$.target,de=new FileReader;de.onload=function(){try{let G=JSON.parse(de.result);g(G),Je(c("successImportConfig"))}catch(G){Lt(`Invalid JSON ${G.message}`)}},de.readAsText(Z.files[0])},F.click(),document.body.removeChild(F)},f=M=>{M.preventDefault(),confirm(c("confirmResetConfig"))&&(r(Ba()),Je(c("resetSuccess")),setTimeout(()=>{z.storage.local.remove(Sn),ia().catch(F=>{P.error("clean local config error",F)})},500))},[S,k]=W(!1),[h,A]=W(!1),[_,B]=W(!1),[L,w]=W("");ke(()=>{if(bu()&&n){let M=localStorage.getItem(cu);if(localStorage.removeItem(cu),M){let F=globalThis.localStorage.getItem(k0);P.debug("import_export","rawAuthInfoStr",F);let $={},Z={},de="";if(F){globalThis.localStorage.removeItem(k0);try{$=JSON.parse(F),Z=$.state||{},de=$.access_token||""}catch(G){P.error("parse state error",G)}}if(de&&Z&&(cn.setAuthInfo({access_token:de}),P.debug("import_export","Google OAuth:",$),$)){let G=$.state;P.debug("state",G),G?.mode==="auto"?(A(!0),D(de)):(B(!0),E(de))}}}},[n]);function y(){A(!0),jc({source:globalThis.location.href,mode:"auto"},!0).then(M=>{P.debug("import_export","Google OAuth:"+M),M!==null&&D(M)}).catch(M=>{M&&M.message==="tokenValidateErrorRedirectToAuthUrl"?P.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):R(M)})}function T(){B(!0),k(!1),jc({source:globalThis.location.href,mode:"manual"},!0).then(M=>{P.debug("import_export","Google OAuth:"+M),M!==null&&E(M)}).catch(M=>{M&&M.message==="tokenValidateErrorRedirectToAuthUrl"?P.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):R(M)})}function b(){w(""),y()}function E(M){w(M),B(!1),k(!0)}function R(M){A(!1),B(!1),k(!1),t({...e,autoSync:!1}),P.error("import_export","Google OAuth error:"+M),Lt(c("authFail"))}function D(M){A(!0),P.debug("sync latest with drive",M,e),w(M),Uc(M,e,F=>{F.interfaceLanguage&&m(F.interfaceLanguage),r(F)},F=>l({...i,lastSyncedAt:F}),F=>t({...e,updatedAt:F}),F=>{F?Je(c("successSyncConfig")):Je(c("successSyncButNoChange"))},F=>Lt(c("syncFail")+F)).finally(()=>{A(!1)})}function O(M){t({...e,autoSync:M.checked}),M.checked&&y()}return u?d("div",{class:"pb-4",children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:c("import_export_title")})}),d("div",{class:"pb-2",children:[d("a",{class:"mr-2 secondary mb-2 !text-sm",onClick:p,href:"#",role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zm10-5.828L19.071 7.1l1.414 1.414L12 17 3.515 8.515 4.929 7.1 11 13.17V2h2v11.172z"})]}),c("import")]}),d("a",{href:"#",class:"secondary mr-2 mb-2 !text-sm",onClick:M=>{M.preventDefault();let F=new Blob([JSON.stringify(e,null,2)],{type:"text/plain;charset=utf-8"});au.saveAs(F,"immersive-translate-config-"+Ts()+".txt")},role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zM13 5.828V17h-2V5.828L4.929 11.9l-1.414-1.414L12 2l8.485 8.485-1.414 1.414L13 5.83z"})]}),c("export")]}),d("a",{href:"#",onClick:f,class:"secondary text-sm",children:c("reset")})]}),d("details",{class:"mt-4 mb-6",children:[d("summary",{children:c("clickToExpandConfig")}),d("pre",{children:d("code",{children:JSON.stringify(e,null,2)})})]}),d("hgroup",{class:"my-2",children:[d("h5",{children:c("syncToCloud")}),d("h6",{class:"!text-sm",children:c("syncToCloudDescription")})]}),d("div",{children:[d("a",{className:"mr-4 secondary mb-2 !text-sm ",onClick:M=>{M.preventDefault(),y()},"aria-busy":h,href:"#",role:"button",children:[h?d(ut,{}):d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",children:d("path",{fill:"currentColor",d:"M15.375 19.25q-.525.25-.95-.038q-.425-.287-.425-.937q0-.25.163-.487q.162-.238.412-.363q1.575-.75 2.5-2.225T18 11.95q0-1.125-.425-2.188Q17.15 8.7 16.25 7.8L16 7.55V9q0 .425-.287.712Q15.425 10 15 10t-.712-.288Q14 9.425 14 9V5q0-.425.288-.713Q14.575 4 15 4h4q.425 0 .712.287Q20 4.575 20 5t-.288.713Q19.425 6 19 6h-1.75l.4.35q1.225 1.225 1.788 2.662Q20 10.45 20 11.95q0 2.4-1.25 4.362q-1.25 1.963-3.375 2.938ZM5 20q-.425 0-.713-.288Q4 19.425 4 19t.287-.712Q4.575 18 5 18h1.75l-.4-.35q-1.225-1.225-1.788-2.662Q4 13.55 4 12.05q0-2.4 1.25-4.363Q6.5 5.725 8.625 4.75q.525-.25.95.037q.425.288.425.938q0 .25-.162.487q-.163.238-.413.363q-1.575.75-2.5 2.225T6 12.05q0 1.125.425 2.187Q6.85 15.3 7.75 16.2l.25.25V15q0-.425.288-.713Q8.575 14 9 14t.713.287Q10 14.575 10 15v4q0 .425-.287.712Q9.425 20 9 20Z"})}),c("syncToGoogleDrive")]}),d("a",{href:"#","aria-busy":_,onClick:M=>{M.preventDefault(),T()},class:"secondary text-sm",children:c("backupToCloud")})]}),d("div",{class:"text-xs text-gray-500",children:i?.lastSyncedAt&&c("lastSyncedAt",{date:new Date(i.lastSyncedAt).toLocaleString()})}),i?.lastSyncErrorMessage&&d("p",{class:"mt-2 text-xs text-red-500"}),S?d($c,{onClose:()=>k(!1),authExpire:b,accessToken:L}):null]}):null}var PE="buildinConfig",ME={},gh=dm(PE,ME);var FE=({date:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("The local rules are up to date")," ",new Date(e).toLocaleString()]})},_E=({date:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},BE=()=>{let{t:e}=be();return d("p",{class:"text-sm","aria-busy":!0,children:[e("Checking for updates"),"..."]})},RE=()=>{let{t:e}=be();return d("p",{class:"text-sm",children:[e("Rules are being synchronized"),"..."]})},OE=({minVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},IE=({latestVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("foundNewVersion"),":"," ",d("a",{href:"https://github.com/immersive-translate/immersive-translate/releases",children:e})]})},NE=()=>{let{t:e}=be();return d("p",{class:"text-sm",children:e("theLocalExtensionIsUpToUpdate")})},UE=({message:e,handleSyncing:t,date:n})=>{let{t:a}=be();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Kc(){let[e,t]=W(null),{t:n}=be(),[a,r]=W(n("calculating")+"..."),[u,o]=W(null),[i,s]=gh(),[l,c]=W(null),[m,g]=W(""),[p,f]=W(!1),[S,k]=W(!1),[h,A]=W(null),[_,B]=W(null),[L,w,y,T]=bt(),[b,E]=W(!1),R=Zo(),D=!0;Dt()&&h&&(D=h.generalRule.showSponsorOnSafari);let O=async()=>{g("");let G=u;if(u===null)try{let me=await hr({url:aa});me?(o(me),G=me,f(!0)):(g(n("unknownError")),c(null))}catch(me){c(null),g(me.message);return}G!==null?(s(G),c(!1),t(G.buildinConfigUpdatedAt)):(g(n("canNotFetchRemoteRule")),c(null))};ke(()=>{ze().then(G=>{let me=G.buildinConfigUpdatedAt;A(G);let ge=new Date(me);t(me),hr({url:aa}).then(v=>{let H=v.minVersion,Q=R;o(v);let fe=v.latestVersion;if(fe&&(Ea(Q,fe)?B(!0):B(!1)),Ea(Q,H)){let se=v.buildinConfigUpdatedAt;new Date(se)>ge?(c(!0),O()):c(!1)}else k(!0),c(null)}).catch(v=>{c(null),g(v.message)})}),uh().then(G=>{r(G)})},[]),ke(()=>{ze().then(G=>{A(G)})},[L,e]);let M=G=>{w(me=>{let ge=!me.alpha;return ge?Je(n("enableAlphaSuccess")):Je(n("disableAlphaSuccess")),{...me,alpha:ge}})},F=G=>{G.preventDefault(),G.stopPropagation(),E(!0),pr().catch(me=>{P.error("clear build config failed:",me)}),ia().catch(me=>{P.error("clear local config failed:",me)}),Gr().then(()=>{E(!1),Je("\u6E05\u7406\u6210\u529F"),r("0 B")}).catch(me=>{E(!1),Lt(me.message)})},$=G=>{w(me=>({...me,cache:G}))},Z=G=>{w(me=>({...me,enabled:G}))},de="aboutIntro";return D||(de="aboutIntroWithoutSponsor"),h?d("div",{class:"text-sm",children:[d("div",{class:"nav",children:d("strong",{onClick:Mu(7)(M),class:"text-lg immersive-translate-no-select",children:n("about")})}),d("p",{onClick:Mu(7)(M),class:"mb-2 immersive-translate-no-select",children:["V",R]}),_===!1&&d(IE,{latestVersion:u?.latestVersion}),_===!0&&d(NE,{}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"enabled",name:"enabled",role:"switch",onChange:()=>{Z(!h.enabled)},checked:h.enabled}),n("enabledExtension")]})}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{$(!h.cache)},checked:h.cache}),n("allowCacheTranslations")]})}),!le()&&a&&d("p",{class:"text-sm",children:[n("cacheSize"),"\xA0",a," \xA0 ",b?d("span",{children:[n("cleaning"),"..."]}):d("a",{class:"text-sm",href:"#",onClick:F,children:n("cleanCache")})]}),m?d(UE,{handleSyncing:O,message:m,date:e||""}):S?d(OE,{minVersion:u.minVersion}):l===null?d(BE,{}):l===!0?d(RE,{}):p?d(_E,{date:e}):d(FE,{date:e}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:n(de,{1:"https://immersivetranslate.com/docs/thanks/",2:"https://immersivetranslate.com/docs/donate/",3:"twitter.com/immersivetran",4:"https://t.me/immersivetranslate",5:"https://immersivetranslate.substack.com",6:"https://immersivetranslate.com/docs/services/deepL/"})}}),d("div",{class:"flex items-center justify-center",children:[d("div",{class:"flex flex-col items-center",children:[d("img",{width:"120",src:"https://immersivetranslate.com/assets/wechat-qrcode.jpg",alt:"wechat contact"}),d("div",{class:"text-sm",children:n("wechatPublicAccount")})]}),d("div",{class:"w-16"}),d("div",{class:"flex flex-col items-center",children:[d("img",{width:"125",src:"https://immersivetranslate.com/assets/qq-channel.png",alt:"qq channel contact"}),d("div",{class:"text-sm text-center",children:d("a",{target:"_blank",href:"https://pd.qq.com/s/260rd4u6r",children:n("qqCommunities")})})]})]}),d("ul",{class:"text-sm ml-4",children:[d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/issues",children:n("feedback")})}),d("li",{children:d("a",{class:"secondary",href:Do,children:n("joinTelegramGroup")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/docs/CHANGELOG/",children:n("changelog")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/",children:n("projectHomepage")})}),d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/",children:n("Github")})}),D&&!1]}),d("div",{class:"flex justify-center",children:d("iframe",{src:"https://immersivetranslate.substack.com/embed",width:"480",height:"320",style:"border:1px solid #EEE; background:white;",frameBorder:0,scrolling:"no"})})]}):null}function Gc(){let e=fr(),[t,n,a,r]=bt(),[u,o]=W(null),{t:i}=be();ke(()=>{ze().then(m=>{wt({config:m,url:globalThis.location.href}).then(g=>{o(g)})})},[t]);let s=m=>{n(g=>({...g,translationTheme:m}))},l=m=>{n(g=>({...g,interfaceLanguage:m}))};if(!u)return d("div",{children:"loading"});let c=u.config;return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("advanced")})}),d("div",{class:"nav",children:[d(Fe,{title:i("translate all areas of the page"),description:i("translationAreaDescription")}),d("label",{for:"translationAreaDescription",children:d("input",{type:"checkbox",id:"translationAreaDescription",name:"switch",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,translationArea:g?"body":"main"}))},checked:c.translationArea==="body"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translate to the bottom of the page"),description:i("translateToThePageEndImmediatelyDescription")}),d("label",{for:"translateToThePageEndImmediatelyDescription",children:d("input",{type:"checkbox",onChange:m=>{let g=m.target.checked;n(p=>({...p,translationStartMode:g?"immediate":"dynamic"}))},checked:c.translationStartMode==="immediate",id:"translateToThePageEndImmediatelyDescription",name:"switch",role:"switch"})})]}),!le()&&d("div",{class:"nav",children:[d(Fe,{title:i("isShowContextMenu")}),d("label",{for:"isShowContextMenu",children:d("input",{type:"checkbox",onChange:m=>{let g=m.target.checked;ys({...u.config,isShowContextMenu:g}),n(p=>({...p,isShowContextMenu:g}))},checked:u.config.isShowContextMenu===!0,id:"isShowContextMenu",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("isTranslateTitle"),description:i("isTranslateTitleDescription")}),d("label",{for:"isTranslateTitle",children:d("input",{type:"checkbox",id:"isTranslateTitle",name:"isTranslateTitle",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,generalRule:{...p.generalRule,isTranslateTitle:g}}))},checked:c.generalRule.isTranslateTitle})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableSearchEnhancement"),description:i("enableSearchEnhancementDescription")}),d("label",{for:"enableSearchEnhancement",children:d("input",{type:"checkbox",id:"enableSearchEnhancement",name:"enableSearchEnhancement",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,generalRule:{...p.generalRule,enableSearchEnhancement:g}}))},checked:c.generalRule.enableSearchEnhancement})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("loadingThemeTitle"),description:i("loadingThemeDescription")}),d("select",{class:"select",onChange:m=>{n(g=>({...g,loadingTheme:m.target.value}))},children:[d("option",{value:"spinner",selected:c.loadingTheme==="spinner",children:i("loadingTheme.spinner")}),d("option",{value:"text",selected:c.loadingTheme==="text",children:i("loadingTheme.text")}),d("option",{value:"none",selected:c.loadingTheme==="none",children:i("loadingTheme.none")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translationLineBreakSettingTitle"),description:i("translationLineBreakSettingDescription",{count:e.generalRule.blockMinTextCount})}),d("select",{class:"select",onChange:m=>{n(g=>{let p=g.generalRule||{};return parseInt(m.target.value)===0?p={...p,blockMinTextCount:0,blockMinWordCount:0}:p={...p,blockMinTextCount:e.generalRule.blockMinTextCount,blockMinWordCount:e.generalRule.blockMinWordCount},{...g,generalRule:p}})},children:[d("option",{value:32,selected:c.generalRule.blockMinTextCount>0,children:i("smartLineBreak")}),d("option",{value:0,selected:c.generalRule.blockMinTextCount===0,children:i("alwaysLineBreak")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("tempTranslateDomainTitle"),description:i("tempTranslateDomainDescription")}),d("select",{class:"select",onChange:m=>{n(g=>({...g,tempTranslateDomainMinutes:parseInt(m.target.value)}))},children:[d("option",{value:0,selected:c.tempTranslateDomainMinutes===0,children:i("disabled")}),d("option",{value:5,selected:c.tempTranslateDomainMinutes===5,children:i("xMinutes",{count:5})}),d("option",{value:10,selected:c.tempTranslateDomainMinutes===10,children:i("xMinutes",{count:10})}),d("option",{value:15,selected:c.tempTranslateDomainMinutes===15,children:i("xMinutes",{count:15})}),d("option",{value:30,selected:c.tempTranslateDomainMinutes===30,children:i("xMinutes",{count:30})}),d("option",{value:60,selected:c.tempTranslateDomainMinutes===60,children:i("xMinutes",{count:60})})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("the number of characters to be translated first")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:m=>{let g=m.target.value;n(p=>({...p,immediateTranslationTextCount:parseInt(g)}))},name:"count",value:c.immediateTranslationTextCount,placeholder:"Text Length",required:!0})})]})]})}var mh=tu({presets:[no(),ro()]});function ph(){let e=document.getElementById("mount");e&&(async()=>{Xs(mh);let t=await ze();t.debug&&P.setLevel("debug"),globalThis.location.hash||(globalThis.location.hash="#general");let n=await wt({url:"http://localhost",config:t});nt("options_page_view",[{name:"options_page_view"}],{...n,sourceLanguage:globalThis.location.hash}),ua(document,n),ka(d(vi,{lang:t.interfaceLanguage,fallbackLang:"zh-CN",translations:Sr,children:d(jE,{donateUrl:t.donateUrl,config:t})}),e)})()}function jE(e){let t=U0(),{t:n}=be(),a=Zo(),{config:r}=e,u=[{name:n("general"),props:{href:"#general",className:"secondary"}},{name:n("interface"),props:{href:"#interface",className:"secondary"}},{name:n("inputOptions"),props:{href:"#input",className:"secondary"}},{name:n("advanced"),props:{href:"#advanced",className:"secondary"}},{name:n("import_export"),props:{href:"#import_export",className:"secondary"}},{name:n("about"),props:{href:"#about",className:"secondary"}}];u.forEach(i=>{t===i.props.href&&(i.props.className="primary",i.props["aria-current"]="page")});let o=!0;return Dt()&&(o=r.generalRule.showSponsorOnSafari),d(ut,{children:d("main",{class:"container-fluid",children:[d("aside",{children:d("nav",{class:"flex flex-col h-full justify-between",children:[d("div",{children:[d("hgroup",{class:"mb-2",children:[d("h4",{class:"cursor-pointer p-0 m-0",onClick:()=>{globalThis.location.hash="#general"},children:n("browser.brandName")}),d("h6",{class:"!text-sm",children:a})]}),d("ul",{class:"flex flex-wrap justify-between md:block text-sm md:text-base",children:u.map((i,s)=>d("li",{class:"li",children:d("a",{...i.props,children:i.name})},`nav-${s}`))})]}),d("div",{class:"m-0 p-0 flex flex-col",children:[o&&!1,d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/communities/",children:n("feedbackAndJoin")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/",children:n("document")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"#developer",children:n("developer")})]})]})}),d("div",{role:"main",children:d(N0,{value:t,defaultCase:d(bs,{}),cases:{"#general":d(bs,{}),"#input":d(Ic,{}),"#interface":d(Hc,{}),"#import_export":d(qc,{}),"#about":d(Kc,{}),"#advanced":d(Gc,{}),"#developer":d(Wc,{})}})})]})})}ph();})(); +}]`;return r?d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:o("developer")})}),d("div",{dangerouslySetInnerHTML:{__html:o("developerDescription",{1:"https://immersivetranslate.com/docs/advanced/"})},class:"secondary text-xs text-gray-500 mb-4"}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{m(!r.debug)},checked:r.debug}),o("toggleDebug")]})}),d("fieldset",{class:"mt-2",children:[d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"beta",name:"beta",role:"switch",onChange:()=>{g(!r.beta)},checked:!!r.beta}),o("toggleBeta")]}),d("small",{class:"text-gray-500",dangerouslySetInnerHTML:{__html:o("betaDescription",{1:Do})}})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit User Rules"}),d("textarea",{class:"user-rule",rows:10,onChange:f,placeholder:L,spellcheck:!1,value:e.rules?JSON.stringify(e.rules||[],null,2):""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:_,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Injected CSS"}),d("textarea",{rows:10,onChange:A,spellcheck:!1,placeholder:".title { color: red }",value:e.generalRule&&e.generalRule.injectedCss?e.generalRule.injectedCss:""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:B,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Full User Config"}),d("textarea",{rows:10,onChange:k,spellcheck:!1,value:JSON.stringify(e,null,2)}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:S,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the final config"}),d("pre",{children:d("code",{children:JSON.stringify(r,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the sync storage object"}),d("pre",{children:d("code",{children:JSON.stringify(i,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the local storage object"}),d("pre",{children:d("code",{children:JSON.stringify(l,null,2)})})]})]}):d("div",{children:"loading"})}function xs(){let e=new Date;return`${e.getFullYear()}-${e.getMonth()+1}-${e.getDate()}_${e.getHours()}-${e.getMinutes()}-${e.getSeconds()}`}function _x(e){let{t}=be(),{accessToken:n,id:a,listAllFiles:r}=e,[u,o]=W(!1);function i(s,l){s.preventDefault(),o(!0),new In(n).delete(l).catch(c=>{Lt(t("delete"))}).then(()=>r()).finally(()=>o(!1))}return d("a",{href:"#",className:"secondary margin-left text-sm",onClick:s=>i(s,a),"aria-busy":u,children:t("delete")})}function Gc(e){let{onClose:t,accessToken:n,authExpire:a}=e,{t:r}=be(),[u,o,i,s]=bt(),[l,c]=W([]),[m,g]=W(!0),[p,f]=W(!1),[A,k]=W({});ke(()=>{n&&S().then(()=>g(!1))},[n]);let h=y=>{y.target&&y.target.id==="immersive-translate-overlay"&&t()};function S(){return new In(n).listAll().then(T=>{c(T)}).catch(T=>a())}function _(y){if(y.preventDefault(),l.length>=10)return Lt(r("maxBackupFiles",{count:10}));f(!0);let T="immersive-translate-config-"+xs()+".json";new In(n).uploadConfig(u,T).catch(b=>{Lt(r("uploadFail"))}).then(()=>S()).finally(()=>f(!1))}function B(y,T,b){y.preventDefault(),k({[b]:!0}),new In(n).getConfig(T).then(x=>{o(()=>({...x})),Je(r("importSuccess"))}).catch(x=>{P.error(x),Lt(r("importFail"))}).finally(()=>k({}))}function L(y,T){new In(n).getConfig(y).then(b=>{let x=document.createElement("a");x.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(JSON.stringify(b,null,2))),x.setAttribute("download",T),x.style.display="none",document.body.appendChild(x),x.click(),document.body.removeChild(x)}).catch(b=>{P.error("download google config file failed",b),Lt(r("downloadFail")+": "+b.message)})}function v(y){y.preventDefault(),o({...u,autoSync:!1}),cn.revoke(n).then(()=>t())}return d("dialog",{id:"immersive-translate-overlay",onClick:h,open:!0,children:d("article",{class:"md:w-[32rem] px-4",children:[d("a",{href:"#",title:r("clickToDownload"),"aria-label":"Close",className:"close","data-target":"modal-example",onClick:y=>{y.preventDefault(),t()}}),d("h4",{children:r("syncTitle")}),d("div",{className:"mb-4",children:l.map((y,T)=>d("div",{class:"flex flex-wrap justify-between",children:[d("div",{class:"mr-2 mb-2",children:[d("div",{children:d("a",{href:"#",onClick:b=>{b.preventDefault(),L(y.id,y.name)},class:"block truncate w-40 sm:w-auto",children:y.name.replace("immersive-translate-","")})}),d("div",{class:"text-xs text-gray-500",children:[new Date(y.modifiedTime).toLocaleString(),",\xA0",Eu(parseInt(y.size))]})]}),d("div",{children:[d("a",{href:"#",role:"button",className:"margin-right secondary","aria-busy":A[T],disabled:A[T],onClick:b=>B(b,y.id,T),children:r("import_hint")}),d(_x,{accessToken:n,id:y.id,listAllFiles:S})]})]},"file"+T))}),d("div",{className:"flex items-center",children:[d("a",{href:"#",role:"button",className:"mr-4","data-target":"modal-example","aria-busy":p,onClick:_,disabled:m,children:r("create_new_backup")}),d("a",{href:"#",className:"secondary text-sm","data-target":"modal-example",onClick:v,disabled:m,children:r("revokeAuth")})]})]})})}function Jc(){let[e,t,n,a,r]=bt(),[u,o]=W(null),[i,s]=W(null),l=M=>{s(M),Wn(M)},{t:c,setLang:m}=be();ke(()=>{ze().then(M=>{o(M)}),Hn().then(M=>{l(M)})},[]);let g=M=>{t(()=>({...M}))},p=M=>{M.preventDefault();let F=document.createElement("input");F.setAttribute("type","file"),F.setAttribute("accept","text/plain"),F.style.display="none",document.body.appendChild(F),F.oninput=$=>{let Z=$.target,de=new FileReader;de.onload=function(){try{let V=JSON.parse(de.result);g(V),Je(c("successImportConfig"))}catch(V){Lt(`Invalid JSON ${V.message}`)}},de.readAsText(Z.files[0])},F.click(),document.body.removeChild(F)},f=M=>{M.preventDefault(),confirm(c("confirmResetConfig"))&&(r(Ba()),Je(c("resetSuccess")),setTimeout(()=>{z.storage.local.remove(Dn),ia().catch(F=>{P.error("clean local config error",F)})},500))},[A,k]=W(!1),[h,S]=W(!1),[_,B]=W(!1),[L,v]=W("");ke(()=>{if(bu()&&n){let M=localStorage.getItem(cu);if(localStorage.removeItem(cu),M){let F=globalThis.localStorage.getItem(A0);P.debug("import_export","rawAuthInfoStr",F);let $={},Z={},de="";if(F){globalThis.localStorage.removeItem(A0);try{$=JSON.parse(F),Z=$.state||{},de=$.access_token||""}catch(V){P.error("parse state error",V)}}if(de&&Z&&(cn.setAuthInfo({access_token:de}),P.debug("import_export","Google OAuth:",$),$)){let V=$.state;P.debug("state",V),V?.mode==="auto"?(S(!0),D(de)):(B(!0),x(de))}}}},[n]);function y(){S(!0),$c({source:globalThis.location.href,mode:"auto"},!0).then(M=>{P.debug("import_export","Google OAuth:"+M),M!==null&&D(M)}).catch(M=>{M&&M.message==="tokenValidateErrorRedirectToAuthUrl"?P.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):R(M)})}function T(){B(!0),k(!1),$c({source:globalThis.location.href,mode:"manual"},!0).then(M=>{P.debug("import_export","Google OAuth:"+M),M!==null&&x(M)}).catch(M=>{M&&M.message==="tokenValidateErrorRedirectToAuthUrl"?P.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):R(M)})}function b(){v(""),y()}function x(M){v(M),B(!1),k(!0)}function R(M){S(!1),B(!1),k(!1),t({...e,autoSync:!1}),P.error("import_export","Google OAuth error:"+M),Lt(c("authFail"))}function D(M){S(!0),P.debug("sync latest with drive",M,e),v(M),Wc(M,e,F=>{F.interfaceLanguage&&m(F.interfaceLanguage),r(F)},F=>l({...i,lastSyncedAt:F}),F=>t({...e,updatedAt:F}),F=>{F?Je(c("successSyncConfig")):Je(c("successSyncButNoChange"))},F=>Lt(c("syncFail")+F)).finally(()=>{S(!1)})}function I(M){t({...e,autoSync:M.checked}),M.checked&&y()}return u?d("div",{class:"pb-4",children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:c("import_export_title")})}),d("div",{class:"pb-2",children:[d("a",{class:"mr-2 secondary mb-2 !text-sm",onClick:p,href:"#",role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zm10-5.828L19.071 7.1l1.414 1.414L12 17 3.515 8.515 4.929 7.1 11 13.17V2h2v11.172z"})]}),c("import")]}),d("a",{href:"#",class:"secondary mr-2 mb-2 !text-sm",onClick:M=>{M.preventDefault();let F=new Blob([JSON.stringify(e,null,2)],{type:"text/plain;charset=utf-8"});au.saveAs(F,"immersive-translate-config-"+xs()+".txt")},role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zM13 5.828V17h-2V5.828L4.929 11.9l-1.414-1.414L12 2l8.485 8.485-1.414 1.414L13 5.83z"})]}),c("export")]}),d("a",{href:"#",onClick:f,class:"secondary text-sm",children:c("reset")})]}),d("details",{class:"mt-4 mb-6",children:[d("summary",{children:c("clickToExpandConfig")}),d("pre",{children:d("code",{children:JSON.stringify(e,null,2)})})]}),d("hgroup",{class:"my-2",children:[d("h5",{children:c("syncToCloud")}),d("h6",{class:"!text-sm",children:c("syncToCloudDescription")})]}),d("div",{children:[d("a",{className:"mr-4 secondary mb-2 !text-sm ",onClick:M=>{M.preventDefault(),y()},"aria-busy":h,href:"#",role:"button",children:[h?d(rt,{}):d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",children:d("path",{fill:"currentColor",d:"M15.375 19.25q-.525.25-.95-.038q-.425-.287-.425-.937q0-.25.163-.487q.162-.238.412-.363q1.575-.75 2.5-2.225T18 11.95q0-1.125-.425-2.188Q17.15 8.7 16.25 7.8L16 7.55V9q0 .425-.287.712Q15.425 10 15 10t-.712-.288Q14 9.425 14 9V5q0-.425.288-.713Q14.575 4 15 4h4q.425 0 .712.287Q20 4.575 20 5t-.288.713Q19.425 6 19 6h-1.75l.4.35q1.225 1.225 1.788 2.662Q20 10.45 20 11.95q0 2.4-1.25 4.362q-1.25 1.963-3.375 2.938ZM5 20q-.425 0-.713-.288Q4 19.425 4 19t.287-.712Q4.575 18 5 18h1.75l-.4-.35q-1.225-1.225-1.788-2.662Q4 13.55 4 12.05q0-2.4 1.25-4.363Q6.5 5.725 8.625 4.75q.525-.25.95.037q.425.288.425.938q0 .25-.162.487q-.163.238-.413.363q-1.575.75-2.5 2.225T6 12.05q0 1.125.425 2.187Q6.85 15.3 7.75 16.2l.25.25V15q0-.425.288-.713Q8.575 14 9 14t.713.287Q10 14.575 10 15v4q0 .425-.287.712Q9.425 20 9 20Z"})}),c("syncToGoogleDrive")]}),d("a",{href:"#","aria-busy":_,onClick:M=>{M.preventDefault(),T()},class:"secondary text-sm",children:c("backupToCloud")})]}),d("div",{class:"text-xs text-gray-500",children:i?.lastSyncedAt&&c("lastSyncedAt",{date:new Date(i.lastSyncedAt).toLocaleString()})}),i?.lastSyncErrorMessage&&d("p",{class:"mt-2 text-xs text-red-500"}),A?d(Gc,{onClose:()=>k(!1),authExpire:b,accessToken:L}):null]}):null}var Bx="buildinConfig",Rx={},yh=fm(Bx,Rx);var Ix=({date:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("The local rules are up to date")," ",new Date(e).toLocaleString()]})},Ox=({date:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},Nx=()=>{let{t:e}=be();return d("p",{class:"text-sm","aria-busy":!0,children:[e("Checking for updates"),"..."]})},Ux=()=>{let{t:e}=be();return d("p",{class:"text-sm",children:[e("Rules are being synchronized"),"..."]})},jx=({minVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},zx=({latestVersion:e})=>{let{t}=be();return d("p",{class:"text-sm",children:[t("foundNewVersion"),":"," ",d("a",{href:"https://github.com/immersive-translate/immersive-translate/releases",children:e})]})},Hx=()=>{let{t:e}=be();return d("p",{class:"text-sm",children:e("theLocalExtensionIsUpToUpdate")})},Wx=({message:e,handleSyncing:t,date:n})=>{let{t:a}=be();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Yc(){let[e,t]=W(null),{t:n}=be(),[a,r]=W(n("calculating")+"..."),[u,o]=W(null),[i,s]=yh(),[l,c]=W(null),[m,g]=W(""),[p,f]=W(!1),[A,k]=W(!1),[h,S]=W(null),[_,B]=W(null),[L,v,y,T]=bt(),[b,x]=W(!1),R=Zo(),D=!0;Dt()&&h&&(D=h.generalRule.showSponsorOnSafari);let I=async()=>{g("");let V=u;if(u===null)try{let me=await hr({url:aa});me?(o(me),V=me,f(!0)):(g(n("unknownError")),c(null))}catch(me){c(null),g(me.message);return}V!==null?(s(V),c(!1),t(V.buildinConfigUpdatedAt)):(g(n("canNotFetchRemoteRule")),c(null))};ke(()=>{ze().then(V=>{let me=V.buildinConfigUpdatedAt;S(V);let ge=new Date(me);t(me),hr({url:aa}).then(w=>{let H=w.minVersion,Q=R;o(w);let fe=w.latestVersion;if(fe&&(xa(Q,fe)?B(!0):B(!1)),xa(Q,H)){let se=w.buildinConfigUpdatedAt;new Date(se)>ge?(c(!0),I()):c(!1)}else k(!0),c(null)}).catch(w=>{c(null),g(w.message)})}),dh().then(V=>{r(V)})},[]),ke(()=>{ze().then(V=>{S(V)})},[L,e]);let M=V=>{v(me=>{let ge=!me.alpha;return ge?Je(n("enableAlphaSuccess")):Je(n("disableAlphaSuccess")),{...me,alpha:ge}})},F=V=>{V.preventDefault(),V.stopPropagation(),x(!0),pr().catch(me=>{P.error("clear build config failed:",me)}),ia().catch(me=>{P.error("clear local config failed:",me)}),Vr().then(()=>{x(!1),Je("\u6E05\u7406\u6210\u529F"),r("0 B")}).catch(me=>{x(!1),Lt(me.message)})},$=V=>{v(me=>({...me,cache:V}))},Z=V=>{v(me=>({...me,enabled:V}))},de="aboutIntro";return D||(de="aboutIntroWithoutSponsor"),h?d("div",{class:"text-sm",children:[d("div",{class:"nav",children:d("strong",{onClick:Mu(7)(M),class:"text-lg immersive-translate-no-select",children:n("about")})}),d("p",{onClick:Mu(7)(M),class:"mb-2 immersive-translate-no-select",children:["V",R]}),_===!1&&d(zx,{latestVersion:u?.latestVersion}),_===!0&&d(Hx,{}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"enabled",name:"enabled",role:"switch",onChange:()=>{Z(!h.enabled)},checked:h.enabled}),n("enabledExtension")]})}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{$(!h.cache)},checked:h.cache}),n("allowCacheTranslations")]})}),!le()&&a&&d("p",{class:"text-sm",children:[n("cacheSize"),"\xA0",a," \xA0 ",b?d("span",{children:[n("cleaning"),"..."]}):d("a",{class:"text-sm",href:"#",onClick:F,children:n("cleanCache")})]}),m?d(Wx,{handleSyncing:I,message:m,date:e||""}):A?d(jx,{minVersion:u.minVersion}):l===null?d(Nx,{}):l===!0?d(Ux,{}):p?d(Ox,{date:e}):d(Ix,{date:e}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:n(de,{1:"https://immersivetranslate.com/docs/thanks/",2:"https://immersivetranslate.com/docs/donate/",3:"twitter.com/immersivetran",4:"https://t.me/immersivetranslate",5:"https://immersivetranslate.substack.com",6:"https://immersivetranslate.com/docs/services/deepL/"})}}),d("div",{class:"flex items-center justify-center",children:[d("div",{class:"flex flex-col items-center",children:[d("img",{width:"120",src:"https://immersivetranslate.com/assets/wechat-qrcode.jpg",alt:"wechat contact"}),d("div",{class:"text-sm",children:n("wechatPublicAccount")})]}),d("div",{class:"w-16"}),d("div",{class:"flex flex-col items-center",children:[d("img",{width:"125",src:"https://immersivetranslate.com/assets/qq-channel.png",alt:"qq channel contact"}),d("div",{class:"text-sm text-center",children:d("a",{target:"_blank",href:"https://pd.qq.com/s/260rd4u6r",children:n("qqCommunities")})})]})]}),d("ul",{class:"text-sm ml-4",children:[d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/issues",children:n("feedback")})}),d("li",{children:d("a",{class:"secondary",href:Do,children:n("joinTelegramGroup")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/docs/CHANGELOG/",children:n("changelog")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/",children:n("projectHomepage")})}),d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/",children:n("Github")})}),D&&!1]}),d("div",{class:"flex justify-center",children:d("iframe",{src:"https://immersivetranslate.substack.com/embed",width:"480",height:"320",style:"border:1px solid #EEE; background:white;",frameBorder:0,scrolling:"no"})})]}):null}function Xc(){let e=fr(),[t,n,a,r]=bt(),[u,o]=W(null),{t:i}=be();ke(()=>{ze().then(m=>{vt({config:m,url:globalThis.location.href}).then(g=>{o(g)})})},[t]);let s=m=>{n(g=>({...g,translationTheme:m}))},l=m=>{n(g=>({...g,interfaceLanguage:m}))};if(!u)return d("div",{children:"loading"});let c=u.config;return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("advanced")})}),d("div",{class:"nav",children:[d(Fe,{title:i("translate all areas of the page"),description:i("translationAreaDescription")}),d("label",{for:"translationAreaDescription",children:d("input",{type:"checkbox",id:"translationAreaDescription",name:"switch",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,translationArea:g?"body":"main"}))},checked:c.translationArea==="body"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translate to the bottom of the page"),description:i("translateToThePageEndImmediatelyDescription")}),d("label",{for:"translateToThePageEndImmediatelyDescription",children:d("input",{type:"checkbox",onChange:m=>{let g=m.target.checked;n(p=>({...p,translationStartMode:g?"immediate":"dynamic"}))},checked:c.translationStartMode==="immediate",id:"translateToThePageEndImmediatelyDescription",name:"switch",role:"switch"})})]}),!le()&&d("div",{class:"nav",children:[d(Fe,{title:i("isShowContextMenu")}),d("label",{for:"isShowContextMenu",children:d("input",{type:"checkbox",onChange:m=>{let g=m.target.checked;Ts({...u.config,isShowContextMenu:g}),n(p=>({...p,isShowContextMenu:g}))},checked:u.config.isShowContextMenu===!0,id:"isShowContextMenu",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("isTranslateTitle"),description:i("isTranslateTitleDescription")}),d("label",{for:"isTranslateTitle",children:d("input",{type:"checkbox",id:"isTranslateTitle",name:"isTranslateTitle",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,generalRule:{...p.generalRule,isTranslateTitle:g}}))},checked:c.generalRule.isTranslateTitle})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableSearchEnhancement"),description:i("enableSearchEnhancementDescription")}),d("label",{for:"enableSearchEnhancement",children:d("input",{type:"checkbox",id:"enableSearchEnhancement",name:"enableSearchEnhancement",role:"switch",onChange:m=>{let g=m.target.checked;n(p=>({...p,generalRule:{...p.generalRule,enableSearchEnhancement:g}}))},checked:c.generalRule.enableSearchEnhancement})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("loadingThemeTitle"),description:i("loadingThemeDescription")}),d("select",{class:"select",onChange:m=>{n(g=>({...g,loadingTheme:m.target.value}))},children:[d("option",{value:"spinner",selected:c.loadingTheme==="spinner",children:i("loadingTheme.spinner")}),d("option",{value:"text",selected:c.loadingTheme==="text",children:i("loadingTheme.text")}),d("option",{value:"none",selected:c.loadingTheme==="none",children:i("loadingTheme.none")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translationLineBreakSettingTitle"),description:i("translationLineBreakSettingDescription",{count:e.generalRule.blockMinTextCount})}),d("select",{class:"select",onChange:m=>{n(g=>{let p=g.generalRule||{};return parseInt(m.target.value)===0?p={...p,blockMinTextCount:0,blockMinWordCount:0}:p={...p,blockMinTextCount:e.generalRule.blockMinTextCount,blockMinWordCount:e.generalRule.blockMinWordCount},{...g,generalRule:p}})},children:[d("option",{value:32,selected:c.generalRule.blockMinTextCount>0,children:i("smartLineBreak")}),d("option",{value:0,selected:c.generalRule.blockMinTextCount===0,children:i("alwaysLineBreak")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("tempTranslateDomainTitle"),description:i("tempTranslateDomainDescription")}),d("select",{class:"select",onChange:m=>{n(g=>({...g,tempTranslateDomainMinutes:parseInt(m.target.value)}))},children:[d("option",{value:0,selected:c.tempTranslateDomainMinutes===0,children:i("disabled")}),d("option",{value:5,selected:c.tempTranslateDomainMinutes===5,children:i("xMinutes",{count:5})}),d("option",{value:10,selected:c.tempTranslateDomainMinutes===10,children:i("xMinutes",{count:10})}),d("option",{value:15,selected:c.tempTranslateDomainMinutes===15,children:i("xMinutes",{count:15})}),d("option",{value:30,selected:c.tempTranslateDomainMinutes===30,children:i("xMinutes",{count:30})}),d("option",{value:60,selected:c.tempTranslateDomainMinutes===60,children:i("xMinutes",{count:60})})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("the number of characters to be translated first")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:m=>{let g=m.target.value;n(p=>({...p,immediateTranslationTextCount:parseInt(g)}))},name:"count",value:c.immediateTranslationTextCount,placeholder:"Text Length",required:!0})})]})]})}var Th=tu({presets:[no(),ro()]});function xh(){let e=document.getElementById("mount");e&&(async()=>{Zs(Th);let t=await ze();t.debug&&P.setLevel("debug"),globalThis.location.hash||(globalThis.location.hash="#general");let n=await vt({url:"http://localhost",config:t});st("options_page_view",[{name:"options_page_view"}],{...n,sourceLanguage:globalThis.location.hash}),ua(document,n),ka(d(wi,{lang:t.interfaceLanguage,fallbackLang:"zh-CN",translations:Sr,children:d($x,{donateUrl:t.donateUrl,config:t})}),e)})()}function $x(e){let t=j0(),{t:n}=be(),a=Zo(),{config:r}=e,u=[{name:n("general"),props:{href:"#general",className:"secondary"}},{name:n("interface"),props:{href:"#interface",className:"secondary"}},{name:n("inputOptions"),props:{href:"#input",className:"secondary"}},{name:n("advanced"),props:{href:"#advanced",className:"secondary"}},{name:n("import_export"),props:{href:"#import_export",className:"secondary"}},{name:n("about"),props:{href:"#about",className:"secondary"}}];u.forEach(i=>{t===i.props.href&&(i.props.className="primary",i.props["aria-current"]="page")});let o=!0;return Dt()&&(o=r.generalRule.showSponsorOnSafari),d(rt,{children:d("main",{class:"container-fluid",children:[d("aside",{children:d("nav",{class:"flex flex-col h-full justify-between",children:[d("div",{children:[d("hgroup",{class:"mb-2",children:[d("h4",{class:"cursor-pointer p-0 m-0",onClick:()=>{globalThis.location.hash="#general"},children:n("browser.brandName")}),d("h6",{class:"!text-sm",children:a})]}),d("ul",{class:"flex flex-wrap justify-between md:block text-sm md:text-base",children:u.map((i,s)=>d("li",{class:"li",children:d("a",{...i.props,children:i.name})},`nav-${s}`))})]}),d("div",{class:"m-0 p-0 flex flex-col",children:[o&&!1,d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/communities/",children:n("feedbackAndJoin")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/",children:n("document")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"#developer",children:n("developer")})]})]})}),d("div",{role:"main",children:d(U0,{value:t,defaultCase:d(ys,{}),cases:{"#general":d(ys,{}),"#input":d(zc,{}),"#interface":d(Kc,{}),"#import_export":d(Jc,{}),"#about":d(Yc,{}),"#advanced":d(Xc,{}),"#developer":d(Vc,{})}})})]})})}xh();})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/dist/firefox/popup.js b/dist/firefox/popup.js index ecf4398a2..1cedc8ae1 100644 --- a/dist/firefox/popup.js +++ b/dist/firefox/popup.js @@ -1,4 +1,4 @@ -(()=>{var zm=Object.defineProperty;var Um=(e,t)=>{for(var n in t)zm(e,n,{get:t[n],enumerable:!0})};var ll=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var i0=(e,t,n)=>(ll(e,t,"read from private field"),n?n.call(e):t.get(e)),cl=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},dl=(e,t,n,a)=>(ll(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T16:25:28.017Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Km=Object.defineProperty;var Gm=(e,t)=>{for(var n in t)Km(e,n,{get:t[n],enumerable:!0})};var ml=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var s0=(e,t,n)=>(ml(e,t,"read from private field"),n?n.call(e):t.get(e)),pl=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},fl=(e,t,n,a)=>(ml(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,11 +4067,11 @@ body {
-`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"dev"};var Wm=Object.create,l0=Object.defineProperty,qm=Object.getOwnPropertyDescriptor,ml=Object.getOwnPropertyNames,$m=Object.getPrototypeOf,Km=Object.prototype.hasOwnProperty,Gm=(e,t)=>function(){return t||(0,e[ml(e)[0]])((t={exports:{}}).exports,t),t.exports},Vm=(e,t)=>{for(var n in t)l0(e,n,{get:t[n],enumerable:!0})},s0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of ml(t))!Km.call(e,u)&&u!==n&&l0(e,u,{get:()=>t[u],enumerable:!(a=qm(t,u))||a.enumerable});return e},Jm=(e,t,n)=>(s0(e,t,"default"),n&&s0(n,t,"default")),pl=(e,t,n)=>(n=e!=null?Wm($m(e)):{},s0(t||!e||!e.__esModule?l0(n,"default",{value:e,enumerable:!0}):n,e)),fl=Gm({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/.pnpm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var u={exports:{}};a(u),n.browser=u.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",u=r=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(k,D=void 0){super(D),this.createItem=k}get(k){return this.has(k)||this.set(k,this.createItem(k)),super.get(k)}}let s=y=>y&&typeof y=="object"&&typeof y.then=="function",l=(y,k)=>(...D)=>{r.runtime.lastError?y.reject(new Error(r.runtime.lastError.message)):k.singleCallbackArg||D.length<=1&&k.singleCallbackArg!==!1?y.resolve(D[0]):y.resolve(D)},c=y=>y==1?"argument":"arguments",d=(y,k)=>function(x,...L){if(L.lengthk.maxArgs)throw new Error(`Expected at most ${k.maxArgs} ${c(k.maxArgs)} for ${y}(), got ${L.length}`);return new Promise((O,w)=>{if(k.fallbackToNoCallback)try{x[y](...L,l({resolve:O,reject:w},k))}catch{x[y](...L),k.fallbackToNoCallback=!1,k.noCallback=!0,O()}else k.noCallback?(x[y](...L),O()):x[y](...L,l({resolve:O,reject:w},k))})},g=(y,k,D)=>new Proxy(k,{apply(x,L,O){return D.call(L,y,...O)}}),m=Function.call.bind(Object.prototype.hasOwnProperty),f=(y,k={},D={})=>{let x=Object.create(null),L={has(w,R){return R in y||R in x},get(w,R,J){if(R in x)return x[R];if(!(R in y))return;let N=y[R];if(typeof N=="function")if(typeof k[R]=="function")N=g(y,y[R],k[R]);else if(m(D,R)){let pe=d(R,D[R]);N=g(y,y[R],pe)}else N=N.bind(y);else if(typeof N=="object"&&N!==null&&(m(k,R)||m(D,R)))N=f(N,k[R],D[R]);else if(m(D,"*"))N=f(N,k[R],D["*"]);else return Object.defineProperty(x,R,{configurable:!0,enumerable:!0,get(){return y[R]},set(pe){y[R]=pe}}),N;return x[R]=N,N},set(w,R,J,N){return R in x?x[R]=J:y[R]=J,!0},defineProperty(w,R,J){return Reflect.defineProperty(x,R,J)},deleteProperty(w,R){return Reflect.deleteProperty(x,R)}},O=Object.create(y);return new Proxy(O,L)},v=y=>({addListener(k,D,...x){k.addListener(y.get(D),...x)},hasListener(k,D){return k.hasListener(y.get(D))},removeListener(k,D){k.removeListener(y.get(D))}}),T=new i(y=>typeof y!="function"?y:function(D){let x=f(D,{},{getContent:{minArgs:0,maxArgs:0}});y(x)}),p=new i(y=>typeof y!="function"?y:function(D,x,L){let O=!1,w,R=new Promise(fe=>{w=function(_e){O=!0,fe(_e)}}),J;try{J=y(D,x,w)}catch(fe){J=Promise.reject(fe)}let N=J!==!0&&s(J);if(J!==!0&&!N&&!O)return!1;let pe=fe=>{fe.then(_e=>{L(_e)},_e=>{let z;_e&&(_e instanceof Error||typeof _e.message=="string")?z=_e.message:z="An unexpected error occurred",L({__mozWebExtensionPolyfillReject__:!0,message:z})}).catch(_e=>{})};return pe(N?J:R),!0}),C=({reject:y,resolve:k},D)=>{r.runtime.lastError?r.runtime.lastError.message===a?k():y(new Error(r.runtime.lastError.message)):D&&D.__mozWebExtensionPolyfillReject__?y(new Error(D.message)):k(D)},F=(y,k,D,...x)=>{if(x.lengthk.maxArgs)throw new Error(`Expected at most ${k.maxArgs} ${c(k.maxArgs)} for ${y}(), got ${x.length}`);return new Promise((L,O)=>{let w=C.bind(null,{resolve:L,reject:O});x.push(w),D.sendMessage(...x)})},S={devtools:{network:{onRequestFinished:v(T)}},runtime:{onMessage:v(p),onMessageExternal:v(p),sendMessage:F.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:F.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},A={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":A},services:{"*":A},websites:{"*":A}},f(r,S,o)};n.exports=u(chrome)}else n.exports=globalThis.browser})}}),hl={};Vm(hl,{default:()=>Iu});var Ym=pl(fl());Jm(hl,pl(fl()));var{default:gl,...Xm}=Ym,Iu=gl!==void 0?gl:Xm;globalThis.immersiveTranslateBrowserAPI=Iu;var qu,he,xl,Zm,Qa,bl,Cl,Uu={},wl=[],Qm=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function wn(e,t){for(var n in t)e[n]=t[n];return e}function vl(e){var t=e.parentNode;t&&t.removeChild(e)}function kl(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?qu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return ju(e,o,a,u,null)}function ju(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++xl};return u==null&&he.vnode!=null&&he.vnode(r),r}function en(e){return e.children}function zu(e,t){this.props=e,this.context=t}function ma(e,t){if(t==null)return e.__?ma(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?ju(m.type,m.props,m.key,m.ref?m.ref:null,m.__v):m)!=null){if(m.__=n,m.__b=n.__b+1,(g=p[c])===null||g&&m.key==g.key&&m.type===g.type)p[c]=void 0;else for(d=0;d=n.__.length&&n.__.push({__V:$u}),n.__[e]}function ye(e){return eu=1,ap(Wl,e)}function ap(e,t,n){var a=Gu(tu++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):Wl(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=We,!We.u)){We.u=!0;var u=We.shouldComponentUpdate;We.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var d=c.__[0];c.__=c.__N,c.__N=void 0,d!==c.__[0]&&(l=!0)}}),!!l&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function Ze(e,t){var n=Gu(tu++,3);!he.__s&&Hl(n.__H,t)&&(n.__=e,n.i=t,We.__H.__h.push(n))}function f0(e){return eu=5,Ul(function(){return{current:e}},[])}function Ul(e,t){var n=Gu(tu++,7);return Hl(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function qn(e,t){return eu=8,Ul(function(){return e},t)}function h0(e){var t=We.context[e.__c],n=Gu(tu++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(We)),t.props.value):e.__}function up(){for(var e;e=zl.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Ku),e.__H.__h.forEach(p0),e.__H.__h=[]}catch(t){e.__H.__h=[],he.__e(t,e.__v)}}he.__b=function(e){typeof e.type!="function"||e.o||e.type===en?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),We=null,Bl&&Bl(e)},he.__r=function(e){Rl&&Rl(e),tu=0;var t=(We=e.__c).__H;t&&(m0===We?(t.__h=[],We.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=$u,n.__N=n.i=void 0})):(t.__h.forEach(Ku),t.__h.forEach(p0),t.__h=[])),m0=We},he.diffed=function(e){Ol&&Ol(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(zl.push(t)!==1&&_l===he.requestAnimationFrame||((_l=he.requestAnimationFrame)||rp)(up)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==$u&&(n.__=n.__V),n.i=void 0,n.__V=$u})),m0=We=null},he.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Ku),n.__h=n.__h.filter(function(a){return!a.__||p0(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],he.__e(a,n.__v)}}),Nl&&Nl(e,t)},he.unmount=function(e){Il&&Il(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Ku(a)}catch(u){t=u}}),n.__H=void 0,t&&he.__e(t,n.__v))};var jl=typeof requestAnimationFrame=="function";function rp(e){var t,n=function(){clearTimeout(a),jl&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);jl&&(t=requestAnimationFrame(n))}function Ku(e){var t=We,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),We=t}function p0(e){var t=We;e.__c=e.__(),We=t}function Hl(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function Wl(e,t){return typeof t=="function"?t(e):t}function Vu(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let l of r){let d=n[l].matches;for(let g of d)u[g]||(u[g]=[]),u[g].push(l)}let o=u[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(d=>d!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}var b0=/iPhone/i,ql=/iPod/i,$l=/iPad/i,Kl=/\biOS-universal(?:.+)Mac\b/i,E0=/\bAndroid(?:.+)Mobile\b/i,Gl=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ju=/Silk/i,gn=/Windows Phone/i,Vl=/\bWindows(?:.+)ARM\b/i,Jl=/BlackBerry/i,Yl=/BB10/i,Xl=/Opera Mini/i,Zl=/\b(CriOS|Chrome)(?:.+)Mobile/i,Ql=/Mobile(?:.+)Firefox\b/i,e4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function op(e){return t=>t.test(e)}function nu(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=op(n),r={apple:{phone:u(b0)&&!u(gn),ipod:u(ql),tablet:!u(b0)&&(u($l)||e4(t))&&!u(gn),universal:u(Kl),device:(u(b0)||u(ql)||u($l)||u(Kl)||e4(t))&&!u(gn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(Ju),device:u(fa)||u(Ju)},android:{phone:!u(gn)&&u(fa)||!u(gn)&&u(E0),tablet:!u(gn)&&!u(fa)&&!u(E0)&&(u(Ju)||u(Gl)),device:!u(gn)&&(u(fa)||u(Ju)||u(E0)||u(Gl))||u(/\bokhttp\b/i)},windows:{phone:u(gn),tablet:u(Vl),device:u(gn)||u(Vl)},other:{blackberry:u(Jl),blackberry10:u(Yl),opera:u(Xl),firefox:u(Ql),chrome:u(Zl),device:u(Jl)||u(Yl)||u(Xl)||u(Ql)||u(Zl)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var y0="DENO",Yu="CHROME",Xu="FIREFOX";function t4(e){let t=Yu;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Xu:/deno/i.test(n)&&(t=y0)}catch{}return e===Yu&&t===Yu||e===Xu&&t===Xu||e===y0&&t===y0}function n4(){return t4(Yu)}function a4(){return typeof Deno<"u"}function ha(){return t4(Xu)}function u4(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function au(){return!!globalThis.matchMedia("(pointer:fine)").matches}var r4={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},o4={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:r4,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:r4,query:()=>{},sendMessage:()=>{}}};var j;a4()?j=o4:j=globalThis.immersiveTranslateBrowserAPI;var i4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var s4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var l4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var cp=[{code:"zh-CN",messages:i4},{code:"zh-TW",messages:s4},{code:"en",messages:l4}],mn="immersiveTranslateDeeplGlobalState",Zu="immersiveTranslateBingGlobalState",Rt={};for(let e of cp)Rt[e.code]=e.messages;var $n="Immersive Translate",q="immersive-translate",Qu="pdf/index.html",d4="html/index.html",g4="subtitle/index.html";var se="immersiveTranslate";var Lb=se+"GoogleAccessToken",Pb=se+"AuthFlow";var Fb=se+"AuthState",er=se+"IframeMessage",Mb=se+"WaitForRateLimit",m4=se+"DocumentMessageAsk",Et=se+"DocumentMessageTellThirdParty",p4=se+"DocumentMessageThirdPartyTell",dp=se+"DocumentMessageHandler",gp=`${se}Container`,f4=`${se}SpecifiedContainer`,vn="buildinConfig",uu="localConfig",T0="openOptionsPage",x0="openAboutPage";var C0="openEbookViewer",w0="openEbookBuilder";var tr=`${se}PageTranslatedStatus`,_b=`${se}PageUrlChanged`,kn=`${se}ReceiveCommand`,h4=se+"LastUseMouseHoverTime",b4=se+"LastUseInputTime",pn=se+"LastUseManualTranslatePageTime",ru=`${se}PopupReceiveMessage`,mp="immersivetranslate.com",pp="config.immersivetranslate.com",Bb=`https://${mp}/`,ou=`https://${pp}/default_config.json`,Rb=`${se}Mark`,iu="immersiveTranslateEffect",St=`${se}Root`,Ob=`data-${q}-effect`,tn=`data-${q}-translation-element-mark`,E4=`${se}TranslationElementMark`,Nb=`${se}TranslatedMark`,Ib=`${se}ParagraphId`,y4=`${se}LoadingId`,v0=`data-${q}-loading-id`,T4=`${se}ErrorId`,nr=`data-${q}-error-id`,fp=`${se}AtomicBlockMark`,x4=`${se}ExcludeMark`,jb=`data-${q}-exclude-mark`,hp=`${se}StayOriginalMark`,zb=`${se}PreWhitespaceMark`,ar=`${se}InlineMark`,C4=`${se}BlockMark`,Ub=`${se}Left`,Hb=`${se}Right`,Wb=`${se}Width`,qb=`${se}Height`,$b=`${se}Top`,Kb=`${se}FontSize`,w4="lastRunTime",Gb=`${se}GlobalStyleMark`,ur=["@","#"],rr=" --- ",v4=` -`,Ot=`${q}-target-wrapper`,Vb=`${q}-pdf-target-container`,k4=`${q}-target-inner`,Jb=`${q}-source-wrapper`,k0=`${q}-target-translation-block-wrapper`,Yb=`${q}-root-translation-theme`,ba=`${se}RootTranslationTheme`,A4=`${q}-target-translation-vertical-block-wrapper`,S4=`${q}-target-translation-pdf-block-wrapper`,D4=`${q}-target-translation-pre-whitespace`,A0=`${q}-target-translation-inline-wrapper`;var L4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Nt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],P4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},F4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},M4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var _4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var or="zh-CN";var c4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,MOCK:"0",DEBUG:"0",INSTALL_FROM:"firefox_zip"};var Jm=Object.create,c0=Object.defineProperty,Ym=Object.getOwnPropertyDescriptor,bl=Object.getOwnPropertyNames,Xm=Object.getPrototypeOf,Zm=Object.prototype.hasOwnProperty,Qm=(e,t)=>function(){return t||(0,e[bl(e)[0]])((t={exports:{}}).exports,t),t.exports},ep=(e,t)=>{for(var n in t)c0(e,n,{get:t[n],enumerable:!0})},l0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of bl(t))!Zm.call(e,u)&&u!==n&&c0(e,u,{get:()=>t[u],enumerable:!(a=Ym(t,u))||a.enumerable});return e},tp=(e,t,n)=>(l0(e,t,"default"),n&&l0(n,t,"default")),El=(e,t,n)=>(n=e!=null?Jm(Xm(e)):{},l0(t||!e||!e.__esModule?c0(n,"default",{value:e,enumerable:!0}):n,e)),yl=Qm({"../esmd/npm/webextension-polyfill@0.10.0/node_modules/webextension-polyfill/dist/browser-polyfill.js"(e,t){(function(n,a){if(typeof define=="function"&&define.amd)define("webextension-polyfill",["module"],a);else if(typeof e<"u")a(t);else{var u={exports:{}};a(u),n.browser=u.exports}})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:e,function(n){"use strict";if(!globalThis.chrome?.runtime?.id)throw new Error("This script should only be loaded in a browser extension.");if(typeof globalThis.browser>"u"||Object.getPrototypeOf(globalThis.browser)!==Object.prototype){let a="The message port closed before a response was received.",u=r=>{let o={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(o).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class i extends WeakMap{constructor(k,L=void 0){super(L),this.createItem=k}get(k){return this.has(k)||this.set(k,this.createItem(k)),super.get(k)}}let l=y=>y&&typeof y=="object"&&typeof y.then=="function",s=(y,k)=>(...L)=>{r.runtime.lastError?y.reject(new Error(r.runtime.lastError.message)):k.singleCallbackArg||L.length<=1&&k.singleCallbackArg!==!1?y.resolve(L[0]):y.resolve(L)},c=y=>y==1?"argument":"arguments",d=(y,k)=>function(x,...P){if(P.lengthk.maxArgs)throw new Error(`Expected at most ${k.maxArgs} ${c(k.maxArgs)} for ${y}(), got ${P.length}`);return new Promise((O,v)=>{if(k.fallbackToNoCallback)try{x[y](...P,s({resolve:O,reject:v},k))}catch{x[y](...P),k.fallbackToNoCallback=!1,k.noCallback=!0,O()}else k.noCallback?(x[y](...P),O()):x[y](...P,s({resolve:O,reject:v},k))})},g=(y,k,L)=>new Proxy(k,{apply(x,P,O){return L.call(P,y,...O)}}),m=Function.call.bind(Object.prototype.hasOwnProperty),f=(y,k={},L={})=>{let x=Object.create(null),P={has(v,R){return R in y||R in x},get(v,R,J){if(R in x)return x[R];if(!(R in y))return;let N=y[R];if(typeof N=="function")if(typeof k[R]=="function")N=g(y,y[R],k[R]);else if(m(L,R)){let pe=d(R,L[R]);N=g(y,y[R],pe)}else N=N.bind(y);else if(typeof N=="object"&&N!==null&&(m(k,R)||m(L,R)))N=f(N,k[R],L[R]);else if(m(L,"*"))N=f(N,k[R],L["*"]);else return Object.defineProperty(x,R,{configurable:!0,enumerable:!0,get(){return y[R]},set(pe){y[R]=pe}}),N;return x[R]=N,N},set(v,R,J,N){return R in x?x[R]=J:y[R]=J,!0},defineProperty(v,R,J){return Reflect.defineProperty(x,R,J)},deleteProperty(v,R){return Reflect.deleteProperty(x,R)}},O=Object.create(y);return new Proxy(O,P)},C=y=>({addListener(k,L,...x){k.addListener(y.get(L),...x)},hasListener(k,L){return k.hasListener(y.get(L))},removeListener(k,L){k.removeListener(y.get(L))}}),T=new i(y=>typeof y!="function"?y:function(L){let x=f(L,{},{getContent:{minArgs:0,maxArgs:0}});y(x)}),p=new i(y=>typeof y!="function"?y:function(L,x,P){let O=!1,v,R=new Promise(fe=>{v=function(_e){O=!0,fe(_e)}}),J;try{J=y(L,x,v)}catch(fe){J=Promise.reject(fe)}let N=J!==!0&&l(J);if(J!==!0&&!N&&!O)return!1;let pe=fe=>{fe.then(_e=>{P(_e)},_e=>{let z;_e&&(_e instanceof Error||typeof _e.message=="string")?z=_e.message:z="An unexpected error occurred",P({__mozWebExtensionPolyfillReject__:!0,message:z})}).catch(_e=>{})};return pe(N?J:R),!0}),w=({reject:y,resolve:k},L)=>{r.runtime.lastError?r.runtime.lastError.message===a?k():y(new Error(r.runtime.lastError.message)):L&&L.__mozWebExtensionPolyfillReject__?y(new Error(L.message)):k(L)},F=(y,k,L,...x)=>{if(x.lengthk.maxArgs)throw new Error(`Expected at most ${k.maxArgs} ${c(k.maxArgs)} for ${y}(), got ${x.length}`);return new Promise((P,O)=>{let v=w.bind(null,{resolve:P,reject:O});x.push(v),L.sendMessage(...x)})},S={devtools:{network:{onRequestFinished:C(T)}},runtime:{onMessage:C(p),onMessageExternal:C(p),sendMessage:F.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:F.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},A={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return o.privacy={network:{"*":A},services:{"*":A},websites:{"*":A}},f(r,S,o)};n.exports=u(chrome)}else n.exports=globalThis.browser})}}),Tl={};ep(Tl,{default:()=>Iu});var np=El(yl());tp(Tl,El(yl()));var{default:hl,...ap}=np,Iu=hl!==void 0?hl:ap;globalThis.immersiveTranslateBrowserAPI=Iu;var qu,he,kl,up,Qa,xl,Al,Uu={},Sl=[],rp=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function wn(e,t){for(var n in t)e[n]=t[n];return e}function Dl(e){var t=e.parentNode;t&&t.removeChild(e)}function Ll(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?qu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return ju(e,o,a,u,null)}function ju(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++kl};return u==null&&he.vnode!=null&&he.vnode(r),r}function tn(e){return e.children}function zu(e,t){this.props=e,this.context=t}function ma(e,t){if(t==null)return e.__?ma(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?ju(m.type,m.props,m.key,m.ref?m.ref:null,m.__v):m)!=null){if(m.__=n,m.__b=n.__b+1,(g=p[c])===null||g&&m.key==g.key&&m.type===g.type)p[c]=void 0;else for(d=0;d=n.__.length&&n.__.push({__V:$u}),n.__[e]}function ye(e){return eu=1,lp(Gl,e)}function lp(e,t,n){var a=Gu(tu++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):Gl(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=We,!We.u)){We.u=!0;var u=We.shouldComponentUpdate;We.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var l=a.__c.__H.__.filter(function(c){return c.__c});if(l.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var s=!1;return l.forEach(function(c){if(c.__N){var d=c.__[0];c.__=c.__N,c.__N=void 0,d!==c.__[0]&&(s=!0)}}),!!s&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function Ze(e,t){var n=Gu(tu++,3);!he.__s&&Kl(n.__H,t)&&(n.__=e,n.i=t,We.__H.__h.push(n))}function h0(e){return eu=5,$l(function(){return{current:e}},[])}function $l(e,t){var n=Gu(tu++,7);return Kl(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function qn(e,t){return eu=8,$l(function(){return e},t)}function b0(e){var t=We.context[e.__c],n=Gu(tu++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(We)),t.props.value):e.__}function cp(){for(var e;e=ql.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Ku),e.__H.__h.forEach(f0),e.__H.__h=[]}catch(t){e.__H.__h=[],he.__e(t,e.__v)}}he.__b=function(e){typeof e.type!="function"||e.o||e.type===tn?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),We=null,Il&&Il(e)},he.__r=function(e){jl&&jl(e),tu=0;var t=(We=e.__c).__H;t&&(p0===We?(t.__h=[],We.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=$u,n.__N=n.i=void 0})):(t.__h.forEach(Ku),t.__h.forEach(f0),t.__h=[])),p0=We},he.diffed=function(e){zl&&zl(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(ql.push(t)!==1&&Nl===he.requestAnimationFrame||((Nl=he.requestAnimationFrame)||dp)(cp)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==$u&&(n.__=n.__V),n.i=void 0,n.__V=$u})),p0=We=null},he.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Ku),n.__h=n.__h.filter(function(a){return!a.__||f0(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],he.__e(a,n.__v)}}),Ul&&Ul(e,t)},he.unmount=function(e){Hl&&Hl(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Ku(a)}catch(u){t=u}}),n.__H=void 0,t&&he.__e(t,n.__v))};var Wl=typeof requestAnimationFrame=="function";function dp(e){var t,n=function(){clearTimeout(a),Wl&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);Wl&&(t=requestAnimationFrame(n))}function Ku(e){var t=We,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),We=t}function f0(e){var t=We;e.__c=e.__(),We=t}function Kl(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function Gl(e,t){return typeof t=="function"?t(e):t}function Vu(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let s of r){let d=n[s].matches;for(let g of d)u[g]||(u[g]=[]),u[g].push(s)}let o=u[e];if(o&&o.length>0)for(let s of o)n[s].matches.indexOf(e)>-1&&(n[s]={...n[s],matches:n[s].matches.filter(d=>d!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let l=Array.from(i);return{...n,[t]:{...n[t],matches:l}}}var E0=/iPhone/i,Vl=/iPod/i,Jl=/iPad/i,Yl=/\biOS-universal(?:.+)Mac\b/i,y0=/\bAndroid(?:.+)Mobile\b/i,Xl=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ju=/Silk/i,gn=/Windows Phone/i,Zl=/\bWindows(?:.+)ARM\b/i,Ql=/BlackBerry/i,e4=/BB10/i,t4=/Opera Mini/i,n4=/\b(CriOS|Chrome)(?:.+)Mobile/i,a4=/Mobile(?:.+)Firefox\b/i,u4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function gp(e){return t=>t.test(e)}function nu(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=gp(n),r={apple:{phone:u(E0)&&!u(gn),ipod:u(Vl),tablet:!u(E0)&&(u(Jl)||u4(t))&&!u(gn),universal:u(Yl),device:(u(E0)||u(Vl)||u(Jl)||u(Yl)||u4(t))&&!u(gn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(Ju),device:u(fa)||u(Ju)},android:{phone:!u(gn)&&u(fa)||!u(gn)&&u(y0),tablet:!u(gn)&&!u(fa)&&!u(y0)&&(u(Ju)||u(Xl)),device:!u(gn)&&(u(fa)||u(Ju)||u(y0)||u(Xl))||u(/\bokhttp\b/i)},windows:{phone:u(gn),tablet:u(Zl),device:u(gn)||u(Zl)},other:{blackberry:u(Ql),blackberry10:u(e4),opera:u(t4),firefox:u(a4),chrome:u(n4),device:u(Ql)||u(e4)||u(t4)||u(a4)||u(n4)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var T0="DENO",Yu="CHROME",Xu="FIREFOX";function r4(e){let t=Yu;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Xu:/deno/i.test(n)&&(t=T0)}catch{}return e===Yu&&t===Yu||e===Xu&&t===Xu||e===T0&&t===T0}function o4(){return r4(Yu)}function i4(){return typeof Deno<"u"}function ha(){return r4(Xu)}function s4(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function au(){return!!globalThis.matchMedia("(pointer:fine)").matches}var l4={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},c4={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:l4,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:l4,query:()=>{},sendMessage:()=>{}}};var j;i4()?j=c4:j=globalThis.immersiveTranslateBrowserAPI;var d4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var g4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var m4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var hp=[{code:"zh-CN",messages:d4},{code:"zh-TW",messages:g4},{code:"en",messages:m4}],mn="immersiveTranslateDeeplGlobalState",Zu="immersiveTranslateBingGlobalState",Rt={};for(let e of hp)Rt[e.code]=e.messages;var $n="Immersive Translate",W="immersive-translate",Qu="pdf/index.html",f4="html/index.html",h4="subtitle/index.html";var se="immersiveTranslate";var _b=se+"GoogleAccessToken",Bb=se+"AuthFlow";var Rb=se+"AuthState",er=se+"IframeMessage",Ob=se+"WaitForRateLimit",b4=se+"DocumentMessageAsk",Et=se+"DocumentMessageTellThirdParty",E4=se+"DocumentMessageThirdPartyTell",bp=se+"DocumentMessageHandler",Ep=`${se}Container`,y4=`${se}SpecifiedContainer`,vn="buildinConfig",uu="localConfig",x0="openOptionsPage",C0="openAboutPage";var w0="openEbookViewer",v0="openEbookBuilder";var tr=`${se}PageTranslatedStatus`,Nb=`${se}PageUrlChanged`,kn=`${se}ReceiveCommand`,T4=se+"LastUseMouseHoverTime",x4=se+"LastUseInputTime",pn=se+"LastUseManualTranslatePageTime",ru=`${se}PopupReceiveMessage`,yp="immersivetranslate.com",Tp="config.immersivetranslate.com",Ib=`https://${yp}/`,ou=`https://${Tp}/default_config.json`,jb=`${se}Mark`,iu="immersiveTranslateEffect",St=`${se}Root`,zb=`data-${W}-effect`,nn=`data-${W}-translation-element-mark`,C4=`${se}TranslationElementMark`,Ub=`${se}TranslatedMark`,Hb=`${se}ParagraphId`,w4=`${se}LoadingId`,k0=`data-${W}-loading-id`,v4=`${se}ErrorId`,nr=`data-${W}-error-id`,xp=`${se}AtomicBlockMark`,k4=`${se}ExcludeMark`,Wb=`data-${W}-exclude-mark`,Cp=`${se}StayOriginalMark`,qb=`${se}PreWhitespaceMark`,ar=`${se}InlineMark`,A4=`${se}BlockMark`,$b=`${se}Left`,Kb=`${se}Right`,Gb=`${se}Width`,Vb=`${se}Height`,Jb=`${se}Top`,Yb=`${se}FontSize`,S4="lastRunTime",Xb=`${se}GlobalStyleMark`,ur=["@","#"],rr=" --- ",D4=` +`,Ot=`${W}-target-wrapper`,Zb=`${W}-pdf-target-container`,L4=`${W}-target-inner`,Qb=`${W}-source-wrapper`,A0=`${W}-target-translation-block-wrapper`,eE=`${W}-root-translation-theme`,ba=`${se}RootTranslationTheme`,P4=`${W}-target-translation-vertical-block-wrapper`,F4=`${W}-target-translation-pdf-block-wrapper`,M4=`${W}-target-translation-pre-whitespace`,S0=`${W}-target-translation-inline-wrapper`;var _4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Nt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],B4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},R4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},O4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var N4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var or="zh-CN";var p4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...c4,{type:"password",name:"apikey",required:!0}],props:c4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},S0={type:se+"ChildFrameToRootFrameIdentifier"},ir=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var B4='';function R4(e){let t=j.runtime.getURL(Qu),n=new URL(t);return(e.startsWith("http")||!ha())&&n.searchParams.set("file",e),n.href}function Ea(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var D0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function sr(e,t){let n=Ea(),a=setTimeout(()=>n.reject(new D0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function su(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(s),r(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var O4=class{#e=0;#t=[];#n=[];#a=Ea();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tWp,bgBlue:()=>Gp,bgBrightBlack:()=>Xp,bgBrightBlue:()=>tf,bgBrightCyan:()=>af,bgBrightGreen:()=>Qp,bgBrightMagenta:()=>nf,bgBrightRed:()=>Zp,bgBrightWhite:()=>uf,bgBrightYellow:()=>ef,bgCyan:()=>Jp,bgGreen:()=>$p,bgMagenta:()=>Vp,bgRed:()=>qp,bgRgb24:()=>lf,bgRgb8:()=>of,bgWhite:()=>Yp,bgYellow:()=>Kp,black:()=>Sp,blue:()=>Fp,bold:()=>Tp,brightBlack:()=>j4,brightBlue:()=>jp,brightCyan:()=>Up,brightGreen:()=>Np,brightMagenta:()=>zp,brightRed:()=>Op,brightWhite:()=>Hp,brightYellow:()=>Ip,cyan:()=>_p,dim:()=>xp,getColorEnabled:()=>Ep,gray:()=>Rp,green:()=>Lp,hidden:()=>kp,inverse:()=>vp,italic:()=>Cp,magenta:()=>Mp,red:()=>Dp,reset:()=>yp,rgb24:()=>sf,rgb8:()=>rf,setColorEnabled:()=>bp,strikethrough:()=>Ap,stripColor:()=>df,underline:()=>wp,white:()=>Bp,yellow:()=>Pp});var{Deno:N4}=globalThis,I4=typeof N4?.noColor=="boolean"?N4.noColor:!0,L0=!I4;function bp(e){I4||(L0=e)}function Ep(){return L0}function le(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function ce(e,t){return L0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function yp(e){return ce(e,le([0],0))}function Tp(e){return ce(e,le([1],22))}function xp(e){return ce(e,le([2],22))}function Cp(e){return ce(e,le([3],23))}function wp(e){return ce(e,le([4],24))}function vp(e){return ce(e,le([7],27))}function kp(e){return ce(e,le([8],28))}function Ap(e){return ce(e,le([9],29))}function Sp(e){return ce(e,le([30],39))}function Dp(e){return ce(e,le([31],39))}function Lp(e){return ce(e,le([32],39))}function Pp(e){return ce(e,le([33],39))}function Fp(e){return ce(e,le([34],39))}function Mp(e){return ce(e,le([35],39))}function _p(e){return ce(e,le([36],39))}function Bp(e){return ce(e,le([37],39))}function Rp(e){return j4(e)}function j4(e){return ce(e,le([90],39))}function Op(e){return ce(e,le([91],39))}function Np(e){return ce(e,le([92],39))}function Ip(e){return ce(e,le([93],39))}function jp(e){return ce(e,le([94],39))}function zp(e){return ce(e,le([95],39))}function Up(e){return ce(e,le([96],39))}function Hp(e){return ce(e,le([97],39))}function Wp(e){return ce(e,le([40],49))}function qp(e){return ce(e,le([41],49))}function $p(e){return ce(e,le([42],49))}function Kp(e){return ce(e,le([43],49))}function Gp(e){return ce(e,le([44],49))}function Vp(e){return ce(e,le([45],49))}function Jp(e){return ce(e,le([46],49))}function Yp(e){return ce(e,le([47],49))}function Xp(e){return ce(e,le([100],49))}function Zp(e){return ce(e,le([101],49))}function Qp(e){return ce(e,le([102],49))}function ef(e){return ce(e,le([103],49))}function tf(e){return ce(e,le([104],49))}function nf(e){return ce(e,le([105],49))}function af(e){return ce(e,le([106],49))}function uf(e){return ce(e,le([107],49))}function An(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function rf(e,t){return ce(e,le([38,5,An(t)],39))}function of(e,t){return ce(e,le([48,5,An(t)],49))}function sf(e,t){return typeof t=="number"?ce(e,le([38,2,t>>16&255,t>>8&255,t&255],39)):ce(e,le([38,2,An(t.r),An(t.g),An(t.b)],39))}function lf(e,t){return typeof t=="number"?ce(e,le([48,2,t>>16&255,t>>8&255,t&255],49)):ce(e,le([48,2,An(t.r),An(t.g),An(t.b)],49))}var cf=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function df(e){return e.replace(cf,"")}var P0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},gf={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function F0(e,t){let n={...gf,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new P0(u,n.maxAttempts)}var HE=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var lr=globalThis||(typeof window<"u"?window:self),pf=Object.create,_0=Object.defineProperty,ff=Object.getOwnPropertyDescriptor,hf=Object.getOwnPropertyNames,bf=Object.getPrototypeOf,Ef=Object.prototype.hasOwnProperty,yf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Tf=(e,t)=>{for(var n in t)_0(e,n,{get:t[n],enumerable:!0})},M0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of hf(t))!Ef.call(e,u)&&u!==n&&_0(e,u,{get:()=>t[u],enumerable:!(a=ff(t,u))||a.enumerable});return e},xf=(e,t,n)=>(M0(e,t,"default"),n&&M0(n,t,"default")),U4=(e,t,n)=>(n=e!=null?pf(bf(e)):{},M0(t||!e||!e.__esModule?_0(n,"default",{value:e,enumerable:!0}):n,e)),H4=yf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof lr=="object"&&lr&&lr.Object===Object&&lr,d=typeof self=="object"&&self&&self.Object===Object&&self,g=c||d||Function("return this")(),m=Object.prototype,f=m.toString,v=Math.max,T=Math.min,p=function(){return g.Date.now()};function C(D,x,L){var O,w,R,J,N,pe,fe=0,_e=!1,z=!1,Te=!0;if(typeof D!="function")throw new TypeError(n);x=k(x)||0,S(L)&&(_e=!!L.leading,z="maxWait"in L,R=z?v(k(L.maxWait)||0,x):R,Te="trailing"in L?!!L.trailing:Te);function Z(ee){var oe=O,ge=w;return O=w=void 0,fe=ee,J=D.apply(ge,oe),J}function b(ee){return fe=ee,N=setTimeout(ae,x),_e?Z(ee):J}function _(ee){var oe=ee-pe,ge=ee-fe,X=x-oe;return z?T(X,R-ge):X}function K(ee){var oe=ee-pe,ge=ee-fe;return pe===void 0||oe>=x||oe<0||z&&ge>=R}function ae(){var ee=p();if(K(ee))return Y(ee);N=setTimeout(ae,_(ee))}function Y(ee){return N=void 0,Te&&O?Z(ee):(O=w=void 0,J)}function Se(){N!==void 0&&clearTimeout(N),fe=0,O=pe=w=N=void 0}function te(){return N===void 0?J:Y(p())}function Ce(){var ee=p(),oe=K(ee);if(O=arguments,w=this,pe=ee,oe){if(N===void 0)return b(pe);if(z)return N=setTimeout(ae,x),Z(pe)}return N===void 0&&(N=setTimeout(ae,x)),J}return Ce.cancel=Se,Ce.flush=te,Ce}function F(D,x,L){var O=!0,w=!0;if(typeof D!="function")throw new TypeError(n);return S(L)&&(O="leading"in L?!!L.leading:O,w="trailing"in L?!!L.trailing:w),C(D,x,{leading:O,maxWait:x,trailing:w})}function S(D){var x=typeof D;return!!D&&(x=="object"||x=="function")}function A(D){return!!D&&typeof D=="object"}function y(D){return typeof D=="symbol"||A(D)&&f.call(D)==u}function k(D){if(typeof D=="number")return D;if(y(D))return a;if(S(D)){var x=typeof D.valueOf=="function"?D.valueOf():D;D=S(x)?x+"":x}if(typeof D!="string")return D===0?D:+D;D=D.replace(r,"");var L=i.test(D);return L||s.test(D)?l(D.slice(2),L?2:8):o.test(D)?a:+D}t.exports=F}),W4={};Tf(W4,{default:()=>gt});var Cf=U4(H4());xf(W4,U4(H4()));var{default:z4,...wf}=Cf,gt=z4!==void 0?z4:wf;var vf=Object.create,R0=Object.defineProperty,kf=Object.getOwnPropertyDescriptor,Af=Object.getOwnPropertyNames,Sf=Object.getPrototypeOf,Df=Object.prototype.hasOwnProperty,Lf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Pf=(e,t)=>{for(var n in t)R0(e,n,{get:t[n],enumerable:!0})},B0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Af(t))!Df.call(e,u)&&u!==n&&R0(e,u,{get:()=>t[u],enumerable:!(a=kf(t,u))||a.enumerable});return e},Ff=(e,t,n)=>(B0(e,t,"default"),n&&B0(n,t,"default")),$4=(e,t,n)=>(n=e!=null?vf(Sf(e)):{},B0(t||!e||!e.__esModule?R0(n,"default",{value:e,enumerable:!0}):n,e)),K4=Lf((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){l(a)==="object"&&l(r)==="object"?r.exports=d():(i=[],o=d,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(r.exports=s))})(void 0,function(){return function(c){function d(m){if(g[m])return g[m].exports;var f=g[m]={i:m,l:!1,exports:{}};return c[m].call(f.exports,f,f.exports,d),f.l=!0,f.exports}var g={};return d.m=c,d.c=g,d.i=function(m){return m},d.d=function(m,f,v){d.o(m,f)||Object.defineProperty(m,f,{configurable:!1,enumerable:!0,get:v})},d.n=function(m){var f=m&&m.__esModule?function(){return m.default}:function(){return m};return d.d(f,"a",f),f},d.o=function(m,f){return Object.prototype.hasOwnProperty.call(m,f)},d.p="",d(d.s=0)}([function(c,d,g){function m(b,_){var K={};for(var ae in b)_.indexOf(ae)>=0||Object.prototype.hasOwnProperty.call(b,ae)&&(K[ae]=b[ae]);return K}Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},v=Object.assign||function(b){for(var _=1;_'+ae+"",ge.onclick=function(){return w(X,oe)},ge.listener=function(W){(x(W)||L(W))&&N()},O(ge,oe),Se&&Se<1&&(Se=1),!Ce&&Se&&S(Se).then(function(){return w(X,oe)})},fe=d.force=function(b,_){var K=b.type,ae=K===void 0?5:K,Y=b.text,Se=b.buttonText,te=Se===void 0?"OK":Se,Ce=b.callback,ee=b.position,oe=ee===void 0?p.positions.force||oe.top:ee;A(),N();var ge=document.createElement("div"),X=y();ge.id=X;var W=document.createElement("div");W.classList.add(p.classes.textbox),W.classList.add(p.classes.backgroundInfo),W.innerHTML='
'+Y+"
";var ne=document.createElement("div");ne.classList.add(p.classes.button),ne.classList.add(k[ae]),ne.innerHTML=te,ne.onclick=function(){w(X,oe),J(),Ce?Ce():_&&_()},ge.appendChild(W),ge.appendChild(ne),ge.listener=function(Pe){x(Pe)&&ne.click()},O(ge,oe),R()},_e=d.confirm=function(b,_,K){var ae=b.text,Y=b.submitText,Se=Y===void 0?"Yes":Y,te=b.cancelText,Ce=te===void 0?"Cancel":te,ee=b.submitCallback,oe=b.cancelCallback,ge=b.position,X=ge===void 0?p.positions.confirm||X.top:ge;A(),N();var W=document.createElement("div"),ne=y();W.id=ne;var Pe=document.createElement("div");Pe.classList.add(p.classes.textbox),Pe.classList.add(p.classes.backgroundInfo),Pe.innerHTML='
'+ae+"
";var De=document.createElement("div");De.classList.add(p.classes.button),De.classList.add(p.classes.elementHalf),De.classList.add(p.classes.backgroundSuccess),De.innerHTML=Se,De.onclick=function(){w(ne,X),J(),ee?ee():_&&_()};var ue=document.createElement("div");ue.classList.add(p.classes.button),ue.classList.add(p.classes.elementHalf),ue.classList.add(p.classes.backgroundError),ue.innerHTML=Ce,ue.onclick=function(){w(ne,X),J(),oe?oe():K&&K()},W.appendChild(Pe),W.appendChild(De),W.appendChild(ue),W.listener=function(Ue){x(Ue)?De.click():L(Ue)&&ue.click()},O(W,X),R(W,X)},z=function(b,_,K){var ae=b.text,Y=b.submitText,Se=Y===void 0?"Submit":Y,te=b.cancelText,Ce=te===void 0?"Cancel":te,ee=b.submitCallback,oe=b.cancelCallback,ge=b.position,X=ge===void 0?p.positions.input||X.top:ge,W=m(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);A(),N();var ne=document.createElement("div"),Pe=y();ne.id=Pe;var De=document.createElement("div");De.classList.add(p.classes.textbox),De.classList.add(p.classes.backgroundInfo),De.innerHTML='
'+ae+"
";var ue=document.createElement("input");ue.classList.add(p.classes.inputField),ue.setAttribute("autocapitalize",W.autocapitalize||"none"),ue.setAttribute("autocomplete",W.autocomplete||"off"),ue.setAttribute("autocorrect",W.autocorrect||"off"),ue.setAttribute("autofocus",W.autofocus||"true"),ue.setAttribute("inputmode",W.inputmode||"verbatim"),ue.setAttribute("max",W.max||""),ue.setAttribute("maxlength",W.maxlength||""),ue.setAttribute("min",W.min||""),ue.setAttribute("minlength",W.minlength||""),ue.setAttribute("placeholder",W.placeholder||""),ue.setAttribute("spellcheck",W.spellcheck||"default"),ue.setAttribute("step",W.step||"any"),ue.setAttribute("type",W.type||"text"),ue.value=W.value||"",W.allowed&&(ue.oninput=function(){var Be=void 0;if(Array.isArray(W.allowed)){for(var Re="",Oe=W.allowed,kt=0;kt'+K+"",oe.appendChild(X),te.forEach(function(ne,Pe){var De=ne.type,ue=De===void 0?1:De,Ue=ne.text,nt=ne.handler,Be=document.createElement("div");Be.classList.add(k[ue]),Be.classList.add(p.classes.button),Be.classList.add(p.classes.selectChoice);var Re=te[Pe+1];Re&&!Re.type&&(Re.type=1),Re&&Re.type===ue&&Be.classList.add(p.classes.selectChoiceRepeated),Be.innerHTML=Ue,Be.onclick=function(){w(ge,ee),J(),nt()},oe.appendChild(Be)});var W=document.createElement("div");W.classList.add(p.classes.backgroundNeutral),W.classList.add(p.classes.button),W.innerHTML=Y,W.onclick=function(){w(ge,ee),J(),Se?Se():_&&_()},oe.appendChild(W),oe.listener=function(ne){L(ne)&&W.click()},O(oe,ee),R(oe,ee)},Z=d.date=function(b,_,K){var ae=b.value,Y=ae===void 0?new Date:ae,Se=b.submitText,te=Se===void 0?"OK":Se,Ce=b.cancelText,ee=Ce===void 0?"Cancel":Ce,oe=b.submitCallback,ge=b.cancelCallback,X=b.position,W=X===void 0?p.positions.date||W.top:X;A(),N();var ne="▾",Pe=document.createElement("div"),De=document.createElement("div"),ue=document.createElement("div"),Ue=function(we){Pe.innerHTML=p.dateMonths[we.getMonth()],De.innerHTML=we.getDate(),ue.innerHTML=we.getFullYear()},nt=function(we){var ke=new Date(Y.getFullYear(),Y.getMonth()+1,0).getDate(),Ft=we.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Ft)>ke&&(Ft=ke.toString()),we.target.textContent=Ft,Number(Ft)<1&&(Ft="1"),Y.setDate(Number(Ft))},Be=function(we){var ke=we.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);we.target.textContent=ke,Y.setFullYear(Number(ke))},Re=function(we){Ue(Y)},Oe=function(we){var ke=new Date(Y.getFullYear(),Y.getMonth()+we+1,0).getDate();Y.getDate()>ke&&Y.setDate(ke),Y.setMonth(Y.getMonth()+we),Ue(Y)},kt=function(we){Y.setDate(Y.getDate()+we),Ue(Y)},Cn=function(we){var ke=Y.getFullYear()+we;ke<0?Y.setFullYear(0):Y.setFullYear(Y.getFullYear()+we),Ue(Y)},He=document.createElement("div"),Qt=y();He.id=Qt;var qt=document.createElement("div");qt.classList.add(p.classes.backgroundInfo);var at=document.createElement("div");at.classList.add(p.classes.dateSelectorInner);var Pt=document.createElement("div");Pt.classList.add(p.classes.button),Pt.classList.add(p.classes.elementThird),Pt.classList.add(p.classes.dateSelectorUp),Pt.innerHTML=ne;var B=document.createElement("div");B.classList.add(p.classes.button),B.classList.add(p.classes.elementThird),B.classList.add(p.classes.dateSelectorUp),B.innerHTML=ne;var Q=document.createElement("div");Q.classList.add(p.classes.button),Q.classList.add(p.classes.elementThird),Q.classList.add(p.classes.dateSelectorUp),Q.innerHTML=ne,Pe.classList.add(p.classes.element),Pe.classList.add(p.classes.elementThird),Pe.innerHTML=p.dateMonths[Y.getMonth()],De.classList.add(p.classes.element),De.classList.add(p.classes.elementThird),De.setAttribute("contentEditable",!0),De.addEventListener("input",nt),De.addEventListener("blur",Re),De.innerHTML=Y.getDate(),ue.classList.add(p.classes.element),ue.classList.add(p.classes.elementThird),ue.setAttribute("contentEditable",!0),ue.addEventListener("input",Be),ue.addEventListener("blur",Re),ue.innerHTML=Y.getFullYear();var ve=document.createElement("div");ve.classList.add(p.classes.button),ve.classList.add(p.classes.elementThird),ve.innerHTML=ne;var be=document.createElement("div");be.classList.add(p.classes.button),be.classList.add(p.classes.elementThird),be.innerHTML=ne;var xe=document.createElement("div");xe.classList.add(p.classes.button),xe.classList.add(p.classes.elementThird),xe.innerHTML=ne,Pt.onclick=function(){return Oe(1)},B.onclick=function(){return kt(1)},Q.onclick=function(){return Cn(1)},ve.onclick=function(){return Oe(-1)},be.onclick=function(){return kt(-1)},xe.onclick=function(){return Cn(-1)};var je=document.createElement("div");je.classList.add(p.classes.button),je.classList.add(p.classes.elementHalf),je.classList.add(p.classes.backgroundSuccess),je.innerHTML=te,je.onclick=function(){w(Qt,W),J(),oe?oe(Y):_&&_(Y)};var it=document.createElement("div");it.classList.add(p.classes.button),it.classList.add(p.classes.elementHalf),it.classList.add(p.classes.backgroundError),it.innerHTML=ee,it.onclick=function(){w(Qt,W),J(),ge?ge(Y):K&&K(Y)},at.appendChild(Pt),at.appendChild(B),at.appendChild(Q),at.appendChild(Pe),at.appendChild(De),at.appendChild(ue),at.appendChild(ve),at.appendChild(be),at.appendChild(xe),qt.appendChild(at),He.appendChild(qt),He.appendChild(je),He.appendChild(it),He.listener=function(we){x(we)?je.click():L(we)&&it.click()},O(He,W),R(He,W)};d.default={alert:pe,force:fe,confirm:_e,input:z,select:Te,date:Z,setOptions:C,hideAlerts:N}}])})}).call(a,u(0)(n))}])})}),G4={};Pf(G4,{default:()=>cr});var Mf=$4(K4());Ff(G4,$4(K4()));var{default:q4,..._f}=Mf,cr=q4!==void 0?q4:_f;var O0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function N0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Z4(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function Bf(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Me.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Me.splice(0,Me.length),(t===93||t===224)&&(t=91),t in st){st[t]=!1;for(var a in nn)nn[a]===t&&(ze[a]=!1)}}function Wf(e){if(typeof e>"u")Object.keys(Ge).forEach(function(o){return delete Ge[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&I0(o)});else if(typeof e=="object")e.key&&I0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Z4(nn,s):[];Ge[d]=Ge[d].filter(function(m){var f=a?m.method===a:!0;return!(f&&m.scope===n&&Bf(m.mods,g))})}})};function J4(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in st)Object.prototype.hasOwnProperty.call(st,r)&&(!st[r]&&t.mods.indexOf(+r)>-1||st[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!st[16]&&!st[18]&&!st[17]&&!st[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Y4(e,t){var n=Ge["*"],a=e.keyCode||e.which||e.charCode;if(ze.filter.call(this,e)){if((a===93||a===224)&&(a=91),Me.indexOf(a)===-1&&a!==229&&Me.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var v=z0[f];e[f]&&Me.indexOf(v)===-1?Me.push(v):!e[f]&&Me.indexOf(v)>-1?Me.splice(Me.indexOf(v),1):f==="metaKey"&&e[f]&&Me.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Me=Me.slice(Me.indexOf(v))))}),a in st){st[a]=!0;for(var u in nn)nn[u]===a&&(ze[u]=!0);if(!n)return}for(var r in st)Object.prototype.hasOwnProperty.call(st,r)&&(st[r]=e[z0[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Me.indexOf(17)===-1&&Me.push(17),Me.indexOf(18)===-1&&Me.push(18),st[17]=!0,st[18]=!0);var o=du();if(n)for(var i=0;i-1}function ze(e,t,n){Me=[];var a=Q4(e),u=[],r="all",o=document,i=0,s=!1,l=!0,c="+",d=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(d=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=Z4(nn,e)),e=e[e.length-1],e=e==="*"?"*":gr(e),e in Ge||(Ge[e]=[]),Ge[e].push({keyup:s,keydown:l,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!qf(o)&&window&&(tc.push(o),N0(o,"keydown",function(g){Y4(g,o)},d),V4||(V4=!0,N0(window,"focus",function(){Me=[]},d)),N0(o,"keyup",function(g){Y4(g,o),Hf(g)},d))}function $f(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ge).forEach(function(n){var a=Ge[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var j0={getPressedKeyString:If,setScope:nc,getScope:du,deleteScope:Uf,getPressedKeyCodes:Nf,isPressed:zf,filter:jf,trigger:$f,unbind:Wf,keyMap:cu,modifier:nn,modifierMap:z0};for(dr in j0)Object.prototype.hasOwnProperty.call(j0,dr)&&(ze[dr]=j0[dr]);var dr;typeof document<"u"&&(X4=window.hotkeys,ze.noConflict=function(e){return e&&window.hotkeys===ze&&(window.hotkeys=X4),ze},window.hotkeys=ze);var X4;var Kf=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Gf=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Kf:{reset:()=>{},stop:()=>{}}}},U0=new Gf,Vf="poegempjloogba",Jf="ension://",Yf="me-";function gu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function sc(e){return e?e.PROD==="1":!0}function lc(e){return e?e.MOCK==="1":!1}function cc(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var Xf="rome-ext";function Zf(e,t){return t?e+(t-e%t):e}function Qf(e,t){return e.split(t).length-1}function e2(e){let t=Date.now(),n=1;for(let a of e)n+=Qf(a,"i");return Zf(t,n)}function t2(e,t){return Math.floor(Math.random()*(t-e+1))+e}var n2="extension",a2="chro";function u2(){return t2(1e6,1e8)}var ac="BrowserExt";function r2(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var uc="DeepL",rc="ension",o2="ch"+Xf+Jf+"cofdb"+Vf+"gkncekinflcnj";function dc(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",o2),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${uc}${ac}${rc}/${r||"1.1.1"} ${l}`)}else i.append("user-agent",`${uc}${ac}${rc}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function i2(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:e2(n)},id:u2()},o=dc({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${a2+Yf+n2},${t}`,headers:o,body:r2(r),method:"POST"}}function s2(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Kn={},Gn={};async function oc(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=gu(u);i||(i=gu(r)[1]);let s={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(s=await mr(e,t));let[l,c]=gu(s.refreshTokenExpiresAt);i=c,i||(i=gu(s.refreshTokenChecksAt)[1]);let d=s.refreshToken;if(Kn[d])return new Promise((g,m)=>{Kn[d].push((f,v)=>{f?m(f):g(v)})});Kn[d]=[];try{let g=await l2(d,t.onFetch),m={state:{...n,...s,...g},shouldUpdateRefreshToken:i};return Kn[d].forEach(f=>{f(null,m)}),delete Kn[d],m}catch(g){throw Kn[d].forEach(m=>{m(g)}),delete Kn[d],g}}async function mr(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Gn[e])return new Promise((u,r)=>{Gn[e].push((o,i)=>{o?r(o):u(i)})});try{Gn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return Gn[e].forEach(d=>{d(null,c)}),delete Gn[e],c}catch(u){throw Gn[e].forEach(r=>{r(u)}),delete Gn[e],u}}async function l2(e,t){if(!e)throw new Error("refreshToken is required");let n=sc(),a=lc();if(!n&&!a){await cc(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:dc({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=s2(r.access_token);if(r.expires_in){let i=new Date,s=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function ic(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(c2(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...i2({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},s=sc(),l=lc();if(!s&&!l)return await cc(50),{translations:u.map(m=>({text:"mock: "+m,detected_source_language:"EN"}))};let c=await n(i.url,i),d=JSON.parse(c.body),g=[];if(d.result&&d.result.texts)g=d.result.texts.map(m=>({text:m.text,detected_source_language:d.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function c2(e){let t=0;for(let n of e)t+=n.length;return t}async function d2(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await g2(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return U0.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){U0.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function g2(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var pr=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>d2({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await ic(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await ic(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw U0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=gu(e);if(t)n&&oc(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await oc(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var m2={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},mc={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},qe={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},yt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},Sn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},M=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=M.getVersionPrecision(e),u=M.getVersionPrecision(t),r=Math.max(a,u),o=0,i=M.map([e,t],s=>{let l=r-M.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return M.map(c.split("."),d=>new Array(20-d.length).join("0")+d).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return m2[e]}static getBrowserTypeByAlias(e){return mc[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,p2=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=M.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=M.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=M.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=M.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=M.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=M.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=M.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=M.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=M.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=M.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=M.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=M.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=M.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=M.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=M.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=M.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=M.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=M.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=M.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=M.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=M.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=M.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=M.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=M.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=M.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=M.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=M.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:M.getFirstMatch(a,e),version:M.getSecondMatch(a,e)}}}],f2=p2,h2=[{test:[/Roku\/DVP/],describe(e){let t=M.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:yt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=M.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:yt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=M.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=M.getWindowsVersionName(t);return{name:yt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:yt.iOS},n=M.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=M.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=M.getMacOSVersionName(t),a={name:yt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=M.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:yt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=M.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=M.getAndroidVersionName(t),a={name:yt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=M.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:yt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=M.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||M.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||M.getFirstMatch(/\bbb(\d+)/i,e);return{name:yt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=M.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:yt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=M.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:yt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:yt.Linux}}},{test:[/CrOS/],describe(){return{name:yt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=M.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:yt.PlayStation4,version:t}}}],b2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=M.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:qe.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:qe.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:qe.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:qe.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:qe.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:qe.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:qe.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=M.getFirstMatch(/(ipod|iphone)/i,e);return{type:qe.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:qe.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:qe.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:qe.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:qe.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:qe.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:qe.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:qe.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:qe.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:qe.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:qe.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:qe.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:qe.tv}}}],E2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:Sn.Blink};let t=M.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:Sn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:Sn.Trident},n=M.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:Sn.Presto},n=M.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:Sn.Gecko},n=M.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:Sn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:Sn.WebKit},n=M.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],y2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=M.find(f2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=M.find(h2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=M.find(b2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=M.find(E2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return M.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=M.find(r,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=M.find(r,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(u>0){let r=Object.keys(a),o=M.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=M.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(M.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},gc=y2,T2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new gc(e,t)}static parse(e){return new gc(e).getResult()}static get BROWSER_MAP(){return mc}static get ENGINE_MAP(){return Sn}static get OS_MAP(){return yt}static get PLATFORMS_MAP(){return qe}},fr=T2;var{entries:xc,setPrototypeOf:pc,isFrozen:x2,getPrototypeOf:C2,getOwnPropertyDescriptor:w2}=Object,{freeze:Tt,seal:Kt,create:v2}=Object,{apply:G0,construct:V0}=typeof Reflect<"u"&&Reflect;G0||(G0=function(e,t,n){return e.apply(t,n)});Tt||(Tt=function(e){return e});Kt||(Kt=function(e){return e});V0||(V0=function(e,t){return new e(...t)});var k2=jt(Array.prototype.forEach),fc=jt(Array.prototype.pop),mu=jt(Array.prototype.push),Er=jt(String.prototype.toLowerCase),H0=jt(String.prototype.toString),A2=jt(String.prototype.match),$t=jt(String.prototype.replace),S2=jt(String.prototype.indexOf),D2=jt(String.prototype.trim),Mt=jt(RegExp.prototype.test),pu=L2(TypeError);function jt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),B2=Kt(/\${[\w\W]*}/gm),R2=Kt(/^data-[\-\w.\u00B7-\uFFFF]/),O2=Kt(/^aria-[\-\w]+$/),Cc=Kt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),N2=Kt(/^(?:\w+script|data):/i),I2=Kt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),wc=Kt(/^html$/i),Tc=Object.freeze({__proto__:null,MUSTACHE_EXPR:M2,ERB_EXPR:_2,TMPLIT_EXPR:B2,DATA_ATTR:R2,ARIA_ATTR:O2,IS_ALLOWED_URI:Cc,IS_SCRIPT_OR_DATA:N2,ATTR_WHITESPACE:I2,DOCTYPE_NAME:wc}),j2=()=>typeof window>"u"?null:window,z2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function vc(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:j2(),t=h=>vc(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:g,trustedTypes:m}=e,f=s.prototype,v=hr(f,"cloneNode"),T=hr(f,"nextSibling"),p=hr(f,"childNodes"),C=hr(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let F,S="",{implementation:A,createNodeIterator:y,createDocumentFragment:k,getElementsByTagName:D}=u,{importNode:x}=n,L={};t.isSupported=typeof xc=="function"&&typeof C=="function"&&A&&A.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:O,ERB_EXPR:w,TMPLIT_EXPR:R,DATA_ATTR:J,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:pe,ATTR_WHITESPACE:fe}=Tc,{IS_ALLOWED_URI:_e}=Tc,z=null,Te=Ee({},[...hc,...W0,...q0,...$0,...bc]),Z=null,b=Ee({},[...Ec,...K0,...yc,...br]),_=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),K=null,ae=null,Y=!0,Se=!0,te=!1,Ce=!0,ee=!1,oe=!1,ge=!1,X=!1,W=!1,ne=!1,Pe=!1,De=!0,ue=!1,Ue="user-content-",nt=!0,Be=!1,Re={},Oe=null,kt=Ee({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Cn=null,He=Ee({},["audio","video","img","source","image","track"]),Qt=null,qt=Ee({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),at="http://www.w3.org/1998/Math/MathML",Pt="http://www.w3.org/2000/svg",B="http://www.w3.org/1999/xhtml",Q=B,ve=!1,be=null,xe=Ee({},[at,Pt,B],H0),je,it=["application/xhtml+xml","text/html"],we="text/html",ke,Ft=null,Rm=u.createElement("form"),Qs=function(h){return h instanceof RegExp||h instanceof Function},u0=function(h){if(!(Ft&&Ft===h)){if((!h||typeof h!="object")&&(h={}),h=ya(h),je=it.indexOf(h.PARSER_MEDIA_TYPE)===-1?je=we:je=h.PARSER_MEDIA_TYPE,ke=je==="application/xhtml+xml"?H0:Er,z="ALLOWED_TAGS"in h?Ee({},h.ALLOWED_TAGS,ke):Te,Z="ALLOWED_ATTR"in h?Ee({},h.ALLOWED_ATTR,ke):b,be="ALLOWED_NAMESPACES"in h?Ee({},h.ALLOWED_NAMESPACES,H0):xe,Qt="ADD_URI_SAFE_ATTR"in h?Ee(ya(qt),h.ADD_URI_SAFE_ATTR,ke):qt,Cn="ADD_DATA_URI_TAGS"in h?Ee(ya(He),h.ADD_DATA_URI_TAGS,ke):He,Oe="FORBID_CONTENTS"in h?Ee({},h.FORBID_CONTENTS,ke):kt,K="FORBID_TAGS"in h?Ee({},h.FORBID_TAGS,ke):{},ae="FORBID_ATTR"in h?Ee({},h.FORBID_ATTR,ke):{},Re="USE_PROFILES"in h?h.USE_PROFILES:!1,Y=h.ALLOW_ARIA_ATTR!==!1,Se=h.ALLOW_DATA_ATTR!==!1,te=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Ce=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ee=h.SAFE_FOR_TEMPLATES||!1,oe=h.WHOLE_DOCUMENT||!1,W=h.RETURN_DOM||!1,ne=h.RETURN_DOM_FRAGMENT||!1,Pe=h.RETURN_TRUSTED_TYPE||!1,X=h.FORCE_BODY||!1,De=h.SANITIZE_DOM!==!1,ue=h.SANITIZE_NAMED_PROPS||!1,nt=h.KEEP_CONTENT!==!1,Be=h.IN_PLACE||!1,_e=h.ALLOWED_URI_REGEXP||Cc,Q=h.NAMESPACE||B,_=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&Qs(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(_.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&Qs(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(_.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(_.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ee&&(Se=!1),ne&&(W=!0),Re&&(z=Ee({},[...bc]),Z=[],Re.html===!0&&(Ee(z,hc),Ee(Z,Ec)),Re.svg===!0&&(Ee(z,W0),Ee(Z,K0),Ee(Z,br)),Re.svgFilters===!0&&(Ee(z,q0),Ee(Z,K0),Ee(Z,br)),Re.mathMl===!0&&(Ee(z,$0),Ee(Z,yc),Ee(Z,br))),h.ADD_TAGS&&(z===Te&&(z=ya(z)),Ee(z,h.ADD_TAGS,ke)),h.ADD_ATTR&&(Z===b&&(Z=ya(Z)),Ee(Z,h.ADD_ATTR,ke)),h.ADD_URI_SAFE_ATTR&&Ee(Qt,h.ADD_URI_SAFE_ATTR,ke),h.FORBID_CONTENTS&&(Oe===kt&&(Oe=ya(Oe)),Ee(Oe,h.FORBID_CONTENTS,ke)),nt&&(z["#text"]=!0),oe&&Ee(z,["html","head","body"]),z.table&&(Ee(z,["tbody"]),delete K.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw pu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw pu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');F=h.TRUSTED_TYPES_POLICY,S=F.createHTML("")}else F===void 0&&(F=z2(m,a)),F!==null&&typeof S=="string"&&(S=F.createHTML(""));Tt&&Tt(h),Ft=h}},el=Ee({},["mi","mo","mn","ms","mtext"]),tl=Ee({},["foreignobject","desc","title","annotation-xml"]),Om=Ee({},["title","style","font","a","script"]),Ou=Ee({},W0);Ee(Ou,q0),Ee(Ou,P2);let r0=Ee({},$0);Ee(r0,F2);let Nm=function(h){let $=C(h);(!$||!$.tagName)&&($={namespaceURI:Q,tagName:"template"});let I=Er(h.tagName),Ae=Er($.tagName);return be[h.namespaceURI]?h.namespaceURI===Pt?$.namespaceURI===B?I==="svg":$.namespaceURI===at?I==="svg"&&(Ae==="annotation-xml"||el[Ae]):!!Ou[I]:h.namespaceURI===at?$.namespaceURI===B?I==="math":$.namespaceURI===Pt?I==="math"&&tl[Ae]:!!r0[I]:h.namespaceURI===B?$.namespaceURI===Pt&&!tl[Ae]||$.namespaceURI===at&&!el[Ae]?!1:!r0[I]&&(Om[I]||!Ou[I]):!!(je==="application/xhtml+xml"&&be[h.namespaceURI]):!1},da=function(h){mu(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},o0=function(h,$){try{mu(t.removed,{attribute:$.getAttributeNode(h),from:$})}catch{mu(t.removed,{attribute:null,from:$})}if($.removeAttribute(h),h==="is"&&!Z[h])if(W||ne)try{da($)}catch{}else try{$.setAttribute(h,"")}catch{}},nl=function(h){let $,I;if(X)h=""+h;else{let bt=A2(h,/^[\r\n\t ]+/);I=bt&&bt[0]}je==="application/xhtml+xml"&&Q===B&&(h=''+h+"");let Ae=F?F.createHTML(h):h;if(Q===B)try{$=new g().parseFromString(Ae,je)}catch{}if(!$||!$.documentElement){$=A.createDocument(Q,"template",null);try{$.documentElement.innerHTML=ve?S:Ae}catch{}}let Xe=$.body||$.documentElement;return h&&I&&Xe.insertBefore(u.createTextNode(I),Xe.childNodes[0]||null),Q===B?D.call($,oe?"html":"body")[0]:oe?$.documentElement:Xe},al=function(h){return y.call(h.ownerDocument||h,h,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Im=function(h){return h instanceof d&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Nu=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},dn=function(h,$,I){L[h]&&k2(L[h],Ae=>{Ae.call(t,$,I,Ft)})},ul=function(h){let $;if(dn("beforeSanitizeElements",h,null),Im(h))return da(h),!0;let I=ke(h.nodeName);if(dn("uponSanitizeElement",h,{tagName:I,allowedTags:z}),h.hasChildNodes()&&!Nu(h.firstElementChild)&&(!Nu(h.content)||!Nu(h.content.firstElementChild))&&Mt(/<[/\w]/g,h.innerHTML)&&Mt(/<[/\w]/g,h.textContent))return da(h),!0;if(!z[I]||K[I]){if(!K[I]&&ol(I)&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,I)||_.tagNameCheck instanceof Function&&_.tagNameCheck(I)))return!1;if(nt&&!Oe[I]){let Ae=C(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&Ae){let bt=Xe.length;for(let At=bt-1;At>=0;--At)Ae.insertBefore(v(Xe[At],!0),T(h))}}return da(h),!0}return h instanceof s&&!Nm(h)||(I==="noscript"||I==="noembed")&&Mt(/<\/no(script|embed)/i,h.innerHTML)?(da(h),!0):(ee&&h.nodeType===3&&($=h.textContent,$=$t($,O," "),$=$t($,w," "),$=$t($,R," "),h.textContent!==$&&(mu(t.removed,{element:h.cloneNode()}),h.textContent=$)),dn("afterSanitizeElements",h,null),!1)},rl=function(h,$,I){if(De&&($==="id"||$==="name")&&(I in u||I in Rm))return!1;if(!(Se&&!ae[$]&&Mt(J,$))&&!(Y&&Mt(N,$))){if(!Z[$]||ae[$]){if(!(ol(h)&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,h)||_.tagNameCheck instanceof Function&&_.tagNameCheck(h))&&(_.attributeNameCheck instanceof RegExp&&Mt(_.attributeNameCheck,$)||_.attributeNameCheck instanceof Function&&_.attributeNameCheck($))||$==="is"&&_.allowCustomizedBuiltInElements&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,I)||_.tagNameCheck instanceof Function&&_.tagNameCheck(I))))return!1}else if(!Qt[$]&&!Mt(_e,$t(I,fe,""))&&!(($==="src"||$==="xlink:href"||$==="href")&&h!=="script"&&S2(I,"data:")===0&&Cn[h])&&!(te&&!Mt(pe,$t(I,fe,"")))&&I)return!1}return!0},ol=function(h){return h.indexOf("-")>0},il=function(h){let $,I,Ae,Xe;dn("beforeSanitizeAttributes",h,null);let{attributes:bt}=h;if(!bt)return;let At={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Z};for(Xe=bt.length;Xe--;){$=bt[Xe];let{name:ut,namespaceURI:ga}=$;if(I=ut==="value"?$.value:D2($.value),Ae=ke(ut),At.attrName=Ae,At.attrValue=I,At.keepAttr=!0,At.forceKeepAttr=void 0,dn("uponSanitizeAttribute",h,At),I=At.attrValue,At.forceKeepAttr||(o0(ut,h),!At.keepAttr))continue;if(!Ce&&Mt(/\/>/i,I)){o0(ut,h);continue}ee&&(I=$t(I,O," "),I=$t(I,w," "),I=$t(I,R," "));let sl=ke(h.nodeName);if(rl(sl,Ae,I)){if(ue&&(Ae==="id"||Ae==="name")&&(o0(ut,h),I=Ue+I),F&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!ga)switch(m.getAttributeType(sl,Ae)){case"TrustedHTML":{I=F.createHTML(I);break}case"TrustedScriptURL":{I=F.createScriptURL(I);break}}try{ga?h.setAttributeNS(ga,ut,I):h.setAttribute(ut,I),fc(t.removed)}catch{}}}dn("afterSanitizeAttributes",h,null)},jm=function h($){let I,Ae=al($);for(dn("beforeSanitizeShadowDOM",$,null);I=Ae.nextNode();)dn("uponSanitizeShadowNode",I,null),!ul(I)&&(I.content instanceof r&&h(I.content),il(I));dn("afterSanitizeShadowDOM",$,null)};return t.sanitize=function(h){let $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},I,Ae,Xe,bt;if(ve=!h,ve&&(h=""),typeof h!="string"&&!Nu(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw pu("dirty is not a string, aborting")}else throw pu("toString is not a function");if(!t.isSupported)return h;if(ge||u0($),t.removed=[],typeof h=="string"&&(Be=!1),Be){if(h.nodeName){let ga=ke(h.nodeName);if(!z[ga]||K[ga])throw pu("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)I=nl(""),Ae=I.ownerDocument.importNode(h,!0),Ae.nodeType===1&&Ae.nodeName==="BODY"||Ae.nodeName==="HTML"?I=Ae:I.appendChild(Ae);else{if(!W&&!ee&&!oe&&h.indexOf("<")===-1)return F&&Pe?F.createHTML(h):h;if(I=nl(h),!I)return W?null:Pe?S:""}I&&X&&da(I.firstChild);let At=al(Be?h:I);for(;Xe=At.nextNode();)ul(Xe)||(Xe.content instanceof r&&jm(Xe.content),il(Xe));if(Be)return h;if(W){if(ne)for(bt=k.call(I.ownerDocument);I.firstChild;)bt.appendChild(I.firstChild);else bt=I;return(Z.shadowroot||Z.shadowrootmod)&&(bt=x.call(n,bt,!0)),bt}let ut=oe?I.outerHTML:I.innerHTML;return oe&&z["!doctype"]&&I.ownerDocument&&I.ownerDocument.doctype&&I.ownerDocument.doctype.name&&Mt(wc,I.ownerDocument.doctype.name)&&(ut=" -`+ut),ee&&(ut=$t(ut,O," "),ut=$t(ut,w," "),ut=$t(ut,R," ")),F&&Pe?F.createHTML(ut):ut},t.setConfig=function(h){u0(h),ge=!0},t.clearConfig=function(){Ft=null,ge=!1},t.isValidAttribute=function(h,$,I){Ft||u0({});let Ae=ke(h),Xe=ke($);return rl(Ae,Xe,I)},t.addHook=function(h,$){typeof $=="function"&&(L[h]=L[h]||[],mu(L[h],$))},t.removeHook=function(h){if(L[h])return fc(L[h])},t.removeHooks=function(h){L[h]&&(L[h]=[])},t.removeAllHooks=function(){L={}},t}var Le=vc();var Iy=cr.alert;var Ta=console,J0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=It.green;a>1e4?u=It.red:a>1e3&&(u=It.yellow),Ta.debug(It.dim($n+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},fu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&Ta.log(It.dim($n+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&Ta.log(It.green($n+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&Ta.warn(It.yellow($n+" WARN:"),...t)}error(...t){this.#e<=3&&Ta.error(It.red($n+" ERROR:"),...t)}fatal(...t){this.#e<=4&&Ta.error(It.red($n+" FATAL:"),...t)}timing(){return this.level===0?new J0:{reset:()=>{},stop:()=>{}}}},P=new fu;var kc=["*://*/*","*","*://*"],Sc="immersive-translate-wildcard-placeholder.com";function Y0(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>kc.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===r)return!0;if(kc.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===r:H2(u,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let T=i.split("://");l=T[0],l==="*"&&T.length>1&&(l="*",i="https://"+T[1])}else l="*",i="https://"+i;let d=i.replace(/\*/g,Sc),g;try{g=new URL(d)}catch{return P.debug("invalid match pattern",d,"raw match value:",c),!1}let m=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let v=U2(l+":",Ac(m),Ac(f));if(v){let T=new URL(u);return T.port="",v.test(T.href)}else return!1}});if(o)return o}return null}function Ac(e){return e.replaceAll(Sc,"*")}function U2(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function hn(e,t){return Y0(e,t)!==null}function H2(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}function X0(e){return Array.isArray(e)?e:e?[e]:[]}function Z0(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Dn(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function yr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let s=X0(i);u[o]=Array.from(new Set([...u[o],...s]))}else u[o]=X0(i)}),u}var xa="input is invalid type",Q0=typeof window=="object",Ln=Q0?window:{};Ln.JS_SHA256_NO_WINDOW&&(Q0=!1);var W2=!Q0&&typeof self=="object",q2=!Ln.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;q2?Ln=global:W2&&(Ln=self);var mT=!Ln.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,pT=typeof define=="function"&&define.amd,hu=!Ln.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",V="0123456789abcdef".split(""),$2=[-2147483648,8388608,32768,128],Gt=[24,16,8,0],Tr=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],xr=["hex","array","digest","arrayBuffer"],rt=[];(Ln.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});hu&&(Ln.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var Dc=function(e,t){return function(n){return new ot(t,!0).update(n)[e]()}},Pc=function(e){var t=Dc("hex",e);t.create=function(){return new ot(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};ot.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=$2[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};ot.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,d,g,m,f,v,T,p,C,F;for(l=16;l<64;++l)m=s[l-15],c=(m>>>7|m<<25)^(m>>>18|m<<14)^m>>>3,m=s[l-2],d=(m>>>17|m<<15)^(m>>>19|m<<13)^m>>>10,s[l]=s[l-16]+c+s[l-7]+d<<0;for(F=t&n,l=0;l<64;l+=4)this.first?(this.is224?(T=300032,m=s[0]-1413257819,i=m-150054599<<0,a=m+24177077<<0):(T=704751109,m=s[0]-210244248,i=m-1521486534<<0,a=m+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),d=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),T=e&t,g=T^e&n^F,v=u&r^~u&o,m=i+d+v+Tr[l]+s[l],f=c+g,i=a+m<<0,a=m+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),d=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,g=p^a&t^T,v=i&u^~i&r,m=o+d+v+Tr[l+1]+s[l+1],f=c+g,o=n+m<<0,n=m+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),d=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),C=n&a,g=C^n&e^p,v=o&i^~o&u,m=r+d+v+Tr[l+2]+s[l+2],f=c+g,r=t+m<<0,t=m+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),d=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),F=t&n,g=F^t&a^C,v=r&o^~r&i,m=u+d+v+Tr[l+3]+s[l+3],f=c+g,u=e+m<<0,e=m+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};ot.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=V[e>>28&15]+V[e>>24&15]+V[e>>20&15]+V[e>>16&15]+V[e>>12&15]+V[e>>8&15]+V[e>>4&15]+V[e&15]+V[t>>28&15]+V[t>>24&15]+V[t>>20&15]+V[t>>16&15]+V[t>>12&15]+V[t>>8&15]+V[t>>4&15]+V[t&15]+V[n>>28&15]+V[n>>24&15]+V[n>>20&15]+V[n>>16&15]+V[n>>12&15]+V[n>>8&15]+V[n>>4&15]+V[n&15]+V[a>>28&15]+V[a>>24&15]+V[a>>20&15]+V[a>>16&15]+V[a>>12&15]+V[a>>8&15]+V[a>>4&15]+V[a&15]+V[u>>28&15]+V[u>>24&15]+V[u>>20&15]+V[u>>16&15]+V[u>>12&15]+V[u>>8&15]+V[u>>4&15]+V[u&15]+V[r>>28&15]+V[r>>24&15]+V[r>>20&15]+V[r>>16&15]+V[r>>12&15]+V[r>>8&15]+V[r>>4&15]+V[r&15]+V[o>>28&15]+V[o>>24&15]+V[o>>20&15]+V[o>>16&15]+V[o>>12&15]+V[o>>8&15]+V[o>>4&15]+V[o&15];return this.is224||(s+=V[i>>28&15]+V[i>>24&15]+V[i>>20&15]+V[i>>16&15]+V[i>>12&15]+V[i>>8&15]+V[i>>4&15]+V[i&15]),s};ot.prototype.toString=ot.prototype.hex;ot.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};ot.prototype.array=ot.prototype.digest;ot.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function Cr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,s;for(a=0;a>6,r[i++]=128|s&63):s<55296||s>=57344?(r[i++]=224|s>>12,r[i++]=128|s>>6&63,r[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|s>>18,r[i++]=128|s>>12&63,r[i++]=128|s>>6&63,r[i++]=128|s&63);e=r}else if(u==="object"){if(e===null)throw new Error(xa);if(hu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!hu||!ArrayBuffer.isView(e)))throw new Error(xa)}else throw new Error(xa);e.length>64&&(e=new ot(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var d=e[a]||0;l[a]=92^d,c[a]=54^d}ot.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}Cr.prototype=new ot;Cr.prototype.finalize=function(){if(ot.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();ot.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),ot.prototype.finalize.call(this)}};var Ca=Pc();Ca.sha256=Ca;Ca.sha224=Pc(!0);Ca.sha256.hmac=Fc();Ca.sha224.hmac=Fc(!0);var Mc=Ca;var _c=Mc.sha256;function Vt(e){return Promise.resolve(_c(e))}function wr(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function Pn(e,t){let n=_c.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function Bc(e,t){let n=await Pn(e,t);return wr(n)}async function vr(e,t){let n=K2(t),a=await Pn(e,n);return wr(a)}function K2(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}function Ve(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var me=Ve();function ie(){return me.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function Rc(){return me.HAS_CSP_ERROR=="1"}function xt(){if(me.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function Oc(){return typeof Deno<"u"}var TT=Ve().PROD==="1",wa=Ve().PROD!=="1";function Nc(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function lt(){try{return globalThis.self!==globalThis.top}catch{return!0}}var kr=!1,G2=ie();function Ic(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function V2(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&jc(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Fn(r,ar)){if(u===!0)return!0;continue}if(bu(r.nodeName,t.inlineTags))return!0;if(!ei(r,t))return!1}}return!0}function ti(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(bu(e.nodeName,n)||ei(e,t)){if(Fn(e,C4)||bu(e.nodeName,["BR"]))return!1;if(Fn(e,ar))return!0;if(ei(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return V2(e,t)}else return Fn(e,ar);return!1}function jc(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Fn(e,x4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Fn(e,f4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||bu(e.nodeName,r))}function Ar(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!Uc(a)&&a.length>=n}function zc(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(Uc(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function Uc(e){for(let t=0;t127)return!1;return!0}function Hc(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function Wc(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function qc(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function $c(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Fn(e,t,n=!1){return ni(e,t,"1",n)}function ni(e,t,n,a=!1){return kr&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function va(e){return(e.innerText||e.textContent||"").trim()}function ai(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function Sr(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Je(e,t,n,a=!1){e.isContentEditable||(kr&&!a?(e.dataset[iu]||(e.dataset[iu]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[iu]||(e.dataset[iu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Dr(e,t,n=!1){if(kr&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function ka(e,t,n=!1){return kr&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function ei(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!bu(e.nodeName,n)}function Aa(e){let{config:t}=e,n=ur;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ct(){if(!globalThis||!globalThis.location)return"https://example.com";if(!lt())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Vn(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){P.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else P.warn("injectCSS failed, rootDocument does not have head node",e)}function Sa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(G2){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function bu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Kc(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function Gc(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||jc(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return P.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function Vc(e,t,n){let a=0,u=(r,o,i,s)=>{if(++a>100||s===r)return r;let l=r.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return r;let c=l.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}function Jn(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Nt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":Nt[u]}else return"auto";else return Nt[a]}var Lr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...p4,{type:"password",name:"apikey",required:!0}],props:p4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},D0={type:se+"ChildFrameToRootFrameIdentifier"},ir=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var I4='';function j4(e){let t=j.runtime.getURL(Qu),n=new URL(t);return(e.startsWith("http")||!ha())&&n.searchParams.set("file",e),n.href}function Ea(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var L0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function sr(e,t){let n=Ea(),a=setTimeout(()=>n.reject(new L0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function su(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(l),r(new DOMException("Delay was aborted.","AbortError"))},l=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(l)}catch(s){if(!(s instanceof ReferenceError))throw s}})}var z4=class{#e=0;#t=[];#n=[];#a=Ea();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tJp,bgBlue:()=>Qp,bgBrightBlack:()=>af,bgBrightBlue:()=>sf,bgBrightCyan:()=>cf,bgBrightGreen:()=>rf,bgBrightMagenta:()=>lf,bgBrightRed:()=>uf,bgBrightWhite:()=>df,bgBrightYellow:()=>of,bgCyan:()=>tf,bgGreen:()=>Xp,bgMagenta:()=>ef,bgRed:()=>Yp,bgRgb24:()=>ff,bgRgb8:()=>mf,bgWhite:()=>nf,bgYellow:()=>Zp,black:()=>_p,blue:()=>Np,bold:()=>Ap,brightBlack:()=>W4,brightBlue:()=>$p,brightCyan:()=>Gp,brightGreen:()=>Wp,brightMagenta:()=>Kp,brightRed:()=>Hp,brightWhite:()=>Vp,brightYellow:()=>qp,cyan:()=>jp,dim:()=>Sp,getColorEnabled:()=>vp,gray:()=>Up,green:()=>Rp,hidden:()=>Fp,inverse:()=>Pp,italic:()=>Dp,magenta:()=>Ip,red:()=>Bp,reset:()=>kp,rgb24:()=>pf,rgb8:()=>gf,setColorEnabled:()=>wp,strikethrough:()=>Mp,stripColor:()=>bf,underline:()=>Lp,white:()=>zp,yellow:()=>Op});var{Deno:U4}=globalThis,H4=typeof U4?.noColor=="boolean"?U4.noColor:!0,P0=!H4;function wp(e){H4||(P0=e)}function vp(){return P0}function le(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function ce(e,t){return P0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function kp(e){return ce(e,le([0],0))}function Ap(e){return ce(e,le([1],22))}function Sp(e){return ce(e,le([2],22))}function Dp(e){return ce(e,le([3],23))}function Lp(e){return ce(e,le([4],24))}function Pp(e){return ce(e,le([7],27))}function Fp(e){return ce(e,le([8],28))}function Mp(e){return ce(e,le([9],29))}function _p(e){return ce(e,le([30],39))}function Bp(e){return ce(e,le([31],39))}function Rp(e){return ce(e,le([32],39))}function Op(e){return ce(e,le([33],39))}function Np(e){return ce(e,le([34],39))}function Ip(e){return ce(e,le([35],39))}function jp(e){return ce(e,le([36],39))}function zp(e){return ce(e,le([37],39))}function Up(e){return W4(e)}function W4(e){return ce(e,le([90],39))}function Hp(e){return ce(e,le([91],39))}function Wp(e){return ce(e,le([92],39))}function qp(e){return ce(e,le([93],39))}function $p(e){return ce(e,le([94],39))}function Kp(e){return ce(e,le([95],39))}function Gp(e){return ce(e,le([96],39))}function Vp(e){return ce(e,le([97],39))}function Jp(e){return ce(e,le([40],49))}function Yp(e){return ce(e,le([41],49))}function Xp(e){return ce(e,le([42],49))}function Zp(e){return ce(e,le([43],49))}function Qp(e){return ce(e,le([44],49))}function ef(e){return ce(e,le([45],49))}function tf(e){return ce(e,le([46],49))}function nf(e){return ce(e,le([47],49))}function af(e){return ce(e,le([100],49))}function uf(e){return ce(e,le([101],49))}function rf(e){return ce(e,le([102],49))}function of(e){return ce(e,le([103],49))}function sf(e){return ce(e,le([104],49))}function lf(e){return ce(e,le([105],49))}function cf(e){return ce(e,le([106],49))}function df(e){return ce(e,le([107],49))}function An(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function gf(e,t){return ce(e,le([38,5,An(t)],39))}function mf(e,t){return ce(e,le([48,5,An(t)],49))}function pf(e,t){return typeof t=="number"?ce(e,le([38,2,t>>16&255,t>>8&255,t&255],39)):ce(e,le([38,2,An(t.r),An(t.g),An(t.b)],39))}function ff(e,t){return typeof t=="number"?ce(e,le([48,2,t>>16&255,t>>8&255,t&255],49)):ce(e,le([48,2,An(t.r),An(t.g),An(t.b)],49))}var hf=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function bf(e){return e.replace(hf,"")}var F0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},Ef={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function M0(e,t){let n={...Ef,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new F0(u,n.maxAttempts)}var KE=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var lr=globalThis||(typeof window<"u"?window:self),Tf=Object.create,B0=Object.defineProperty,xf=Object.getOwnPropertyDescriptor,Cf=Object.getOwnPropertyNames,wf=Object.getPrototypeOf,vf=Object.prototype.hasOwnProperty,kf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Af=(e,t)=>{for(var n in t)B0(e,n,{get:t[n],enumerable:!0})},_0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Cf(t))!vf.call(e,u)&&u!==n&&B0(e,u,{get:()=>t[u],enumerable:!(a=xf(t,u))||a.enumerable});return e},Sf=(e,t,n)=>(_0(e,t,"default"),n&&_0(n,t,"default")),$4=(e,t,n)=>(n=e!=null?Tf(wf(e)):{},_0(t||!e||!e.__esModule?B0(n,"default",{value:e,enumerable:!0}):n,e)),K4=kf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,l=/^0o[0-7]+$/i,s=parseInt,c=typeof lr=="object"&&lr&&lr.Object===Object&&lr,d=typeof self=="object"&&self&&self.Object===Object&&self,g=c||d||Function("return this")(),m=Object.prototype,f=m.toString,C=Math.max,T=Math.min,p=function(){return g.Date.now()};function w(L,x,P){var O,v,R,J,N,pe,fe=0,_e=!1,z=!1,Te=!0;if(typeof L!="function")throw new TypeError(n);x=k(x)||0,S(P)&&(_e=!!P.leading,z="maxWait"in P,R=z?C(k(P.maxWait)||0,x):R,Te="trailing"in P?!!P.trailing:Te);function Z(ee){var oe=O,ge=v;return O=v=void 0,fe=ee,J=L.apply(ge,oe),J}function b(ee){return fe=ee,N=setTimeout(ae,x),_e?Z(ee):J}function _(ee){var oe=ee-pe,ge=ee-fe,X=x-oe;return z?T(X,R-ge):X}function K(ee){var oe=ee-pe,ge=ee-fe;return pe===void 0||oe>=x||oe<0||z&&ge>=R}function ae(){var ee=p();if(K(ee))return Y(ee);N=setTimeout(ae,_(ee))}function Y(ee){return N=void 0,Te&&O?Z(ee):(O=v=void 0,J)}function De(){N!==void 0&&clearTimeout(N),fe=0,O=pe=v=N=void 0}function te(){return N===void 0?J:Y(p())}function Ce(){var ee=p(),oe=K(ee);if(O=arguments,v=this,pe=ee,oe){if(N===void 0)return b(pe);if(z)return N=setTimeout(ae,x),Z(pe)}return N===void 0&&(N=setTimeout(ae,x)),J}return Ce.cancel=De,Ce.flush=te,Ce}function F(L,x,P){var O=!0,v=!0;if(typeof L!="function")throw new TypeError(n);return S(P)&&(O="leading"in P?!!P.leading:O,v="trailing"in P?!!P.trailing:v),w(L,x,{leading:O,maxWait:x,trailing:v})}function S(L){var x=typeof L;return!!L&&(x=="object"||x=="function")}function A(L){return!!L&&typeof L=="object"}function y(L){return typeof L=="symbol"||A(L)&&f.call(L)==u}function k(L){if(typeof L=="number")return L;if(y(L))return a;if(S(L)){var x=typeof L.valueOf=="function"?L.valueOf():L;L=S(x)?x+"":x}if(typeof L!="string")return L===0?L:+L;L=L.replace(r,"");var P=i.test(L);return P||l.test(L)?s(L.slice(2),P?2:8):o.test(L)?a:+L}t.exports=F}),G4={};Af(G4,{default:()=>gt});var Df=$4(K4());Sf(G4,$4(K4()));var{default:q4,...Lf}=Df,gt=q4!==void 0?q4:Lf;var Pf=Object.create,O0=Object.defineProperty,Ff=Object.getOwnPropertyDescriptor,Mf=Object.getOwnPropertyNames,_f=Object.getPrototypeOf,Bf=Object.prototype.hasOwnProperty,Rf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Of=(e,t)=>{for(var n in t)O0(e,n,{get:t[n],enumerable:!0})},R0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Mf(t))!Bf.call(e,u)&&u!==n&&O0(e,u,{get:()=>t[u],enumerable:!(a=Ff(t,u))||a.enumerable});return e},Nf=(e,t,n)=>(R0(e,t,"default"),n&&R0(n,t,"default")),J4=(e,t,n)=>(n=e!=null?Pf(_f(e)):{},R0(t||!e||!e.__esModule?O0(n,"default",{value:e,enumerable:!0}):n,e)),Y4=Rf((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,l,s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,d){s(a)==="object"&&s(r)==="object"?r.exports=d():(i=[],o=d,l=typeof o=="function"?o.apply(a,i):o,l!==void 0&&(r.exports=l))})(void 0,function(){return function(c){function d(m){if(g[m])return g[m].exports;var f=g[m]={i:m,l:!1,exports:{}};return c[m].call(f.exports,f,f.exports,d),f.l=!0,f.exports}var g={};return d.m=c,d.c=g,d.i=function(m){return m},d.d=function(m,f,C){d.o(m,f)||Object.defineProperty(m,f,{configurable:!1,enumerable:!0,get:C})},d.n=function(m){var f=m&&m.__esModule?function(){return m.default}:function(){return m};return d.d(f,"a",f),f},d.o=function(m,f){return Object.prototype.hasOwnProperty.call(m,f)},d.p="",d(d.s=0)}([function(c,d,g){function m(b,_){var K={};for(var ae in b)_.indexOf(ae)>=0||Object.prototype.hasOwnProperty.call(b,ae)&&(K[ae]=b[ae]);return K}Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&s(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":s(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":s(b)},C=Object.assign||function(b){for(var _=1;_'+ae+"",ge.onclick=function(){return v(X,oe)},ge.listener=function(q){(x(q)||P(q))&&N()},O(ge,oe),De&&De<1&&(De=1),!Ce&&De&&S(De).then(function(){return v(X,oe)})},fe=d.force=function(b,_){var K=b.type,ae=K===void 0?5:K,Y=b.text,De=b.buttonText,te=De===void 0?"OK":De,Ce=b.callback,ee=b.position,oe=ee===void 0?p.positions.force||oe.top:ee;A(),N();var ge=document.createElement("div"),X=y();ge.id=X;var q=document.createElement("div");q.classList.add(p.classes.textbox),q.classList.add(p.classes.backgroundInfo),q.innerHTML='
'+Y+"
";var ne=document.createElement("div");ne.classList.add(p.classes.button),ne.classList.add(k[ae]),ne.innerHTML=te,ne.onclick=function(){v(X,oe),J(),Ce?Ce():_&&_()},ge.appendChild(q),ge.appendChild(ne),ge.listener=function(Pe){x(Pe)&&ne.click()},O(ge,oe),R()},_e=d.confirm=function(b,_,K){var ae=b.text,Y=b.submitText,De=Y===void 0?"Yes":Y,te=b.cancelText,Ce=te===void 0?"Cancel":te,ee=b.submitCallback,oe=b.cancelCallback,ge=b.position,X=ge===void 0?p.positions.confirm||X.top:ge;A(),N();var q=document.createElement("div"),ne=y();q.id=ne;var Pe=document.createElement("div");Pe.classList.add(p.classes.textbox),Pe.classList.add(p.classes.backgroundInfo),Pe.innerHTML='
'+ae+"
";var Le=document.createElement("div");Le.classList.add(p.classes.button),Le.classList.add(p.classes.elementHalf),Le.classList.add(p.classes.backgroundSuccess),Le.innerHTML=De,Le.onclick=function(){v(ne,X),J(),ee?ee():_&&_()};var ue=document.createElement("div");ue.classList.add(p.classes.button),ue.classList.add(p.classes.elementHalf),ue.classList.add(p.classes.backgroundError),ue.innerHTML=Ce,ue.onclick=function(){v(ne,X),J(),oe?oe():K&&K()},q.appendChild(Pe),q.appendChild(Le),q.appendChild(ue),q.listener=function(Ue){x(Ue)?Le.click():P(Ue)&&ue.click()},O(q,X),R(q,X)},z=function(b,_,K){var ae=b.text,Y=b.submitText,De=Y===void 0?"Submit":Y,te=b.cancelText,Ce=te===void 0?"Cancel":te,ee=b.submitCallback,oe=b.cancelCallback,ge=b.position,X=ge===void 0?p.positions.input||X.top:ge,q=m(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);A(),N();var ne=document.createElement("div"),Pe=y();ne.id=Pe;var Le=document.createElement("div");Le.classList.add(p.classes.textbox),Le.classList.add(p.classes.backgroundInfo),Le.innerHTML='
'+ae+"
";var ue=document.createElement("input");ue.classList.add(p.classes.inputField),ue.setAttribute("autocapitalize",q.autocapitalize||"none"),ue.setAttribute("autocomplete",q.autocomplete||"off"),ue.setAttribute("autocorrect",q.autocorrect||"off"),ue.setAttribute("autofocus",q.autofocus||"true"),ue.setAttribute("inputmode",q.inputmode||"verbatim"),ue.setAttribute("max",q.max||""),ue.setAttribute("maxlength",q.maxlength||""),ue.setAttribute("min",q.min||""),ue.setAttribute("minlength",q.minlength||""),ue.setAttribute("placeholder",q.placeholder||""),ue.setAttribute("spellcheck",q.spellcheck||"default"),ue.setAttribute("step",q.step||"any"),ue.setAttribute("type",q.type||"text"),ue.value=q.value||"",q.allowed&&(ue.oninput=function(){var Be=void 0;if(Array.isArray(q.allowed)){for(var Re="",Oe=q.allowed,kt=0;kt'+K+"",oe.appendChild(X),te.forEach(function(ne,Pe){var Le=ne.type,ue=Le===void 0?1:Le,Ue=ne.text,tt=ne.handler,Be=document.createElement("div");Be.classList.add(k[ue]),Be.classList.add(p.classes.button),Be.classList.add(p.classes.selectChoice);var Re=te[Pe+1];Re&&!Re.type&&(Re.type=1),Re&&Re.type===ue&&Be.classList.add(p.classes.selectChoiceRepeated),Be.innerHTML=Ue,Be.onclick=function(){v(ge,ee),J(),tt()},oe.appendChild(Be)});var q=document.createElement("div");q.classList.add(p.classes.backgroundNeutral),q.classList.add(p.classes.button),q.innerHTML=Y,q.onclick=function(){v(ge,ee),J(),De?De():_&&_()},oe.appendChild(q),oe.listener=function(ne){P(ne)&&q.click()},O(oe,ee),R(oe,ee)},Z=d.date=function(b,_,K){var ae=b.value,Y=ae===void 0?new Date:ae,De=b.submitText,te=De===void 0?"OK":De,Ce=b.cancelText,ee=Ce===void 0?"Cancel":Ce,oe=b.submitCallback,ge=b.cancelCallback,X=b.position,q=X===void 0?p.positions.date||q.top:X;A(),N();var ne="▾",Pe=document.createElement("div"),Le=document.createElement("div"),ue=document.createElement("div"),Ue=function(we){Pe.innerHTML=p.dateMonths[we.getMonth()],Le.innerHTML=we.getDate(),ue.innerHTML=we.getFullYear()},tt=function(we){var Ae=new Date(Y.getFullYear(),Y.getMonth()+1,0).getDate(),Ft=we.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Ft)>Ae&&(Ft=Ae.toString()),we.target.textContent=Ft,Number(Ft)<1&&(Ft="1"),Y.setDate(Number(Ft))},Be=function(we){var Ae=we.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);we.target.textContent=Ae,Y.setFullYear(Number(Ae))},Re=function(we){Ue(Y)},Oe=function(we){var Ae=new Date(Y.getFullYear(),Y.getMonth()+we+1,0).getDate();Y.getDate()>Ae&&Y.setDate(Ae),Y.setMonth(Y.getMonth()+we),Ue(Y)},kt=function(we){Y.setDate(Y.getDate()+we),Ue(Y)},Cn=function(we){var Ae=Y.getFullYear()+we;Ae<0?Y.setFullYear(0):Y.setFullYear(Y.getFullYear()+we),Ue(Y)},He=document.createElement("div"),en=y();He.id=en;var qt=document.createElement("div");qt.classList.add(p.classes.backgroundInfo);var nt=document.createElement("div");nt.classList.add(p.classes.dateSelectorInner);var Pt=document.createElement("div");Pt.classList.add(p.classes.button),Pt.classList.add(p.classes.elementThird),Pt.classList.add(p.classes.dateSelectorUp),Pt.innerHTML=ne;var B=document.createElement("div");B.classList.add(p.classes.button),B.classList.add(p.classes.elementThird),B.classList.add(p.classes.dateSelectorUp),B.innerHTML=ne;var Q=document.createElement("div");Q.classList.add(p.classes.button),Q.classList.add(p.classes.elementThird),Q.classList.add(p.classes.dateSelectorUp),Q.innerHTML=ne,Pe.classList.add(p.classes.element),Pe.classList.add(p.classes.elementThird),Pe.innerHTML=p.dateMonths[Y.getMonth()],Le.classList.add(p.classes.element),Le.classList.add(p.classes.elementThird),Le.setAttribute("contentEditable",!0),Le.addEventListener("input",tt),Le.addEventListener("blur",Re),Le.innerHTML=Y.getDate(),ue.classList.add(p.classes.element),ue.classList.add(p.classes.elementThird),ue.setAttribute("contentEditable",!0),ue.addEventListener("input",Be),ue.addEventListener("blur",Re),ue.innerHTML=Y.getFullYear();var ke=document.createElement("div");ke.classList.add(p.classes.button),ke.classList.add(p.classes.elementThird),ke.innerHTML=ne;var be=document.createElement("div");be.classList.add(p.classes.button),be.classList.add(p.classes.elementThird),be.innerHTML=ne;var xe=document.createElement("div");xe.classList.add(p.classes.button),xe.classList.add(p.classes.elementThird),xe.innerHTML=ne,Pt.onclick=function(){return Oe(1)},B.onclick=function(){return kt(1)},Q.onclick=function(){return Cn(1)},ke.onclick=function(){return Oe(-1)},be.onclick=function(){return kt(-1)},xe.onclick=function(){return Cn(-1)};var je=document.createElement("div");je.classList.add(p.classes.button),je.classList.add(p.classes.elementHalf),je.classList.add(p.classes.backgroundSuccess),je.innerHTML=te,je.onclick=function(){v(en,q),J(),oe?oe(Y):_&&_(Y)};var it=document.createElement("div");it.classList.add(p.classes.button),it.classList.add(p.classes.elementHalf),it.classList.add(p.classes.backgroundError),it.innerHTML=ee,it.onclick=function(){v(en,q),J(),ge?ge(Y):K&&K(Y)},nt.appendChild(Pt),nt.appendChild(B),nt.appendChild(Q),nt.appendChild(Pe),nt.appendChild(Le),nt.appendChild(ue),nt.appendChild(ke),nt.appendChild(be),nt.appendChild(xe),qt.appendChild(nt),He.appendChild(qt),He.appendChild(je),He.appendChild(it),He.listener=function(we){x(we)?je.click():P(we)&&it.click()},O(He,q),R(He,q)};d.default={alert:pe,force:fe,confirm:_e,input:z,select:Te,date:Z,setOptions:w,hideAlerts:N}}])})}).call(a,u(0)(n))}])})}),X4={};Of(X4,{default:()=>cr});var If=J4(Y4());Nf(X4,J4(Y4()));var{default:V4,...jf}=If,cr=V4!==void 0?V4:jf;var N0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function I0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function nc(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function zf(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Me.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Me.splice(0,Me.length),(t===93||t===224)&&(t=91),t in st){st[t]=!1;for(var a in an)an[a]===t&&(ze[a]=!1)}}function Jf(e){if(typeof e>"u")Object.keys(Ge).forEach(function(o){return delete Ge[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&j0(o)});else if(typeof e=="object")e.key&&j0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?nc(an,l):[];Ge[d]=Ge[d].filter(function(m){var f=a?m.method===a:!0;return!(f&&m.scope===n&&zf(m.mods,g))})}})};function Q4(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in st)Object.prototype.hasOwnProperty.call(st,r)&&(!st[r]&&t.mods.indexOf(+r)>-1||st[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!st[16]&&!st[18]&&!st[17]&&!st[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function ec(e,t){var n=Ge["*"],a=e.keyCode||e.which||e.charCode;if(ze.filter.call(this,e)){if((a===93||a===224)&&(a=91),Me.indexOf(a)===-1&&a!==229&&Me.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var C=U0[f];e[f]&&Me.indexOf(C)===-1?Me.push(C):!e[f]&&Me.indexOf(C)>-1?Me.splice(Me.indexOf(C),1):f==="metaKey"&&e[f]&&Me.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Me=Me.slice(Me.indexOf(C))))}),a in st){st[a]=!0;for(var u in an)an[u]===a&&(ze[u]=!0);if(!n)return}for(var r in st)Object.prototype.hasOwnProperty.call(st,r)&&(st[r]=e[U0[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Me.indexOf(17)===-1&&Me.push(17),Me.indexOf(18)===-1&&Me.push(18),st[17]=!0,st[18]=!0);var o=du();if(n)for(var i=0;i-1}function ze(e,t,n){Me=[];var a=ac(e),u=[],r="all",o=document,i=0,l=!1,s=!0,c="+",d=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(l=t.keyup),t.keydown!==void 0&&(s=t.keydown),t.capture!==void 0&&(d=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=nc(an,e)),e=e[e.length-1],e=e==="*"?"*":gr(e),e in Ge||(Ge[e]=[]),Ge[e].push({keyup:l,keydown:s,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!Yf(o)&&window&&(rc.push(o),I0(o,"keydown",function(g){ec(g,o)},d),Z4||(Z4=!0,I0(window,"focus",function(){Me=[]},d)),I0(o,"keyup",function(g){ec(g,o),Vf(g)},d))}function Xf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ge).forEach(function(n){var a=Ge[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var z0={getPressedKeyString:qf,setScope:oc,getScope:du,deleteScope:Gf,getPressedKeyCodes:Wf,isPressed:Kf,filter:$f,trigger:Xf,unbind:Jf,keyMap:cu,modifier:an,modifierMap:U0};for(dr in z0)Object.prototype.hasOwnProperty.call(z0,dr)&&(ze[dr]=z0[dr]);var dr;typeof document<"u"&&(tc=window.hotkeys,ze.noConflict=function(e){return e&&window.hotkeys===ze&&(window.hotkeys=tc),ze},window.hotkeys=ze);var tc;var Zf=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},Qf=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Zf:{reset:()=>{},stop:()=>{}}}},H0=new Qf,e2="poegempjloogba",t2="ension://",n2="me-";function gu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function gc(e){return e?e.PROD==="1":!0}function mc(e){return e?e.MOCK==="1":!1}function pc(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var a2="rome-ext";function u2(e,t){return t?e+(t-e%t):e}function r2(e,t){return e.split(t).length-1}function o2(e){let t=Date.now(),n=1;for(let a of e)n+=r2(a,"i");return u2(t,n)}function i2(e,t){return Math.floor(Math.random()*(t-e+1))+e}var s2="extension",l2="chro";function c2(){return i2(1e6,1e8)}var ic="BrowserExt";function d2(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var sc="DeepL",lc="ension",g2="ch"+a2+t2+"cofdb"+e2+"gkncekinflcnj";function fc(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",g2),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let s=globalThis.navigator.userAgent;i.append("user-agent",`${sc}${ic}${lc}/${r||"1.1.1"} ${s}`)}else i.append("user-agent",`${sc}${ic}${lc}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let l={};for(let[s,c]of i.entries())l[s]=c;return l}function m2(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:o2(n)},id:c2()},o=fc({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${l2+n2+s2},${t}`,headers:o,body:d2(r),method:"POST"}}function p2(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Kn={},Gn={};async function cc(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=gu(u);i||(i=gu(r)[1]);let l={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(l=await mr(e,t));let[s,c]=gu(l.refreshTokenExpiresAt);i=c,i||(i=gu(l.refreshTokenChecksAt)[1]);let d=l.refreshToken;if(Kn[d])return new Promise((g,m)=>{Kn[d].push((f,C)=>{f?m(f):g(C)})});Kn[d]=[];try{let g=await f2(d,t.onFetch),m={state:{...n,...l,...g},shouldUpdateRefreshToken:i};return Kn[d].forEach(f=>{f(null,m)}),delete Kn[d],m}catch(g){throw Kn[d].forEach(m=>{m(g)}),delete Kn[d],g}}async function mr(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Gn[e])return new Promise((u,r)=>{Gn[e].push((o,i)=>{o?r(o):u(i)})});try{Gn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),l=i+o.refresh_token_expires_in*1e3,s=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(l).toISOString(),refreshTokenChecksAt:new Date(s).toISOString()};return Gn[e].forEach(d=>{d(null,c)}),delete Gn[e],c}catch(u){throw Gn[e].forEach(r=>{r(u)}),delete Gn[e],u}}async function f2(e,t){if(!e)throw new Error("refreshToken is required");let n=gc(),a=mc();if(!n&&!a){await pc(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:fc({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=p2(r.access_token);if(r.expires_in){let i=new Date,l=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=l.toISOString()}return o}async function dc(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(h2(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...m2({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},l=gc(),s=mc();if(!l&&!s)return await pc(50),{translations:u.map(m=>({text:"mock: "+m,detected_source_language:"EN"}))};let c=await n(i.url,i),d=JSON.parse(c.body),g=[];if(d.result&&d.result.texts)g=d.result.texts.map(m=>({text:m.text,detected_source_language:d.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function h2(e){let t=0;for(let n of e)t+=n.length;return t}async function b2(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await E2(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return H0.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){H0.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function E2(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var pr=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>b2({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await dc(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await dc(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw H0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=gu(e);if(t)n&&cc(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await cc(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&mr(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var y2={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},bc={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},qe={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},yt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},Sn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},M=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=M.getVersionPrecision(e),u=M.getVersionPrecision(t),r=Math.max(a,u),o=0,i=M.map([e,t],l=>{let s=r-M.getVersionPrecision(l),c=l+new Array(s+1).join(".0");return M.map(c.split("."),d=>new Array(20-d.length).join("0")+d).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return y2[e]}static getBrowserTypeByAlias(e){return bc[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,T2=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=M.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=M.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=M.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=M.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=M.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=M.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=M.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=M.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=M.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=M.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=M.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=M.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=M.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=M.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=M.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=M.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=M.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=M.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=M.getFirstMatch(Fe,e)||M.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=M.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=M.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=M.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=M.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=M.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=M.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=M.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=M.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=M.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=M.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:M.getFirstMatch(a,e),version:M.getSecondMatch(a,e)}}}],x2=T2,C2=[{test:[/Roku\/DVP/],describe(e){let t=M.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:yt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=M.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:yt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=M.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=M.getWindowsVersionName(t);return{name:yt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:yt.iOS},n=M.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=M.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=M.getMacOSVersionName(t),a={name:yt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=M.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:yt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=M.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=M.getAndroidVersionName(t),a={name:yt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=M.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:yt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=M.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||M.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||M.getFirstMatch(/\bbb(\d+)/i,e);return{name:yt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=M.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:yt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=M.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:yt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:yt.Linux}}},{test:[/CrOS/],describe(){return{name:yt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=M.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:yt.PlayStation4,version:t}}}],w2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=M.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:qe.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:qe.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:qe.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:qe.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:qe.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:qe.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:qe.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=M.getFirstMatch(/(ipod|iphone)/i,e);return{type:qe.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:qe.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:qe.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:qe.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:qe.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:qe.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:qe.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:qe.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:qe.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:qe.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:qe.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:qe.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:qe.tv}}}],v2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:Sn.Blink};let t=M.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:Sn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:Sn.Trident},n=M.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:Sn.Presto},n=M.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:Sn.Gecko},n=M.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:Sn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:Sn.WebKit},n=M.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],k2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=M.find(x2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=M.find(C2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=M.find(w2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=M.find(v2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return M.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=M.find(r,l=>this.isOS(l));if(o){let l=this.satisfies(t[o]);if(l!==void 0)return l}let i=M.find(r,l=>this.isPlatform(l));if(i){let l=this.satisfies(t[i]);if(l!==void 0)return l}}if(u>0){let r=Object.keys(a),o=M.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=M.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(M.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},hc=k2,A2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new hc(e,t)}static parse(e){return new hc(e).getResult()}static get BROWSER_MAP(){return bc}static get ENGINE_MAP(){return Sn}static get OS_MAP(){return yt}static get PLATFORMS_MAP(){return qe}},fr=A2;var{entries:kc,setPrototypeOf:Ec,isFrozen:S2,getPrototypeOf:D2,getOwnPropertyDescriptor:L2}=Object,{freeze:Tt,seal:Kt,create:P2}=Object,{apply:V0,construct:J0}=typeof Reflect<"u"&&Reflect;V0||(V0=function(e,t,n){return e.apply(t,n)});Tt||(Tt=function(e){return e});Kt||(Kt=function(e){return e});J0||(J0=function(e,t){return new e(...t)});var F2=jt(Array.prototype.forEach),yc=jt(Array.prototype.pop),mu=jt(Array.prototype.push),Er=jt(String.prototype.toLowerCase),W0=jt(String.prototype.toString),M2=jt(String.prototype.match),$t=jt(String.prototype.replace),_2=jt(String.prototype.indexOf),B2=jt(String.prototype.trim),Mt=jt(RegExp.prototype.test),pu=R2(TypeError);function jt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),z2=Kt(/\${[\w\W]*}/gm),U2=Kt(/^data-[\-\w.\u00B7-\uFFFF]/),H2=Kt(/^aria-[\-\w]+$/),Ac=Kt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),W2=Kt(/^(?:\w+script|data):/i),q2=Kt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Sc=Kt(/^html$/i),vc=Object.freeze({__proto__:null,MUSTACHE_EXPR:I2,ERB_EXPR:j2,TMPLIT_EXPR:z2,DATA_ATTR:U2,ARIA_ATTR:H2,IS_ALLOWED_URI:Ac,IS_SCRIPT_OR_DATA:W2,ATTR_WHITESPACE:q2,DOCTYPE_NAME:Sc}),$2=()=>typeof window>"u"?null:window,K2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function Dc(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:$2(),t=h=>Dc(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:l,NodeFilter:s,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:g,trustedTypes:m}=e,f=l.prototype,C=hr(f,"cloneNode"),T=hr(f,"nextSibling"),p=hr(f,"childNodes"),w=hr(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let F,S="",{implementation:A,createNodeIterator:y,createDocumentFragment:k,getElementsByTagName:L}=u,{importNode:x}=n,P={};t.isSupported=typeof kc=="function"&&typeof w=="function"&&A&&A.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:O,ERB_EXPR:v,TMPLIT_EXPR:R,DATA_ATTR:J,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:pe,ATTR_WHITESPACE:fe}=vc,{IS_ALLOWED_URI:_e}=vc,z=null,Te=Ee({},[...Tc,...q0,...$0,...K0,...xc]),Z=null,b=Ee({},[...Cc,...G0,...wc,...br]),_=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),K=null,ae=null,Y=!0,De=!0,te=!1,Ce=!0,ee=!1,oe=!1,ge=!1,X=!1,q=!1,ne=!1,Pe=!1,Le=!0,ue=!1,Ue="user-content-",tt=!0,Be=!1,Re={},Oe=null,kt=Ee({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Cn=null,He=Ee({},["audio","video","img","source","image","track"]),en=null,qt=Ee({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),nt="http://www.w3.org/1998/Math/MathML",Pt="http://www.w3.org/2000/svg",B="http://www.w3.org/1999/xhtml",Q=B,ke=!1,be=null,xe=Ee({},[nt,Pt,B],W0),je,it=["application/xhtml+xml","text/html"],we="text/html",Ae,Ft=null,Um=u.createElement("form"),al=function(h){return h instanceof RegExp||h instanceof Function},r0=function(h){if(!(Ft&&Ft===h)){if((!h||typeof h!="object")&&(h={}),h=ya(h),je=it.indexOf(h.PARSER_MEDIA_TYPE)===-1?je=we:je=h.PARSER_MEDIA_TYPE,Ae=je==="application/xhtml+xml"?W0:Er,z="ALLOWED_TAGS"in h?Ee({},h.ALLOWED_TAGS,Ae):Te,Z="ALLOWED_ATTR"in h?Ee({},h.ALLOWED_ATTR,Ae):b,be="ALLOWED_NAMESPACES"in h?Ee({},h.ALLOWED_NAMESPACES,W0):xe,en="ADD_URI_SAFE_ATTR"in h?Ee(ya(qt),h.ADD_URI_SAFE_ATTR,Ae):qt,Cn="ADD_DATA_URI_TAGS"in h?Ee(ya(He),h.ADD_DATA_URI_TAGS,Ae):He,Oe="FORBID_CONTENTS"in h?Ee({},h.FORBID_CONTENTS,Ae):kt,K="FORBID_TAGS"in h?Ee({},h.FORBID_TAGS,Ae):{},ae="FORBID_ATTR"in h?Ee({},h.FORBID_ATTR,Ae):{},Re="USE_PROFILES"in h?h.USE_PROFILES:!1,Y=h.ALLOW_ARIA_ATTR!==!1,De=h.ALLOW_DATA_ATTR!==!1,te=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Ce=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ee=h.SAFE_FOR_TEMPLATES||!1,oe=h.WHOLE_DOCUMENT||!1,q=h.RETURN_DOM||!1,ne=h.RETURN_DOM_FRAGMENT||!1,Pe=h.RETURN_TRUSTED_TYPE||!1,X=h.FORCE_BODY||!1,Le=h.SANITIZE_DOM!==!1,ue=h.SANITIZE_NAMED_PROPS||!1,tt=h.KEEP_CONTENT!==!1,Be=h.IN_PLACE||!1,_e=h.ALLOWED_URI_REGEXP||Ac,Q=h.NAMESPACE||B,_=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&al(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(_.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&al(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(_.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(_.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ee&&(De=!1),ne&&(q=!0),Re&&(z=Ee({},[...xc]),Z=[],Re.html===!0&&(Ee(z,Tc),Ee(Z,Cc)),Re.svg===!0&&(Ee(z,q0),Ee(Z,G0),Ee(Z,br)),Re.svgFilters===!0&&(Ee(z,$0),Ee(Z,G0),Ee(Z,br)),Re.mathMl===!0&&(Ee(z,K0),Ee(Z,wc),Ee(Z,br))),h.ADD_TAGS&&(z===Te&&(z=ya(z)),Ee(z,h.ADD_TAGS,Ae)),h.ADD_ATTR&&(Z===b&&(Z=ya(Z)),Ee(Z,h.ADD_ATTR,Ae)),h.ADD_URI_SAFE_ATTR&&Ee(en,h.ADD_URI_SAFE_ATTR,Ae),h.FORBID_CONTENTS&&(Oe===kt&&(Oe=ya(Oe)),Ee(Oe,h.FORBID_CONTENTS,Ae)),tt&&(z["#text"]=!0),oe&&Ee(z,["html","head","body"]),z.table&&(Ee(z,["tbody"]),delete K.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw pu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw pu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');F=h.TRUSTED_TYPES_POLICY,S=F.createHTML("")}else F===void 0&&(F=K2(m,a)),F!==null&&typeof S=="string"&&(S=F.createHTML(""));Tt&&Tt(h),Ft=h}},ul=Ee({},["mi","mo","mn","ms","mtext"]),rl=Ee({},["foreignobject","desc","title","annotation-xml"]),Hm=Ee({},["title","style","font","a","script"]),Ou=Ee({},q0);Ee(Ou,$0),Ee(Ou,O2);let o0=Ee({},K0);Ee(o0,N2);let Wm=function(h){let $=w(h);(!$||!$.tagName)&&($={namespaceURI:Q,tagName:"template"});let I=Er(h.tagName),Se=Er($.tagName);return be[h.namespaceURI]?h.namespaceURI===Pt?$.namespaceURI===B?I==="svg":$.namespaceURI===nt?I==="svg"&&(Se==="annotation-xml"||ul[Se]):!!Ou[I]:h.namespaceURI===nt?$.namespaceURI===B?I==="math":$.namespaceURI===Pt?I==="math"&&rl[Se]:!!o0[I]:h.namespaceURI===B?$.namespaceURI===Pt&&!rl[Se]||$.namespaceURI===nt&&!ul[Se]?!1:!o0[I]&&(Hm[I]||!Ou[I]):!!(je==="application/xhtml+xml"&&be[h.namespaceURI]):!1},da=function(h){mu(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},i0=function(h,$){try{mu(t.removed,{attribute:$.getAttributeNode(h),from:$})}catch{mu(t.removed,{attribute:null,from:$})}if($.removeAttribute(h),h==="is"&&!Z[h])if(q||ne)try{da($)}catch{}else try{$.setAttribute(h,"")}catch{}},ol=function(h){let $,I;if(X)h=""+h;else{let bt=M2(h,/^[\r\n\t ]+/);I=bt&&bt[0]}je==="application/xhtml+xml"&&Q===B&&(h=''+h+"");let Se=F?F.createHTML(h):h;if(Q===B)try{$=new g().parseFromString(Se,je)}catch{}if(!$||!$.documentElement){$=A.createDocument(Q,"template",null);try{$.documentElement.innerHTML=ke?S:Se}catch{}}let Xe=$.body||$.documentElement;return h&&I&&Xe.insertBefore(u.createTextNode(I),Xe.childNodes[0]||null),Q===B?L.call($,oe?"html":"body")[0]:oe?$.documentElement:Xe},il=function(h){return y.call(h.ownerDocument||h,h,s.SHOW_ELEMENT|s.SHOW_COMMENT|s.SHOW_TEXT,null,!1)},qm=function(h){return h instanceof d&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Nu=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},dn=function(h,$,I){P[h]&&F2(P[h],Se=>{Se.call(t,$,I,Ft)})},sl=function(h){let $;if(dn("beforeSanitizeElements",h,null),qm(h))return da(h),!0;let I=Ae(h.nodeName);if(dn("uponSanitizeElement",h,{tagName:I,allowedTags:z}),h.hasChildNodes()&&!Nu(h.firstElementChild)&&(!Nu(h.content)||!Nu(h.content.firstElementChild))&&Mt(/<[/\w]/g,h.innerHTML)&&Mt(/<[/\w]/g,h.textContent))return da(h),!0;if(!z[I]||K[I]){if(!K[I]&&cl(I)&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,I)||_.tagNameCheck instanceof Function&&_.tagNameCheck(I)))return!1;if(tt&&!Oe[I]){let Se=w(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&Se){let bt=Xe.length;for(let At=bt-1;At>=0;--At)Se.insertBefore(C(Xe[At],!0),T(h))}}return da(h),!0}return h instanceof l&&!Wm(h)||(I==="noscript"||I==="noembed")&&Mt(/<\/no(script|embed)/i,h.innerHTML)?(da(h),!0):(ee&&h.nodeType===3&&($=h.textContent,$=$t($,O," "),$=$t($,v," "),$=$t($,R," "),h.textContent!==$&&(mu(t.removed,{element:h.cloneNode()}),h.textContent=$)),dn("afterSanitizeElements",h,null),!1)},ll=function(h,$,I){if(Le&&($==="id"||$==="name")&&(I in u||I in Um))return!1;if(!(De&&!ae[$]&&Mt(J,$))&&!(Y&&Mt(N,$))){if(!Z[$]||ae[$]){if(!(cl(h)&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,h)||_.tagNameCheck instanceof Function&&_.tagNameCheck(h))&&(_.attributeNameCheck instanceof RegExp&&Mt(_.attributeNameCheck,$)||_.attributeNameCheck instanceof Function&&_.attributeNameCheck($))||$==="is"&&_.allowCustomizedBuiltInElements&&(_.tagNameCheck instanceof RegExp&&Mt(_.tagNameCheck,I)||_.tagNameCheck instanceof Function&&_.tagNameCheck(I))))return!1}else if(!en[$]&&!Mt(_e,$t(I,fe,""))&&!(($==="src"||$==="xlink:href"||$==="href")&&h!=="script"&&_2(I,"data:")===0&&Cn[h])&&!(te&&!Mt(pe,$t(I,fe,"")))&&I)return!1}return!0},cl=function(h){return h.indexOf("-")>0},dl=function(h){let $,I,Se,Xe;dn("beforeSanitizeAttributes",h,null);let{attributes:bt}=h;if(!bt)return;let At={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Z};for(Xe=bt.length;Xe--;){$=bt[Xe];let{name:at,namespaceURI:ga}=$;if(I=at==="value"?$.value:B2($.value),Se=Ae(at),At.attrName=Se,At.attrValue=I,At.keepAttr=!0,At.forceKeepAttr=void 0,dn("uponSanitizeAttribute",h,At),I=At.attrValue,At.forceKeepAttr||(i0(at,h),!At.keepAttr))continue;if(!Ce&&Mt(/\/>/i,I)){i0(at,h);continue}ee&&(I=$t(I,O," "),I=$t(I,v," "),I=$t(I,R," "));let gl=Ae(h.nodeName);if(ll(gl,Se,I)){if(ue&&(Se==="id"||Se==="name")&&(i0(at,h),I=Ue+I),F&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!ga)switch(m.getAttributeType(gl,Se)){case"TrustedHTML":{I=F.createHTML(I);break}case"TrustedScriptURL":{I=F.createScriptURL(I);break}}try{ga?h.setAttributeNS(ga,at,I):h.setAttribute(at,I),yc(t.removed)}catch{}}}dn("afterSanitizeAttributes",h,null)},$m=function h($){let I,Se=il($);for(dn("beforeSanitizeShadowDOM",$,null);I=Se.nextNode();)dn("uponSanitizeShadowNode",I,null),!sl(I)&&(I.content instanceof r&&h(I.content),dl(I));dn("afterSanitizeShadowDOM",$,null)};return t.sanitize=function(h){let $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},I,Se,Xe,bt;if(ke=!h,ke&&(h=""),typeof h!="string"&&!Nu(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw pu("dirty is not a string, aborting")}else throw pu("toString is not a function");if(!t.isSupported)return h;if(ge||r0($),t.removed=[],typeof h=="string"&&(Be=!1),Be){if(h.nodeName){let ga=Ae(h.nodeName);if(!z[ga]||K[ga])throw pu("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)I=ol(""),Se=I.ownerDocument.importNode(h,!0),Se.nodeType===1&&Se.nodeName==="BODY"||Se.nodeName==="HTML"?I=Se:I.appendChild(Se);else{if(!q&&!ee&&!oe&&h.indexOf("<")===-1)return F&&Pe?F.createHTML(h):h;if(I=ol(h),!I)return q?null:Pe?S:""}I&&X&&da(I.firstChild);let At=il(Be?h:I);for(;Xe=At.nextNode();)sl(Xe)||(Xe.content instanceof r&&$m(Xe.content),dl(Xe));if(Be)return h;if(q){if(ne)for(bt=k.call(I.ownerDocument);I.firstChild;)bt.appendChild(I.firstChild);else bt=I;return(Z.shadowroot||Z.shadowrootmod)&&(bt=x.call(n,bt,!0)),bt}let at=oe?I.outerHTML:I.innerHTML;return oe&&z["!doctype"]&&I.ownerDocument&&I.ownerDocument.doctype&&I.ownerDocument.doctype.name&&Mt(Sc,I.ownerDocument.doctype.name)&&(at=" +`+at),ee&&(at=$t(at,O," "),at=$t(at,v," "),at=$t(at,R," ")),F&&Pe?F.createHTML(at):at},t.setConfig=function(h){r0(h),ge=!0},t.clearConfig=function(){Ft=null,ge=!1},t.isValidAttribute=function(h,$,I){Ft||r0({});let Se=Ae(h),Xe=Ae($);return ll(Se,Xe,I)},t.addHook=function(h,$){typeof $=="function"&&(P[h]=P[h]||[],mu(P[h],$))},t.removeHook=function(h){if(P[h])return yc(P[h])},t.removeHooks=function(h){P[h]&&(P[h]=[])},t.removeAllHooks=function(){P={}},t}var ve=Dc();var Hy=cr.alert;var Ta=console,Y0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=It.green;a>1e4?u=It.red:a>1e3&&(u=It.yellow),Ta.debug(It.dim($n+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},fu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&Ta.log(It.dim($n+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&Ta.log(It.green($n+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&Ta.warn(It.yellow($n+" WARN:"),...t)}error(...t){this.#e<=3&&Ta.error(It.red($n+" ERROR:"),...t)}fatal(...t){this.#e<=4&&Ta.error(It.red($n+" FATAL:"),...t)}timing(){return this.level===0?new Y0:{reset:()=>{},stop:()=>{}}}},D=new fu;var Lc=["*://*/*","*","*://*"],Fc="immersive-translate-wildcard-placeholder.com";function X0(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>Lc.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let l=i;if(i===r)return!0;if(Lc.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let s=new URL(i);return s.pathname==="/"&&!i.endsWith("/")?s.hostname===r:V2(u,i)}catch{}return!1}else{let s,c=i;if(i.includes("://")){let T=i.split("://");s=T[0],s==="*"&&T.length>1&&(s="*",i="https://"+T[1])}else s="*",i="https://"+i;let d=i.replace(/\*/g,Fc),g;try{g=new URL(d)}catch{return D.debug("invalid match pattern",d,"raw match value:",c),!1}let m=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let C=G2(s+":",Pc(m),Pc(f));if(C){let T=new URL(u);return T.port="",C.test(T.href)}else return!1}});if(o)return o}return null}function Pc(e){return e.replaceAll(Fc,"*")}function G2(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function hn(e,t){return X0(e,t)!==null}function V2(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}function Z0(e){return Array.isArray(e)?e:e?[e]:[]}function Q0(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Dn(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function yr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let l=Z0(i);u[o]=Array.from(new Set([...u[o],...l]))}else u[o]=Z0(i)}),u}var xa="input is invalid type",ei=typeof window=="object",Ln=ei?window:{};Ln.JS_SHA256_NO_WINDOW&&(ei=!1);var J2=!ei&&typeof self=="object",Y2=!Ln.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Y2?Ln=global:J2&&(Ln=self);var bT=!Ln.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,ET=typeof define=="function"&&define.amd,hu=!Ln.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",V="0123456789abcdef".split(""),X2=[-2147483648,8388608,32768,128],Gt=[24,16,8,0],Tr=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],xr=["hex","array","digest","arrayBuffer"],ut=[];(Ln.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});hu&&(Ln.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var Mc=function(e,t){return function(n){return new rt(t,!0).update(n)[e]()}},Bc=function(e){var t=Mc("hex",e);t.create=function(){return new rt(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};rt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=X2[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};rt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,l=this.blocks,s,c,d,g,m,f,C,T,p,w,F;for(s=16;s<64;++s)m=l[s-15],c=(m>>>7|m<<25)^(m>>>18|m<<14)^m>>>3,m=l[s-2],d=(m>>>17|m<<15)^(m>>>19|m<<13)^m>>>10,l[s]=l[s-16]+c+l[s-7]+d<<0;for(F=t&n,s=0;s<64;s+=4)this.first?(this.is224?(T=300032,m=l[0]-1413257819,i=m-150054599<<0,a=m+24177077<<0):(T=704751109,m=l[0]-210244248,i=m-1521486534<<0,a=m+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),d=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),T=e&t,g=T^e&n^F,C=u&r^~u&o,m=i+d+C+Tr[s]+l[s],f=c+g,i=a+m<<0,a=m+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),d=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,g=p^a&t^T,C=i&u^~i&r,m=o+d+C+Tr[s+1]+l[s+1],f=c+g,o=n+m<<0,n=m+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),d=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),w=n&a,g=w^n&e^p,C=o&i^~o&u,m=r+d+C+Tr[s+2]+l[s+2],f=c+g,r=t+m<<0,t=m+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),d=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),F=t&n,g=F^t&a^w,C=r&o^~r&i,m=u+d+C+Tr[s+3]+l[s+3],f=c+g,u=e+m<<0,e=m+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};rt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,l=V[e>>28&15]+V[e>>24&15]+V[e>>20&15]+V[e>>16&15]+V[e>>12&15]+V[e>>8&15]+V[e>>4&15]+V[e&15]+V[t>>28&15]+V[t>>24&15]+V[t>>20&15]+V[t>>16&15]+V[t>>12&15]+V[t>>8&15]+V[t>>4&15]+V[t&15]+V[n>>28&15]+V[n>>24&15]+V[n>>20&15]+V[n>>16&15]+V[n>>12&15]+V[n>>8&15]+V[n>>4&15]+V[n&15]+V[a>>28&15]+V[a>>24&15]+V[a>>20&15]+V[a>>16&15]+V[a>>12&15]+V[a>>8&15]+V[a>>4&15]+V[a&15]+V[u>>28&15]+V[u>>24&15]+V[u>>20&15]+V[u>>16&15]+V[u>>12&15]+V[u>>8&15]+V[u>>4&15]+V[u&15]+V[r>>28&15]+V[r>>24&15]+V[r>>20&15]+V[r>>16&15]+V[r>>12&15]+V[r>>8&15]+V[r>>4&15]+V[r&15]+V[o>>28&15]+V[o>>24&15]+V[o>>20&15]+V[o>>16&15]+V[o>>12&15]+V[o>>8&15]+V[o>>4&15]+V[o&15];return this.is224||(l+=V[i>>28&15]+V[i>>24&15]+V[i>>20&15]+V[i>>16&15]+V[i>>12&15]+V[i>>8&15]+V[i>>4&15]+V[i&15]),l};rt.prototype.toString=rt.prototype.hex;rt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,l=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||l.push(i>>24&255,i>>16&255,i>>8&255,i&255),l};rt.prototype.array=rt.prototype.digest;rt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function Cr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,l;for(a=0;a>6,r[i++]=128|l&63):l<55296||l>=57344?(r[i++]=224|l>>12,r[i++]=128|l>>6&63,r[i++]=128|l&63):(l=65536+((l&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|l>>18,r[i++]=128|l>>12&63,r[i++]=128|l>>6&63,r[i++]=128|l&63);e=r}else if(u==="object"){if(e===null)throw new Error(xa);if(hu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!hu||!ArrayBuffer.isView(e)))throw new Error(xa)}else throw new Error(xa);e.length>64&&(e=new rt(t,!0).update(e).array());var s=[],c=[];for(a=0;a<64;++a){var d=e[a]||0;s[a]=92^d,c[a]=54^d}rt.call(this,t,n),this.update(c),this.oKeyPad=s,this.inner=!0,this.sharedMemory=n}Cr.prototype=new rt;Cr.prototype.finalize=function(){if(rt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();rt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),rt.prototype.finalize.call(this)}};var Ca=Bc();Ca.sha256=Ca;Ca.sha224=Bc(!0);Ca.sha256.hmac=Rc();Ca.sha224.hmac=Rc(!0);var Oc=Ca;var Nc=Oc.sha256;function Vt(e){return Promise.resolve(Nc(e))}function wr(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function Pn(e,t){let n=Nc.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function Ic(e,t){let n=await Pn(e,t);return wr(n)}async function vr(e,t){let n=Z2(t),a=await Pn(e,n);return wr(a)}function Z2(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}function Ve(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var me=Ve();function ie(){return me.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function jc(){return me.HAS_CSP_ERROR=="1"}function xt(){if(me.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function zc(){return typeof Deno<"u"}var vT=Ve().PROD==="1",wa=Ve().PROD!=="1";function Uc(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function lt(){try{return globalThis.self!==globalThis.top}catch{return!0}}var kr=!1,Q2=ie();function Hc(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function eh(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&Wc(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Fn(r,ar)){if(u===!0)return!0;continue}if(bu(r.nodeName,t.inlineTags))return!0;if(!ti(r,t))return!1}}return!0}function ni(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(bu(e.nodeName,n)||ti(e,t)){if(Fn(e,A4)||bu(e.nodeName,["BR"]))return!1;if(Fn(e,ar))return!0;if(ti(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return eh(e,t)}else return Fn(e,ar);return!1}function Wc(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Fn(e,k4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Fn(e,y4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||bu(e.nodeName,r))}function Ar(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!$c(a)&&a.length>=n}function qc(e,t,n){let a=e.trim();if(a.length<=t)return!0;if($c(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function $c(e){for(let t=0;t127)return!1;return!0}function Kc(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function Gc(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function Vc(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function Jc(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Fn(e,t,n=!1){return ai(e,t,"1",n)}function ai(e,t,n,a=!1){return kr&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function va(e){return(e.innerText||e.textContent||"").trim()}function ui(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function Sr(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Je(e,t,n,a=!1){e.isContentEditable||(kr&&!a?(e.dataset[iu]||(e.dataset[iu]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[iu]||(e.dataset[iu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Dr(e,t,n=!1){if(kr&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function ka(e,t,n=!1){return kr&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function ti(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!bu(e.nodeName,n)}function Aa(e){let{config:t}=e,n=ur;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ct(){if(!globalThis||!globalThis.location)return"https://example.com";if(!lt())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Vn(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){D.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else D.warn("injectCSS failed, rootDocument does not have head node",e)}function Sa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(Q2){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function bu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Yc(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function Xc(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||Wc(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return D.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function Zc(e,t,n){let a=0,u=(r,o,i,l)=>{if(++a>100||l===r)return r;let s=r.shadowRoot;if(!s||typeof s.elementFromPoint!="function")return r;let c=s.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}function Jn(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Nt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":Nt[u]}else return"auto";else return Nt[a]}var Lr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4083,68 +4091,79 @@ body { ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};function Y2(){if(me.PROD==="1")return{};let e={};if(me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(me.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:me.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(me.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:me.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(me.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&me.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:me.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:me.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(me.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:me.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(me.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=me.DEEPL_PROXY_ENDPOINT),me.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=me.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),me.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:me.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return me.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),me.MOCK==="1"&&(e.translationService="mock"),me.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=me.IMMERSIVE_TRANSLATE_SERVICE),e}async function Eu(){let e=await j.storage.local.get(uu);if(e[uu]){let t=e[uu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await Yn(r),r}else return{}}async function Yn(e){await j.storage.local.set({[uu]:e})}async function Pr(e){await j.storage.local.set({[vn]:e})}async function Jc(){let e=await j.storage.local.get(vn),n={...Xc(),...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function an(){let e=await j.storage.local.get(vn),t={...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let C=new Date(p.buildinConfigUpdatedAt),F=new Date(t.buildinConfigUpdatedAt);C>F&&(t=p)}}let n={};if(!ie()&&j.commands&&j.commands.getAll){let p=await j.commands.getAll();for(let C of p)C.name&&C.shortcut&&(n[C.name]=C.shortcut)}let a=Xc(),u=Y2(),r=await ui(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Eu(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(C=>new Date(C.expiredAt)>s);if(p.length>0){let C=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],F=Array.isArray(C)?C:[C],S=Array.from(new Set(F.concat(p.map(A=>A.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:S}}}let l=Object.assign({},o,u,r);if(!l.interfaceLanguage){let p=await X2();l.interfaceLanguage=p}let c=l.interfaceLanguage==="en",d=l.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,m=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!d&&!g&&m?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),v=Object.keys(f),T=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of v){let C=p;if(C==="generalRule")typeof l[C]=="object"&&(f[C]=yr(a[C],l[C]));else if(C==="translationServices"){let F=l[C]||{},S=t[C]||{},A=Object.keys(S),y=Object.keys(F),k=[...new Set([...A,...y])],D={};for(let x of k)D[x]={...S[x],...F[x]};f[C]=D}else if(typeof l[C]!="string"&&typeof l[C]!="boolean"&&typeof l[C]!="number"&&T.includes(C))l[C]&&(f[C]=Object.assign(f[C],l[C])),C==="shortcuts"&&(ie()||xt()?f[C]={...f[C],...n}:f[C]={...n});else if(C==="rules"){if(Array.isArray(l[C])&&(f[C]=[...l[C],...f[C]]),me.PROD==="0"&&me.DEV_RULES){let F=JSON.parse(me.DEV_RULES);f[C]=[...F,...f[C]]}}else l[C]!==void 0&&(f[C]=l[C])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function ui(){return(await j.storage.sync.get("userConfig")||{}).userConfig||{}}async function Yc(e){await j.storage.sync.set({userConfig:e})}var X2=async()=>{let e=["zh-CN"];try{e=await j.i18n.getAcceptLanguages()}catch(a){P.warn("get browser language error:",a)}let n=e.map(a=>Jn(a)).find(a=>Rt[a]);return n||"en"},Xc=()=>{let e={...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};return{...e,targetLanguage:or,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var Qc="auto",Fr="auto",Zc="auto";function Mr(e){Qc=e}function zt(e){Fr=e}function un(){return Fr!=="auto"?Fr:Zc!=="auto"?Zc:Qc}function Da(){return Fr}async function bn(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:d,targetLanguage:g,sourceLanguageUrlPattern:m,immediateTranslationPattern:f}=n,v=La(t,o),T=La(t,f),p=i,C=Object.keys(s);for(let te of C){let Ce=s[te];if(La(t,Ce)){p=te;break}}let F=l,S=Object.keys(c);for(let te of S){let Ce=c[te];if(Ce&&La(t,Ce)){F=te;break}}let A=La(t,d),y=e3(t,d);y||(y=hn(t,_4)),y||(y=hn(t,n.blockUrls));let k=e3(t,n.inputTranslationUrlPattern);k||(k=hn(t,n.inputTranslationBlockUrls));let D=hn(t,n.mutationBlockUrls),x=Object.keys(m),L={};for(let te of x){let Ce=m[te];if(Ce&&Ce.matches)for(let ee of Ce.matches)L[ee]=te}let O=Object.keys(L),w=Y0(t,O);w&&(r=L[w]??"auto",L[w]&&L[w]!=="auto"&&zt(L[w]));let R=g||"zh-CN",J=u.hostname,N=await Vt(J),pe=u.pathname+u.search+u.hash,fe=await Vt(pe),_e=`https://${N}.com/${fe}`,z=await Eu(),Te=await Jc(),Z=n.translationStartMode;Z==="dynamic"&&T&&(Z="immediate");let b={targetLanguage:R,config:n,translationService:p,isTranslateUrl:A,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:y,isMutationTranslationExcludeUrl:D,isInputTranslationExcludeUrl:k,rule:n.generalRule,url:t,encryptedUrl:_e,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:Z,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:v,cache:n.cache,translationTheme:F},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:Z,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:v,cache:n.cache,translationTheme:F},localConfig:z};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(te=>!b.config.generalRule.bodyTranslateTags.includes(te)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(te=>te!==".btn"));let _=n.translationServices[b.translationService]||{};_.immediateTranslationTextCount!==void 0&&Z2(_.immediateTranslationTextCount)&&_.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=_.immediateTranslationTextCount),b.translationService==="deepl"&&_&&_.authKey&&_.authKey.startsWith("immersive_")&&_.immediateTranslationTextCountForImmersiveDeepl!==void 0&&_.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=_.immediateTranslationTextCountForImmersiveDeepl),_&&_.translationDebounce&&typeof _.translationDebounce=="number"&&(b.state.translationDebounce=_.translationDebounce);let K=Te.immediateTranslationTextCount;n.immediateTranslationTextCount!==K&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let ae=n.rules,Y;globalThis.PDFViewerApplication?Y=ae.find(te=>te.isPdf):globalThis.immersiveTranslateEbookViewer?Y=ae.find(te=>te.isEbook):globalThis.immersiveTranslateEbookBuilder?Y=ae.find(te=>te.isEbookBuilder):Y=ae.find(te=>La(t,te)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),Y&&Y.isEbookBuilder&&(b.state.translationStartMode="immediate");let Se=n.generalRule;if(Y&&(b.rule=yr(Se,Y)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(te=>!b.rule.bodyTranslateTags.includes(te)&&!b.rule.forceTranslateTags.includes(te))),b.rule.mainFrameSelector){let te=document.querySelector(b.rule.mainFrameSelector);te&&(b.mainFrame=te)}return b}function La(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&hn(e,a)?!1:n&&n.length>0&&hn(e,n)?!0:r&&r.length>0&&Sr(r)?!1:!!(u&&u.length>0&&Sr(u))}function e3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&hn(e,n)||a&&a.length>0&&Sr(a))}function Z2(e){return typeof e=="number"}var nx=n3(2),t3=n3(3);function n3(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var Q2=/\s+/g,eh=/[\t\n\v\f\r ]+/g;function a3(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?th:nh;return String(e).replace(t.style==="html"?eh:Q2,t.trim?ah(n):n)}function th(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function nh(){return" "}function ah(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var u3={}.hasOwnProperty;function uh(e){return e==null?"":a3(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function rh(e){return t3(" "+uh(e)+" ")}function oh(e){let t=rh(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function mh(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function ph(e,t,n,a){t=hh(t,n,a);let u=[],r;if(t)for(r in t)_r.call(t,r)&&u.push([r,fh(e,t[r])]);return u.length===0?oi():u.sort(bh)}function fh(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of Sh){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/r>.5?t==="zh-CN"?g3(e)?"zh-TW":"zh-CN":t:"auto"}var p3=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function f3(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Rr(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...p3.keys()]},u=i3(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=p3.get(r);if(o)return o}return"auto"}var Qe=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function Or(e){let t;if(e&&e.retry&&e.retry>0)try{t=await F0(h3.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await h3(e);return t}async function h3(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await r(t,a)}catch(s){P.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of Dh(i.body)){let d=new TextDecoder().decode(c);s+=d;let g;for(;(g=s.indexOf(` -`))>=0;){let m=s.slice(0,g).trim();if(s=s.slice(g+1),m.startsWith("event:")||m==="")continue;let f="";if(m.startsWith("data:")&&(f=m.slice(5).trim()),f==="[DONE]")break;let v;try{v=JSON.parse(f??"")}catch(T){P.debug("json error",T);continue}l=v}}return l}}else{let s;try{s=await i.text()}catch(d){P.error("parse response failed",d)}s&&P.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new Qe("fetchError",c,s)}}async function*Dh(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Mn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function Lh(e,t){return e<>>32-t}function Ir(e,t,n,a,u,r){return Mn(Lh(Mn(Mn(t,e),Mn(a,r)),u),n)}function mt(e,t,n,a,u,r,o){return Ir(t&n|~t&a,e,t,u,r,o)}function pt(e,t,n,a,u,r,o){return Ir(t&a|n&~a,e,t,u,r,o)}function ft(e,t,n,a,u,r,o){return Ir(t^n^a,e,t,u,r,o)}function ht(e,t,n,a,u,r,o){return Ir(n^(t|~a),e,t,u,r,o)}function Nr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function ii(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Nr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=Nr(u.concat(ii(t)),512+t.length*8),b3(Nr(r.concat(o),512+128))}function E3(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function si(e){return unescape(encodeURIComponent(e))}function y3(e){return Ph(si(e))}function Mh(e){return E3(y3(e))}function T3(e,t){return Fh(si(e),si(t))}function _h(e,t){return E3(T3(e,t))}function _n(e,t,n){return t?n?T3(t,e):_h(t,e):n?y3(e):Mh(e)}function x3(e,t,n){let a=Bh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((s,l)=>s+l.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function Bh(e,t){let n=[],a=[];for(let u=0;u0?f"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};function nh(){if(me.PROD==="1")return{};let e={};if(me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:me.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:me.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(me.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:me.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(me.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:me.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:me.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(me.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&me.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:me.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:me.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(me.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:me.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(me.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=me.DEEPL_PROXY_ENDPOINT),me.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=me.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),me.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:me.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return me.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),me.MOCK==="1"&&(e.translationService="mock"),me.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=me.IMMERSIVE_TRANSLATE_SERVICE),e}async function Eu(){let e=await j.storage.local.get(uu);if(e[uu]){let t=e[uu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await Yn(r),r}else return{}}async function Yn(e){await j.storage.local.set({[uu]:e})}async function Pr(e){await j.storage.local.set({[vn]:e})}async function Qc(){let e=await j.storage.local.get(vn),n={...t3(),...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function un(){let e=await j.storage.local.get(vn),t={...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let w=new Date(p.buildinConfigUpdatedAt),F=new Date(t.buildinConfigUpdatedAt);w>F&&(t=p)}}let n={};if(!ie()&&j.commands&&j.commands.getAll){let p=await j.commands.getAll();for(let w of p)w.name&&w.shortcut&&(n[w.name]=w.shortcut)}let a=t3(),u=nh(),r=await ri(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Eu(),l=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(w=>new Date(w.expiredAt)>l);if(p.length>0){let w=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],F=Array.isArray(w)?w:[w],S=Array.from(new Set(F.concat(p.map(A=>A.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:S}}}let s=Object.assign({},o,u,r);if(!s.interfaceLanguage){let p=await ah();s.interfaceLanguage=p}let c=s.interfaceLanguage==="en",d=s.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,m=["bing","google","transmart","mock"].includes(s.translationService)||!s.translationService;!c&&!d&&!g&&m?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),C=Object.keys(f),T=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of C){let w=p;if(w==="generalRule")typeof s[w]=="object"&&(f[w]=yr(a[w],s[w]));else if(w==="translationServices"){let F=s[w]||{},S=t[w]||{},A=Object.keys(S),y=Object.keys(F),k=[...new Set([...A,...y])],L={};for(let x of k)L[x]={...S[x],...F[x]};f[w]=L}else if(typeof s[w]!="string"&&typeof s[w]!="boolean"&&typeof s[w]!="number"&&T.includes(w))s[w]&&(f[w]=Object.assign(f[w],s[w])),w==="shortcuts"&&(ie()||xt()?f[w]={...f[w],...n}:f[w]={...n});else if(w==="rules"){if(Array.isArray(s[w])&&(f[w]=[...s[w],...f[w]]),me.PROD==="0"&&me.DEV_RULES){let F=JSON.parse(me.DEV_RULES);f[w]=[...F,...f[w]]}}else s[w]!==void 0&&(f[w]=s[w])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function ri(){return(await j.storage.sync.get("userConfig")||{}).userConfig||{}}async function e3(e){await j.storage.sync.set({userConfig:e})}var ah=async()=>{let e=["zh-CN"];try{e=await j.i18n.getAcceptLanguages()}catch(a){D.warn("get browser language error:",a)}let n=e.map(a=>Jn(a)).find(a=>Rt[a]);return n||"en"},t3=()=>{let e={...Lr,buildinConfigUpdatedAt:me.BUILD_TIME};return{...e,targetLanguage:or,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var a3="auto",Fr="auto",n3="auto";function Mr(e){a3=e}function zt(e){Fr=e}function rn(){return Fr!=="auto"?Fr:n3!=="auto"?n3:a3}function Da(){return Fr}async function bn(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:l,translationTheme:s,translationThemePatterns:c,translationUrlPattern:d,targetLanguage:g,sourceLanguageUrlPattern:m,immediateTranslationPattern:f}=n,C=La(t,o),T=La(t,f),p=i,w=Object.keys(l);for(let te of w){let Ce=l[te];if(La(t,Ce)){p=te;break}}let F=s,S=Object.keys(c);for(let te of S){let Ce=c[te];if(Ce&&La(t,Ce)){F=te;break}}let A=La(t,d),y=u3(t,d);y||(y=hn(t,N4)),y||(y=hn(t,n.blockUrls));let k=u3(t,n.inputTranslationUrlPattern);k||(k=hn(t,n.inputTranslationBlockUrls));let L=hn(t,n.mutationBlockUrls),x=Object.keys(m),P={};for(let te of x){let Ce=m[te];if(Ce&&Ce.matches)for(let ee of Ce.matches)P[ee]=te}let O=Object.keys(P),v=X0(t,O);v&&(r=P[v]??"auto",P[v]&&P[v]!=="auto"&&zt(P[v]));let R=g||"zh-CN",J=u.hostname,N=await Vt(J),pe=u.pathname+u.search+u.hash,fe=await Vt(pe),_e=`https://${N}.com/${fe}`,z=await Eu(),Te=await Qc(),Z=n.translationStartMode;Z==="dynamic"&&T&&(Z="immediate");let b={targetLanguage:R,config:n,translationService:p,isTranslateUrl:A,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:y,isMutationTranslationExcludeUrl:L,isInputTranslationExcludeUrl:k,rule:n.generalRule,url:t,encryptedUrl:_e,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:Z,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:C,cache:n.cache,translationTheme:F},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:Z,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:C,cache:n.cache,translationTheme:F},localConfig:z};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(te=>!b.config.generalRule.bodyTranslateTags.includes(te)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(te=>te!==".btn"));let _=n.translationServices[b.translationService]||{};_.immediateTranslationTextCount!==void 0&&uh(_.immediateTranslationTextCount)&&_.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=_.immediateTranslationTextCount),b.translationService==="deepl"&&_&&_.authKey&&_.authKey.startsWith("immersive_")&&_.immediateTranslationTextCountForImmersiveDeepl!==void 0&&_.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=_.immediateTranslationTextCountForImmersiveDeepl),_&&_.translationDebounce&&typeof _.translationDebounce=="number"&&(b.state.translationDebounce=_.translationDebounce);let K=Te.immediateTranslationTextCount;n.immediateTranslationTextCount!==K&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let ae=n.rules,Y;globalThis.PDFViewerApplication?Y=ae.find(te=>te.isPdf):globalThis.immersiveTranslateEbookViewer?Y=ae.find(te=>te.isEbook):globalThis.immersiveTranslateEbookBuilder?Y=ae.find(te=>te.isEbookBuilder):Y=ae.find(te=>La(t,te)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),Y&&Y.isEbookBuilder&&(b.state.translationStartMode="immediate");let De=n.generalRule;if(Y&&(b.rule=yr(De,Y)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(te=>!b.rule.bodyTranslateTags.includes(te)&&!b.rule.forceTranslateTags.includes(te))),b.rule.mainFrameSelector){let te=document.querySelector(b.rule.mainFrameSelector);te&&(b.mainFrame=te)}return b}function La(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&hn(e,a)?!1:n&&n.length>0&&hn(e,n)?!0:r&&r.length>0&&Sr(r)?!1:!!(u&&u.length>0&&Sr(u))}function u3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&hn(e,n)||a&&a.length>0&&Sr(a))}function uh(e){return typeof e=="number"}var ox=o3(2),r3=o3(3);function o3(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var rh=/\s+/g,oh=/[\t\n\v\f\r ]+/g;function i3(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?ih:sh;return String(e).replace(t.style==="html"?oh:rh,t.trim?lh(n):n)}function ih(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function sh(){return" "}function lh(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var s3={}.hasOwnProperty;function ch(e){return e==null?"":i3(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function dh(e){return r3(" "+ch(e)+" ")}function gh(e){let t=dh(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function yh(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function Th(e,t,n,a){t=Ch(t,n,a);let u=[],r;if(t)for(r in t)_r.call(t,r)&&u.push([r,xh(e,t[r])]);return u.length===0?ii():u.sort(wh)}function xh(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of _h){let i=o[1],l=o[0],s=e.match(i),c=s?s.length:0;c>n&&(n=c,t=l)}return n*2.5/r>.5?t==="zh-CN"?h3(e)?"zh-TW":"zh-CN":t:"auto"}var E3=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function y3(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Rr(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...E3.keys()]},u=d3(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=E3.get(r);if(o)return o}return"auto"}var Qe=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function Or(e){let t;if(e&&e.retry&&e.retry>0)try{t=await M0(T3.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await T3(e);return t}async function T3(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let l=new AbortController,s=l.signal;setTimeout(()=>{l.abort()},o),a.signal=s}let i;try{i=await r(t,a)}catch(l){D.error("fetch error",l);let s=l.message||"";throw l.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+s,l}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let l=await i.text(),s=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:l,headers:s,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let l="",s;if(i.body&&i.body instanceof ReadableStream)for await(let c of Bh(i.body)){let d=new TextDecoder().decode(c);l+=d;let g;for(;(g=l.indexOf(` +`))>=0;){let m=l.slice(0,g).trim();if(l=l.slice(g+1),m.startsWith("event:")||m==="")continue;let f="";if(m.startsWith("data:")&&(f=m.slice(5).trim()),f==="[DONE]")break;let C;try{C=JSON.parse(f??"")}catch(T){D.debug("json error",T);continue}s=C}}return s}}else{let l;try{l=await i.text()}catch(d){D.error("parse response failed",d)}l&&D.error("fail response",l);let s="";l&&(s=l.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+s;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${s}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${s}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${s}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${s}`),new Qe("fetchError",c,l)}}async function*Bh(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Mn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function Rh(e,t){return e<>>32-t}function Ir(e,t,n,a,u,r){return Mn(Rh(Mn(Mn(t,e),Mn(a,r)),u),n)}function mt(e,t,n,a,u,r,o){return Ir(t&n|~t&a,e,t,u,r,o)}function pt(e,t,n,a,u,r,o){return Ir(t&a|n&~a,e,t,u,r,o)}function ft(e,t,n,a,u,r,o){return Ir(t^n^a,e,t,u,r,o)}function ht(e,t,n,a,u,r,o){return Ir(n^(t|~a),e,t,u,r,o)}function Nr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,l=-271733879,s=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function si(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Nr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=Nr(u.concat(si(t)),512+t.length*8),x3(Nr(r.concat(o),512+128))}function C3(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function li(e){return unescape(encodeURIComponent(e))}function w3(e){return Oh(li(e))}function Ih(e){return C3(w3(e))}function v3(e,t){return Nh(li(e),li(t))}function jh(e,t){return C3(v3(e,t))}function _n(e,t,n){return t?n?v3(t,e):jh(t,e):n?w3(e):Ih(e)}function k3(e,t,n){let a=zh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((l,s)=>l+s.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function zh(e,t){let n=[],a=[];for(let u=0;u0?ft){let p=[];li(v,t,p);for(let C=0;C0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&li(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let s=r.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){u=!1;break}}r.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var C3=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let s=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,d=!!s.beta;return i===e.translationService||l&&u||c&&(n||u)||d&&(a||n||u)?!0:!c&&!d&&!l}).map(i=>ci(i,e))};function _t(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var Pa=[];async function jr(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function w3(e){let t=`${q}-${e.service}@${e.from}->${e.to}`;return await Oh(t,e)}async function v3(e){let t=_n(e.originalText),n=`${q}-${e.service}@${e.from}->${e.to}`;return await Rh(n,t)}async function Rh(e,t){let n=await jr(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),u()}})}async function Oh(e,t){let n=await jr(e);return(await Ih()).includes(e)||await Nh(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=s=>{n.close(),u(!0)},i.onerror=s=>{n.close(),u(!1)}})}async function Nh(e){let t="cache_list",n=await jr(q+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),Pa.push(e)},u.onerror=r=>{n.close()}}async function Ih(){if(Pa&&Pa.length>0)return Pa;let e=await jr(q+"-cacheList","cache_list");return Pa=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),Pa}var k3=se+"StoreKey_";function zr(e,t){let n=k3+e;return j.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function A3(e,t){let n=k3+e;return j.storage.local.set({[n]:t})}var S3=se+"SyncStoreKey_";function di(e,t){let n=S3+e;return j.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=S3+e;return j.storage.sync.set({[n]:t})}var Ur={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.1",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Rn(){return Ur.version}var D3="G-MKMD9LWFTR";async function tt(e,t,n){try{let a=Ve();if(a.INSTALL_FROM==="firefox_store")return;let r=ie(),o=lt(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let D=await zr(s,0),x=Hr(new Date(D)),L=Date.now(),O=Hr(new Date(L));if(x===O)return;await A3(s,L)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",d=await di("fakeUserId","");d||(d=await zr("fakeUserId",""),d&&await et("fakeUserId",d));let g=Rn(),m=new Date,f=await di("installedAt","");f||(f=await zr("installedAt",""),f&&await et("installedAt",f)),d?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(d=zh(32),await et("fakeUserId",d)),f||(f=m.toISOString(),await et("installedAt",f));let v=new Date(f),T=Hr(v),p=Hr(m),C=T===p,F=m.getTime()-v.getTime()<7*24*60*60*1e3,S=`https://www.google-analytics.com/mp/collect?measurement_id=${D3}&api_secret=${c}`;i||(S=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${D3}&api_secret=${c}`);let A=fr.parse(window.navigator.userAgent),y=t.map(D=>{let x=D.params||{};A.os&&(x.os_name=A.os.name||"unknown",x.os_version=A.os.version||"unknown",x.os_version_name=A.os.versionName||"unknown"),A.browser&&(x.browser_name=A.browser.name||"unknown",x.browser_version=A.browser.version||"unknown"),A.platform&&(x.platform_type=A.platform.type||"unknown"),A.engine&&(x.engine_name=A.engine.name||"unknown",x.engine_version=A.engine.version||"unknown"),n.translationService&&(x.translation_service=n.translationService),n.targetLanguage&&(x.target_language=n.targetLanguage),n.config.interfaceLanguage&&(x.interface_language=n.config.interfaceLanguage),g&&(x.version=g),n.config.translationTheme&&(x.translation_theme=n.config.translationTheme),n.config.alpha&&(x.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?x.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):x.always_translate_languages="none",a.INSTALL_FROM&&(x.install_from=a.INSTALL_FROM),n.config.beta&&(x.beta=n.config.alpha.toString()),n.config.translationArea&&(x.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(x.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),T&&(x.install_day=Uh(v)),n.config.translationMode&&(x.translation_mode=n.config.translationMode),x.userscript=r.toString(),C?x.is_new_user_today="1":x.is_new_user_today="0",F?x.is_new_user_this_week="1":x.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?x.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():x.temp_translate_domain_minutes="0";let L="html";if(n.rule.isEbook?L="ebookReader":n.rule.isPdf?L="pdfReader":n.rule.isEbookBuilder?L="ebookBuilder":n.rule.isSubtitleBuilder&&(L="subtitleBuilder"),x.page_type=L,o?x.main_frame=0:x.main_frame=1,!l){let O=n.url;try{let w=new URL(O);x.site_host=w.hostname}catch{x.site_host="unknown"}n.sourceLanguage&&(x.source_language=n.sourceLanguage)}return{...D,params:x}}),k=await G({responseType:"text",url:S,method:"POST",body:JSON.stringify({client_id:d,user_id:d,events:y})})}catch{}}function zh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var dt=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function On(e){return e!=null}function M3(e,t,n){return`${e.type}#${t}#${n}`}function _3(e,t,n,a,u){return{body:u,id:a,type:M3(e,t,n)}}function Hh(e,t,n,a){return{id:n,response:a,type:M3(e,"ask",t)}}function B3(e,t,n,a){if(On(a)){let u=a.type;if(On(u)&&On(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Wh(e,t,n){if(On(n)){let a=n.type;if(On(a)&&On(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function qh(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function $h(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Wh(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Kh(e,t,n,a){let u=r=>{let o=r.data;B3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function P3(e,t,n,a,u,r){let o=async i=>{let s=i.data;if(B3(n,"ask",a,s)){let l=await r(s.body);t=i.source,t.postMessage(Hh(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function Gh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(_3(t,"tell",n,r,a),u)}async function F3(e,t,n,a,u,r,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let d=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await $h(e,n,a,i);clearTimeout(d),l(g)});return t.postMessage(_3(n,"ask",a,i,u),r),s}var rn=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];P3(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(On(r))return new rn(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new rn(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new rn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await F3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Kh(this.thisWindow,this.protocol,t,n))}tell(t,n){Gh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(P3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return F3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){qh(this.listeners)}};var Vh;function Wr(){return Vh}var Jh=new dt({limit:7,interval:1250}),Yh={tencent:new dt({limit:3,interval:1350}),baidu:new dt({limit:1,interval:1550}),strict:new dt({limit:1,interval:1050}),d:new dt({limit:1,interval:1050}),youdao:new dt({limit:5,interval:1050}),you:new dt({limit:5,interval:1050}),cai:new dt({limit:5,interval:1050}),google:new dt({limit:10,interval:1050}),deepl:new dt({limit:10,interval:1050}),transmart:new dt({limit:30,interval:1050}),papago:new dt({limit:3,interval:1150}),openai:new dt({limit:10,interval:1300}),chatgpt:new dt({limit:1,interval:1350})};function Tu(e){return Yh[e]||Jh}async function R3(e){if(lt()){let n=Wr();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return P.error("can not comunicate with root frame, use strict limiter",a),Tu("strict").getDelay()}else return Tu("strict").getDelay()}else return Tu(e).getDelay()}async function O3(e,t){if(!lt()){let a=Tu(e);t&&a.setOptions(t)}}async function N3(e){let t=e.key;return{value:Tu(t).getDelay()}}var re=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let T of u)T.from&&T.from!=="auto"&&i.add(T.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=x3(u,l,c)}catch(T){if(a)for(let p=0;pT));let d=[],g=[],m=(T,p,C)=>{let F=p.translatedTexts[0];g[T]||(g[T]=p,g[T].translatedTexts=Array(p.sentenceTotalParts).fill(null)),g[T].translatedTexts[p.partIndex]=F;let S=g[T],A=0;for(let y=0;y{let S=await R3(this.translationOptions.translationService);await su(S||0);let A=p.from;if(s&&(A="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(A=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(k=>k.text),from:A,to:p.to,url:C,options:n}),sourceTempSentences:p.tempSentences};{let y=v4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(y=this.serviceConfig.translationTextSeparator);let k=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(k=this.serviceConfig.newlinePlaceholderDelimiters);let D="";k&&k.length>=2?D=p.tempSentences.map((R,J)=>J===p.tempSentences.length-1?R.text:R.text+k[0]+(J+1)+k[1]).join(""):D=p.tempSentences.map(R=>R.text).join(y);let x=await this.translate({text:D,from:A,to:p.to,url:C,options:n}),{text:L}=x,O=[];if(k&&k.length>=2){let R=`${k[0]}\\d+${k[1]}`;k&&k.length>=3&&(R=k[2]);let J=new RegExp(R,"g");O=L.split(J)}else O=L.split(y);let w=[];if(O.length>p.tempSentences.length){for(let R=0;R{let{text:A,sourceTempSentences:y}=S;for(let k=0;k{if(a){for(let A=0;A({...T.sentence,text:T.translatedTexts.join("")}))}}detectLanguageLocally(t){return Ye({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};re.langMap=new Map;var I3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Jt=class extends re{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Jt.langMap.get(u)||"auto",SourceText:a,Target:Jt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Jt.langMapReverse.get(i.Response.Source)||u,to:Jt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Jt.langMap.get(u)||"auto",SourceTextList:a,Target:Jt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Jt.langMapReverse.get(i.Response.Source)||u,to:Jt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),d=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Vt(r)].join(` -`),g=Jt.getUTCDate(l),m=["TC3-HMAC-SHA256",c,`${g}/${o}/tc3_request`,await Vt(d)].join(` -`),f=await Bc(g,`TC3${a}`),v=await vr(o,f),T=await vr("tc3_request",v),p=await vr(m,T),C=await G({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(C instanceof Error)throw C;if(C.Response&&C.Response.Error&&C.Response.Error.Message)throw new Error(C.Response.Error.Message);return C}},Xn=Jt;Xn.langMap=new Map(I3),Xn.langMapReverse=new Map(I3.map(([n,a])=>[a,n]));var j3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Xh={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},qr=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await G({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:Xh});return{text:i.targetText,from:qr.langMapReverse.get(i.source)||u,to:qr.langMapReverse.get(i.target)||r}}},Zn=qr;Zn.langMap=new Map(j3),Zn.langMapReverse=new Map(j3.map(([n,a])=>[a,n]));var z3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Nn=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ut(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Nn.langMap.get(u)||"auto",i=Nn.langMap.get(r)||r,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Nn.langMapReverse.get(s.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Nn.langMap.get(u)||"auto",i=Nn.langMap.get(r)||r,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Nn.langMapReverse.get(s.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await G({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await G({retry:2,url:o})}}},En=Nn;En.langMap=new Map(z3),En.langMapReverse=new Map(z3.map(([n,a])=>[a,n]));function Zh(e,t){return t?e+(t-e%t):e}function Qh(e,t){return e.split(t).length-1}function gi(e){let t=Date.now(),n=1;for(let a of e)n+=Qh(a,"i");return Zh(t,n)}function e9(e,t){return Math.floor(Math.random()*(t-e+1))+e}function mi(){return e9(1e6,1e8)}var pi="https://www2.deepl.com/jsonrpc",fi="auto",U3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function t9(e=U3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function hi(e){return t9()[e.toLowerCase()]}var n9={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function a9(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function u9(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function r9(e,t,n,a,u,r,o){let i=mi(),s=u9(a,n),l=[];t.forEach(g=>{l.push({text:g,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=gi(t);let c=await G({retry:2,method:"POST",url:e,body:a9(s),headers:n9}),d={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{d.text.push(g.text)}),d}async function H3(e,t,n,a=fi,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:r9(e,t,hi(n),hi(a)??"auto",u,r,o):{text:[],from:a,to:n}}var W3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Fa=class extends re{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=pi;n&&n.apiUrl&&(this.API_URL=Ut(pi,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await H3(this.API_URL,a,Fa.langMap.get(u)||u,Fa.langMap.get(r)||"auto");return{text:o.text,from:Fa.langMapReverse.get(o.from),to:Fa.langMapReverse.get(o.to)}}},In=Fa;In.langMap=new Map(W3),In.langMapReverse=new Map(W3.map(([n,a])=>[a,n]));var q3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],bi="https://transmart.qq.com/api/imt",Qn=class extends re{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Qn.langMap.get(r)||r,i=Qn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let s=Ve(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=$3());let d=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),g=await G({url:bi,body:d,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=Ve(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=$3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(u.join(` -`));if(l===r)return{text:u,from:l,to:r};let c=Qn.langMap.get(l)||l,d=Qn.langMap.get(r)||r,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:d},type:"plain"}),m=await G({url:bi,body:g,method:"POST"});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:l||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await G({url:bi,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Qn.langMapReverse.get(r);return o||r}},ea=Qn;ea.langMap=new Map(q3),ea.langMapReverse=new Map(q3.map(([n,a])=>[a,n]));function $3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function K3(){return Math.random()>=0}var Ma=class extends re{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await G3(),!K3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var J3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],Ei=new Map(J3),V3=new Map(J3.map(([e,t])=>[t,e])),yi=class extends re{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=yi.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await G({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:Ei.get(u)||"auto",target_lang:Ei.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:V3.get(i.source_lang),to:V3.get(i.target_lang)}}else throw new Error(o.msg)}},xu=yi;xu.langMap=Ei,xu.DEFAULT_CODENAME="deepl";var $r=xu;var Kr=new Map;async function Ti(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=_n(e.body)),Kr.has(t))return Kr.get(t);let n=G(e);Kr.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Kr.delete(t)},3e4)}}async function Y3(e){return Ti(e)}async function Cu(e){if(lt()){let n=Wr();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw P.error("can not comunicate with root frame, use strict limiter",a),a}else return Ti(e)}else return Ti(e)}var Dt=null,X3=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],xi=new Map(X3),o9=new Map(X3.map(([e,t])=>[t,e])),Gr=class extends re{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ut(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ut(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ut(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ut(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await j.storage.local.remove(mn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await j.storage.local.get(mn);a&&a[mn]&&(Dt=a[mn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new pr(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?Cu({url:u,...r}):G({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,j.storage.local.set({[mn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await j.storage.local.set({[mn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:xi.get(a)||"",target_lang:xi.get(u)||u},i=this.getRandomKey(),s=new URLSearchParams(o);r.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let d;if(i.startsWith("immersive_")){let f=new pr(i,{state:Dt,onFetch:(v,T)=>{let C=new URL(v).pathname;return C==="/refresh_token"||C==="/oidc/token"?Cu({url:v,...T}):G({url:v,...T})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:v=>{Dt=v,j.storage.local.set({[mn]:Dt})}});d=await f.translateApi(l),f.getIsStateChanged()&&(Dt=f.getState(),await j.storage.local.set({[mn]:Dt}))}else d=await G({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=d,m=g.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let T=await new En(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(p=>p.text).join(` +`;continue}else if(C.length>t){let p=[];ci(C,t,p);for(let w=0;w0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&ci(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let l=r.filter(s=>s.required);if(l.length>0){for(let s of l)if(!a[s.name]&&!s.default){u=!1;break}}r.forEach(s=>{s.optional?i.push(s):o.push(s)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var A3=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let l=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let s=!!l.canary,c=!!l.alpha,d=!!l.beta;return i===e.translationService||s&&u||c&&(n||u)||d&&(a||n||u)?!0:!c&&!d&&!s}).map(i=>di(i,e))};function _t(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var Pa=[];async function jr(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let l=o.result,s=t||"cache";l.createObjectStore(s,{keyPath:"key"})}})}async function S3(e){let t=`${W}-${e.service}@${e.from}->${e.to}`;return await Hh(t,e)}async function D3(e){let t=_n(e.originalText),n=`${W}-${e.service}@${e.from}->${e.to}`;return await Uh(n,t)}async function Uh(e,t){let n=await jr(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=l=>{n.close();let s=i.result;a(s)},i.onerror=l=>{n.close(),u()}})}async function Hh(e,t){let n=await jr(e);return(await qh()).includes(e)||await Wh(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=l=>{n.close(),u(!0)},i.onerror=l=>{n.close(),u(!1)}})}async function Wh(e){let t="cache_list",n=await jr(W+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),Pa.push(e)},u.onerror=r=>{n.close()}}async function qh(){if(Pa&&Pa.length>0)return Pa;let e=await jr(W+"-cacheList","cache_list");return Pa=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),Pa}var L3=se+"StoreKey_";function zr(e,t){let n=L3+e;return j.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function P3(e,t){let n=L3+e;return j.storage.local.set({[n]:t})}var F3=se+"SyncStoreKey_";function gi(e,t){let n=F3+e;return j.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=F3+e;return j.storage.sync.set({[n]:t})}var Ur={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.2",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Rn(){return Ur.version}var M3="G-MKMD9LWFTR";async function ot(e,t,n){try{let a=Ve();if(a.INSTALL_FROM==="firefox_store")return;let r=ie(),o=lt(),i=a.PROD==="1",l=`report_${e}`,s=e.endsWith("_daily");if(s){if(o)return;let L=await zr(l,0),x=Hr(new Date(L)),P=Date.now(),O=Hr(new Date(P));if(x===O)return;await P3(l,P)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",d=await gi("fakeUserId","");d||(d=await zr("fakeUserId",""),d&&await et("fakeUserId",d));let g=Rn(),m=new Date,f=await gi("installedAt","");f||(f=await zr("installedAt",""),f&&await et("installedAt",f)),d?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(d=Kh(32),await et("fakeUserId",d)),f||(f=m.toISOString(),await et("installedAt",f));let C=new Date(f),T=Hr(C),p=Hr(m),w=T===p,F=m.getTime()-C.getTime()<7*24*60*60*1e3,S=`https://www.google-analytics.com/mp/collect?measurement_id=${M3}&api_secret=${c}`;i||(S=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${M3}&api_secret=${c}`);let A=fr.parse(window.navigator.userAgent),y=t.map(L=>{let x=L.params||{};A.os&&(x.os_name=A.os.name||"unknown",x.os_version=A.os.version||"unknown",x.os_version_name=A.os.versionName||"unknown"),A.browser&&(x.browser_name=A.browser.name||"unknown",x.browser_version=A.browser.version||"unknown"),A.platform&&(x.platform_type=A.platform.type||"unknown"),A.engine&&(x.engine_name=A.engine.name||"unknown",x.engine_version=A.engine.version||"unknown"),n.translationService&&(x.translation_service=n.translationService),n.targetLanguage&&(x.target_language=n.targetLanguage),n.config.interfaceLanguage&&(x.interface_language=n.config.interfaceLanguage),g&&(x.version=g),n.config.translationTheme&&(x.translation_theme=n.config.translationTheme),n.config.alpha&&(x.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?x.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):x.always_translate_languages="none",a.INSTALL_FROM&&(x.install_from=a.INSTALL_FROM),n.config.beta&&(x.beta=n.config.alpha.toString()),n.config.translationArea&&(x.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(x.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),T&&(x.install_day=Gh(C)),n.config.translationMode&&(x.translation_mode=n.config.translationMode),x.userscript=r.toString(),w?x.is_new_user_today="1":x.is_new_user_today="0",F?x.is_new_user_this_week="1":x.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?x.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():x.temp_translate_domain_minutes="0";let P="html";if(n.rule.isEbook?P="ebookReader":n.rule.isPdf?P="pdfReader":n.rule.isEbookBuilder?P="ebookBuilder":n.rule.isSubtitleBuilder&&(P="subtitleBuilder"),x.page_type=P,o?x.main_frame=0:x.main_frame=1,!s){let O=n.url;try{let v=new URL(O);x.site_host=v.hostname}catch{x.site_host="unknown"}n.sourceLanguage&&(x.source_language=n.sourceLanguage)}return{...L,params:x}}),k=await G({responseType:"text",url:S,method:"POST",body:JSON.stringify({client_id:d,user_id:d,events:y})})}catch{}}function Kh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var dt=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function On(e){return e!=null}function O3(e,t,n){return`${e.type}#${t}#${n}`}function N3(e,t,n,a,u){return{body:u,id:a,type:O3(e,t,n)}}function Vh(e,t,n,a){return{id:n,response:a,type:O3(e,"ask",t)}}function I3(e,t,n,a){if(On(a)){let u=a.type;if(On(u)&&On(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Jh(e,t,n){if(On(n)){let a=n.type;if(On(a)&&On(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function Yh(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function Xh(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Jh(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Zh(e,t,n,a){let u=r=>{let o=r.data;I3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function B3(e,t,n,a,u,r){let o=async i=>{let l=i.data;if(I3(n,"ask",a,l)){let s=await r(l.body);t=i.source,t.postMessage(Vh(n,a,l.id,s),i.origin)}};return e.addEventListener("message",o),[e,o]}function Qh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(N3(t,"tell",n,r,a),u)}async function R3(e,t,n,a,u,r,o){let i=Math.random().toString(),l=new Promise(async(s,c)=>{let d=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await Xh(e,n,a,i);clearTimeout(d),s(g)});return t.postMessage(N3(n,"ask",a,i,u),r),l}var on=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];B3(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(On(r))return new on(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new on(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new on(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await R3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Zh(this.thisWindow,this.protocol,t,n))}tell(t,n){Qh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(B3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return R3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){Yh(this.listeners)}};var e9;function Wr(){return e9}var t9=new dt({limit:7,interval:1250}),n9={tencent:new dt({limit:3,interval:1350}),baidu:new dt({limit:1,interval:1550}),strict:new dt({limit:1,interval:1050}),d:new dt({limit:1,interval:1050}),youdao:new dt({limit:5,interval:1050}),you:new dt({limit:5,interval:1050}),cai:new dt({limit:5,interval:1050}),google:new dt({limit:10,interval:1050}),deepl:new dt({limit:10,interval:1050}),transmart:new dt({limit:30,interval:1050}),papago:new dt({limit:3,interval:1150}),openai:new dt({limit:10,interval:1300}),chatgpt:new dt({limit:1,interval:1350})};function Tu(e){return n9[e]||t9}async function j3(e){if(lt()){let n=Wr();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return D.error("can not comunicate with root frame, use strict limiter",a),Tu("strict").getDelay()}else return Tu("strict").getDelay()}else return Tu(e).getDelay()}async function z3(e,t){if(!lt()){let a=Tu(e);t&&a.setOptions(t)}}async function U3(e){let t=e.key;return{value:Tu(t).getDelay()}}var re=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let T of u)T.from&&T.from!=="auto"&&i.add(T.from);let l=!1;i.size>1&&(l=!0);let s=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(s=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=k3(u,s,c)}catch(T){if(a)for(let p=0;pT));let d=[],g=[],m=(T,p,w)=>{let F=p.translatedTexts[0];g[T]||(g[T]=p,g[T].translatedTexts=Array(p.sentenceTotalParts).fill(null)),g[T].translatedTexts[p.partIndex]=F;let S=g[T],A=0;for(let y=0;y{let S=await j3(this.translationOptions.translationService);await su(S||0);let A=p.from;if(l&&(A="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(A=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(k=>k.text),from:A,to:p.to,url:w,options:n}),sourceTempSentences:p.tempSentences};{let y=D4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(y=this.serviceConfig.translationTextSeparator);let k=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(k=this.serviceConfig.newlinePlaceholderDelimiters);let L="";k&&k.length>=2?L=p.tempSentences.map((R,J)=>J===p.tempSentences.length-1?R.text:R.text+k[0]+(J+1)+k[1]).join(""):L=p.tempSentences.map(R=>R.text).join(y);let x=await this.translate({text:L,from:A,to:p.to,url:w,options:n}),{text:P}=x,O=[];if(k&&k.length>=2){let R=`${k[0]}\\d+${k[1]}`;k&&k.length>=3&&(R=k[2]);let J=new RegExp(R,"g");O=P.split(J)}else O=P.split(y);let v=[];if(O.length>p.tempSentences.length){for(let R=0;R{let{text:A,sourceTempSentences:y}=S;for(let k=0;k{if(a){for(let A=0;A({...T.sentence,text:T.translatedTexts.join("")}))}}detectLanguageLocally(t){return Ye({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};re.langMap=new Map;var H3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Jt=class extends re{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Jt.langMap.get(u)||"auto",SourceText:a,Target:Jt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Jt.langMapReverse.get(i.Response.Source)||u,to:Jt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Jt.langMap.get(u)||"auto",SourceTextList:a,Target:Jt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Jt.langMapReverse.get(i.Response.Source)||u,to:Jt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let l=`${o}.tencentcloudapi.com`,s=new Date,c=`${new Date().valueOf()}`.slice(0,10),d=["POST","/","","content-type:application/json; charset=utf-8",`host:${l}`,"","content-type;host",await Vt(r)].join(` +`),g=Jt.getUTCDate(s),m=["TC3-HMAC-SHA256",c,`${g}/${o}/tc3_request`,await Vt(d)].join(` +`),f=await Ic(g,`TC3${a}`),C=await vr(o,f),T=await vr("tc3_request",C),p=await vr(m,T),w=await G({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:l,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(w instanceof Error)throw w;if(w.Response&&w.Response.Error&&w.Response.Error.Message)throw new Error(w.Response.Error.Message);return w}},Xn=Jt;Xn.langMap=new Map(H3),Xn.langMapReverse=new Map(H3.map(([n,a])=>[a,n]));var W3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],a9={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},qr=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await G({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:a9});return{text:i.targetText,from:qr.langMapReverse.get(i.source)||u,to:qr.langMapReverse.get(i.target)||r}}},Zn=qr;Zn.langMap=new Map(W3),Zn.langMapReverse=new Map(W3.map(([n,a])=>[a,n]));var q3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Nn=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ut(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Nn.langMap.get(u)||"auto",i=Nn.langMap.get(r)||r,l=await this.fetchWithoutToken(a,o,i);if(!l)throw new Error("google translate NETWORK_ERROR");if(!l.data[0]||l.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:l.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Nn.langMapReverse.get(l.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Nn.langMap.get(u)||"auto",i=Nn.langMap.get(r)||r,l=await this.fetchXmlWithoutToken(a,o,i);if(!l)throw new Error("google translate NETWORK_ERROR");if(!l.data[0]||l.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:l.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Nn.langMapReverse.get(l.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await G({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await G({retry:2,url:o})}}},En=Nn;En.langMap=new Map(q3),En.langMapReverse=new Map(q3.map(([n,a])=>[a,n]));function u9(e,t){return t?e+(t-e%t):e}function r9(e,t){return e.split(t).length-1}function mi(e){let t=Date.now(),n=1;for(let a of e)n+=r9(a,"i");return u9(t,n)}function o9(e,t){return Math.floor(Math.random()*(t-e+1))+e}function pi(){return o9(1e6,1e8)}var fi="https://www2.deepl.com/jsonrpc",hi="auto",$3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function i9(e=$3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function bi(e){return i9()[e.toLowerCase()]}var s9={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function l9(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function c9(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function d9(e,t,n,a,u,r,o){let i=pi(),l=c9(a,n),s=[];t.forEach(g=>{s.push({text:g,requestAlternatives:3})}),l.id=i,l.params.texts=s,l.params.timestamp=mi(t);let c=await G({retry:2,method:"POST",url:e,body:l9(l),headers:s9}),d={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{d.text.push(g.text)}),d}async function K3(e,t,n,a=hi,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:d9(e,t,bi(n),bi(a)??"auto",u,r,o):{text:[],from:a,to:n}}var G3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Fa=class extends re{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=fi;n&&n.apiUrl&&(this.API_URL=Ut(fi,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await K3(this.API_URL,a,Fa.langMap.get(u)||u,Fa.langMap.get(r)||"auto");return{text:o.text,from:Fa.langMapReverse.get(o.from),to:Fa.langMapReverse.get(o.to)}}},In=Fa;In.langMap=new Map(G3),In.langMapReverse=new Map(G3.map(([n,a])=>[a,n]));var V3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Ei="https://transmart.qq.com/api/imt",Qn=class extends re{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Qn.langMap.get(r)||r,i=Qn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let l=Ve(),s=n.url;l.INSTALL_FROM==="firefox_store"&&(s=J3());let d=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:s},target:{lang:i}}),g=await G({url:Ei,body:d,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=Ve(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=J3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let s=await this.detectLanguage(u.join(` +`));if(s===r)return{text:u,from:s,to:r};let c=Qn.langMap.get(s)||s,d=Qn.langMap.get(r)||r,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:d},type:"plain"}),m=await G({url:Ei,body:g,method:"POST"});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:s||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await G({url:Ei,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Qn.langMapReverse.get(r);return o||r}},ea=Qn;ea.langMap=new Map(V3),ea.langMapReverse=new Map(V3.map(([n,a])=>[a,n]));function J3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function Y3(){return Math.random()>=0}var Ma=class extends re{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await X3(),!Y3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var Q3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],yi=new Map(Q3),Z3=new Map(Q3.map(([e,t])=>[t,e])),Ti=class extends re{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=Ti.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await G({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:yi.get(u)||"auto",target_lang:yi.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:Z3.get(i.source_lang),to:Z3.get(i.target_lang)}}else throw new Error(o.msg)}},xu=Ti;xu.langMap=yi,xu.DEFAULT_CODENAME="deepl";var $r=xu;var Kr=new Map;async function xi(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=_n(e.body)),Kr.has(t))return Kr.get(t);let n=G(e);Kr.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Kr.delete(t)},3e4)}}async function ed(e){return xi(e)}async function Cu(e){if(lt()){let n=Wr();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw D.error("can not comunicate with root frame, use strict limiter",a),a}else return xi(e)}else return xi(e)}var Dt=null,td=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Ci=new Map(td),g9=new Map(td.map(([e,t])=>[t,e])),Gr=class extends re{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ut(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ut(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ut(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ut(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await j.storage.local.remove(mn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await j.storage.local.get(mn);a&&a[mn]&&(Dt=a[mn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new pr(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?Cu({url:u,...r}):G({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,j.storage.local.set({[mn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await j.storage.local.set({[mn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:Ci.get(a)||"",target_lang:Ci.get(u)||u},i=this.getRandomKey(),l=new URLSearchParams(o);r.forEach(f=>{l.append("text",f)});let s=l.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let d;if(i.startsWith("immersive_")){let f=new pr(i,{state:Dt,onFetch:(C,T)=>{let w=new URL(C).pathname;return w==="/refresh_token"||w==="/oidc/token"?Cu({url:C,...T}):G({url:C,...T})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:C=>{Dt=C,j.storage.local.set({[mn]:Dt})}});d=await f.translateApi(s),f.getIsStateChanged()&&(Dt=f.getState(),await j.storage.local.set({[mn]:Dt}))}else d=await G({retry:2,url:c,method:"POST",body:s,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=d,m=g.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let T=await new En(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(p=>p.text).join(` `),url:"",options:{}});T&&T.text&&(m=T.text.split(` -`))}return{text:m,from:g[0]&&o9.get(g[0].detected_source_language)||a,to:u}}};Gr.langMap=xi;var Z3=Gr;var i9=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],Ci=new Map(i9),Vr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:Ci.get(u)||u,to:Ci.get(r)||r,apikey:this.APIKEY})},s=await G(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` -`)&&(l=l.slice(0,-1)),{text:l,from:u,to:r}}else throw new Error(JSON.stringify(s))}};Vr.langMap=Ci;var Q3=Vr;var s9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],wi=new Map(s9),Jr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:wi.get(r)||r};u!=="auto"&&(o.from=wi.get(u)||u);let i=new URLSearchParams(o),s=JSON.stringify(a.map(d=>({text:d}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await G(l);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(d=>d.translations.map(m=>m.text).join(" "))}}};Jr.langMap=wi;var ed=Jr;var l9=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],wu=new Map(l9),vi=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=` +`))}return{text:m,from:g[0]&&g9.get(g[0].detected_source_language)||a,to:u}}};Gr.langMap=Ci;var nd=Gr;var m9=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],wi=new Map(m9),Vr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:wi.get(u)||u,to:wi.get(r)||r,apikey:this.APIKEY})},l=await G(i);if(l.tgt_text){let s=l.tgt_text;return s.endsWith(` +`)&&(s=s.slice(0,-1)),{text:s,from:u,to:r}}else throw new Error(JSON.stringify(l))}};Vr.langMap=wi;var ad=Vr;var p9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],vi=new Map(p9),Jr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:vi.get(r)||r};u!=="auto"&&(o.from=vi.get(u)||u);let i=new URLSearchParams(o),l=JSON.stringify(a.map(d=>({text:d}))),s={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:l},c=await G(s);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(d=>d.translations.map(m=>m.text).join(" "))}}};Jr.langMap=vi;var ud=Jr;var f9=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],wu=new Map(f9),ki=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=`
-`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!wu.get(u)?(o=(await G({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||wu.get(u)||u,target:wu.get(r)||r})):l.body=JSON.stringify({text:s,source:wu.get(u),target:wu.get(r)||r});let c=await G(l);if(c.translatedText==="")throw new Error("server response invalid");let d=c.translatedText.split("
").map(g=>g.trim());return{from:u,to:r,text:d}}},td=vi;var c9=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],vu=new Map(c9),Yr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,l=a.join(i),s={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!wu.get(u)?(o=(await G({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:l})).langCode,s.body=JSON.stringify({text:l,source:o||wu.get(u)||u,target:wu.get(r)||r})):s.body=JSON.stringify({text:l,source:wu.get(u),target:wu.get(r)||r});let c=await G(s);if(c.translatedText==="")throw new Error("server response invalid");let d=c.translatedText.split("
").map(g=>g.trim());return{from:u,to:r,text:d}}},rd=ki;var h9=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],vu=new Map(h9),Yr=class extends re{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ut(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ut(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=vu.get(u)||u,i=vu.get(r)||r,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let m=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:m})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},d=this.getRandomKey();d&&(c.headers.Authorization="Bearer "+d,c.headers["api-key"]=d,d.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await G(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let m=g.choices[0].message.content.trim();return m.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(m=""),!a.includes(".")&&(m.endsWith("\u3002")||m.endsWith("."))&&(m=m.slice(0,-1)),{from:u,to:r,text:m}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,vu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,vu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await G(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:u,to:r,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};Yr.langMap=vu;var nd=Yr;var ki=se+"CacheKey_";function Xr(e,t){let n=ki+e;return j.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),i0(this,_a)}},Si=to;_a=new WeakMap;var Di=new Si;Object.freeze(Di);var ku=class extends re{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: +{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ut(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ut(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=vu.get(u)||u,i=vu.get(r)||r,l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),s=[];if(this.systemPrompt){let m=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);s.push({role:"system",content:m})}this.prompt&&s.push({role:"user",content:l}),this.prompt.indexOf("{{text}}")===-1&&s.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:s})},d=this.getRandomKey();d&&(c.headers.Authorization="Bearer "+d,c.headers["api-key"]=d,d.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await G(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let m=g.choices[0].message.content.trim();return m.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(m=""),!a.includes(".")&&(m.endsWith("\u3002")||m.endsWith("."))&&(m=m.slice(0,-1)),{from:u,to:r,text:m}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,vu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,vu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},l=await G(i);if(l&&l.choices&&l.choices.length>0&&l.choices[0].text){let s=l.choices[0].text.trim();return{from:u,to:r,text:s}}else throw new Error("server response invalid: "+JSON.stringify(l))}};Yr.langMap=vu;var od=Yr;var Ai=se+"CacheKey_";function Xr(e,t){let n=Ai+e;return j.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),s0(this,_a)}},Di=to;_a=new WeakMap;var Li=new Di;Object.freeze(Li);var ku=class extends re{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: -{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{r=s,n.apply(l,i)};s-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return P.debug("delete conversation res:",a),a}}async translate(n){return await Di.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=eo.get(u)||u,i=eo.get(r)||r;if(this.accessToken=await ad(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:_t()})});return P.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw P.debug("post chatgpt error:",c),await Qr(Ai),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:d}=s;a(null,{from:l,to:c,text:d})},300,200);await Di.enqueue(async()=>{let s="chatgpt"+_t(),l=j.runtime.connect({name:s}),c,d;l.onMessage.addListener(T=>{if(!(!T||T==="")){if(T==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{d=JSON.parse(T)}catch(p){P.debug("chatgpt json error",p,T);return}c=d?.conversation_id,d?.message?.author?.role==="assistant"&&i({from:r,to:o,text:d?.message?.content?.parts?.[0]})}});let g=eo.get(r)||r,m=eo.get(o)||o;if(this.accessToken=await ad(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let v=this.prompt.replace(/{{to}}/g,m).replace(/{{text}}/g,u).replace(/{{from}}/g,g);G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[v]}}],model:f,parent_message_id:_t()})}).catch(T=>{P.debug("chatgpt error",T),l.disconnect(),this.deleteConversation(c),a(T,{from:r,to:o,text:""})})})}};var g9=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],$e={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Li=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Pi=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Li(t);if(a)return Array.isArray(n)?`${a}=${n.map(Li).sort().join(`&${a}=`)}`:`${a}=${Li(n)}`}).filter(t=>t).join("&"),Ba=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${$e.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[$e.tokenHeader]=t.sessionToken),u[$e.dateHeader]=a,u[$e.notSignBody]="",u[$e.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[$e.algorithmKey]=$e.algorithm,u[$e.signHeadersKey]="",u[$e.signQueriesKey]=void 0,u[$e.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[$e.signQueriesKey]=Object.keys(u).sort().join(";"),u[$e.signatureKey]=i,Pi(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[$e.dateHeader]=n,t.sessionToken&&(this.request.headers[$e.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[$e.contentSha256Header]=await Vt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return wr(await Pn(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push($e.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` -`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Pi(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} +{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let l=Date.now(),s=this,c=()=>{r=l,n.apply(s,i)};l-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return D.debug("delete conversation res:",a),a}}async translate(n){return await Li.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=eo.get(u)||u,i=eo.get(r)||r;if(this.accessToken=await id(),!this.accessToken||this.accessToken==="")throw new Error("token error");let l="text-davinci-002-render-sha-mobile";if(!l)throw new Error("No available model");let s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[s]}}],model:l,parent_message_id:_t()})});return D.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw D.debug("post chatgpt error:",c),await Qr(Si),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(l){let{from:s,to:c,text:d}=l;a(null,{from:s,to:c,text:d})},300,200);await Li.enqueue(async()=>{let l="chatgpt"+_t(),s=j.runtime.connect({name:l}),c,d;s.onMessage.addListener(T=>{if(!(!T||T==="")){if(T==="[DONE]"){s.disconnect(),this.deleteConversation(c);return}try{d=JSON.parse(T)}catch(p){D.debug("chatgpt json error",p,T);return}c=d?.conversation_id,d?.message?.author?.role==="assistant"&&i({from:r,to:o,text:d?.message?.content?.parts?.[0]})}});let g=eo.get(r)||r,m=eo.get(o)||o;if(this.accessToken=await id(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let C=this.prompt.replace(/{{to}}/g,m).replace(/{{text}}/g,u).replace(/{{from}}/g,g);G({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:l},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:_t(),role:"user",content:{content_type:"text",parts:[C]}}],model:f,parent_message_id:_t()})}).catch(T=>{D.debug("chatgpt error",T),s.disconnect(),this.deleteConversation(c),a(T,{from:r,to:o,text:""})})})}};var E9=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],$e={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Pi=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Fi=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Pi(t);if(a)return Array.isArray(n)?`${a}=${n.map(Pi).sort().join(`&${a}=`)}`:`${a}=${Pi(n)}`}).filter(t=>t).join("&"),Ba=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${$e.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[$e.tokenHeader]=t.sessionToken),u[$e.dateHeader]=a,u[$e.notSignBody]="",u[$e.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[$e.algorithmKey]=$e.algorithm,u[$e.signHeadersKey]="",u[$e.signQueriesKey]=void 0,u[$e.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[$e.signQueriesKey]=Object.keys(u).sort().join(";"),u[$e.signatureKey]=i,Fi(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[$e.dateHeader]=n,t.sessionToken&&(this.request.headers[$e.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[$e.contentSha256Header]=await Vt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return wr(await Pn(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push($e.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` +`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Fi(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} `),t.push(this.signedHeaders()),t.push(await this.hexEncodedBodyHash()),t.join(` `)}canonicalHeaders(){let t=[];Object.keys(this.request.headers).forEach(a=>{t.push([a,this.request.headers[a]])}),t.sort((a,u)=>a[0].toLowerCase(){let u=a[0].toLowerCase();if(this.isSignableHeader(u)){let r=a[1];if(typeof r>"u"||r===null||typeof r.toString!="function")throw new Error(`Header ${u} contains invalid value`);n.push(`${u}:${this.canonicalHeaderValues(r.toString())}`)}}),n.join(` -`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Vt(t)}async hexEncodedBodyHash(){return this.request.headers[$e.contentSha256Header]?this.request.headers[$e.contentSha256Header]:this.request.body?await this.hexEncodedHash(Pi(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return g9.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await Pn(n,`${$e.kDatePrefix}${t.secretKey}`),o=await Pn(a,r),i=await Pn(u,o);return Pn($e.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,$e.v4Identifier].join("/")}};var ud=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Fi=new Map(ud),m9=new Map(ud.map(([e,t])=>[t,e])),no=class extends re{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Ba(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await G({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new Qe(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new Qe(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=Fi.get(u),i={TargetLanguage:Fi.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` -`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new Ba(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),d=await G({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(d.TranslationList){let g=d.TranslationList.map(f=>f.Translation),m=u;return d.TranslationList.length>0&&d.TranslationList[0].DetectedSourceLanguage&&(m=m9.get(d.TranslationList[0].DetectedSourceLanguage)||u),{text:g,from:m,to:r}}else if(d.ResponseMetadata&&d.ResponseMetadata.Error){let g=d.ResponseMetadata.Error;throw new Qe(g.Code,g.Message)}else if(d.ResponseMetaData&&d.ResponseMetaData.Error){let g=d.ResponseMetaData.Error;throw new Qe(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(d))}};no.langMap=Fi;var rd=no;var od=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Mi=new Map(od),p9=new Map(od.map(([e,t])=>[t,e])),Ra=class extends re{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=Mi.get(u)||"detect",i=Mi.get(r)||r,l=await G({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,d=u;return l.detected_language&&(d=p9.get(l.detected_language)||u),{text:c,from:d,to:r}}else{let c=l.base_resp;throw new Qe(c.status_code.toString(),c.status_message)}}};Ra.langMap=Mi;var f9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],_i=new Map(f9),Oa=class extends re{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await G({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:_i.get(u)||u,target_lang:_i.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Oa.langMap=_i;var Bi="https://{s}bing.com",dd=Bi+"/translator",h9=Bi+"/ttranslatev3",b9=Bi+"/tspellcheckv3",ao="bingGlobalConfig",gd=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],id=new Map(gd),sd=new Map(gd.map(([e,t])=>[t,e])),ld=1e3,Yt,Na;function Ri(e,t){return e.replace("{s}",t?t+".":"")}async function E9(){if(!Yt){let n=await j.storage.local.get(ao);return n&&(Yt=n[ao]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Yt;return Date.now()-e>t}async function cd(){let e,t,n,a,u,r,o,i,s,l;try{let c=Ri(dd,e),d=await G({retry:2,url:c,responseType:"raw"}),{body:g,headers:m,url:f}=d;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=m["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,s]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Yt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await j.storage.local.set({[ao]:Yt}),Yt}function y9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Yt;return Ri(e?b9:h9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Yt.count++:"")}function T9(e,t,n,a){let{token:u,key:r}=Yt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function md(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>ld)throw new Error(`The supported maximum length of text is ${ld}. Please shorten the text.`);Na||(Na=cd()),await Na,await E9()&&(Na=cd(),await Na),t=t||"auto",n=n||"zh-CN",t=id.get(t)||t,n=id.get(n)||n;let u=y9(!1),r=T9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Ri(dd,Yt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),s=u,l=i.toString(),c=await G({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Yt=null,Na=null,await j.storage.local.remove(ao),c.ShowCaptcha)throw new Error(` +`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Vt(t)}async hexEncodedBodyHash(){return this.request.headers[$e.contentSha256Header]?this.request.headers[$e.contentSha256Header]:this.request.body?await this.hexEncodedHash(Fi(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return E9.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await Pn(n,`${$e.kDatePrefix}${t.secretKey}`),o=await Pn(a,r),i=await Pn(u,o);return Pn($e.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,$e.v4Identifier].join("/")}};var sd=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Mi=new Map(sd),y9=new Map(sd.map(([e,t])=>[t,e])),no=class extends re{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Ba(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await G({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let l=i.ResponseMetadata.Error;throw new Qe(l.Code,l.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let l=i.ResponseMetaData.Error;throw new Qe(l.Code,l.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=Mi.get(u),i={TargetLanguage:Mi.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` +`).slice(0,1e3));let l={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},s=new Ba(l,"translate");await s.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(l.params),d=await G({retry:2,url:"https://open.volcengineapi.com"+l.pathname+"?"+c.toString(),headers:s.request.headers,method:l.method,body:l.body});if(d.TranslationList){let g=d.TranslationList.map(f=>f.Translation),m=u;return d.TranslationList.length>0&&d.TranslationList[0].DetectedSourceLanguage&&(m=y9.get(d.TranslationList[0].DetectedSourceLanguage)||u),{text:g,from:m,to:r}}else if(d.ResponseMetadata&&d.ResponseMetadata.Error){let g=d.ResponseMetadata.Error;throw new Qe(g.Code,g.Message)}else if(d.ResponseMetaData&&d.ResponseMetaData.Error){let g=d.ResponseMetaData.Error;throw new Qe(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(d))}};no.langMap=Mi;var ld=no;var cd=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],_i=new Map(cd),T9=new Map(cd.map(([e,t])=>[t,e])),Ra=class extends re{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=_i.get(u)||"detect",i=_i.get(r)||r,s=await G({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(s.base_resp&&s.base_resp.status_code===0){let c=s.translation,d=u;return s.detected_language&&(d=T9.get(s.detected_language)||u),{text:c,from:d,to:r}}else{let c=s.base_resp;throw new Qe(c.status_code.toString(),c.status_message)}}};Ra.langMap=_i;var x9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Bi=new Map(x9),Oa=class extends re{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await G({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:Bi.get(u)||u,target_lang:Bi.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Oa.langMap=Bi;var Ri="https://{s}bing.com",fd=Ri+"/translator",C9=Ri+"/ttranslatev3",w9=Ri+"/tspellcheckv3",ao="bingGlobalConfig",hd=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],dd=new Map(hd),gd=new Map(hd.map(([e,t])=>[t,e])),md=1e3,Yt,Na;function Oi(e,t){return e.replace("{s}",t?t+".":"")}async function v9(){if(!Yt){let n=await j.storage.local.get(ao);return n&&(Yt=n[ao]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Yt;return Date.now()-e>t}async function pd(){let e,t,n,a,u,r,o,i,l,s;try{let c=Oi(fd,e),d=await G({retry:2,url:c,responseType:"raw"}),{body:g,headers:m,url:f}=d;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],s=m["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,l]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Yt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:l,cookie:s,count:0},await j.storage.local.set({[ao]:Yt}),Yt}function k9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Yt;return Oi(e?w9:C9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Yt.count++:"")}function A9(e,t,n,a){let{token:u,key:r}=Yt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function bd(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>md)throw new Error(`The supported maximum length of text is ${md}. Please shorten the text.`);Na||(Na=pd()),await Na,await v9()&&(Na=pd(),await Na),t=t||"auto",n=n||"zh-CN",t=dd.get(t)||t,n=dd.get(n)||n;let u=k9(!1),r=A9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Oi(fd,Yt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),l=u,s=i.toString(),c=await G({retry:2,url:l,headers:o,method:"POST",body:s});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Yt=null,Na=null,await j.storage.local.remove(ao),c.ShowCaptcha)throw new Error(` Sorry that bing translator seems to be asking for the captcha, Please take care not to request too frequently. The response code is ${c.StatusCode}. `);if(c.StatusCode===401)throw new Error(` Max count of translation exceeded. Please try it again later. The response code is 401. - `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let d=c[0].translations[0],g=c[0].detectedLanguage;return{text:d.text,from:sd.get(g.language),to:sd.get(d.to)}}function pd(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var ta=null,x9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Oi=new Map(x9),Ia=class extends re{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){ta=null,await Qr(Zu)}async translate(n){let{text:a,from:u,to:r}=n;return a?await md(a,u,r):{...n}}async init(){if(!ta){ta={};let n=await Xr(Zu);n&&(ta=n)}await fd(ta)}async translateList(n){let{from:a,to:u,text:r}=n,o=Oi.get(a)||"auto",i=Oi.get(u)||u;o==="auto"&&(o="");let s=await fd(ta),l=[];for(let m of r)l.push({Text:m});let c=JSON.stringify(l),d=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await G({url:d,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(m=>m.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(g))}};Ia.langMap=Oi;async function fd(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return hd().catch(u=>{P.error(u)}),e}return hd()}async function hd(){let e=await Cu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=pd(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return ta=t,await Zr(Zu,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var bd=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Ni=new Map(bd),C9=new Map(bd.map(([e,t])=>[t,e])),uo=class extends re{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Ni.get(s)||"auto",to:Ni.get(l)||l,q:i,salt:a,appid:r,sign:_n(r+i+a+o)}),d=new URL(u);d.search=c.toString();let g=await G({url:d.toString()});if(g.error_code)throw new Qe("API_SERVER_ERROR",g.error_msg);let{trans_result:m,from:f}=g,v=m.map(({dst:p})=>p);return{from:C9.get(f)||f,to:l,text:v.join(` -`)}}};uo.langMap=Ni;var Ed=uo;var w9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ro=new Map(w9),oo=class extends re{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!ro.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ye({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await G({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${ro.get(u)||"auto"}2${ro.get(r)}`})})).target,from:u,to:r}}};oo.langMap=ro;var yd=oo;var v9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],io=new Map(v9),so=class extends re{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!io.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ye({text:a.join(" "),minLength:10}));let i=a;return{text:(await G({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${io.get(u)||"auto"}2${io.get(r)}`})})).target,from:u,to:r}}};so.langMap=io;var Td=so;var xd=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Ii=new Map(xd),k9=new Map(xd.map(([e,t])=>[t,e]));function A9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var lo=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=S9(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+A9(a)+o+i+this.appSecret,l=await Vt(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Ii.get(u)||"auto",to:Ii.get(r)||r,sign:l,signType:"v3",curtime:i.toString()},d=new URLSearchParams(c),m=await G({url:"https://openapi.youdao.com/api",method:"POST",body:d.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!m.translation)throw new Error(JSON.stringify(m));let f=m.l,[v,T]=f.split("2");return{text:m.translation.join(` -`),from:k9.get(v),to:r}}};lo.langMap=Ii;function S9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var co=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:ji.get(u)||"auto",to:ji.get(r)||r},i=new URLSearchParams(o),s=await G({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` -`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};co.langMap=ji;var vd=co;var D9={mock:Ma,mock2:Ma,google:En,transmart:ea,deepl:Z3,volc:rd,volcAlpha:Ra,bing:Ia,tencent:Xn,tenAlpha:Zn,baidu:Ed,caiyun:yd,cai:Td,openl:$r,youdao:Cd,you:vd,d:In,dpro:In,deeplx:Oa,niu:Q3,azure:ed,openai:nd,chatgpt:ku,papago:td},jn={};Object.keys(fn).forEach(e=>{jn[e]={...fn[e],class:D9[e]}});function kd(e,t){let n=Nt;if(jn[e]&&jn[e].class&&jn[e].class.langMap&&jn[e].class.langMap.size>0){let a=jn[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return Nt}async function ja(e,t){if(!e.text)return e;let n=await on({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Qe("translateFailed","translate failed")}async function zi(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new jn[r].class(o,a,{translationService:r}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await O3(r,o),await i.init()}async function on(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,s=u,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],d={sentences:Array(e.sentences.length)},g=e.sentences.length,m=-1;if(r.cache)for(let p of e.sentences){m++;let C=s;s==="openl"&&(C=s+"-"+l.codename||$r.DEFAULT_CODENAME);let F=null;try{F=await sr(Ad({originalText:p.text,from:p.from,to:p.to,service:C}),1e3)}catch(S){P.warn("query cache DB error, but it's ok",S)}if(F){let S={...p,text:F.translatedText};d.sentences[m]=S,n&&n(null,S,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&P.debug(`use ${g-f} sentences from cache`),!c.length)return d;let v;try{v=new jn[s].class(l,o,{translationService:s}),await v.init()}catch(p){if(n)for(let C of c)n(p,null,C);throw p}let T=await v.multipleTranslate({sentences:c},l,(p,C,F)=>{if(n&&n(p,C,F),!p&&C&&!s.startsWith("mock")&&r.cache){let S=s;s==="openl"&&(S=s+"-"+l.codename||$r.DEFAULT_CODENAME),r.cache&&sr(Sd({translatedText:C.text,from:F.from,to:F.to,detectedFrom:C.from,key:_n(F.text),service:S}),3e3).catch(A=>{P.warn("set cache DB error",A)})}});for(let p of T.sentences){let C=d.sentences.findIndex(F=>!F);if(C===-1)throw new Qe("translateFailed","can not match the result");d.sentences[C]=p}return d}var L9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function yn(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function Ui(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(yn(e,r))return!1;if(yn(e,u)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!L9.includes(n.display):yn(e,a)}var Bt=yn;function na(e){return!!e.shadowRoot}function zn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function Au(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function go(e){let t=ur;return e&&(t=e),t}async function sn(e,t="",n=100){let a="auto";return t?await Ye({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Da()),a)}function mo(e,t){return Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function P9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${q}-loading-${n} notranslate">`}function Su(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",Ot),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Je(a,y4,t.toString());let u=P9(e);return a.innerHTML=Le.sanitize(u),a}function za(e,t){return e.querySelector(`[${v0}='${t}']`)}function Dd(){document.querySelectorAll(`[${v0}]`).forEach(t=>{t.remove()})}function Ld(){document.querySelectorAll(`.${Ot}-error`).forEach(t=>{t.remove()})}function Pd(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Sa(n)&&t.push(n)}),t}function Fd(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let s=u[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||$c(i)||Hc(i)||qc(i)||Wc(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ar(r,n,a)}function ln(e){return e.nodeType===Node.ELEMENT_NODE}function Md(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function _d(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var F9=1e5;function Un(e){let{onParagraph:t,filterRule:n,id:a}=e;n=M9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,d={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,m=null;function f(S){let{container:A,onFrame:y,onIgnoreElement:k,id:D}=S,x=document.createTreeWalker(A,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,w=>{let R=O(w);return R==NodeFilter.FILTER_ACCEPT?Lt.mark(w,D):R==NodeFilter.FILTER_REJECT,R}),L=A;if(O(L)===NodeFilter.FILTER_REJECT)return;for(Lt.mark(L,D);L;){if(o&&o.length>0){let{currentNode:w,isMatchedSelection:R}=v(x,L,o);if(w)L=w;else break;if(!R)continue}if(L.nodeType===Node.ELEMENT_NODE||L.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let w=L;if(w.nodeName==="IFRAME"){y&&y(w);break}w.nodeType===Node.ELEMENT_NODE&&(r&&Wi(w,r),l&&$i(w,l));let R=Ui(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(Bt(w,u)&&!R){p(w);let pe=null;for(;!(pe=x.nextSibling())&&x.parentNode(););L=pe;continue}let J=na(w);(!Bd(d,w)||R)&&(T(),w.childNodes.length>0&&C(d,w,w.immersiveTranslateComputedStyle||null)),J&&w.shadowRoot?.mode==="open"&&(R?y?.(w.shadowRoot):f({...S,container:w.shadowRoot})),w.nodeType===Node.ELEMENT_NODE&&w.nodeName==="PRE"&&i&&O9(w)}else if(L.nodeType===Node.TEXT_NODE)p(L);else throw new Error("should not be here");L=x.nextNode(),d.commonAncestorContainer&&L&&L.parentNode===d.commonAncestorContainer&&(d._currentStacks=[]),d.commonAncestorContainer&&L&&L.nodeType===Node.ELEMENT_NODE&&d._currentStacks.push(L)}function O(w){if(w.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(ln(w)){if(l){let N=Object.keys(l);if(N.length>0&&Bt(w,N))for(let fe of N){let _e=l[fe];if(w.matches(fe)){let z=l[fe],Te=Object.keys(z);for(let Z of Te){let b=z[Z];w.getAttribute(Z)!==b&&(b===null?w.removeAttribute(Z):w.setAttribute(Z,b))}break}}}if(!S.force&&Lt.isMarked(w,D)||Md(w,D)||Ki(w,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||w.nodeName==="IFRAME"&&!Sa(w))return NodeFilter.FILTER_REJECT;if(w.nodeType===Node.ELEMENT_NODE){let N=window.getComputedStyle(w);if(w.immersiveTranslateComputedStyle={display:N.display,whiteSpace:N.whiteSpace},qi(w.immersiveTranslateComputedStyle))return k&&k(w),NodeFilter.FILTER_REJECT;let pe=Ui(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(Bt(w,u)&&pe)return NodeFilter.FILTER_REJECT}let{width:R,height:J}=w.getBoundingClientRect();return w.nodeName==="IMG"&&(R>48&&J>48?w.immersiveTranslateComputedStyle={display:"block"}:R>0&&J>0&&c!==!1&&(w.setAttribute("width",R),w.setAttribute("height",J))),!w.childNodes||w.childNodes&&w.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!d.isPreWhitespace&&(R>0&&R<4||J>0&&J<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(w.nodeType===Node.TEXT_NODE){let R=w.textContent?.trim();if(!R)return d.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let J=w.parentNode;if(J.getBoundingClientRect){let{width:N,height:pe}=J.getBoundingClientRect();if(N>0&&N<4||pe>0&&pe<4)return NodeFilter.FILTER_REJECT}return s>0&&R.length>=s&&Hi(w,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),d&&d.commonAncestorContainer&&d.flatNodes.length>0&&T();function v(S,A,y){let k=A.immersiveTranslateComputedStyle||null;if(m){if(!m.contains(A))if(g=!1,A&&A.nodeType===Node.ELEMENT_NODE)if(po(A,y))g=!0,m=A,T(),C(d,m,k);else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g}}else if(A&&A.nodeType===Node.ELEMENT_NODE)if(po(A,y))g=!0,m=A,T(),C(d,m,k);else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};return{currentNode:A,isMatchedSelection:!0}}function T(){let S=R9(d,a);S&&t&&t(S),Rd(d)}function p(S){if(!Bd(d,S)){T(),Rd(d);let A=S.parentNode;A&&C(d,A,A.computedStyle)}d.flatNodes.push(S)}function C(S,A,y){S.commonAncestorContainer=A;let k=F(y);S.isPreWhitespace=k}function F(S){return S&&S.whiteSpace&&S.whiteSpace.startsWith("pre")||S&&S.whiteSpace==="break-spaces"||!1}}function Bd(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=na(t));let a=B9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function M9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function _9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function Wi(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function B9(e){return e&&e._currentStacks?e._currentStacks.some(t=>na(t)):!1}function R9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=N9(n,a);r||(r=a);let o=[];for(let g of n){let m=_9(e,r,g);m&&(o.includes(m)||o.push(m))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,d=0;for(;c&&(l.push(c),c!==s);){if(d++,d>F9){P.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function Rd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function qi(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var Lt={_marked_key:"immersive_translate_walked",isMarked(e,t){return ni(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||na(e)))return Dr(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||na(e)))return Je(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=ka(e,"markWalk")||"";return Je(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||na(e)):!1}};function O9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=Le.sanitize(n)}function N9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function Hi(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",s=n[r+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&Hi(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),s=document.createElement("br");i.parentNode?.insertBefore(s,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=Ic(e,[a]);for(let i of o)for(let s of r){let l=u[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function Nd(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let d of l){let g=s[d];if(d==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||I9(c,u,r)||!zc(f,n,a))continue}c.getAttribute(d)!==g&&(g===null?c.removeAttribute(d):c.setAttribute(d,g))}}}function $i(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function Ki(e,t){return Bt(e,t.excludeSelectors||[])?Bt(e,t.selectors||[])?!1:!Bt(e,t.stayOriginalSelectors||[]):!1}function po(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Bt(e,t.concat(n))}function I9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ar(r,t,n))return!0}}return!1}function Id(e,t,n,a){let u=t,r=L4[u]||[],o="";e&&r&&r.length>0&&r.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let d=n[c];if(["borderRadius"].includes(c)&&(d+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${d}; -`,t==="marker"&&c==="backgroundColor"&&typeof d=="string"){let{r:g,g:m,b:f}=Kc(d);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${g}, ${m}, ${f}; -`}}});let i="";if(n&&n.textColor){let l=n.textColor;i+=` -.immersive-translate-target-translation-theme-${u}-inner{color: ${l};} -`}if(n&&n.zoom){let l=n.zoom;i+=` -.immersive-translate-target-translation-theme-${u}-inner{font-size: max(13px, ${l}%);} -`}let s="";o&&(s=`:root { + `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let d=c[0].translations[0],g=c[0].detectedLanguage;return{text:d.text,from:gd.get(g.language),to:gd.get(d.to)}}function Ed(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var ta=null,S9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Ni=new Map(S9),Ia=class extends re{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){ta=null,await Qr(Zu)}async translate(n){let{text:a,from:u,to:r}=n;return a?await bd(a,u,r):{...n}}async init(){if(!ta){ta={};let n=await Xr(Zu);n&&(ta=n)}await yd(ta)}async translateList(n){let{from:a,to:u,text:r}=n,o=Ni.get(a)||"auto",i=Ni.get(u)||u;o==="auto"&&(o="");let l=await yd(ta),s=[];for(let m of r)s.push({Text:m});let c=JSON.stringify(s),d=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await G({url:d,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+l.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(m=>m.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(g))}};Ia.langMap=Ni;async function yd(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return Td().catch(u=>{D.error(u)}),e}return Td()}async function Td(){let e=await Cu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=Ed(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return ta=t,await Zr(Zu,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var xd=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Ii=new Map(xd),D9=new Map(xd.map(([e,t])=>[t,e])),uo=class extends re{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:l,to:s}=n,c=new URLSearchParams({from:Ii.get(l)||"auto",to:Ii.get(s)||s,q:i,salt:a,appid:r,sign:_n(r+i+a+o)}),d=new URL(u);d.search=c.toString();let g=await G({url:d.toString()});if(g.error_code)throw new Qe("API_SERVER_ERROR",g.error_msg);let{trans_result:m,from:f}=g,C=m.map(({dst:p})=>p);return{from:D9.get(f)||f,to:s,text:C.join(` +`)}}};uo.langMap=Ii;var Cd=uo;var L9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ro=new Map(L9),oo=class extends re{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!ro.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ye({text:a.join(" "),minLength:10}));let i=a,l=this.getRandomKey();return{text:(await G({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+l},method:"POST",body:JSON.stringify({source:i,trans_type:`${ro.get(u)||"auto"}2${ro.get(r)}`})})).target,from:u,to:r}}};oo.langMap=ro;var wd=oo;var P9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],io=new Map(P9),so=class extends re{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!io.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ye({text:a.join(" "),minLength:10}));let i=a;return{text:(await G({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${io.get(u)||"auto"}2${io.get(r)}`})})).target,from:u,to:r}}};so.langMap=io;var vd=so;var kd=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],ji=new Map(kd),F9=new Map(kd.map(([e,t])=>[t,e]));function M9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var lo=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=_9(32),i=Math.round(new Date().getTime()/1e3),l=this.appId+M9(a)+o+i+this.appSecret,s=await Vt(l),c={q:a,appKey:this.appId,salt:o.toString(),from:ji.get(u)||"auto",to:ji.get(r)||r,sign:s,signType:"v3",curtime:i.toString()},d=new URLSearchParams(c),m=await G({url:"https://openapi.youdao.com/api",method:"POST",body:d.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!m.translation)throw new Error(JSON.stringify(m));let f=m.l,[C,T]=f.split("2");return{text:m.translation.join(` +`),from:F9.get(C),to:r}}};lo.langMap=ji;function _9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var co=class extends re{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:zi.get(u)||"auto",to:zi.get(r)||r},i=new URLSearchParams(o),l=await G({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(l&&l.translation)return{text:l.translation.join(` +`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(l))}};co.langMap=zi;var Dd=co;var B9={mock:Ma,mock2:Ma,google:En,transmart:ea,deepl:nd,volc:ld,volcAlpha:Ra,bing:Ia,tencent:Xn,tenAlpha:Zn,baidu:Cd,caiyun:wd,cai:vd,openl:$r,youdao:Ad,you:Dd,d:In,dpro:In,deeplx:Oa,niu:ad,azure:ud,openai:od,chatgpt:ku,papago:rd},jn={};Object.keys(fn).forEach(e=>{jn[e]={...fn[e],class:B9[e]}});function Ld(e,t){let n=Nt;if(jn[e]&&jn[e].class&&jn[e].class.langMap&&jn[e].class.langMap.size>0){let a=jn[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return Nt}async function ja(e,t){if(!e.text)return e;let n=await sn({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Qe("translateFailed","translate failed")}async function Ui(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new jn[r].class(o,a,{translationService:r}),l=i.getDefaultRateLimit();l&&(o&&!o.limit&&(o.limit=l.limit),o&&!o.interval&&(o.interval=l.interval)),await z3(r,o),await i.init()}async function sn(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,l=u,s=i[l]||{};l==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],d={sentences:Array(e.sentences.length)},g=e.sentences.length,m=-1;if(r.cache)for(let p of e.sentences){m++;let w=l;l==="openl"&&(w=l+"-"+s.codename||$r.DEFAULT_CODENAME);let F=null;try{F=await sr(Pd({originalText:p.text,from:p.from,to:p.to,service:w}),1e3)}catch(S){D.warn("query cache DB error, but it's ok",S)}if(F){let S={...p,text:F.translatedText};d.sentences[m]=S,n&&n(null,S,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&D.debug(`use ${g-f} sentences from cache`),!c.length)return d;let C;try{C=new jn[l].class(s,o,{translationService:l}),await C.init()}catch(p){if(n)for(let w of c)n(p,null,w);throw p}let T=await C.multipleTranslate({sentences:c},s,(p,w,F)=>{if(n&&n(p,w,F),!p&&w&&!l.startsWith("mock")&&r.cache){let S=l;l==="openl"&&(S=l+"-"+s.codename||$r.DEFAULT_CODENAME),r.cache&&sr(Fd({translatedText:w.text,from:F.from,to:F.to,detectedFrom:w.from,key:_n(F.text),service:S}),3e3).catch(A=>{D.warn("set cache DB error",A)})}});for(let p of T.sentences){let w=d.sentences.findIndex(F=>!F);if(w===-1)throw new Qe("translateFailed","can not match the result");d.sentences[w]=p}return d}var R9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function yn(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function Hi(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(yn(e,r))return!1;if(yn(e,u)||e.nodeName.toLowerCase()==="br")return!0;let l=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(l=e.parentNode.immersiveTranslateComputedStyle),l&&l.display&&l.display==="inline-flex"?!1:n&&n.display?!!R9.includes(n.display):yn(e,a)}var Bt=yn;function na(e){return!!e.shadowRoot}function zn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function Au(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function go(e){let t=ur;return e&&(t=e),t}async function Xt(e,t="",n=100){let a="auto";return t?await Ye({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Da()),a)}function mo(e,t){return Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function O9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${W}-loading-${n} notranslate">`}function Su(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",Ot),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Je(a,w4,t.toString());let u=O9(e);return a.innerHTML=ve.sanitize(u),a}function za(e,t){return e.querySelector(`[${k0}='${t}']`)}function Md(){document.querySelectorAll(`[${k0}]`).forEach(t=>{t.remove()})}function _d(){document.querySelectorAll(`.${Ot}-error`).forEach(t=>{t.remove()})}function Bd(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Sa(n)&&t.push(n)}),t}function Rd(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let l=u[2];o=new RegExp(`<${l}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||Jc(i)||Kc(i)||Vc(i)||Gc(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ar(r,n,a)}function ln(e){return e.nodeType===Node.ELEMENT_NODE}function Od(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function Nd(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var N9=1e5;function Un(e){let{onParagraph:t,filterRule:n,id:a}=e;n=I9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:l,globalAttributes:s,isModifyImage:c}=n,d={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,m=null;function f(S){let{container:A,onFrame:y,onIgnoreElement:k,id:L}=S,x=document.createTreeWalker(A,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,v=>{let R=O(v);return R==NodeFilter.FILTER_ACCEPT?Lt.mark(v,L):R==NodeFilter.FILTER_REJECT,R}),P=A;if(O(P)===NodeFilter.FILTER_REJECT)return;for(Lt.mark(P,L);P;){if(o&&o.length>0){let{currentNode:v,isMatchedSelection:R}=C(x,P,o);if(v)P=v;else break;if(!R)continue}if(P.nodeType===Node.ELEMENT_NODE||P.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let v=P;if(v.nodeName==="IFRAME"){y&&y(v);break}v.nodeType===Node.ELEMENT_NODE&&(r&&qi(v,r),s&&Ki(v,s));let R=Hi(v,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},v.immersiveTranslateComputedStyle||null);if(Bt(v,u)&&!R){p(v);let pe=null;for(;!(pe=x.nextSibling())&&x.parentNode(););P=pe;continue}let J=na(v);(!Id(d,v)||R)&&(T(),v.childNodes.length>0&&w(d,v,v.immersiveTranslateComputedStyle||null)),J&&v.shadowRoot?.mode==="open"&&(R?y?.(v.shadowRoot):f({...S,container:v.shadowRoot})),v.nodeType===Node.ELEMENT_NODE&&v.nodeName==="PRE"&&i&&H9(v)}else if(P.nodeType===Node.TEXT_NODE)p(P);else throw new Error("should not be here");P=x.nextNode(),d.commonAncestorContainer&&P&&P.parentNode===d.commonAncestorContainer&&(d._currentStacks=[]),d.commonAncestorContainer&&P&&P.nodeType===Node.ELEMENT_NODE&&d._currentStacks.push(P)}function O(v){if(v.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(ln(v)){if(s){let N=Object.keys(s);if(N.length>0&&Bt(v,N))for(let fe of N){let _e=s[fe];if(v.matches(fe)){let z=s[fe],Te=Object.keys(z);for(let Z of Te){let b=z[Z];v.getAttribute(Z)!==b&&(b===null?v.removeAttribute(Z):v.setAttribute(Z,b))}break}}}if(!S.force&&Lt.isMarked(v,L)||Od(v,L)||Gi(v,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||v.nodeName==="IFRAME"&&!Sa(v))return NodeFilter.FILTER_REJECT;if(v.nodeType===Node.ELEMENT_NODE){let N=window.getComputedStyle(v);if(v.immersiveTranslateComputedStyle={display:N.display,whiteSpace:N.whiteSpace},$i(v.immersiveTranslateComputedStyle))return k&&k(v),NodeFilter.FILTER_REJECT;let pe=Hi(v,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},v.immersiveTranslateComputedStyle||null);if(Bt(v,u)&&pe)return NodeFilter.FILTER_REJECT}let{width:R,height:J}=v.getBoundingClientRect();return v.nodeName==="IMG"&&(R>48&&J>48?v.immersiveTranslateComputedStyle={display:"block"}:R>0&&J>0&&c!==!1&&(v.setAttribute("width",R),v.setAttribute("height",J))),!v.childNodes||v.childNodes&&v.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!d.isPreWhitespace&&(R>0&&R<4||J>0&&J<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(v.nodeType===Node.TEXT_NODE){let R=v.textContent?.trim();if(!R)return d.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let J=v.parentNode;if(J.getBoundingClientRect){let{width:N,height:pe}=J.getBoundingClientRect();if(N>0&&N<4||pe>0&&pe<4)return NodeFilter.FILTER_REJECT}return l>0&&R.length>=l&&Wi(v,l),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),d&&d.commonAncestorContainer&&d.flatNodes.length>0&&T();function C(S,A,y){let k=A.immersiveTranslateComputedStyle||null;if(m){if(!m.contains(A))if(g=!1,A&&A.nodeType===Node.ELEMENT_NODE)if(po(A,y))g=!0,m=A,T(),w(d,m,k);else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g}}else if(A&&A.nodeType===Node.ELEMENT_NODE)if(po(A,y))g=!0,m=A,T(),w(d,m,k);else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};else return g=!1,A=S.nextNode(),{currentNode:A,isMatchedSelection:g};return{currentNode:A,isMatchedSelection:!0}}function T(){let S=U9(d,a);S&&t&&t(S),jd(d)}function p(S){if(!Id(d,S)){T(),jd(d);let A=S.parentNode;A&&w(d,A,A.computedStyle)}d.flatNodes.push(S)}function w(S,A,y){S.commonAncestorContainer=A;let k=F(y);S.isPreWhitespace=k}function F(S){return S&&S.whiteSpace&&S.whiteSpace.startsWith("pre")||S&&S.whiteSpace==="break-spaces"||!1}}function Id(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=na(t));let a=z9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function I9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function j9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function qi(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function z9(e){return e&&e._currentStacks?e._currentStacks.some(t=>na(t)):!1}function U9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=W9(n,a);r||(r=a);let o=[];for(let g of n){let m=j9(e,r,g);m&&(o.includes(m)||o.push(m))}if(o.length<1)return null;let i=o[0],l=o[o.length-1],s=[],c=i,d=0;for(;c&&(s.push(c),c!==l);){if(d++,d>N9){D.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:s,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function jd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function $i(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var Lt={_marked_key:"immersive_translate_walked",isMarked(e,t){return ai(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||na(e)))return Dr(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||na(e)))return Je(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=ka(e,"markWalk")||"";return Je(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||na(e)):!1}};function H9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=ve.sanitize(n)}function W9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function Wi(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let l=n.lastIndexOf(i,t);return l>o?l:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",l=n[r+1]||"";o==="."||l==="."||l===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&Wi(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),l=document.createElement("br");i.parentNode?.insertBefore(l,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=Hc(e,[a]);for(let i of o)for(let l of r){let s=u[l];i.getAttribute(l)!==s&&(s===null?i.removeAttribute(l):i.setAttribute(l,s))}}}function Ud(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let l=t[i],s=Object.keys(l),c=e.querySelector(i);if(c)for(let d of s){let g=l[d];if(d==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||q9(c,u,r)||!qc(f,n,a))continue}c.getAttribute(d)!==g&&(g===null?c.removeAttribute(d):c.setAttribute(d,g))}}}function Ki(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Bt(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let l of i){let s=o[l];e.getAttribute(l)!==s&&(s===null?e.removeAttribute(l):e.setAttribute(l,s))}break}}}}function Gi(e,t){return Bt(e,t.excludeSelectors||[])?Bt(e,t.selectors||[])?!1:!Bt(e,t.stayOriginalSelectors||[]):!1}function po(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Bt(e,t.concat(n))}function q9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ar(r,t,n))return!0}}return!1}function Hd(e,t,n,a){let u=t,r=_4[u]||[],o="";e&&r&&r.length>0&&r.forEach(s=>{let{name:c}=s;if(e&&n&&n[c]){let d=n[c];if(["borderRadius"].includes(c)&&(d+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${d}; +`,t==="marker"&&c==="backgroundColor"&&typeof d=="string"){let{r:g,g:m,b:f}=Yc(d);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${g}, ${m}, ${f}; +`}}});let i="";if(n&&n.textColor){let s=n.textColor;i+=` +.immersive-translate-target-translation-theme-${u}-inner{color: ${s};} +`}if(n&&n.zoom){let s=n.zoom;i+=` +.immersive-translate-target-translation-theme-${u}-inner{font-size: max(13px, ${s}%);} +`}let l="";o&&(l=`:root { ${o}} -`),i&&(s+=i),s?Vn(e,s,"immersive-translate-user-custom-style"):a&&Vn(e,"","immersive-translate-user-custom-style")}function Ua(e,t){let a=Ve().IMMERSIVE_TRANSLATE_INJECTED_CSS;Vn(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};Id(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` +`),i&&(l+=i),l?Vn(e,l,"immersive-translate-user-custom-style"):a&&Vn(e,"","immersive-translate-user-custom-style")}function Ua(e,t){let a=Ve().IMMERSIVE_TRANSLATE_INJECTED_CSS;Vn(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};Hd(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` `)),t.rule.additionalInjectedCss&&t.rule.additionalInjectedCss.length>0&&(i+=` `+t.rule.additionalInjectedCss.join(` -`))),i&&Vn(e,i,"immersive-translate-dynamic-injected-css")}async function jd(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Ye({text:va(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=Jn(document.documentElement.lang)),e}function zd(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function Gi(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=j9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let d=n.substring(s+i.length,c),g=Object.keys(o).filter(m=>m!=="tag").map(m=>`${m}="${o[m]}"`).join(" ");n=n.replace(`${i}${d}`,`<${l} ${g}>${d}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function Du(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function aa(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=Du(e,n,t);return r===t&&n!==a&&(r=Du(e,a,t)),Gi(r,u)}function j9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function fo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function Vi(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(D4),e&&(r.push(`${q}-target-translation-theme-${e}`),t?r.push(`${A0}-theme-${e}`):r.push(`${k0}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(A0):(r.push(k0),u&&r.push(S4)),r}function Ji(e){let t=["notranslate",k4];return e&&t.push(`${q}-target-translation-theme-${e}-inner`),t}function Ud(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,d=Aa(n),g="afterend",m=d[0].replace(/\//g,"/");m=m.replace(/"/g,'\\"'),m=m.replace(//g,">");let f=d[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let v=`${m}(\\d+)${f}`,T=new RegExp(v,"g"),p=fo(s);p=Le.sanitize(p),o.length>0&&(p=p.replace(T,A=>{let y=p.indexOf(A),k=p[y-1]===" ",D=p[y+A.length]===" ",x=A.slice(d[0].length,-d[1].length),L=Number(x);if(isNaN(L))return A;let O=o[Number(L)];if(O&&O.type==="element"){let w=O.value.outerHTML;return k||(w=" "+w),D||(w=w+" "),w}else P.error("variable type not supported",O,A);return A}));let C=Vi(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&C.push(A4);let F=Ji(r),S="";return a.translationBlockStyle&&(S=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${S} class="${C.join(" ")}" ${tn}="1"><${a.targetWrapperTag} class="${F.join(" ")}" ${tn}="1">${p}`,e.inline||(l==="smart"?p=`
${p}`:p=`${l}${p}`),e.inline&&(l!=="smart"?p=`${l}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${tn}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:g}}function ho(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let s=0;s2&&(T=`<${u[2]}${v}>`),i[v]=l,o.push({text:T,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";d&&(f=zn(Yi(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Bt(l,a)){let v=Object.keys(i).length,T=`${u[0]}${v}${u[1]}`;u.length>2&&(T=`<${u[2]}${v}>`),i[v]=l;let p=Xi(o).endsWith(" ")?" ":"",C=zn(l.innerText||l.textContent),F=zn(l.nextSibling).startsWith(" ")?" ":"",S=Au(p+C+F),A=S[0]+T+S[1];if(p===" ")A=A.trimStart();else if(!A.startsWith(" ")){let y=Au(l.previousSibling)[1];y===""&&(y=" "),A=y+A}o.push({text:A,type:"variable"})}else{let f=Xi(o).endsWith(" ")?" ":"",v=zn(l.innerText||l.textContent);d&&(v=zn(Yi(l)));let T=zn(l.nextSibling).startsWith(" ")?" ":"",p=Au(f+v+T),C=p[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+p[1];if(f===" ")C=C.trimStart();else{let F=Au(l.previousSibling)[1];F===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(F=" "),C=F+C}o.push({text:C,type:"text"})}else{let f=Xi(o).endsWith(" ")?" ":"",v="";l.textContent&&(v=zn(Yi(l))),f===" "&&(v=v.trimStart()),o.push({text:v,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(d=o[l-1].text),l2){let c=l[2];return z9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=Ud(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function Yi(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function z9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:d}=e;o=o||[];let g=fo(e.targetText);g=Le.sanitize(g);let m=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),v=new RegExp(`<${t}(\\d+)>`);o.length>0&&(m=m.replace(f,F=>{let S=m.indexOf(F),A=m[S-1]===" ",y=m[S+F.length]===" ",k=F.match(v);if(!k)return F;let D=k[1],x=Number(D);if(isNaN(x))return F;let L=o[Number(x)];if(L&&L.type==="element"){let O=L.value.outerHTML;return A||(O=" "+O),y||(O=O+" "),O}else if(L&&L.type==="text"){let O=L.value;return A||(O=" "+O),y||(O=O+" "),O}else P.error("variable type not supported",L,F);return F}));let T=Vi(l,n,a||[],i,c),p=Ji(l),C="";return d&&(C=`style="${d}"`),m=`<${u} ${C} class="${T.join(" ")}" ${tn}="1"><${u} class="${p.join(" ")}" ${tn}="1">${m}`,n||(r==="smart"?m=`
${m}`:m=`${r}${m}`),n&&(r!=="smart"?m=`${r}${m}`:m=`<${u} class="notranslate" ${tn}="1"> ${m}`),s==="smart"?m=`${m}`:m=`${m}${s}`,{html:m,position:"afterend"}}function Xi(e){let t=e[e.length-1];return t?t.text:""}function Ht(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var U9={sanitize:e=>e};function Eo(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:Ht(e.ctx),onParagraph:Lu.bind(null,e),onFrame:n=>{Qi(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),wa&&Je(t,"consumeContainer",e.id))}function Qi(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Sa(t))return;P.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Wa(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else P.debug("onFrame shadowRoot",t.host),Wa(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Wa(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=Ht(t.ctx),r=0;if(s(t,e,n))return;if(ln(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(ln(c)&&(a&&Wi(c,a),u&&$i(c,u)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(Lt.mark(l.currentNode,t.id);l.nextNode();){Lt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let d=l.currentNode;if(Lt.mark(l.currentNode,t.id),i(d)){o(d);continue}else break}if(!l.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){Lt.clearMark(l),r++,t.immediateTranslateCapacity>=0?Eo(t,l):(wa&&Je(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return Qi(t,l.shadowRoot,n),!1;if(c==="iframe")return Qi(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let d=t.containerRule;if(d.selectors&&d.selectors?.length>0)return po(l,d.selectors);if(d.pageHeight){let g=l.scrollHeight;if(g>0&&g0)return!0}return!1}function s(l,c,d){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||d&&Lt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let m=Ht(l.ctx);return!!Ki(c,{excludeSelectors:m.excludeSelectors,selectors:m.selectors,stayOriginalSelectors:m.stayOriginalSelectors})}}function es(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!Lt.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(bo(e.rootNodes),Wd(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=Zi(e.rootNodes);bo(e.rootNodes),Ha(o,a,e.targetNodes||[]),Wd(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];Ha(o,a,e.rootNodes||[]),qd(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=Zi(e.rootNodes);Ha(o,a,e.targetNodes||[]),qd(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=Zi(e.targetNodes);bo(e.targetNodes),Ha(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&bo(e.targetNodes)}catch(o){P.error(o)}}}function Wd(e){if(!ln(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Je(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function qd(e){if(!ln(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=ka(a,"immersiveTranslateClassBak");Dr(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function Zi(e){return e?e[e.length-1].nextSibling:null}function bo(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function Ha(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var H9=gt(ns,300);async function Lu(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||W9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,wa&&Je(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Aa(u),i=ho(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await as(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:go(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(s){if(P.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(q9(e,t.text),ts(e,t)):(wa&&Je(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function W9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?ln(t)&&t.classList.contains(Ot):!1}function q9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function ts(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),wa&&Je(t.commonAncestorContainer,"consumeParagraph",e.id),H9.call(e,e.ctx)}async function ns(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await on(a,t,(u,r,o)=>{let i=o.id,s=$9(e,i.toString());s&&K9.call(null,u,r,o,s,t,n)})}catch(u){P.error("translateCurrentQueue error",u);return}}function $9(e,t){return e.find(n=>n.id===t)}function K9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${q}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(za(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(P.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=u,l=n.id,c=document.createElement(s.targetWrapperTag);Je(c,T4,l.toString()),c.classList.add("notranslate",Ot,Ot+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let d=a.rootNodes[a.rootNodes.length-1].nextSibling;Ha(d,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` -`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let m=aa(Rt,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=aa(Rt,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),v=`<${s.targetWrapperTag} class="${q}-error notranslate"><${s.targetWrapperTag} class="${q}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=Le.sanitize(v)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=Hd(a,u),l=document.createElement(u.rule.targetWrapperTag);l.classList.add("notranslate",Ot),l.setAttribute("lang",u.targetLanguage),l.setAttribute(tn,"1");let c=U9.sanitize(s);l.innerHTML=c,a.targetNodes=[l],es(a,r),o=!0}else P.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function as(e,t){let{text:n}=e,a=await Ye({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!Fd({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Da());let s=un(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return Bn(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(m=>Bn(c,m,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var G9=[];function $d(e){G9.push(e)}function Kd(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(rr)||us(e).catch(r=>{P.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var To="";async function us(e){let t=document.title;if(!t||t.includes(rr))return;To!==t&&(To=t);let n=await sn(e,t);if(!mo(e,n))try{let a=await ja({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=To+rr+a.text)}catch(a){throw a}}function Gd(e){e.rule.isTranslateTitle&&(document.title=To)}var rs="Original";function Ne(){return rs}function Ct(e){rs=e,Vd(rs)}var os;function Jd(e){let t=e.ctx.rule.aiRule;if(P.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=Ht(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{xo(e,l,a)}),os=new MutationObserver(l=>{l.forEach(function(c){if(ln(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(d=>{d===r&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,P.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),xo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(d=>{let g=d.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(P.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),xo(e,g,a))},100))})}})}),os.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){yn(l,[t.streamingSelector])&&(r=l,P.debug("streamingNode",r)),yn(l,[t.messageWrapperSelector])&&(o=l,P.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),P.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),xo(e,o,a),r=void 0,o=null}}function xo(e,t,n){Un({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Lu(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function Yd(){os?.disconnect()}var U=null;function wo(){return U||null}function vo(e){V9(e),t6(e),Z9(e),e6(e),Ua(document,e),Ct("Translated"),Q9(U),X9(U),$d(Hn),J9(U)}function V9(e){e.rule.initialSelectorGlobalAttributes&&Nd(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function J9(e){Jd(e)}function Y9(){Yd()}function X9(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Wa(n,e)})}async function Z9(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Yn({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function Q9(e){e.ctx.rule.isTranslateTitle&&(us(e.ctx),e.titleDynamicObserver=Kd(e.ctx))}function e6(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function t6(e){let t=_t();U&&(t=U.id),U=U||{},U.ctx=e,U.id=t,U.paragraphQueue=U.paragraphQueue||[],U.rule={excludeSelectors:Ht(e).excludeSelectors,selectors:e.rule.selectors},U.currentUrl=window.location.href,U.containerRule={pageHeight:screen.availHeight,selectors:U.rule.selectors},U.paragraphEntities=U.paragraphEntities||{},U.autoIncreaseParagraphId=U.autoIncreaseParagraphId||1,U.interruptEffectDOM=!1,U.urlChangeDelay=e.rule.urlChangeDelay,U.immediateTranslateCapacity=e.state.immediateTranslationTextCount,U.observeContainers=U.observeContainers||[],U.observeParagraphs=U.observeParagraphs||[],U.dynamicContainerObserver=U.dynamicContainerObserver||o6(U),U.ignoreResizeObserver=U.ignoreResizeObserver||i6(U),U.containerVisibleObserver=U.containerVisibleObserver||a6(U),U.paragraphVisibleObserver=U.paragraphVisibleObserver||u6(U),U.injectCssToDocument=Co,U.walkContainer=Un,U.translateState=e.state.translationMode||e.config.translationMode||"dual",U.allInlineWindows=[window],window.onerror=n6(U,e),window.immersiveTranslateSwitchTranslateState=ss.bind(U)}function Zd(e,t){t.getRootNode()instanceof ShadowRoot?Co(t.getRootNode(),e):Co(t.ownerDocument,e),is(e)}function is(e){U||(U={},U.ctx=e,U.id=_t(),U.paragraphQueue=[],U.injectCssToDocument=Co,U.rule={excludeSelectors:Ht(e).excludeSelectors,selectors:e.rule.selectors},U.currentUrl=window.location.href,U.paragraphEntities={},U.autoIncreaseParagraphId=1,U.interruptEffectDOM=!1,U.urlChangeDelay=e.rule.urlChangeDelay,U.translateState=e.config.translationMode||"dual",U.observeContainers=[],U.observeParagraphs=[],U.allInlineWindows=[window],window.switchTranslateState=ss.bind(U))}function Hn(e=!0){U&&(Ct("Original"),Y9(),U.interruptEffectDOM=!0,U.ignoreResizeObserver?.disconnect(),U.dynamicContainerObserver?.disconnect(),U.containerVisibleObserver?.disconnect(),U.paragraphVisibleObserver?.disconnect(),U.titleDynamicObserver?.disconnect(),Gd(U.ctx),Dd(),Ld(),e&&ss.call(U,"original"),Object.values(U.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),U=null)}function n6(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{vo(t)},e.urlChangeDelay||2e3)),!0}}function a6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(Eo(e,a.target),n.unobserve(a.target))})})}function u6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{ts(e,o)}),n.unobserve(u)}})})}var Xd;function r6(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(Xd),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),Xd=setTimeout(()=>{let u=e.ctx;vo(u)},e.urlChangeDelay),!0)):!1}function o6(e){return new MutationObserver(t=>{if(!r6(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!Lt.isSkipMarkEle(n.target)&&!Lt.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...r,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&yn(n.target,e.ctx.rule.mutationObserverContainerSelectors)){Lt.clearMark(n.target),n.target.paragraphs=void 0,Eo(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Wa(r,e))})}})}function i6(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);qi(r)||(n.unobserve(a.target),Wa(u,e))}})}function ss(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{es(t,e)}),e=="original"&&document.querySelectorAll(`.${Ot}`).forEach(t=>t.remove())}function Co(e,t){if(e instanceof HTMLIFrameElement){Ua(e.contentDocument,t);return}Ua(e,t)}async function Qd(e){let t=lt(),n="auto";if(ie()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=ai(e.mainFrame):a=va(e.mainFrame).slice(0,1e3),n=await Ye({text:a})}else if(t)n=await Ye({text:va(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=ai(e.mainFrame),n=await Ye({text:a})}else n=await tg();return n==="auto"&&(n=await jd()),Mr(n),n}async function eg(){if(!U)return;document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=U.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){U.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${nr}='${n}']`);r&&r.remove()}}ns.call(U,U.ctx)}var ng={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},ag={...Rt,"zh-CN":{...ng["zh-CN"],...Rt["zh-CN"]},"zh-TW":{...ng["zh-TW"],...Rt["zh-TW"]}},ko=ag;function qa(e,t,n){return aa(ag,e,t,or,n)}var Ao=(e,t,n,a)=>{let u=P4[e]||e,r=F4[e],o=M4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${u})`}else return u};function $a(e){Ka(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{P.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:er,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function ls(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&ze(o,i=>{i.preventDefault(),$a({method:a[r]})})}}var Ga={},s6={root:"",lang:"en",fallbackLang:"en"};function cs(e,t){let n=Object.assign({},s6,e);Ga=t||Ga;let[a,u]=ye(n.lang),[r,o]=ye(Ga),[i,s]=ye(!1),l=d=>{if(r.hasOwnProperty(d))return;s(!1);let g=zd(n.root||"",d);n.getUrl&&(g=n.getUrl(n.root||"",d),fetch(g).then(m=>m.json()).then(m=>{Ga[d]=m,o({...Ga}),s(!0)}).catch(m=>{o({...Ga}),s(!0)}))};return Ze(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:u,t:(d,g)=>{if(!r.hasOwnProperty(a))return d;let m=Du(r,a,d);return m===d&&a!==n.fallbackLang&&(m=Du(r,n.fallbackLang,d)),Gi(m,g)},isReady:i}}var l6=0;function H(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--l6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return he.vnode&&he.vnode(s),s}var gs=g0(null),ds={root:"assets",lang:"en",fallbackLang:"en"},So=e=>{let{t,setLang:n,lang:a,isReady:u}=cs({root:e.root||ds.root,lang:e.lang||ds.lang,fallbackLang:e.fallbackLang||ds.fallbackLang,getUrl:e.getUrl},e.translations);return H(gs.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function ug(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function rg(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function og(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function Tn(e){let{items:t,maxWidth:n}=e;return n=n||128,H("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>H("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var Do="DROP_DOWN_DEFAULT_VALUE";function ms(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=f0(null);return H("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:Do,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==Do){o.current.value=Do,o.current?.dispatchEvent(new Event("change"));let l=u.find(c=>c.value===s);l&&n(l)}},children:[{value:Do,label:e.label}].concat(u).map((i,s)=>H("option",{value:i.value,children:i.label},"option-"+s))})}function Wt(){return h0(gs)}function ps(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=Wt(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[r,"\uFF1A"]}),H(Tn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Pu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var c6=({date:e})=>{let{t}=Wt(),[n,a]=ye(!1);return Ze(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:H("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},d6=({minVersion:e})=>{let{t}=Wt();return H("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},g6=()=>{let{t:e}=Wt();return H("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},m6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=Wt();return H("p",{class:"text-sm",children:[a("failToSyncRules")," ",H("a",{onClick:t,children:a("retry")}),H("br",{}),a("failedReason"),"\uFF1A",e,H("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function fs(e){let{isShowError:t,request:n}=e,[a,u]=ye(null),{t:r}=Wt(),[o,i]=ye(null),[s,l]=ye(null),[c,d]=ye(""),[g,m]=ye(!1),[f,v]=ye(!1),[T,p]=ye(!1),[C,F]=ye(null),[S,A]=ye(null),y=Rn(),k=async()=>{d("");let D=o;if(o===null)try{let x=await n({url:ou});x?(i(x),D=x,m(!0)):(d(r("unknownError")),l(null))}catch(x){l(null),d(x.message);return}D!==null?(e.setStorageBuildinConfig(D),l(!1),u(D.buildinConfigUpdatedAt)):(d(r("canNotFetchRemoteRule")),l(null))};return Ze(()=>{an().then(D=>{let x=D.buildinConfigUpdatedAt;F(D);let L=new Date(x);if(u(x),y==="0.0.0"){p(!0);return}n({url:ou}).then(O=>{let w=O,R=w.minVersion,J=y;i(w);let N=w.latestVersion;if(N&&(Pu(J,N)?A(!0):A(!1)),Pu(J,R)){let pe=w.buildinConfigUpdatedAt;new Date(pe)>L?(l(!0),k()):l(!1)}else v(!0),l(null)}).catch(O=>{l(null),d(O.message)})})},[]),Ze(()=>{an().then(D=>{F(D)})},[a]),C?H("div",{class:"text-sm mt-2",style:{maxWidth:218},children:T?H(g6,{}):c?t===!1?null:H(m6,{handleSyncing:k,message:c,date:a||""}):f?t===!1?null:H(d6,{minVersion:o.minVersion}):s===null||s===!0?null:g?H(c6,{date:a}):null}):null}function Fu(e){let t=Rn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:d,config:g,openAboutPage:m,onTranslateTheWholePage:f,onToggleEnabled:v,openOptionsPage:T,ontranslateToThePageEndImmediately:p,onSetPageLanguage:C,onToggleTranslate:F,onTranslateLocalPdfFile:S,onTranslatePdf:A,onRestorePage:y,ctx:k,currentUrl:D,currentLang:x,onClose:L,onTranslatePage:O,onSetLocalConfig:w,onMouseTriggerChanged:R,errorMsg:J,disabledButton:N,noPermissionPDF:pe}=e,fe=a,[_e,z]=ye(""),[Te,Z]=ye(J),{t:b,lang:_}=Wt(),K=60;_.startsWith("zh")||(K=65);let ae=null,Y=null,Se=null,te=null,Ce=null,ee=null,oe=null,ge=null,X=null,W=null,ne=null,Pe=null,De=!0;if(g){xt()&&g&&(De=g.generalRule.showSponsorOnSafari);let{translationService:B,translationServices:Q,translationUrlPattern:ve}=g;fn[B]&&(ge=ci(B,k)),Q&&Q[B]?Pe=Q[B]||{}:Pe={};try{X=new URL(D||"")}catch{}if(D&&Lo(D)){W=rg(X.hostname),ne=og(D);let{matches:be,excludeMatches:xe}=ve;Y=be.includes(W),ae=be.includes(X.hostname),te=xe.includes(W),Se=xe.includes(X.hostname),ee=be.includes(ne),oe=xe.includes(ne)}}if(g&&x&&x!=="auto"){let{translationLanguagePattern:B}=g,{matches:Q}=B;Q.includes(x)?Ce=!0:Ce=!1}let ue=B=>{B.preventDefault(),T()},Ue=B=>{fe(Q=>(Q.alpha?z("Success disable alpha!"):z("Success enable alpha!"),{...Q,alpha:!Q.alpha}))},nt=B=>{fe(Q=>({...Q,translationMode:B})),o(B)},Be=()=>{fe(B=>({...B,translationArea:"body"})),f()},Re=()=>{fe(B=>({...B,translationArea:"main"})),n()},Oe=(B,Q,ve,be)=>{if(B==="default"){fe(it=>{let we={...it.translationUrlPattern};return{...it,translationUrlPattern:{...it.translationUrlPattern,matches:Dn([X?.hostname,W,D],we.matches),excludeMatches:Dn([X?.hostname,W,D],we.excludeMatches)}}});return}let xe=B,je=xe==="matches"?"excludeMatches":"matches";X&&fe(it=>{let we={...it.translationUrlPattern};return we[xe]=Z0(Q,we[xe]),be.length>0&&(we[xe]=Dn(be,we[xe])),we[je]=Dn(ve,we[je]),{...it,translationUrlPattern:{...it.translationUrlPattern,...we}}}),xe==="matches"&&l==="Original"?setTimeout(()=>{O(),L()},100):xe==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{y(),L()},100)},kt=B=>{if(!B){fe(be=>{let xe={...be.translationLanguagePattern};return{...be,translationLanguagePattern:{...be.translationLanguagePattern,matches:Dn(x,xe.matches),excludeMatches:Dn(x,xe.excludeMatches)}}});return}let Q=B,ve=Q==="matches"?"excludeMatches":"matches";x&&fe(be=>{let xe={...be.translationLanguagePattern};return xe[Q]=Z0(x,xe[Q]),xe[ve]=Dn(x,xe[ve]),{...be,translationLanguagePattern:{...be.translationLanguagePattern,...xe}}}),Q==="matches"&&l==="Original"&&setTimeout(()=>{O(),L()},100)},Cn=X?.pathname.toLowerCase().endsWith(".pdf"),He=b("translate");l==="Translated"||l==="Error"?He=b("show-original"):l==="Original"?Cn?ha()&&X.protocol==="file:"||pe?He=b("translate-firefox-local-pdf"):ie()?He=b("noSupportTranslate-pdf"):He=b("translate-pdf"):He=b("translate"):He=b(l);let Qt=b("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(g.shortcuts.toggleTranslatePage&&(u4()&&k.rule.fingerCountToToggleTranslagePageWhenTouching>=2?He+=` (${b(`fingers.${k.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:He+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(Qt+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let qt=[];k&&(qt=C3(k));let at=B=>{B.preventDefault(),L()},Pt=kd(k.config.translationService,k.config.targetLanguage);return H("div",{class:"p-3",children:[H("div",{class:"text-sm",children:[H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),H(Tn,{items:Nt.map(B=>({label:Ao(B,g.interfaceLanguage),value:B,selected:B===k.sourceLanguage,onSelected:Q=>{C(Q.value)}}))})]}),g&&g.targetLanguage&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),H(Tn,{items:Pt.filter(B=>B!=="auto").map(B=>({label:Ao(B,g.interfaceLanguage),value:B,selected:B===g.targetLanguage,onSelected:Q=>{fe(ve=>({...ve,targetLanguage:Q.value}))}}))})]}),ge&&qt.length>0&&H(en,{children:[H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),H(Tn,{items:qt.map(B=>({label:`${b("translationServices."+B.id)}${B.ok?"":" "+b("needAction")}`,value:B.id,selected:B.selected,onSelected:Q=>{let ve=qt.find(be=>be.id===Q.value);ve.ok?(fe(be=>({...be,translationService:ve.id})),ve.props.length===0?setTimeout(()=>{O()},1):setTimeout(()=>{y()},1)):(fe(be=>({...be,translationService:ve.id})),setTimeout(()=>{T()},100))}}))})]}),Pe&&ge.props.length>0&&ge.props.map((B,Q)=>H("div",{class:"pl-4 text-sm",children:H(ps,{field:B,value:Pe[B.name],onChange:ve=>{fe(be=>{let xe=be.translationServices||{},je=xe[ge.id]||{};return setTimeout(()=>{y()},1),{...be,translationServices:{...xe,[ge.id]:{...je,[B.name]:ve}}}})}},"field-"+Q)},"service"+Q))]}),X&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:b("forThisSite")}),H(Tn,{items:[{label:b("default"),value:"default",selected:ae===!1&&Se===!1&&!Y&&!te&&!ee&&!oe,onSelected:()=>{Oe("default",X.hostname,[],[]);let B=X.hostname,Q=k.localConfig.tempTranslationUrlMatches||[],ve=Q.filter(xe=>xe.match!==B),be=!1;ve.length!==Q.length&&(be=!0),be&&w({...k.localConfig,tempTranslationUrlMatches:[...ve]})}},ne&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:ee,onSelected:()=>{Oe("matches",ne,[ne],[])}},{label:b("alwaysTranslateSomeSite",{hostname:X.hostname}),value:"matches",selected:ae,onSelected:B=>{Oe(B.value,X.hostname,[X.hostname,W,ne],[W])}},W&&{label:b("alwaysTranslateSomeSite",{hostname:W}),value:"matchesWild",selected:Y,onSelected:()=>{Oe("matches",W,[ne,X.hostname,W],[X.hostname])}},ne&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:oe,onSelected:()=>{Oe("excludeMatches",ne,[ne],[])}},{label:b("neverTranslateSomeSite",{hostname:X.hostname}),value:"excludeMatches",selected:Se,onSelected:B=>{Oe(B.value,X.hostname,[X.hostname,W,ne],[W])}},W&&{label:b("neverTranslateSomeSite",{hostname:W}),value:"excludeMatchesWild",selected:te,onSelected:()=>{Oe("excludeMatches",W,[X.hostname,ne,W],[X.hostname])}}].filter(Boolean)})]}),R&&au()&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),H(Tn,{items:ir.filter(B=>!(ir.includes(g.generalRule.mouseHoverHoldKey)&&B==="OtherCustom")).map(B=>{let Q=b("mouseHoldKey",{key:B}),ve=ir.includes(g.generalRule.mouseHoverHoldKey),be=B===g.generalRule.mouseHoverHoldKey;return B==="Auto"?Q=b("mouseHoldKeyAuto"):B==="Off"?Q=b("mouseHoldKeyOff"):B==="OtherCustom"?Q=ve?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):B==="Other"&&(Q=b("mouseHoldKeyOther")),ve||B==="OtherCustom"&&(be=!0),{label:Q,value:B,selected:be,onSelected:xe=>{xe.value==="Other"?T("#interface"):R(xe.value)}}})})]})]}),H("div",{class:"",children:H("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Cn?A&&A():F()},"aria-busy":l==="Translating",disabled:N||l==="Translating",children:He})}),H("div",{class:"text-sm",children:_e}),H("div",{class:"text-sm",children:Te}),H("div",{class:"flex justify-between flex-wrap",children:[x&&x!=="auto"?H("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[H("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Ce,onChange:B=>{let Q=B.target.checked;kt(Q?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:Ao(x,g.interfaceLanguage,!1,!0)})]}):H("span",{}),H("div",{class:"flex flex-end flex-grow",children:H(ms,{label:b("more"),showArrow:!0,maxWidth:K,onSelected:B=>{B.value==="changeToOnlyTranslationMode"?nt("translation"):B.value==="changeToDualTranslationMode"?nt("dual"):B.value==="translateTheWholePage"?f():B.value==="translateToThePageEndImmediately"?p():B.value==="translateTheMainPage"?n():B.value==="showTranslationOnly"||(B.value==="translateLocalPdfFile"?S&&S():B.value==="translateLocalHtmlFile"?r&&r():B.value==="translateLocalSubtitleFile"?i&&i():B.value==="donate"?(globalThis.open(g.donateUrl),L()):B.value==="feedback"?(globalThis.open(g.feedbackUrl),L()):B.value==="options"?(T(),L()):B.value==="changeToTranslateTheWholePage"?Be():B.value==="changeToTranslateTheMainPage"?Re():B.value==="about"?m():B.value==="toggleEnabled"?v():B.value==="openEbookViewer"?d():B.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+Qt,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!ie()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!ie()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(De?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),H("footer",{children:[H(fs,{isShowError:!1,request:u,setStorageBuildinConfig:s}),H("div",{class:"mt-3 text-sm flex justify-between",children:[H("a",{href:"#",class:"secondary",onClick:ue,children:b("options")}),ie()&&H("a",{href:"#",class:"secondary",onClick:at,children:b("close")}),H("span",{class:"immersive-translate-no-select muted",onClick:ug(7)(Ue),children:["V",t,g.enabled?null:H("a",{href:"#",onClick:v,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var hs={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return j.storage[n].get(a)},set:(e,t,n)=>j.storage[n].set({[e]:t})};function Po(e,t,n){let[a]=ye(()=>typeof t=="function"?t():t),[u]=ye(n),[r,o]=ye(a),[i,s]=ye(!1),[l,c]=ye("");Ze(()=>{hs.get(e,a,u).then(g=>{g[e]&&o(g[e]),s(!0),c("")}).catch(g=>{s(!1),c(g)})},[e,a,u]);let d=qn(g=>{let m=typeof g=="function"?g(r):g;P.debug("new settings",m),hs.set(e,m,u).then(()=>{o(m),s(!0),c("")}).catch(f=>{o(m),s(!1),c(f)})},[u,e,r]);return[r,d,i,l]}function bs(e,t,n){let a=[];return function(){let[r,o,i,s]=Po(e,t,n),l=qn(c=>{for(let d of a)d(c)},[]);return Ze(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,l,i,s]}}function ig(e,t){return bs(e,t,"sync")}var p6="userConfig",f6={},h6=ig(p6,f6);function Fo(e){let[t,n,a,u]=h6(),r=qn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function sg(e){try{let t=new Date;P.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await j.storage.local.set({[w4]:t.toISOString()}),await b6(),ie()||await lg()}catch(t){P.error("run cron task failed",t)}}async function b6(){try{let e=await Xt(),t=await G({url:ou}),n=e.buildinConfigUpdatedAt,a=new Date(n),u=t.buildinConfigUpdatedAt,r=new Date(u),o=t.minVersion,i=j.runtime.getManifest().version;Pu(i,o)?r>a?(await j.storage.local.set({buildinConfig:t}),P.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):P.debug(`no need to sync rules, latest: ${a}`):P.info(`local version is too old, please update to ${o} or later`)}catch(e){P.error("sync rules error: ",e)}}function ys(e){let{onClose:t}=e,[n,a]=ye("Original"),[u,r,o,i]=Fo(()=>{setTimeout(()=>{F("updateGlobalContext",!1)()},250)}),[s,l]=ye(null),[c,d]=ye(globalThis.location.href),[g,m]=ye("auto"),[f,v]=ye(null),T=N=>{a(N.detail)},p=N=>{m(N);let pe=Vu(c,N,s.sourceLanguageUrlPattern);r(fe=>({...fe,sourceLanguageUrlPattern:pe})),zt(N)},C=()=>{d(globalThis.location.href)};Ze(()=>(document.addEventListener(tr,T,!1),Xt().then(N=>{l(N);let pe=un();m(pe);let fe=Ne();a(fe),sg(N.interval)}),document.addEventListener("urlChange",C),()=>{document.removeEventListener("pageTranslatedStatus",T),document.removeEventListener("urlChange",C)}),[]),Ze(()=>{Xt().then(N=>{l(N)})},[u]),Ze(()=>{c&&s&&bn({url:c,config:s}).then(N=>{v(N)})},[c,s]);let F=(N,pe,fe={})=>()=>{$a({method:N,data:fe||{}}),pe&&t()},S=()=>{t()},A=()=>{r(N=>({...N,enabled:!N.enabled})),setTimeout(()=>{S()},50)},y=()=>{Es(),setTimeout(()=>{S()},50)},k=()=>{Es(),setTimeout(()=>{S()},50)},D=(N="")=>{_o(!0,N),setTimeout(()=>{t()},50)},x=()=>{Bo(),setTimeout(()=>{t()},50)},L=()=>{Ro(),setTimeout(()=>{t()},50)},O=()=>{dg(),setTimeout(()=>{t()},50)},w=()=>{Oo(),setTimeout(()=>{t()},50)},R=()=>{gg(),setTimeout(()=>{t()},50)},J=N=>{r(pe=>({...pe,generalRule:{...pe.generalRule,mouseHoverHoldKey:N}}))};return!s||!f?null:H(Fu,{openEbookViewerPage:L,openEbookBuilderPage:w,onSwitchTranslationMode:N=>{F("switchTranslationMode",!0,{mode:N})()},onTranslateLocalHtmlFile:O,onTranslateLocalSubtitleFile:R,request:G,onClose:S,onToggleEnabled:A,onTranslateTheWholePage:F("translateTheWholePage",!0),openOptionsPage:D,onToggleTranslate:F("toggleTranslatePage",!0),onTranslateTheMainPage:F("translateTheMainPage",!0),ontranslateToThePageEndImmediately:F("translateToThePageEndImmediately",!0),onTranslatePage:F("translatePage",!0),onRestorePage:F("restorePage",!1),onTranslatePdf:y,openAboutPage:x,onTranslateLocalPdfFile:k,onSetPageLanguage:p,onUserConfigChange:r,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:Mo,onSetBuildinConfig:cg,onMouseTriggerChanged:J})}function E6(e,t){for(let n of t){if(ie()&&!ha()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Ts={position:"right",right:0,top:335},wt={...Ts},jo=!1,ua=null,cn=null,zo=null,xs=null,Va=null,Cs=null,mg=6,No,Io,fg=null,hg=null;async function bg(){let e=Ve();Cs=await Tg(),wt=Cs.pagePopupConfig||wt;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});xs=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` -`);E6(n,[a]);let u=document.createElement("div");u.innerHTML=Le.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),ua=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");cn=o,zo=n.querySelector("#mount"),ua.setAttribute("style",ws(wt)),Ss(),o.addEventListener("mousedown",Eg),o.addEventListener("touchstart",x6),globalThis.addEventListener("resize",s=>{ua.setAttribute("style",ws(wt))})}function y6(){pa(null,zo),zo.style.display="none",cn.style.display="block",Va=setTimeout(()=>{Ss(!0)},2e3)}function pg(e){let t=e.querySelector("#mount"),n=()=>{y6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await Xt();pa(H(So,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:ko,children:H("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:H("div",{class:"immersive-translate-popup-wrapper",style:T6(),children:H(ys,{onClose:n})})})}),t)})().then(()=>{cn.style.display="none",zo.style.display="block"})}function T6(){let e=vs(),t=e.height,{position:n,top:a,left:u}=wt,r={position:"fixed"},o=300,i=300,s=100;return Rc()&&(n=Ts.position,a=Ts.top),n==="right"||n==="left"?(r.top=a-s,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-s,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function vs(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function Eg(e){hg=ua.getAttribute("style"),No=e.pageX,Io=e.pageY,Va&&clearTimeout(Va),jo=!1,cn.style.opacity="1",cn.style.transform="none",fg=cn.getAttribute("style"),globalThis.addEventListener("mousemove",ks),globalThis.addEventListener("mouseup",As),globalThis.addEventListener("touchmove",yg),globalThis.addEventListener("touchend",Uo),globalThis.addEventListener("touchcancel",Uo)}function x6(e){e.preventDefault&&e.preventDefault(),Eg(e.changedTouches[0])}function yg(e){ks(e.changedTouches[0])}function Uo(e){e.preventDefault&&e.preventDefault(),As(e.changedTouches[0])}function ks(e){e.preventDefault&&e.preventDefault(),jo=!0,ua.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function As(e){e.preventDefault&&e.preventDefault(),w6(),Va&&clearTimeout(Va),No=No||0,Io=Io||0;let t=Math.abs(e.pageX-No),n=Math.abs(e.pageY-Io);t{Ss(!0)},2e3)}function Ss(e=!1){cn.style.opacity="0.4";let t="";wt.position==="left"?t="translateX(-40%)":wt.position==="right"?t="translateX(40%)":wt.position==="top"?t="translateY(-40%)":wt.position==="bottom"&&(t="translateY(40%)"),cn.style.transform=t,e&&(cn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function w6(){globalThis.removeEventListener("mousemove",ks),globalThis.removeEventListener("mouseup",As),globalThis.removeEventListener("touchmove",yg),globalThis.removeEventListener("touchend",Uo),globalThis.removeEventListener("touchcancel",Uo)}function ws(e){let t=v6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function v6(e){let{position:t,...n}=e,a=vs(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var xg=!1;async function Cg(){xg||(xg=!0,bg().catch(e=>{P.error("init popup error",e)}))}var wg=!1,Ag=[()=>{ze.unbind()}],Ls=[...Ag],k6=gt(async()=>{await _o()},50),A6=gt(async()=>{await Bo()},50),S6=gt(async()=>{await Oo()},50),D6=gt(async()=>{await Ro()},50),Sg=gt(e=>{$a({method:e})},50),L6=gt(()=>{Ho();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),P6=gt(()=>{$o();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),F6=gt(()=>{qo();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function M6(e,t){let n=e.document;if(wg)return;if(wg=!0,ie()||Fg(),n.addEventListener("securitypolicyviolation",H6),n.addEventListener("immersiveTranslateEbookLoaded",U6),n.addEventListener(p4,z6),n.addEventListener("click",u=>{O6(u,t)}),ie()&&(globalThis.top!=globalThis.self?e.addEventListener("message",B6,!1):n.addEventListener(kn,_6)),globalThis.top===globalThis.self){let u=rn.rootIframe(S0);u.handleAsk("getRateLimitDelay",N3),u.handleAsk("throttleRequest",Y3)}}function Dg(e,t){W6(),M6(t,e);let n=t.document,a=R6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Ls.push(()=>{n.removeEventListener("touchstart",a)}),ie()&&globalThis.top===globalThis.self&&(ls(e.config),q6(e.config)),xt()&&ls(e.config)}function _6(e){Cg()}function B6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===er&&Ka(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function R6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?L6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?F6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&P6()}function O6(e,t){let n=e.target;if(!n||!n.getAttribute){Ds(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&tt(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${q}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Wo(),Ds(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${q}-tooltip-text`);kg(I6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),kg(N6.bind(null,t)));Ds(n)}async function vg(e=!1){let t=document.querySelector(`.${q}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await _g();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Mg(n)}function kg(e){let t=`${q}-modal`,n=`${q}-modal-title`,a=`${q}-modal-body`,u=`${q}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),s=r.querySelector(`.${a}`);e(r,o,s,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=q+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=q+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(d){d.target==r&&(r.style.display="none")},e(r,s,l,c)}setTimeout(()=>{j6()},100)}function N6(e,t,n,a,u){let r=Lg.bind(null,e);n.innerHTML=`
${B4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.createElement("p");o.innerHTML=`${r("searchEnhancementNotes")}`,a.appendChild(o);let i=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let g=0;g${r("option")}`})),a.appendChild(s);let l=a.querySelector(`.${q}-open-enhancement`);l&&(l.onclick=function(){Bg(!0)});let c=document.createElement("button");c.innerText=r("closeModal"),c.className=`${q}-btn ${q}-cancel-btn`;let d=document.createElement("button");d.className=`${q}-btn`,d.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(c),u.appendChild(d),c.onclick=function(){t.style.display="none"},d.onclick=function(){let g=a.getElementsByTagName("input"),m="";for(let f=0;f{Pg()},10)}function H6(e){me.HAS_CSP_ERROR="1"}function W6(){Ls.forEach(e=>{e()}),Ls=Ag}function q6(e){if(ie()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Ur.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=qa(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:C0,title:qa("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:w0,title:qa("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:T0,title:qa("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:x0,title:qa("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===T0?k6():r.id===x0?A6():r.id===w0?S6():r.id===C0?D6():Sg(r.id)},r.key)}}function $6(e){Ka(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{P.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function Og(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Ie(i.left,r)&&Ie(i.width,u.width));return{prevP:u,curP:o}}function Ps(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function Ng(e){return e?e==e[0].repeat(e.length):!0}function Ie(e,t,n=5){return Math.abs(e-t)<=n}var Fs=[",","\\.","\uFF0C","\u3002"];function Ig(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Ie(a.left,u.left,7)&&Ie(a.nextTop,u.top,10)&&Ko(a,u)}function jg({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Wg(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function qg({prevLineP:e,prevP:t},n){return Ie(e.left,n.left,1)&&Ie(e.right,t.right,1)&&t.mergedTimes>=1}function Ms(e,t){let{prevLineP:n}=e;return Wg(e,t)&&(Ie(n.bottom,t.bottom)||Ie(n.nextTop,t.top)&&Ie(n.left,t.left))}function $g(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return Wg(e,t)&&n.width0&&a/u<.1&&n.left!Ps(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Ye({text:n.map(r=>r.str).join(` -`).slice(0,1e3)});Mr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=n[s];r?(l.translatedStr=r.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),G6(l)})}var Bs={};async function K6(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Bs).filter(n=>!!n);await Go(Yg,t)}function G6(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Bs[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",K6)):e.translateStatus=="success"&&(Bs[e.id]=void 0,t.innerHTML=Le.sanitize(e.translatedStr)))}function Xg(e,t){let n=[],a=J6(e,t);return Y6(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){Jg(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{Jg(e,n,o,!1)}),n.push("
")}}),` +`))),i&&Vn(e,i,"immersive-translate-dynamic-injected-css")}async function Wd(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Ye({text:va(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=Jn(document.documentElement.lang)),e}function qd(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function Vi(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=$9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,l=n.indexOf(i);if(l!==-1){let s=o.tag||"a",c=n.indexOf(``);if(c!==-1){let d=n.substring(l+i.length,c),g=Object.keys(o).filter(m=>m!=="tag").map(m=>`${m}="${o[m]}"`).join(" ");n=n.replace(`${i}${d}`,`<${s} ${g}>${d}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function Du(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function aa(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=Du(e,n,t);return r===t&&n!==a&&(r=Du(e,a,t)),Vi(r,u)}function $9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function fo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function Ji(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(M4),e&&(r.push(`${W}-target-translation-theme-${e}`),t?r.push(`${S0}-theme-${e}`):r.push(`${A0}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(S0):(r.push(A0),u&&r.push(F4)),r}function Yi(e){let t=["notranslate",L4];return e&&t.push(`${W}-target-translation-theme-${e}-inner`),t}function $d(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:l}=t,{wrapperPrefix:s,wrapperSuffix:c}=a,d=Aa(n),g="afterend",m=d[0].replace(/\//g,"/");m=m.replace(/"/g,'\\"'),m=m.replace(//g,">");let f=d[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let C=`${m}(\\d+)${f}`,T=new RegExp(C,"g"),p=fo(l);p=ve.sanitize(p),o.length>0&&(p=p.replace(T,A=>{let y=p.indexOf(A),k=p[y-1]===" ",L=p[y+A.length]===" ",x=A.slice(d[0].length,-d[1].length),P=Number(x);if(isNaN(P))return A;let O=o[Number(P)];if(O&&O.type==="element"){let v=O.value.outerHTML;return k||(v=" "+v),L||(v=v+" "),v}else D.error("variable type not supported",O,A);return A}));let w=Ji(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&w.push(P4);let F=Yi(r),S="";return a.translationBlockStyle&&(S=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${S} class="${w.join(" ")}" ${nn}="1"><${a.targetWrapperTag} class="${F.join(" ")}" ${nn}="1">${p}`,e.inline||(s==="smart"?p=`
${p}`:p=`${s}${p}`),e.inline&&(s!=="smart"?p=`${s}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${nn}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:g}}function ho(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let l=0;l2&&(T=`<${u[2]}${C}>`),i[C]=s,o.push({text:T,type:"variable"})}else o.push({text:s.textContent||"",type:"text"});else{let f=s.textContent||"";d&&(f=zn(Xi(s))),o.push({text:f,type:"text"})}else if(s.nodeType===Node.ELEMENT_NODE)if(s&&Bt(s,a)){let C=Object.keys(i).length,T=`${u[0]}${C}${u[1]}`;u.length>2&&(T=`<${u[2]}${C}>`),i[C]=s;let p=Zi(o).endsWith(" ")?" ":"",w=zn(s.innerText||s.textContent),F=zn(s.nextSibling).startsWith(" ")?" ":"",S=Au(p+w+F),A=S[0]+T+S[1];if(p===" ")A=A.trimStart();else if(!A.startsWith(" ")){let y=Au(s.previousSibling)[1];y===""&&(y=" "),A=y+A}o.push({text:A,type:"variable"})}else{let f=Zi(o).endsWith(" ")?" ":"",C=zn(s.innerText||s.textContent);d&&(C=zn(Xi(s)));let T=zn(s.nextSibling).startsWith(" ")?" ":"",p=Au(f+C+T),w=p[0]+(s.innerText?.trim()||s.textContent?.trim()||"")+p[1];if(f===" ")w=w.trimStart();else{let F=Au(s.previousSibling)[1];F===""&&(s.nodeName==="A"||s.nodeName==="CODE")&&(F=" "),w=F+w}o.push({text:w,type:"text"})}else{let f=Zi(o).endsWith(" ")?" ":"",C="";s.textContent&&(C=zn(Xi(s))),f===" "&&(C=C.trimStart()),o.push({text:C,type:"text"})}}if(o&&o.length>0){let l="";for(let s=0;s0&&(d=o[s-1].text),s2){let c=s[2];return K9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=$d(l,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function Xi(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function K9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:l,translationTheme:s,isPdf:c,translationBlockStyle:d}=e;o=o||[];let g=fo(e.targetText);g=ve.sanitize(g);let m=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),C=new RegExp(`<${t}(\\d+)>`);o.length>0&&(m=m.replace(f,F=>{let S=m.indexOf(F),A=m[S-1]===" ",y=m[S+F.length]===" ",k=F.match(C);if(!k)return F;let L=k[1],x=Number(L);if(isNaN(x))return F;let P=o[Number(x)];if(P&&P.type==="element"){let O=P.value.outerHTML;return A||(O=" "+O),y||(O=O+" "),O}else if(P&&P.type==="text"){let O=P.value;return A||(O=" "+O),y||(O=O+" "),O}else D.error("variable type not supported",P,F);return F}));let T=Ji(s,n,a||[],i,c),p=Yi(s),w="";return d&&(w=`style="${d}"`),m=`<${u} ${w} class="${T.join(" ")}" ${nn}="1"><${u} class="${p.join(" ")}" ${nn}="1">${m}`,n||(r==="smart"?m=`
${m}`:m=`${r}${m}`),n&&(r!=="smart"?m=`${r}${m}`:m=`<${u} class="notranslate" ${nn}="1"> ${m}`),l==="smart"?m=`${m}`:m=`${m}${l}`,{html:m,position:"afterend"}}function Zi(e){let t=e[e.length-1];return t?t.text:""}function Ht(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var G9={sanitize:e=>e};function Eo(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:Ht(e.ctx),onParagraph:Lu.bind(null,e),onFrame:n=>{es(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),wa&&Je(t,"consumeContainer",e.id))}function es(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Sa(t))return;D.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Wa(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else D.debug("onFrame shadowRoot",t.host),Wa(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Wa(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=Ht(t.ctx),r=0;if(l(t,e,n))return;if(ln(e)&&i(e)){o(e);return}try{let s=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(ln(c)&&(a&&qi(c,a),u&&Ki(c,u)),l(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(Lt.mark(s.currentNode,t.id);s.nextNode();){Lt.mark(s.currentNode,t.id);let c=s.currentNode;if(i(c))for(o(c);;){if(s.nextSibling()){let d=s.currentNode;if(Lt.mark(s.currentNode,t.id),i(d)){o(d);continue}else break}if(!s.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(s){Lt.clearMark(s),r++,t.immediateTranslateCapacity>=0?Eo(t,s):(wa&&Je(s,"observeContainer",t.id),t.containerVisibleObserver?.observe(s))}function i(s){let c=s.nodeName.toLowerCase();if(s.shadowRoot)return es(t,s.shadowRoot,n),!1;if(c==="iframe")return es(t,s,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let d=t.containerRule;if(d.selectors&&d.selectors?.length>0)return po(s,d.selectors);if(d.pageHeight){let g=s.scrollHeight;if(g>0&&g0)return!0}return!1}function l(s,c,d){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||d&&Lt.isMarked(c,s.id))return!0;if(s.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let m=Ht(s.ctx);return!!Gi(c,{excludeSelectors:m.excludeSelectors,selectors:m.selectors,stayOriginalSelectors:m.stayOriginalSelectors})}}function ts(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!Lt.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(bo(e.rootNodes),Gd(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=Qi(e.rootNodes);bo(e.rootNodes),Ha(o,a,e.targetNodes||[]),Gd(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];Ha(o,a,e.rootNodes||[]),Vd(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=Qi(e.rootNodes);Ha(o,a,e.targetNodes||[]),Vd(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=Qi(e.targetNodes);bo(e.targetNodes),Ha(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&bo(e.targetNodes)}catch(o){D.error(o)}}}function Gd(e){if(!ln(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Je(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function Vd(e){if(!ln(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=ka(a,"immersiveTranslateClassBak");Dr(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function Qi(e){return e?e[e.length-1].nextSibling:null}function bo(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function Ha(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var V9=gt(as,300);async function Lu(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||J9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,wa&&Je(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Aa(u),i=ho(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(s=>s.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let l=await us(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:go(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(l){if(D.debug("on paragraph",l.text,l),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(l))return;a.paragraphs.push(l),e.immediateTranslateCapacity>0||n?(Y9(e,t.text),ns(e,t)):(wa&&Je(a,"observeParagraph",e.id),e.observeParagraphs.push(l),e.paragraphVisibleObserver?.observe(a))}return l}function J9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?ln(t)&&t.classList.contains(Ot):!1}function Y9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function ns(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),wa&&Je(t.commonAncestorContainer,"consumeParagraph",e.id),V9.call(e,e.ctx)}async function as(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await sn(a,t,(u,r,o)=>{let i=o.id,l=X9(e,i.toString());l&&Z9.call(null,u,r,o,l,t,n)})}catch(u){D.error("translateCurrentQueue error",u);return}}function X9(e,t){return e.find(n=>n.id===t)}function Z9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let l=document.querySelector(`.${W}-tooltip-content`);l&&(l.style="display:block")},500);let i=a;if(za(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(D.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:l}=u,s=n.id,c=document.createElement(l.targetWrapperTag);Je(c,v4,s.toString()),c.classList.add("notranslate",Ot,Ot+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let d=a.rootNodes[a.rootNodes.length-1].nextSibling;Ha(d,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` +`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let m=aa(Rt,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=aa(Rt,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),C=`<${l.targetWrapperTag} class="${W}-error notranslate"><${l.targetWrapperTag} class="${W}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=ve.sanitize(C)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let l=Kd(a,u),s=document.createElement(u.rule.targetWrapperTag);s.classList.add("notranslate",Ot),s.setAttribute("lang",u.targetLanguage),s.setAttribute(nn,"1");let c=G9.sanitize(l);s.innerHTML=c,a.targetNodes=[s],ts(a,r),o=!0}else D.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function us(e,t){let{text:n}=e,a=await Ye({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!Rd({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Da());let l=rn(),s=a;s==="auto"&&(s=l),e.languageByLocal=s,e.languageByClient=i;let c=i!=="auto"?i:s;return Bn(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(m=>Bn(c,m,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var Q9=[];function Jd(e){Q9.push(e)}function Yd(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(rr)||rs(e).catch(r=>{D.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var To="";async function rs(e){let t=document.title;if(!t||t.includes(rr))return;To!==t&&(To=t);let n=await Xt(e,t);if(!mo(e,n))try{let a=await ja({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=To+rr+a.text)}catch(a){throw a}}function Xd(e){e.rule.isTranslateTitle&&(document.title=To)}var os="Original";function Ne(){return os}function Ct(e){os=e,Zd(os)}var is;function Qd(e){let t=e.ctx.rule.aiRule;if(D.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=Ht(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(s=>{xo(e,s,a)}),is=new MutationObserver(s=>{s.forEach(function(c){if(ln(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){l();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(d=>{d===r&&l()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,D.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),xo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(d=>{let g=d.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(D.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),xo(e,g,a))},100))})}})}),is.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(s){yn(s,[t.streamingSelector])&&(r=s,D.debug("streamingNode",r)),yn(s,[t.messageWrapperSelector])&&(o=s,D.debug("markdownNode",o))}function l(){o.childNodes.forEach(s=>s.translated=!1),D.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),xo(e,o,a),r=void 0,o=null}}function xo(e,t,n){Un({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Lu(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function eg(){is?.disconnect()}var U=null;function wo(){return U||null}function vo(e){e6(e),i6(e),u6(e),o6(e),Ua(document,e),Ct("Translated"),r6(U),a6(U),Jd(Hn),t6(U)}function e6(e){e.rule.initialSelectorGlobalAttributes&&Ud(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function t6(e){Qd(e)}function n6(){eg()}function a6(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Wa(n,e)})}async function u6(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Yn({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function r6(e){e.ctx.rule.isTranslateTitle&&(rs(e.ctx),e.titleDynamicObserver=Yd(e.ctx))}function o6(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function i6(e){let t=_t();U&&(t=U.id),U=U||{},U.ctx=e,U.id=t,U.paragraphQueue=U.paragraphQueue||[],U.rule={excludeSelectors:Ht(e).excludeSelectors,selectors:e.rule.selectors},U.currentUrl=window.location.href,U.containerRule={pageHeight:screen.availHeight,selectors:U.rule.selectors},U.paragraphEntities=U.paragraphEntities||{},U.autoIncreaseParagraphId=U.autoIncreaseParagraphId||1,U.interruptEffectDOM=!1,U.urlChangeDelay=e.rule.urlChangeDelay,U.immediateTranslateCapacity=e.state.immediateTranslationTextCount,U.observeContainers=U.observeContainers||[],U.observeParagraphs=U.observeParagraphs||[],U.dynamicContainerObserver=U.dynamicContainerObserver||g6(U),U.ignoreResizeObserver=U.ignoreResizeObserver||m6(U),U.containerVisibleObserver=U.containerVisibleObserver||l6(U),U.paragraphVisibleObserver=U.paragraphVisibleObserver||c6(U),U.injectCssToDocument=Co,U.walkContainer=Un,U.translateState=e.state.translationMode||e.config.translationMode||"dual",U.allInlineWindows=[window],window.onerror=s6(U,e),window.immersiveTranslateSwitchTranslateState=ls.bind(U)}function ng(e,t){t.getRootNode()instanceof ShadowRoot?Co(t.getRootNode(),e):Co(t.ownerDocument,e),ss(e)}function ss(e){U||(U={},U.ctx=e,U.id=_t(),U.paragraphQueue=[],U.injectCssToDocument=Co,U.rule={excludeSelectors:Ht(e).excludeSelectors,selectors:e.rule.selectors},U.currentUrl=window.location.href,U.paragraphEntities={},U.autoIncreaseParagraphId=1,U.interruptEffectDOM=!1,U.urlChangeDelay=e.rule.urlChangeDelay,U.translateState=e.config.translationMode||"dual",U.observeContainers=[],U.observeParagraphs=[],U.allInlineWindows=[window],window.switchTranslateState=ls.bind(U))}function Hn(e=!0){U&&(Ct("Original"),n6(),U.interruptEffectDOM=!0,U.ignoreResizeObserver?.disconnect(),U.dynamicContainerObserver?.disconnect(),U.containerVisibleObserver?.disconnect(),U.paragraphVisibleObserver?.disconnect(),U.titleDynamicObserver?.disconnect(),Xd(U.ctx),Md(),_d(),e&&ls.call(U,"original"),Object.values(U.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),U=null)}function s6(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{vo(t)},e.urlChangeDelay||2e3)),!0}}function l6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(Eo(e,a.target),n.unobserve(a.target))})})}function c6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{ns(e,o)}),n.unobserve(u)}})})}var tg;function d6(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(tg),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),tg=setTimeout(()=>{let u=e.ctx;vo(u)},e.urlChangeDelay),!0)):!1}function g6(e){return new MutationObserver(t=>{if(!d6(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!Lt.isSkipMarkEle(n.target)&&!Lt.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],l=o.targetNodes||[];return[...r,...i,...l]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&yn(n.target,e.ctx.rule.mutationObserverContainerSelectors)){Lt.clearMark(n.target),n.target.paragraphs=void 0,Eo(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Wa(r,e))})}})}function m6(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);$i(r)||(n.unobserve(a.target),Wa(u,e))}})}function ls(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{ts(t,e)}),e=="original"&&document.querySelectorAll(`.${Ot}`).forEach(t=>t.remove())}function Co(e,t){if(e instanceof HTMLIFrameElement){Ua(e.contentDocument,t);return}Ua(e,t)}async function ag(e){let t=lt(),n="auto";if(ie()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=ui(e.mainFrame):a=va(e.mainFrame).slice(0,1e3),n=await Ye({text:a})}else if(t)n=await Ye({text:va(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=ui(e.mainFrame),n=await Ye({text:a})}else n=await rg();return n==="auto"&&(n=await Wd()),Mr(n),n}async function ug(){if(!U)return;document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=U.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){U.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${nr}='${n}']`);r&&r.remove()}}as.call(U,U.ctx)}var og={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},ig={...Rt,"zh-CN":{...og["zh-CN"],...Rt["zh-CN"]},"zh-TW":{...og["zh-TW"],...Rt["zh-TW"]}},ko=ig;function qa(e,t,n){return aa(ig,e,t,or,n)}var Ao=(e,t,n,a)=>{let u=B4[e]||e,r=R4[e],o=O4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let l=i[t];return a||e==="auto"||e==="placeholder"?l:`${l} (${u})`}else return u};function $a(e){Ka(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{D.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:er,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function cs(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&ze(o,i=>{i.preventDefault(),$a({method:a[r]})})}}var Ga={},p6={root:"",lang:"en",fallbackLang:"en"};function ds(e,t){let n=Object.assign({},p6,e);Ga=t||Ga;let[a,u]=ye(n.lang),[r,o]=ye(Ga),[i,l]=ye(!1),s=d=>{if(r.hasOwnProperty(d))return;l(!1);let g=qd(n.root||"",d);n.getUrl&&(g=n.getUrl(n.root||"",d),fetch(g).then(m=>m.json()).then(m=>{Ga[d]=m,o({...Ga}),l(!0)}).catch(m=>{o({...Ga}),l(!0)}))};return Ze(()=>{s(n.fallbackLang||"en"),s(a)},[a]),{lang:a,setLang:u,t:(d,g)=>{if(!r.hasOwnProperty(a))return d;let m=Du(r,a,d);return m===d&&a!==n.fallbackLang&&(m=Du(r,n.fallbackLang,d)),Vi(m,g)},isReady:i}}var f6=0;function H(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var l={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--f6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return he.vnode&&he.vnode(l),l}var ms=m0(null),gs={root:"assets",lang:"en",fallbackLang:"en"},So=e=>{let{t,setLang:n,lang:a,isReady:u}=ds({root:e.root||gs.root,lang:e.lang||gs.lang,fallbackLang:e.fallbackLang||gs.fallbackLang,getUrl:e.getUrl},e.translations);return H(ms.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function sg(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function lg(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function cg(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function Tn(e){let{items:t,maxWidth:n}=e;return n=n||128,H("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>H("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var Do="DROP_DOWN_DEFAULT_VALUE";function ps(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=h0(null);return H("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:Do,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let l=i.target.value;if(o.current&&l!==Do){o.current.value=Do,o.current?.dispatchEvent(new Event("change"));let s=u.find(c=>c.value===l);s&&n(s)}},children:[{value:Do,label:e.label}].concat(u).map((i,l)=>H("option",{value:i.value,children:i.label},"option-"+l))})}function Wt(){return b0(ms)}function fs(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=Wt(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[r,"\uFF1A"]}),H(Tn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Pu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var h6=({date:e})=>{let{t}=Wt(),[n,a]=ye(!1);return Ze(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:H("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},b6=({minVersion:e})=>{let{t}=Wt();return H("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},E6=()=>{let{t:e}=Wt();return H("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},y6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=Wt();return H("p",{class:"text-sm",children:[a("failToSyncRules")," ",H("a",{onClick:t,children:a("retry")}),H("br",{}),a("failedReason"),"\uFF1A",e,H("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function hs(e){let{isShowError:t,request:n}=e,[a,u]=ye(null),{t:r}=Wt(),[o,i]=ye(null),[l,s]=ye(null),[c,d]=ye(""),[g,m]=ye(!1),[f,C]=ye(!1),[T,p]=ye(!1),[w,F]=ye(null),[S,A]=ye(null),y=Rn(),k=async()=>{d("");let L=o;if(o===null)try{let x=await n({url:ou});x?(i(x),L=x,m(!0)):(d(r("unknownError")),s(null))}catch(x){s(null),d(x.message);return}L!==null?(e.setStorageBuildinConfig(L),s(!1),u(L.buildinConfigUpdatedAt)):(d(r("canNotFetchRemoteRule")),s(null))};return Ze(()=>{un().then(L=>{let x=L.buildinConfigUpdatedAt;F(L);let P=new Date(x);if(u(x),y==="0.0.0"){p(!0);return}n({url:ou}).then(O=>{let v=O,R=v.minVersion,J=y;i(v);let N=v.latestVersion;if(N&&(Pu(J,N)?A(!0):A(!1)),Pu(J,R)){let pe=v.buildinConfigUpdatedAt;new Date(pe)>P?(s(!0),k()):s(!1)}else C(!0),s(null)}).catch(O=>{s(null),d(O.message)})})},[]),Ze(()=>{un().then(L=>{F(L)})},[a]),w?H("div",{class:"text-sm mt-2",style:{maxWidth:218},children:T?H(E6,{}):c?t===!1?null:H(y6,{handleSyncing:k,message:c,date:a||""}):f?t===!1?null:H(b6,{minVersion:o.minVersion}):l===null||l===!0?null:g?H(h6,{date:a}):null}):null}function Fu(e){let t=Rn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:l,pageStatus:s,openEbookBuilderPage:c,openEbookViewerPage:d,config:g,openAboutPage:m,onTranslateTheWholePage:f,onToggleEnabled:C,openOptionsPage:T,ontranslateToThePageEndImmediately:p,onSetPageLanguage:w,onToggleTranslate:F,onTranslateLocalPdfFile:S,onTranslatePdf:A,onRestorePage:y,ctx:k,currentUrl:L,currentLang:x,onClose:P,onTranslatePage:O,onSetLocalConfig:v,onMouseTriggerChanged:R,errorMsg:J,disabledButton:N,noPermissionPDF:pe}=e,fe=a,[_e,z]=ye(""),[Te,Z]=ye(J),{t:b,lang:_}=Wt(),K=60;_.startsWith("zh")||(K=65);let ae=null,Y=null,De=null,te=null,Ce=null,ee=null,oe=null,ge=null,X=null,q=null,ne=null,Pe=null,Le=!0;if(g){xt()&&g&&(Le=g.generalRule.showSponsorOnSafari);let{translationService:B,translationServices:Q,translationUrlPattern:ke}=g;fn[B]&&(ge=di(B,k)),Q&&Q[B]?Pe=Q[B]||{}:Pe={};try{X=new URL(L||"")}catch{}if(L&&Lo(L)){q=lg(X.hostname),ne=cg(L);let{matches:be,excludeMatches:xe}=ke;Y=be.includes(q),ae=be.includes(X.hostname),te=xe.includes(q),De=xe.includes(X.hostname),ee=be.includes(ne),oe=xe.includes(ne)}}if(g&&x&&x!=="auto"){let{translationLanguagePattern:B}=g,{matches:Q}=B;Q.includes(x)?Ce=!0:Ce=!1}let ue=B=>{B.preventDefault(),T()},Ue=B=>{fe(Q=>(Q.alpha?z("Success disable alpha!"):z("Success enable alpha!"),{...Q,alpha:!Q.alpha}))},tt=B=>{fe(Q=>({...Q,translationMode:B})),o(B)},Be=()=>{fe(B=>({...B,translationArea:"body"})),f()},Re=()=>{fe(B=>({...B,translationArea:"main"})),n()},Oe=(B,Q,ke,be)=>{if(B==="default"){fe(it=>{let we={...it.translationUrlPattern};return{...it,translationUrlPattern:{...it.translationUrlPattern,matches:Dn([X?.hostname,q,L],we.matches),excludeMatches:Dn([X?.hostname,q,L],we.excludeMatches)}}});return}let xe=B,je=xe==="matches"?"excludeMatches":"matches";X&&fe(it=>{let we={...it.translationUrlPattern};return we[xe]=Q0(Q,we[xe]),be.length>0&&(we[xe]=Dn(be,we[xe])),we[je]=Dn(ke,we[je]),{...it,translationUrlPattern:{...it.translationUrlPattern,...we}}}),xe==="matches"&&s==="Original"?setTimeout(()=>{O(),P()},100):xe==="excludeMatches"&&s==="Translated"&&setTimeout(()=>{y(),P()},100)},kt=B=>{if(!B){fe(be=>{let xe={...be.translationLanguagePattern};return{...be,translationLanguagePattern:{...be.translationLanguagePattern,matches:Dn(x,xe.matches),excludeMatches:Dn(x,xe.excludeMatches)}}});return}let Q=B,ke=Q==="matches"?"excludeMatches":"matches";x&&fe(be=>{let xe={...be.translationLanguagePattern};return xe[Q]=Q0(x,xe[Q]),xe[ke]=Dn(x,xe[ke]),{...be,translationLanguagePattern:{...be.translationLanguagePattern,...xe}}}),Q==="matches"&&s==="Original"&&setTimeout(()=>{O(),P()},100)},Cn=X?.pathname.toLowerCase().endsWith(".pdf"),He=b("translate");s==="Translated"||s==="Error"?He=b("show-original"):s==="Original"?Cn?ha()&&X.protocol==="file:"||pe?He=b("translate-firefox-local-pdf"):ie()?He=b("noSupportTranslate-pdf"):He=b("translate-pdf"):He=b("translate"):He=b(s);let en=b("translateToThePageEndImmediately");(s==="Original"||s==="Translated")&&(g.shortcuts.toggleTranslatePage&&(s4()&&k.rule.fingerCountToToggleTranslagePageWhenTouching>=2?He+=` (${b(`fingers.${k.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:He+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(en+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let qt=[];k&&(qt=A3(k));let nt=B=>{B.preventDefault(),P()},Pt=Ld(k.config.translationService,k.config.targetLanguage);return H("div",{class:"p-3",children:[H("div",{class:"text-sm",children:[H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),H(Tn,{items:Nt.map(B=>({label:Ao(B,g.interfaceLanguage),value:B,selected:B===k.sourceLanguage,onSelected:Q=>{w(Q.value)}}))})]}),g&&g.targetLanguage&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),H(Tn,{items:Pt.filter(B=>B!=="auto").map(B=>({label:Ao(B,g.interfaceLanguage),value:B,selected:B===g.targetLanguage,onSelected:Q=>{fe(ke=>({...ke,targetLanguage:Q.value}))}}))})]}),ge&&qt.length>0&&H(tn,{children:[H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),H(Tn,{items:qt.map(B=>({label:`${b("translationServices."+B.id)}${B.ok?"":" "+b("needAction")}`,value:B.id,selected:B.selected,onSelected:Q=>{let ke=qt.find(be=>be.id===Q.value);ke.ok?(fe(be=>({...be,translationService:ke.id})),ke.props.length===0?setTimeout(()=>{O()},1):setTimeout(()=>{y()},1)):(fe(be=>({...be,translationService:ke.id})),setTimeout(()=>{T()},100))}}))})]}),Pe&&ge.props.length>0&&ge.props.map((B,Q)=>H("div",{class:"pl-4 text-sm",children:H(fs,{field:B,value:Pe[B.name],onChange:ke=>{fe(be=>{let xe=be.translationServices||{},je=xe[ge.id]||{};return setTimeout(()=>{y()},1),{...be,translationServices:{...xe,[ge.id]:{...je,[B.name]:ke}}}})}},"field-"+Q)},"service"+Q))]}),X&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:b("forThisSite")}),H(Tn,{items:[{label:b("default"),value:"default",selected:ae===!1&&De===!1&&!Y&&!te&&!ee&&!oe,onSelected:()=>{Oe("default",X.hostname,[],[]);let B=X.hostname,Q=k.localConfig.tempTranslationUrlMatches||[],ke=Q.filter(xe=>xe.match!==B),be=!1;ke.length!==Q.length&&(be=!0),be&&v({...k.localConfig,tempTranslationUrlMatches:[...ke]})}},ne&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:ee,onSelected:()=>{Oe("matches",ne,[ne],[])}},{label:b("alwaysTranslateSomeSite",{hostname:X.hostname}),value:"matches",selected:ae,onSelected:B=>{Oe(B.value,X.hostname,[X.hostname,q,ne],[q])}},q&&{label:b("alwaysTranslateSomeSite",{hostname:q}),value:"matchesWild",selected:Y,onSelected:()=>{Oe("matches",q,[ne,X.hostname,q],[X.hostname])}},ne&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:oe,onSelected:()=>{Oe("excludeMatches",ne,[ne],[])}},{label:b("neverTranslateSomeSite",{hostname:X.hostname}),value:"excludeMatches",selected:De,onSelected:B=>{Oe(B.value,X.hostname,[X.hostname,q,ne],[q])}},q&&{label:b("neverTranslateSomeSite",{hostname:q}),value:"excludeMatchesWild",selected:te,onSelected:()=>{Oe("excludeMatches",q,[X.hostname,ne,q],[X.hostname])}}].filter(Boolean)})]}),R&&au()&&H("div",{class:"flex justify-between mb-2",children:[H("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),H(Tn,{items:ir.filter(B=>!(ir.includes(g.generalRule.mouseHoverHoldKey)&&B==="OtherCustom")).map(B=>{let Q=b("mouseHoldKey",{key:B}),ke=ir.includes(g.generalRule.mouseHoverHoldKey),be=B===g.generalRule.mouseHoverHoldKey;return B==="Auto"?Q=b("mouseHoldKeyAuto"):B==="Off"?Q=b("mouseHoldKeyOff"):B==="OtherCustom"?Q=ke?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):B==="Other"&&(Q=b("mouseHoldKeyOther")),ke||B==="OtherCustom"&&(be=!0),{label:Q,value:B,selected:be,onSelected:xe=>{xe.value==="Other"?T("#interface"):R(xe.value)}}})})]})]}),H("div",{class:"",children:H("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Cn?A&&A():F()},"aria-busy":s==="Translating",disabled:N||s==="Translating",children:He})}),H("div",{class:"text-sm",children:_e}),H("div",{class:"text-sm",children:Te}),H("div",{class:"flex justify-between flex-wrap",children:[x&&x!=="auto"?H("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[H("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Ce,onChange:B=>{let Q=B.target.checked;kt(Q?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:Ao(x,g.interfaceLanguage,!1,!0)})]}):H("span",{}),H("div",{class:"flex flex-end flex-grow",children:H(ps,{label:b("more"),showArrow:!0,maxWidth:K,onSelected:B=>{B.value==="changeToOnlyTranslationMode"?tt("translation"):B.value==="changeToDualTranslationMode"?tt("dual"):B.value==="translateTheWholePage"?f():B.value==="translateToThePageEndImmediately"?p():B.value==="translateTheMainPage"?n():B.value==="showTranslationOnly"||(B.value==="translateLocalPdfFile"?S&&S():B.value==="translateLocalHtmlFile"?r&&r():B.value==="translateLocalSubtitleFile"?i&&i():B.value==="donate"?(globalThis.open(g.donateUrl),P()):B.value==="feedback"?(globalThis.open(g.feedbackUrl),P()):B.value==="options"?(T(),P()):B.value==="changeToTranslateTheWholePage"?Be():B.value==="changeToTranslateTheMainPage"?Re():B.value==="about"?m():B.value==="toggleEnabled"?C():B.value==="openEbookViewer"?d():B.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+en,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!ie()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!ie()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(Le?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),H("footer",{children:[H(hs,{isShowError:!1,request:u,setStorageBuildinConfig:l}),H("div",{class:"mt-3 text-sm flex justify-between",children:[H("a",{href:"#",class:"secondary",onClick:ue,children:b("options")}),ie()&&H("a",{href:"#",class:"secondary",onClick:nt,children:b("close")}),H("span",{class:"immersive-translate-no-select muted",onClick:sg(7)(Ue),children:["V",t,g.enabled?null:H("a",{href:"#",onClick:C,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var bs={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return j.storage[n].get(a)},set:(e,t,n)=>j.storage[n].set({[e]:t})};function Po(e,t,n){let[a]=ye(()=>typeof t=="function"?t():t),[u]=ye(n),[r,o]=ye(a),[i,l]=ye(!1),[s,c]=ye("");Ze(()=>{bs.get(e,a,u).then(g=>{g[e]&&o(g[e]),l(!0),c("")}).catch(g=>{l(!1),c(g)})},[e,a,u]);let d=qn(g=>{let m=typeof g=="function"?g(r):g;D.debug("new settings",m),bs.set(e,m,u).then(()=>{o(m),l(!0),c("")}).catch(f=>{o(m),l(!1),c(f)})},[u,e,r]);return[r,d,i,s]}function Es(e,t,n){let a=[];return function(){let[r,o,i,l]=Po(e,t,n),s=qn(c=>{for(let d of a)d(c)},[]);return Ze(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,s,i,l]}}function dg(e,t){return Es(e,t,"sync")}var T6="userConfig",x6={},C6=dg(T6,x6);function Fo(e){let[t,n,a,u]=C6(),r=qn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function gg(e){try{let t=new Date;D.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await j.storage.local.set({[S4]:t.toISOString()}),await w6(),ie()||await mg()}catch(t){D.error("run cron task failed",t)}}async function w6(){try{let e=await Zt(),t=await G({url:ou}),n=e.buildinConfigUpdatedAt,a=new Date(n),u=t.buildinConfigUpdatedAt,r=new Date(u),o=t.minVersion,i=j.runtime.getManifest().version;Pu(i,o)?r>a?(await j.storage.local.set({buildinConfig:t}),D.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):D.debug(`no need to sync rules, latest: ${a}`):D.info(`local version is too old, please update to ${o} or later`)}catch(e){D.error("sync rules error: ",e)}}function Ts(e){let{onClose:t}=e,[n,a]=ye("Original"),[u,r,o,i]=Fo(()=>{setTimeout(()=>{F("updateGlobalContext",!1)()},250)}),[l,s]=ye(null),[c,d]=ye(globalThis.location.href),[g,m]=ye("auto"),[f,C]=ye(null),T=N=>{a(N.detail)},p=N=>{m(N);let pe=Vu(c,N,l.sourceLanguageUrlPattern);r(fe=>({...fe,sourceLanguageUrlPattern:pe})),zt(N)},w=()=>{d(globalThis.location.href)};Ze(()=>(document.addEventListener(tr,T,!1),Zt().then(N=>{s(N);let pe=rn();m(pe);let fe=Ne();a(fe),gg(N.interval)}),document.addEventListener("urlChange",w),()=>{document.removeEventListener("pageTranslatedStatus",T),document.removeEventListener("urlChange",w)}),[]),Ze(()=>{Zt().then(N=>{s(N)})},[u]),Ze(()=>{c&&l&&bn({url:c,config:l}).then(N=>{C(N)})},[c,l]);let F=(N,pe,fe={})=>()=>{$a({method:N,data:fe||{}}),pe&&t()},S=()=>{t()},A=()=>{r(N=>({...N,enabled:!N.enabled})),setTimeout(()=>{S()},50)},y=()=>{ys(),setTimeout(()=>{S()},50)},k=()=>{ys(),setTimeout(()=>{S()},50)},L=(N="")=>{_o(!0,N),setTimeout(()=>{t()},50)},x=()=>{Bo(),setTimeout(()=>{t()},50)},P=()=>{Ro(),setTimeout(()=>{t()},50)},O=()=>{fg(),setTimeout(()=>{t()},50)},v=()=>{Oo(),setTimeout(()=>{t()},50)},R=()=>{hg(),setTimeout(()=>{t()},50)},J=N=>{r(pe=>({...pe,generalRule:{...pe.generalRule,mouseHoverHoldKey:N}}))};return!l||!f?null:H(Fu,{openEbookViewerPage:P,openEbookBuilderPage:v,onSwitchTranslationMode:N=>{F("switchTranslationMode",!0,{mode:N})()},onTranslateLocalHtmlFile:O,onTranslateLocalSubtitleFile:R,request:G,onClose:S,onToggleEnabled:A,onTranslateTheWholePage:F("translateTheWholePage",!0),openOptionsPage:L,onToggleTranslate:F("toggleTranslatePage",!0),onTranslateTheMainPage:F("translateTheMainPage",!0),ontranslateToThePageEndImmediately:F("translateToThePageEndImmediately",!0),onTranslatePage:F("translatePage",!0),onRestorePage:F("restorePage",!1),onTranslatePdf:y,openAboutPage:x,onTranslateLocalPdfFile:k,onSetPageLanguage:p,onUserConfigChange:r,config:l,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:Mo,onSetBuildinConfig:pg,onMouseTriggerChanged:J})}function v6(e,t){for(let n of t){if(ie()&&!ha()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var xs={position:"right",right:0,top:335},wt={...xs},jo=!1,ua=null,cn=null,zo=null,Cs=null,Va=null,ws=null,bg=6,No,Io,yg=null,Tg=null;async function xg(){let e=Ve();ws=await vg(),wt=ws.pagePopupConfig||wt;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Cs=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` +`);v6(n,[a]);let u=document.createElement("div");u.innerHTML=ve.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),ua=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");cn=o,zo=n.querySelector("#mount"),ua.setAttribute("style",vs(wt)),Ds(),o.addEventListener("mousedown",Cg),o.addEventListener("touchstart",S6),globalThis.addEventListener("resize",l=>{ua.setAttribute("style",vs(wt))})}function k6(){pa(null,zo),zo.style.display="none",cn.style.display="block",Va=setTimeout(()=>{Ds(!0)},2e3)}function Eg(e){let t=e.querySelector("#mount"),n=()=>{k6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await Zt();pa(H(So,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:ko,children:H("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:H("div",{class:"immersive-translate-popup-wrapper",style:A6(),children:H(Ts,{onClose:n})})})}),t)})().then(()=>{cn.style.display="none",zo.style.display="block"})}function A6(){let e=ks(),t=e.height,{position:n,top:a,left:u}=wt,r={position:"fixed"},o=300,i=300,l=100;return jc()&&(n=xs.position,a=xs.top),n==="right"||n==="left"?(r.top=a-l,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-l,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function ks(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function Cg(e){Tg=ua.getAttribute("style"),No=e.pageX,Io=e.pageY,Va&&clearTimeout(Va),jo=!1,cn.style.opacity="1",cn.style.transform="none",yg=cn.getAttribute("style"),globalThis.addEventListener("mousemove",As),globalThis.addEventListener("mouseup",Ss),globalThis.addEventListener("touchmove",wg),globalThis.addEventListener("touchend",Uo),globalThis.addEventListener("touchcancel",Uo)}function S6(e){e.preventDefault&&e.preventDefault(),Cg(e.changedTouches[0])}function wg(e){As(e.changedTouches[0])}function Uo(e){e.preventDefault&&e.preventDefault(),Ss(e.changedTouches[0])}function As(e){e.preventDefault&&e.preventDefault(),jo=!0,ua.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Ss(e){e.preventDefault&&e.preventDefault(),L6(),Va&&clearTimeout(Va),No=No||0,Io=Io||0;let t=Math.abs(e.pageX-No),n=Math.abs(e.pageY-Io);t{Ds(!0)},2e3)}function Ds(e=!1){cn.style.opacity="0.4";let t="";wt.position==="left"?t="translateX(-40%)":wt.position==="right"?t="translateX(40%)":wt.position==="top"?t="translateY(-40%)":wt.position==="bottom"&&(t="translateY(40%)"),cn.style.transform=t,e&&(cn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function L6(){globalThis.removeEventListener("mousemove",As),globalThis.removeEventListener("mouseup",Ss),globalThis.removeEventListener("touchmove",wg),globalThis.removeEventListener("touchend",Uo),globalThis.removeEventListener("touchcancel",Uo)}function vs(e){let t=P6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function P6(e){let{position:t,...n}=e,a=ks(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var kg=!1;async function Ag(){kg||(kg=!0,xg().catch(e=>{D.error("init popup error",e)}))}var Sg=!1,Pg=[()=>{ze.unbind()}],Ps=[...Pg],F6=gt(async()=>{await _o()},50),M6=gt(async()=>{await Bo()},50),_6=gt(async()=>{await Oo()},50),B6=gt(async()=>{await Ro()},50),Fg=gt(e=>{$a({method:e})},50),R6=gt(()=>{Ho();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),O6=gt(()=>{$o();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),N6=gt(()=>{qo();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function I6(e,t){let n=e.document;if(Sg)return;if(Sg=!0,ie()||Rg(),n.addEventListener("securitypolicyviolation",V6),n.addEventListener("immersiveTranslateEbookLoaded",G6),n.addEventListener(E4,K6),n.addEventListener("click",u=>{H6(u,t)}),ie()&&(globalThis.top!=globalThis.self?e.addEventListener("message",z6,!1):n.addEventListener(kn,j6)),globalThis.top===globalThis.self){let u=on.rootIframe(D0);u.handleAsk("getRateLimitDelay",U3),u.handleAsk("throttleRequest",ed)}}function Mg(e,t){J6(),I6(t,e);let n=t.document,a=U6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Ps.push(()=>{n.removeEventListener("touchstart",a)}),ie()&&globalThis.top===globalThis.self&&(cs(e.config),Y6(e.config)),xt()&&cs(e.config)}function j6(e){Ag()}function z6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===er&&Ka(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function U6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?R6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?N6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&O6()}function H6(e,t){let n=e.target;if(!n||!n.getAttribute){Ls(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&ot(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${W}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Wo(),Ls(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${W}-tooltip-text`);Lg(q6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Lg(W6.bind(null,t)));Ls(n)}async function Dg(e=!1){let t=document.querySelector(`.${W}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await Ng();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Og(n)}function Lg(e){let t=`${W}-modal`,n=`${W}-modal-title`,a=`${W}-modal-body`,u=`${W}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),l=r.querySelector(`.${a}`);e(r,o,l,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=W+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=W+"-close",o.appendChild(i);let l=document.createElement("div");l.className=n+" notranslate",o.appendChild(l);let s=document.createElement("div");s.className=a+" notranslate",o.appendChild(s);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(d){d.target==r&&(r.style.display="none")},e(r,l,s,c)}setTimeout(()=>{$6()},100)}function W6(e,t,n,a,u){let r=_g.bind(null,e);n.innerHTML=`
${I4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.querySelector(`div[data-${W}-cancel-desc]`),i=document.createElement("p");i.innerHTML=o?ve.sanitize(o.textContent||""):ve.sanitize(r("searchEnhancementNotes")),i.style.cssText="margin-bottom:12px",a.appendChild(i);let l=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let m=0;m${r("option")}`})),a.appendChild(s);let c=a.querySelector(`.${W}-open-enhancement`);c&&(c.onclick=function(){Ig(!0)});let d=document.createElement("button");d.innerText=r("closeModal"),d.className=`${W}-btn ${W}-cancel-btn`;let g=document.createElement("button");g.className=`${W}-btn`,g.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(d),u.appendChild(g),d.onclick=function(){t.style.display="none"},g.onclick=function(){let m=a.getElementsByTagName("input"),f="";for(let C=0;C{Bg()},10)}function V6(e){me.HAS_CSP_ERROR="1"}function J6(){Ps.forEach(e=>{e()}),Ps=Pg}function Y6(e){if(ie()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Ur.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=qa(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:w0,title:qa("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:v0,title:qa("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:x0,title:qa("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:C0,title:qa("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===x0?F6():r.id===C0?M6():r.id===v0?_6():r.id===w0?B6():Fg(r.id)},r.key)}}function X6(e){Ka(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{D.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function zg(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Ie(i.left,r)&&Ie(i.width,u.width));return{prevP:u,curP:o}}function Fs(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function Ug(e){return e?e==e[0].repeat(e.length):!0}function Ie(e,t,n=5){return Math.abs(e-t)<=n}var Ms=[",","\\.","\uFF0C","\u3002"];function Hg(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Ie(a.left,u.left,7)&&Ie(a.nextTop,u.top,10)&&Ko(a,u)}function Wg({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function Gg(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Vg({prevLineP:e,prevP:t},n){return Ie(e.left,n.left,1)&&Ie(e.right,t.right,1)&&t.mergedTimes>=1}function _s(e,t){let{prevLineP:n}=e;return Gg(e,t)&&(Ie(n.bottom,t.bottom)||Ie(n.nextTop,t.top)&&Ie(n.left,t.left))}function Jg(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return Gg(e,t)&&n.width0&&a/u<.1&&n.left!Fs(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Ye({text:n.map(r=>r.str).join(` +`).slice(0,1e3)});Mr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await sn({sentences:u},e,(r,o,i)=>{let l=i.id,s=n[l];r?(s.translatedStr=r.message,s.translateStatus="error"):o&&(s.translatedStr=o.text,s.translateStatus="success"),Q6(s)})}var Rs={};async function Z6(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Rs).filter(n=>!!n);await Go(em,t)}function Q6(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Rs[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",Z6)):e.translateStatus=="success"&&(Rs[e.id]=void 0,t.innerHTML=ve.sanitize(e.translatedStr)))}function tm(e,t){let n=[],a=t1(e,t);return n1(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){Qg(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{Qg(e,n,o,!1)}),n.push("
")}}),`
${n.join("")} -
`}function Jg(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(u*o)+1).toFixed(2)}%`:"auto",d=`${(l.left*100/(u*o)).toFixed(2)}%`,g=`${(l.top*100/(r*o)).toFixed(2)}%`,m=n4()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,v=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${d};top: ${g};width:${c};max-width:${s};`,!m&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let T=Ps(l.str)?"":"translate-pending",p=l.str;l.translateStatus=="success"&&(p=l.translatedStr,T=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function V6(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let l=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,d=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${d};height:${s-i}px;overflow:auto;`}function J6(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,_s(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function Y6(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],Ig(e,a)){r.push(a);return}n.push([a])}),n}var Zg="immersive-translate",Ja,xn=[];async function tm(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(tt("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await Qg(1);await Go(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{xn=[],Ja=void 0,t1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await Qg(a);await Go(e,u||[])})}}function X6(e){if(Ja)return{...Ja,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ja={...i},i}async function Qg(e){let t=X6(e);if(!t)return;xn[e]||(xn[e]=await Z6(t,e,xn[e-1]||[]));let n=xn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${Zg}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${Zg}-page`);let r=Xg(t,n);return u.innerHTML=Le.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function Z6(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,s]=a._pageInfo.view;Ja.pageWidth=i,Ja.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=e1(e,u);e.origLineParagraphs=l;let{prevP:c,curP:d}=Og(e,l);return d&&nm(c,void 0,d),Q6(e,l)}function Q6(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,Ug(e,o)){if(Hg(e,o)){r(l,o);return}if(qg(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},r(l,o);return}if($g(e,o)){r(l,o);return}if(Ms(e,o)){r(l,o);return}if(Kg(e,o)){r(l,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],s=r.transform[5],l=r.width*n,c=t.styles[r.fontName].fontFamily,d=r.transform[3],g=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+g)*d;isNaN(f)&&(f=d);let v=i*n,T=v+l,p=(a-s-f)*n,C=p+d*n,F=C+d*n*.2,S=T+d*n*.3,A={str:o,left:v,nextLeft:S,top:p,nextTop:F,id:`pageNum-${_t()}`,width:l,originFontName:r.fontName,fontName:c,fontSize:d,right:T,bottom:C,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(A);else{let y=u[u.length-1];if(e.prevLineP=y,Gg(e,A)){zg(e,A)?y.str+=o:y.str+=" "+o,y.right=T,y.fontName=c,y.width=Math.max(y.width+l,T-y.left),y.nextLeft=S;return}if(Vg(e,A)){y.width=Math.max(y.width+l,T-y.left),y.right=T,y.nextLeft=S,y.attachList.push(A);return}u.push(A)}}),u}function nm(e,t,n){if(!Ko(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function t1(e){setTimeout(()=>{let t="";for(let n=1;n<=xn.length;n++){let a=!1;if(xn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Ye({text:t}).then(n=>{tt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ra={};async function Rs(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await sn(e,n,1e3);return zt(a),a}async function am(e){Ct("Translating");let t=un(),n=Da(),a=[...document.querySelectorAll(".source-text")];if(mo(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Je(r,"id",o+""),i&&(za(i,o)?.remove(),i.appendChild(Su(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=za(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),r?(c.innerHTML=Le.sanitize(`${r.message}`),ra[s]={ok:!1,sentence:i}):o&&(c.innerHTML=Le.sanitize(o.text),ra[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Ct("Translated")}}async function um(e){Ct("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ra),n=[],a=[];for(let u of t){let r=ra[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let s=i.parentElement;i.remove(),s&&(delete ra[u],s.appendChild(Su(e,u)),a.push(r.sentence))}}}try{await on({sentences:a},e,(u,r,o)=>{let i=o.id,s=za(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),u?(l.innerHTML=Le.sanitize(`${u.message}`),ra[i]={ok:!1,sentence:o}):r&&(l.innerHTML=Le.sanitize(r.text),ra[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Ct("Translated")}}function Os(){Ct("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Ns={};async function rm(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await sn(e,n,1e3);return zt(a),a}async function om(e){Ct("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Ns),n=[];for(let a of t){let u=Ns[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${nr}='${a}']`);o&&o.remove(),n.push(u)}}try{await yo(n,e,e.config.translationMode)}catch{}finally{Ct("Translated")}}function im(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+Ot);for(let u of a)u.remove()}Ct("Original")}async function sm(e){Ct("Translating");let t=_t(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let s=i.contentDocument;if(!s)continue;Ua(s,e);let l=s.body;if(!l)continue;let c=Ht(e);c.isModifyImage=!1,Un({id:t,container:l,filterRule:c,onParagraph:d=>{a.push(d)}})}let r=go(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=ho(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await as(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(u.push(l),Ns[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await yo(u,e,e.config.translationMode)}catch{}finally{Ct("Translated")}}var n1=new AbortController,{signal:a1}=n1,Hs=0,Ws=0,Is=!1,js=0,Mu=!1,oa,lm=0,ia=[];function Vo(e,t){u1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=gt(d=>{if(Is==!1&&Math.abs(d.clientX-Hs)+Math.abs(d.clientY-Ws)>3&&(js<2?js+=1:Is=!0),Hs=d.clientX,Ws=d.clientY,o||Mu&&!oa){let g=pm(a.rule,t);if(g){if(qs(g))return;dm(a,g)}}},o?700:300),s=d=>{let g=d.target;qs(g)||dm(a)},l=d=>{let g=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=ze.getPressedKeyCodes();if(m.length>1&&ze[g]&&(lm=Date.now(),Mu=!1),m.length===1&&ze[g]){let f=Date.now();Mu=!0,oa&&clearTimeout(oa),oa=setTimeout(()=>{let v=lm-f;v>0&&v<=150?Mu=!1:s(d),oa=void 0},150)}};if(ia.push(()=>{oa&&clearTimeout(oa)}),r)return;zs("mousemove",i,t),ia.push(()=>{t.removeEventListener("mousemove",i)});function c(){Is=!1,js=0,i.cancel()}if(o)zs("blur",c,t),ia.push(()=>{t.removeEventListener("blur",c)});else{let d=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];zs("keyup",cm,t),ia.push(()=>{t.removeEventListener("keyup",cm)}),g.includes(d)?ze("*","mouseHover",l):ze(u.generalRule.mouseHoverHoldKey,"mouseHover",s),ze.setScope("mouseHover"),ia.push(()=>{ze.deleteScope("mouseHover")})}}function u1(){ia.forEach(e=>e()),ia=[]}function cm(e){Mu=!1}function zs(e,t,n=window){return n.addEventListener(e,t,{signal:a1})}function dm(e,t,n=window){if(t=t||pm(e.rule,n),!t){P.debug("can not find selection part!");return}if(qs(t)){P.debug("exclude dom");return}Zd(e,t);let a=wo();a?.currentUrl!==window.location.href&&(Hn(),is(e)),a&&(a.setupMouseHoverListener=Vo);let u=Ht(e);u.excludeSelectors=[],u.selectors=[];let r=!1;Un({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{Lu(a,o,!0).then(i=>{if(i&&!r){r=!0;let s=Date.now();et(h4,s),tt("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function pm(e,t){return r1(Hs,Ws,e,t)}function r1(e,t,n,a){let u=Gc(e,t,n,a);if(u==null)return;let r=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=Vc(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:mm(l,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(l){P.debug("get mouse over word fail",l)}let s=u.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Jo&&self.removeEventListener("keydown",Jo),Jo=i,self.addEventListener("keydown",Jo);function i(l){if(Ya)return;let c=l,d=c.target||c.srcElement,g=d?.tagName;(d?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(x1(l,u.triggerKey,u.codePrefixAlias)?s(l):r=0)}function s(l){Date.now()-o=u.triggerTimes&&(l1(e,u),r=0)}}function o1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let s=r+i;return u.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function fm(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Xa;function i1(e){let t=e.parentElement;if(!t)return;Xa=document.createElement("div"),Xa.className=q+"-input",Xa.innerHTML=`
`,t.appendChild(Xa);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function s1(){Xa&&Xa.remove()}async function l1(e,t){if(!Ya)try{let d=function(){o=e.config.inputTargetLanguage;let m=r.split(" ")[0];m&&m[0]&&(m=m[0].toLowerCase()+m.slice(1)),m.trim()&&t.flatAlias.includes(m)?(o=fm(m,t.codeAlias),u=r.slice(m.length+1)):u=r},g=function(){o="";let m=o1(t),f=r.split(m);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let T=r.lastIndexOf(u),p=r.slice(0,T).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let v=r.slice(a.length+1,r.indexOf(u)).trim();if(o=fm(v,t.codeAlias),!o){P.warn("not found alias",v);return}},n=document.activeElement;Ya=!0,i1(n);let a="",u="",r=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?d():(g(),o||d()),T1(e);let i=c1(u,t),s=await sn(e,i);P.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;et(b4,Date.now());let c=await ja(l,e);y1(n,a+c.text),Ya=!1}catch(n){throw Ya=!1,n}finally{Ya=!1,s1()}}function c1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function d1(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function hm(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function sa(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function g1(e,t,n){await sa(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await sa(10)}async function m1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await sa(10))}async function p1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await sa(20),(t.value||t.value==="")&&(t.value=e.text)}async function f1(e,t){Em(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await sa(20))}var h1=[g1.bind(null,["plain"])];function b1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function Em(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function E1(e){if(Em(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function y1(e,t){await E1(e),await sa(50);let n=d1(t,e);b1(e),P.debug("clearContnet",_u(e)),await sa(50);for(let a of[...h1,f1,p1,m1])if(await a(n,e),P.debug("setContent",a.name,hm(n,e),_u(e),n),hm(n,e))break}function T1(e){tt("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function x1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function Cm(e){if(nu().any||!e.rule.enableSearchEnhancement||!/https:\/\/www\.google\..+\/search/.test(e.url))return;let t=A1(e.url);if(!t)return;let n=await sn(e,t);if(tt("detect_search_action",[{name:"detect_search_action"}],{...e,sourceLanguage:n}),!["zh-CN","zh-TW"].includes(n))return;P.debug("use dual search");let a=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")a=!0;else if(!xm(document.body))return;let r=document.querySelector(e.rule.searchEnhancementSelector);if(!r){let o=document.querySelector("#rcnt");if(!o)return;let i=o.children;if(i&&i.length>1)r=i[1];else{let s=i[0];r=document.createElement("div"),r.id="rhs",r.style.maxWidth="372px",r.style.marginLeft="50px",o.insertBefore(r,s.nextSibling)}}if(a||xm(document.body)){P.debug("find story");let o=await S1(e,t,n);P.debug("enKeyword",o);let i=await w1(o);if(P.debug("news list",i),i&&i.length<=0)return;let s=await k1(i,t,o);if(!s)return;tt("show_search_enhancement",[{name:"show_search_enhancement"}],{...e,sourceLanguage:"search_enhancement"}),C1(e,s,n),r.insertBefore(s,r?.firstChild)}}async function C1(e,t,n){let a=t.querySelectorAll('[translate="true"]');return D1(e,[...a],n),t}async function w1(e){let n=(await G({url:v1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,u=new DOMParser().parseFromString(n,"text/xml"),r=[],o=u.querySelectorAll("item");for(let i=0;i\u82F1\u6587\u641C\u7D22 ${n} \u7684\u76F8\u5173\u65B0\u95FB:
-
${r}
`,{ADD_ATTR:["target"]});let i=a.querySelector(`.${q}-search-more`);return i&&(i.onclick=()=>{let s=a.querySelector(`.${q}-expand-items`);s.style.display=="none"?(s.style.display="block",i.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(ym(n))}),a}function Tm(e){return e.map((t,n)=>{let a=t.title||"",u=t.source||"",r=a.split("-");return r.length>1&&(u=r[r.length-1].trim(),r=r.slice(0,r.length-1)),a=r.join("-"),a=a.trim(),`
${u}
`}function Qg(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",l=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(s=>{if(!s.str)return;let c=s.mergedTimes>0?`${(s.width*100/(u*o)+1).toFixed(2)}%`:"auto",d=`${(s.left*100/(u*o)).toFixed(2)}%`,g=`${(s.top*100/(r*o)).toFixed(2)}%`,m=o4()&&s.fontSize<7?` transform: scale(${s.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(s.fontSize-1,24)}px)`,C=`${s.originFontName},${s.fontName},serif`;a&&(i=`position: absolute;left: ${d};top: ${g};width:${c};max-width:${l};`,!m&&s.mergedTimes>1&&(i+=`height:${(s.bottom-s.top)*1.05}px;overflow:auto;`));let T=Fs(s.str)?"":"translate-pending",p=s.str;s.translateStatus=="success"&&(p=s.translatedStr,T=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function e1(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,l=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let s=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,d=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${s};left:${c};top:${d};height:${l-i}px;overflow:auto;`}function t1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,Bs(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function n1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],Hg(e,a)){r.push(a);return}n.push([a])}),n}var nm="immersive-translate",Ja,xn=[];async function rm(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(ot("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await am(1);await Go(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{xn=[],Ja=void 0,i1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await am(a);await Go(e,u||[])})}}function a1(e){if(Ja)return{...Ja,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ja={...i},i}async function am(e){let t=a1(e);if(!t)return;xn[e]||(xn[e]=await u1(t,e,xn[e-1]||[]));let n=xn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${nm}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${nm}-page`);let r=tm(t,n);return u.innerHTML=ve.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function u1(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,l]=a._pageInfo.view;Ja.pageWidth=i,Ja.pageHeight=l,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:l});let s=o1(e,u);e.origLineParagraphs=s;let{prevP:c,curP:d}=zg(e,s);return d&&om(c,void 0,d),r1(e,s)}function r1(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let l=t[i-1],s=n[n.length-1];if(e.prevLineP=l,e.prevP=s,$g(e,o)){if(Kg(e,o)){r(s,o);return}if(Vg(e,o)){e.justify={left:l.left,right:l.right,width:l.width,top:l.top,str:l.str,fontSize:l.fontSize},r(s,o);return}if(Jg(e,o)){r(s,o);return}if(_s(e,o)){r(s,o);return}if(Yg(e,o)){r(s,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],l=r.transform[5],s=r.width*n,c=t.styles[r.fontName].fontFamily,d=r.transform[3]||r.height,g=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+g)*d;isNaN(f)&&(f=d);let C=i*n,T=C+s,p=(a-l-f)*n,w=p+d*n,F=w+d*n*.2,S=T+d*n*.3,A={str:o,left:C,nextLeft:S,top:p,nextTop:F,id:`pageNum-${_t()}`,width:s,originFontName:r.fontName,fontName:c,fontSize:d,right:T,bottom:w,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(A);else{let y=u[u.length-1];if(e.prevLineP=y,Xg(e,A)){qg(e,A)?y.str+=o:y.str+=" "+o,y.right=T,y.fontName=c,y.width=Math.max(y.width+s,T-y.left),y.nextLeft=S;return}if(Zg(e,A)){y.width=Math.max(y.width+s,T-y.left),y.right=T,y.nextLeft=S,y.attachList.push(A);return}u.push(A)}}),u}function om(e,t,n){if(!Ko(e,n)||e.width+1(o=l,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function i1(e){setTimeout(()=>{let t="";for(let n=1;n<=xn.length;n++){let a=!1;if(xn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Ye({text:t}).then(n=>{ot("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ra={};async function Os(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await Xt(e,n,1e3);return zt(a),a}async function im(e){Ct("Translating");let t=rn(),n=Da(),a=[...document.querySelectorAll(".source-text")];if(mo(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Je(r,"id",o+""),i&&(za(i,o)?.remove(),i.appendChild(Su(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await sn({sentences:u},e,(r,o,i)=>{let l=i.id,s=za(document.body,l);if(!s)return;let c=s.parentElement;c&&(s.remove(),r?(c.innerHTML=ve.sanitize(`${r.message}`),ra[l]={ok:!1,sentence:i}):o&&(c.innerHTML=ve.sanitize(o.text),ra[l]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Ct("Translated")}}async function sm(e){Ct("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ra),n=[],a=[];for(let u of t){let r=ra[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let l=i.parentElement;i.remove(),l&&(delete ra[u],l.appendChild(Su(e,u)),a.push(r.sentence))}}}try{await sn({sentences:a},e,(u,r,o)=>{let i=o.id,l=za(document.body,i);if(!l)return;let s=l.parentElement;s&&(l.remove(),u?(s.innerHTML=ve.sanitize(`${u.message}`),ra[i]={ok:!1,sentence:o}):r&&(s.innerHTML=ve.sanitize(r.text),ra[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Ct("Translated")}}function Ns(){Ct("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Is={};async function lm(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await Xt(e,n,1e3);return zt(a),a}async function cm(e){Ct("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Is),n=[];for(let a of t){let u=Is[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${nr}='${a}']`);o&&o.remove(),n.push(u)}}try{await yo(n,e,e.config.translationMode)}catch{}finally{Ct("Translated")}}function dm(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+Ot);for(let u of a)u.remove()}Ct("Original")}async function gm(e){Ct("Translating");let t=_t(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let l=i.contentDocument;if(!l)continue;Ua(l,e);let s=l.body;if(!s)continue;let c=Ht(e);c.isModifyImage=!1,Un({id:t,container:s,filterRule:c,onParagraph:d=>{a.push(d)}})}let r=go(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let l=ho(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!l)continue;i.variables=l?.variables||{},i.text=l?.text,i.id=(o++).toString();let s=await us(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});s&&(u.push(s),Is[s.id]=s)}a=[],document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await yo(u,e,e.config.translationMode)}catch{}finally{Ct("Translated")}}var s1=new AbortController,{signal:l1}=s1,Ws=0,qs=0,js=!1,zs=0,Mu=!1,oa,mm=0,ia=[];function Vo(e,t){c1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=gt(d=>{if(js==!1&&Math.abs(d.clientX-Ws)+Math.abs(d.clientY-qs)>3&&(zs<2?zs+=1:js=!0),Ws=d.clientX,qs=d.clientY,o||Mu&&!oa){let g=Em(a.rule,t);if(g){if($s(g))return;fm(a,g)}}},o?700:300),l=d=>{let g=d.target;$s(g)||fm(a)},s=d=>{let g=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=ze.getPressedKeyCodes();if(m.length>1&&ze[g]&&(mm=Date.now(),Mu=!1),m.length===1&&ze[g]){let f=Date.now();Mu=!0,oa&&clearTimeout(oa),oa=setTimeout(()=>{let C=mm-f;C>0&&C<=150?Mu=!1:l(d),oa=void 0},150)}};if(ia.push(()=>{oa&&clearTimeout(oa)}),r)return;Us("mousemove",i,t),ia.push(()=>{t.removeEventListener("mousemove",i)});function c(){js=!1,zs=0,i.cancel()}if(o)Us("blur",c,t),ia.push(()=>{t.removeEventListener("blur",c)});else{let d=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];Us("keyup",pm,t),ia.push(()=>{t.removeEventListener("keyup",pm)}),g.includes(d)?ze("*","mouseHover",s):ze(u.generalRule.mouseHoverHoldKey,"mouseHover",l),ze.setScope("mouseHover"),ia.push(()=>{ze.deleteScope("mouseHover")})}}function c1(){ia.forEach(e=>e()),ia=[]}function pm(e){Mu=!1}function Us(e,t,n=window){return n.addEventListener(e,t,{signal:l1})}function fm(e,t,n=window){if(t=t||Em(e.rule,n),!t){D.debug("can not find selection part!");return}if($s(t)){D.debug("exclude dom");return}ng(e,t);let a=wo();a?.currentUrl!==window.location.href&&(Hn(),ss(e)),a&&(a.setupMouseHoverListener=Vo);let u=Ht(e);u.excludeSelectors=[],u.selectors=[];let r=!1;Un({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{Lu(a,o,!0).then(i=>{if(i&&!r){r=!0;let l=Date.now();et(T4,l),ot("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function Em(e,t){return d1(Ws,qs,e,t)}function d1(e,t,n,a){let u=Xc(e,t,n,a);if(u==null)return;let r=()=>{let l=a.document.elementFromPoint(e,t);if(!l)return;let s=Zc(l,e,t);return s===l?l.nodeName==="BUTTON"?l:void 0:bm(s,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(s){D.debug("get mouse over word fail",s)}let l=u.getBoundingClientRect();if(!(l.left>e||l.rightt||l.bottomn[s]=[s,...n[s]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Jo&&self.removeEventListener("keydown",Jo),Jo=i,self.addEventListener("keydown",Jo);function i(s){if(Ya)return;let c=s,d=c.target||c.srcElement,g=d?.tagName;(d?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(S1(s,u.triggerKey,u.codePrefixAlias)?l(s):r=0)}function l(s){Date.now()-o=u.triggerTimes&&(f1(e,u),r=0)}}function g1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let l=r+i;return u.includes(i)||(l+=" "),l});a.push(...o)}return new RegExp(a.join("|"))}function ym(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Xa;function m1(e){let t=e.parentElement;if(!t)return;Xa=document.createElement("div"),Xa.className=W+"-input",Xa.innerHTML=`
`,t.appendChild(Xa);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function p1(){Xa&&Xa.remove()}async function f1(e,t){if(!Ya)try{let d=function(){o=e.config.inputTargetLanguage;let m=r.split(" ")[0];m&&m[0]&&(m=m[0].toLowerCase()+m.slice(1)),m.trim()&&t.flatAlias.includes(m)?(o=ym(m,t.codeAlias),u=r.slice(m.length+1)):u=r},g=function(){o="";let m=g1(t),f=r.split(m);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let T=r.lastIndexOf(u),p=r.slice(0,T).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let C=r.slice(a.length+1,r.indexOf(u)).trim();if(o=ym(C,t.codeAlias),!o){D.warn("not found alias",C);return}},n=document.activeElement;Ya=!0,m1(n);let a="",u="",r=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?d():(g(),o||d()),A1(e);let i=h1(u,t),l=await Xt(e,i);D.debug("translateContent",i,l);let s={text:i||"",id:0,from:l,to:o,url:"https://google.com",fromByClient:l};if(!s.text)return;et(x4,Date.now());let c=await ja(s,e);k1(n,a+c.text),Ya=!1}catch(n){throw Ya=!1,n}finally{Ya=!1,p1()}}function h1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function b1(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function Tm(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function sa(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function E1(e,t,n){await sa(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await sa(10)}async function y1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await sa(10))}async function T1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await sa(20),(t.value||t.value==="")&&(t.value=e.text)}async function x1(e,t){Cm(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await sa(20))}var C1=[E1.bind(null,["plain"])];function w1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function Cm(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function v1(e){if(Cm(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function k1(e,t){await v1(e),await sa(50);let n=b1(t,e);w1(e),D.debug("clearContnet",_u(e)),await sa(50);for(let a of[...C1,x1,T1,y1])if(await a(n,e),D.debug("setContent",a.name,Tm(n,e),_u(e),n),Tm(n,e))break}function A1(e){ot("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function S1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function km(e,t,n){return(await ja({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}function D1(e,t,n,a){let u=[],r="en";for(let o of n)u.push({text:o.textContent||"",id:u.length,from:r,to:a,url:"https://google.com",fromByClient:r});return new Promise((o,i)=>{sn({sentences:u},{...e,translationService:"google"},(l,s,c)=>{if(l)return o([]);let d=s?.id||0,g=n[d];g&&g.className==W+"-search-title-wrapper"&&(g.innerHTML+=ve.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}function Yo(e,t,n){t&&ot(t.key,[{name:t.key}],{...e,sourceLanguage:t.sourceLanguage||n})}function Ks(e,t,n,a){let u=n.querySelectorAll('[translate="true"]');return D1(e,t,[...u],a),n}async function Gs(e,t){let a=(await G({url:L1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,r=new DOMParser().parseFromString(a,"text/xml"),o=[],i=r.querySelectorAll("item");for(let l=0;l${e.cancelDescription}
`:""} +

\u82F1\u6587\u641C\u7D22 + ${n} \u7684\u76F8\u5173\u65B0\u95FB:
+

+
${o}
+ + `.replaceAll(` +`,""),{ADD_ATTR:["target"]});let s=u.querySelector(`.${W}-search-more`);return s&&(s.onclick=()=>{let c=u.querySelector(`.${W}-expand-items`);c.style.display=="none"?(c.style.display="block",s.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(wm(n))}),u}function vm(e,t){let n=e.style;return t.map((a,u)=>{let r=a.title||"",o=a.source||"",i=r.split("-");return i.length>1&&(o=i[i.length-1].trim(),i=i.slice(0,i.length-1)),r=i.join("-"),r=r.trim(),`
${o}
+
+ ${a}
${_d(t.pubDate||"")}
+ >${r} +
+
${Nd(a.pubDate||"")}
`}).join(` -`)}function xm(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}function A1(e){let n=new URL(e).searchParams.get("q");return n||""}async function S1(e,t,n){return(await ja({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}async function D1(e,t,n){let a=[],u="en";for(let r of t)a.push({text:r.textContent||"",id:a.length,from:u,to:n,url:"https://google.com",fromByClient:u});return new Promise((r,o)=>{on({sentences:a},{...e,translationService:"google"},(i,s,l)=>{if(i)return r([]);let c=s?.id||0,d=t[c];d&&d.className==q+"-search-title-wrapper"&&(d.innerHTML+=Le.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}var de=null,Yo={},Za,Xo;async function Ho(){if(Ne()==="Original"){let e={};Xo&&(e.translationMode=Xo),Za&&(e.translationTheme=Za),de&&(e={...de.state,...e}),await vt(ct(),e),await Zt(de)}else(Ne()==="Translated"||Ne()==="Error")&&la()}async function Wo(){if(de=await vt(ct(),{}),de.rule.isEbookBuilder)return om(de);if(de.rule.isSubtitleBuilder)return um(de);eg()}async function qo(){if(Ne()==="Original")de=await vt(ct(),{}),Za||(Za=de.state.translationTheme),de=await vt(ct(),{translationTheme:"mask"}),await Zt(de);else if(Ne()==="Translated"){let e=Pd().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[de.mainFrame,...e],n=de?.state.translationTheme;for(let a of t){let u=ka(a,ba,!0);n==="mask"?u!=="none"?Je(a,ba,"none",!0):Je(a,ba,"mask",!0):u!=="mask"?Je(a,ba,"mask",!0):Je(a,ba,"none",!0)}}}async function $s(){let e=await vt(ct(),{});return e.rule.isSubtitleBuilder?Rs(e):Qd(e)}function L1(e){Ne()==="Original"?am(e):Os()}function P1(e){Ne()==="Original"?vo(e):Hn()}async function la(){let e=await vt(ct(),{});if(e.rule.isSubtitleBuilder){Os();return}else e.rule.isEbookBuilder&&im();Hn()}async function Zt(e){if(Ne()!=="Original"&&await la(),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Yo[e.translationService]||(Yo[e.translationService]=!0,lt()||zi(e).catch(t=>{P.warn("init translation engine error",t)})),tt("translage_page_daily",[{name:"translage_page_daily"}],e),tt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:un()}),e.rule.isSubtitleBuilder)return L1(e);if(e.rule.isEbookBuilder)return sm(e);e.rule.isPdf||P1(e)}async function wm(){Ne()==="Original"?await Zo():(Ne()==="Translated"||Ne()==="Error")&&(de=await vt(ct(),{}),de.state.translationArea!=="main"?await Zo():la())}async function Zo(){de=await vt(ct(),{translationArea:"main"}),await Zt(de)}async function Ks(){de=await vt(ct(),{translationArea:"body"}),await Zt(de)}async function $o(){if(Ne()==="Original"){let e=await vt(ct(),{translationMode:"translation"});await Zt(e)}else(Ne()==="Translated"||Ne()==="Error")&&await la()}async function vm(e){if(de=await vt(ct(),{}),tt("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...de,sourceLanguage:"unknown"}),Ne()==="Original"){Zt(de);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function km(){if(Ne()==="Original")await Ks();else if(Ne()==="Translated"||Ne()==="Error"){let e={};de&&de.state&&(e=de.state),de=await vt(ct(),e),de.state.translationArea!=="body"?(de.state.translationArea="body",de=await vt(ct(),de.state),await Zt(de)):la()}}async function Am(){de=await vt(ct(),{translationStartMode:"immediate"}),await Zt(de)}async function Pg(){let e=await vt(ct(),{});if(P.debug("init page ctx",e),e.rule.isSubtitleBuilder){Rs(e);return}if(e.rule.isEbookBuilder){rm(e);return}if(e.rule.isPdf){await tm(e);return}if(Cm(e),Xo||(Xo=e.state.translationMode),Za||(Za=e.state.translationTheme),e.rule.urlChangeDelay&&await su(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await F1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=Dm(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){P.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Rn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){P.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&Od(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await $s():zt(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(P.debug(`detect page language: ${e.url} ${t}`),Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||L3(t,e.config.translationLanguagePattern)&&(n=!0,P.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&au()&&Vo(e,window),n)de.state.isAutoTranslate=!0,Zt(de);else if(P.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Yo[e.translationService]||(Yo[e.translationService]=!0,lt()||zi(e).catch(a=>{P.warn("init translation engine error",a)})))}}async function vt(e,t){let n=Object.keys(t);if(de){let a={url:e,config:de.config,state:{...de.state,...t}};de=await bn(a)}else{let a=await Xt(),u=t;n.length===0&&(u=void 0),de=await bn({url:e,config:a,state:u})}return de}async function Sm(){let e=await Xt(),t;de&&de.state&&(t=de.state);let n={url:ct(),config:e,state:t},a=await bn(n);de=a;let u=wo(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Dg(a,o),au()&&Vo(a,o),bm(a)}),a}function F1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}var Bu=new Map,Wn=class{constructor(t,n=!1){this.logger=new fu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),j.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,s,l,c;u.tab&&u.tab.id&&(s=u.tab.id,o=`${o}:${s}`,l=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let d=Vs(i),{type:g,name:m}=d;if(g!==t)return!1;let f=Vs(o),T=Bu.get(g).get(m);if(!T)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:p,sync:C}=T,F={type:t,name:f.name,id:s,url:l,active:c};if(C){try{let S=p(a.payload,F);r({ok:!0,data:S})}catch(S){r({ok:!1,errorName:S.name,errorMessage:S.message,errorDetails:S.details})}return!1}else return p(a.payload,F).then(S=>{r({ok:!0,data:S})}).catch(S=>{r({ok:!1,errorName:S.name,errorMessage:S.message,errorDetails:S.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=Bu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new Gs(`${r}:${t}`,this.logger);return Bu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},Gs=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=Vs(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await j.runtime.sendMessage(o);return Lm(o,i,this.logger)}catch(i){if(u==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await j.tabs.sendMessage(r,o);return Lm(o,i,this.logger)}}};function Lm(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Qe(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Qe("noResponse","Unknown error")}function Vs(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ka=async function(e,t){let{method:n,data:a}=e,u=await Sm(),r=Date.now();P.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await Ks(),et(pn,r)):n==="translateTheMainPage"?(await Zo(),et(pn,r)):n==="translateToThePageEndImmediately"?(await Am(),et(pn,r)):n==="toggleTranslatePage"?(await Ho(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await km(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await wm(),et(pn,r)):n==="toggleOnlyTransation"?(await $o(),et(pn,r)):n==="translatePage"?(await Zt(u),et(pn,r)):n==="toggleTranslationMask"?await qo():n==="restorePage"?la():n==="setCurrentPageLanguageByClient"?zt(a):n==="retryFailedParagraphs"?Wo():n==="switchTranslationMode"&&a&&a.mode&&vm(a.mode)},M1=function(e,t){let{method:n,data:a}=e;if(P.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ne();if(n==="getCurrentPageLanguage"){let u=un();return $s().catch(r=>{P.warn("detectCurrentPageLanguage failed",r)}),u}},Qo,e0;function Fg(){let e=t0();lt()||_1(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function t0(){return Qo||(Qo=new Wn("content_script",!1).getConnection("main",Ka),Qo)}function _1(){return e0||(e0=new Wn("content_script",!1).getConnection("main_sync",M1,{sync:!0}),e0)}var B1=new Map;function Pm(e){let t=R1(64),n=new CustomEvent(m4,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{B1.set(t,(r,o)=>{r?u(r):a(o)})})}function R1(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Ad(e){return ie()?v3(e):Ke({method:"queryParagraphCache",data:e})}async function Sd(e){if(ie()){await w3(e);return}return Ke({method:"setParagraphCache",data:e})}async function G3(){if(ie())return Promise.resolve();await Ke({method:"mockRequest"})}function _o(e=!1,t=""){return ie()?(j.runtime.openOptionsPage(e,t),Promise.resolve()):Ke({method:"openOptionsPage"})}function Dm(e=""){return ie()||xt()?Ve().OPTIONS_URL:j.runtime.getURL("options.html")}function Js(e=""){return j&&j.runtime&&j.runtime.getURL?j.runtime.getURL("options.html"):""}function Bo(e=!1){return ie()?(j.extra.openAboutPage(e),Promise.resolve()):Ke({method:"openAboutPage"})}function Bg(e=!1){return ie()?(j.extra.openSearchEnhancement(e),Promise.resolve()):Ke({method:"openSearchEnhancement"})}function Ro(e=!1){return ie()?(j.extra.openEbookViewerPage(e),Promise.resolve()):Ke({method:"openEbookViewerPage"})}function dg(e=!1){return ie()?Promise.resolve():Ke({method:"openHtmlViewerPage"})}function Oo(e=!1){return ie()?(j.extra.openEbookBuilderPage(e),Promise.resolve()):Ke({method:"openEbookBuilderPage"})}function Rg(e){xt()}function Es(e=!1){return ie()?(alert("it's not support in userscript"),Promise.resolve()):Ke({method:"openPdfViewerPage"})}function gg(e=!1){return ie()?(j.extra.openSubtitleBuilderPage(e),Promise.resolve()):Ke({method:"openSubtitleBuilderPage"})}function lg(){return ie()?(P.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):Ke({method:"autoSyncLatestConfig"})}function Fm(e){let t;try{t=new URL(e)}catch{return!1}let n=Js(),a="";try{a=new URL(n).hostname}catch{}return!!(a&&t.hostname===a)}function Lo(e){let t;try{t=new URL(e)}catch{return!1}let n=Js(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(Ys(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function Ys(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}var O1=function(e,t){let{method:n,data:a}=e;P.debug(`popup received message: ${n}`,a||" ");let u;t.active&&(u=t.id,globalThis.document.dispatchEvent(new CustomEvent(ru,{detail:{tabId:u,payload:e}})))},n0;function Mm(){Ru()}function Ru(){return n0||(n0=new Wn("popup",!1).getConnection("main_sync",O1),n0)}var ca={},Xs={};function a0(e,t){if(Xs[e])try{t()}catch(n){P.error("run callback failed",n)}else ca[e]||(ca[e]=[]),ca[e].push(t)}function _m(e){if(ca[e]&&ca[e].length){let t=[...ca[e]];ca[e]=[],t.forEach(n=>n())}}function Zs(){let[e,t]=ye("Original"),{t:n}=Wt(),[a,u,r,o]=Fo(()=>{setTimeout(()=>{k("updateGlobalContext")()},250)}),[i,s]=ye(null),[l,c]=ye(null),[d,g]=ye(null),[m,f]=ye("auto"),[v,T]=ye(null),[{errorMsg:p,disableButton:C,noPermissionPDF:F},S]=ye({errorMsg:"",disableButton:!1,noPermissionPDF:!1}),A=z=>{let{tabId:Te,payload:Z}=z.detail,{method:b,data:_}=Z;P.debug("popup received message",b,_||" "),b==="setPageStatus"?Te&&t(_):b==="ready"&&Te&&(S({disableButton:!1,errorMsg:"",noPermissionPDF:!1}),Xs[Te]=!0,_m(Te))},y=()=>{u(z=>({...z,enabled:!z.enabled})),setTimeout(()=>{R()},50)};Ze(()=>{let z=Ru();return j.tabs.query({currentWindow:!0,active:!0}).then(Te=>{let Z=Te[0].id;g(Z);let b=Te[0].url;j.tabs.onUpdated.addListener((_,K,ae)=>{_===_&&ae.url&&l&&ae.url!==l&&(c(ae.url),window.location.reload())}),globalThis.document.addEventListener(ru,A),b&&c(b),b&&Lo(b)?(c(b),z.sendMessage(`content_script:main_sync:${Z}`,{method:"ping"}).then(_=>{S({disableButton:!1,errorMsg:"",noPermissionPDF:!1}),Xs[Z]=!0,_m(Z)}).catch(_=>{Fm(b)||S({disableButton:!0,errorMsg:n("reloadCurrentPage"),noPermissionPDF:!1}),P.debug("ping failed, but it is ok. cause maybe content is not injected",_)}),a0(Z,async()=>{let _=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getPageStatus"});t(_)}),a0(Z,async()=>{let _=await an();s(_)}),a0(Z,async()=>{let _=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getCurrentPageLanguage"});f(_),_==="auto"&&setTimeout(async()=>{let K=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getCurrentPageLanguage"});f(K)},500)})):Ys(b||"")?I1(b||"")&&N1(b||"").then(_=>{_||S({disableButton:!1,noPermissionPDF:!0,errorMsg:n("noLocalFilePermissionForPDF")})}):S({disableButton:!0,errorMsg:n("noPermissionForThisPage"),noPermissionPDF:!1}),b===""&&c("about:newtab")}).catch(Te=>{}),()=>{globalThis.document.removeEventListener(ru,A)}},[]),Ze(()=>{an().then(z=>{s(z)})},[a]),Ze(()=>{l&&i&&bn({url:l,config:i}).then(z=>{T(z)})},[l,i]);let k=(z,Te=!0,Z={})=>async()=>{let b=Ru(),K=(await j.tabs.query({currentWindow:!0,active:!0}))[0].id;b.sendMessage(`content_script:main:${K}`,{method:z,data:Z||{}}),Te&&setTimeout(()=>{globalThis.close()},10)},D=()=>{let z=j.runtime.getURL(Qu);j.tabs.create({url:z}),globalThis.close()},x=()=>{let z=j.runtime.getURL(d4);j.tabs.create({url:z}),globalThis.close()},L=()=>{let z=j.runtime.getURL(g4);xt()&&(z=Ve().SUBTITLE_BUILDER_URL),j.tabs.create({url:z}),globalThis.close()},O=()=>{l&&d&&(j.tabs.update(d,{url:R4(l)}),globalThis.close())},w=z=>{let Te=Ru();if(f(z),d&&l){let Z=Vu(l,z,i.sourceLanguageUrlPattern);u(b=>({...b,sourceLanguageUrlPattern:Z})),a0(d,()=>{Te.sendMessage(`content_script:main:${d}`,{method:"setCurrentPageLanguageByClient",data:z})})}},R=()=>{globalThis.close()},J=(z="")=>{if(xt()){let Z=Ve().OPTIONS_URL;j.tabs.create({url:Z+z})}else{let Te=j.runtime.getURL("options.html");j.tabs.create({url:Te+z})}setTimeout(()=>{globalThis.close()},50)},N=()=>{if(xt()){let Te=Ve().OPTIONS_URL;j.tabs.create({url:Te+"#about"})}else j.tabs.create({url:j.runtime.getURL("options.html#about")});setTimeout(()=>{globalThis.close()},50)},pe=()=>{let z=j.runtime.getURL("ebook/make/index.html");xt()&&(z=Ve().EBOOK_BUILDER_URL),j.tabs.create({url:z}),setTimeout(()=>{globalThis.close()},50)},fe=()=>{j.tabs.create({url:j.runtime.getURL("ebook/index.html")}),setTimeout(()=>{globalThis.close()},50)},_e=z=>{u(Te=>({...Te,generalRule:{...Te.generalRule,mouseHoverHoldKey:z}}))};return!i||!v?null:H(Fu,{onClose:R,onToggleTranslate:k("toggleTranslatePage"),openEbookBuilderPage:pe,openEbookViewerPage:fe,onTranslateLocalSubtitleFile:L,onTranslateLocalHtmlFile:x,onToggleEnabled:y,openOptionsPage:J,openAboutPage:N,onTranslatePdf:O,onTranslateLocalPdfFile:D,onTranslateTheMainPage:k("translateTheMainPage"),onTranslateTheWholePage:k("translateTheWholePage"),ontranslateToThePageEndImmediately:k("translateToThePageEndImmediately"),onSwitchTranslationMode:z=>{k("switchTranslationMode",!0,{mode:z})()},onTranslatePage:k("translatePage"),onRestorePage:k("restorePage",!1),onSetPageLanguage:w,onUserConfigChange:z=>{u(z)},config:i,pageStatus:e,ctx:v,currentUrl:l,currentLang:m,onSetLocalConfig:Yn,onSetBuildinConfig:Pr,request:Or,onMouseTriggerChanged:_e,errorMsg:p,disabledButton:C,noPermissionPDF:F})}async function N1(e){try{let t=new URL(e),n=await fetch(t.href);return!0}catch{return!1}}function I1(e){try{return new URL(e).protocol==="file:"}catch{return!1}}var Bm=document.getElementById("mount");Mm();Bm&&(async()=>{let e=await an();e.debug&&P.setLevel("debug"),pa(H(So,{lang:e.interfaceLanguage,translations:ko,fallbackLang:"zh-CN",children:H(Zs,{})}),Bm)})();})(); +`)}function Am(e,t){if(!e.keyword)return;let n=e.keyword.value||"";for(let a=0;anew RegExp(a.urlMatch).test(t))}async function Dm(e){if(nu().any)return;if(!e.rule.enableSearchEnhancement){D.debug("enable is false");return}let t=P1(e.rule.searchEnhancementConfig||[],e.url);if(!t){D.debug("not found siteConfig",e.url);return}let n=Am(t,e.url);if(!n){D.debug("not found keyword",e.url);return}t.id=="google"?M1(e,t,n):F1(e,t,n)}async function F1(e,t,n){let a=await Xt(e,document.title);t.selector&&setTimeout(async()=>{let u=document.querySelector(t.selector);if(!u){D.debug("selector node not found",t.selector);return}let r=await Gs(n,t.showCount);if(r&&r.length<=0){D.debug("list not found");return}let o=await Vs(t,r,n,t.showCount);if(!o){D.debug("getInseredNode none");return}o.style.cssText=t.style.container||"";let i=t.selectorAction||"appendChild";i=="insertBefore"?u.parentElement?.insertBefore(o,u):i=="appendChild"?u.appendChild(o):i=="replace"&&u?.replaceWith(o),Ks(e,t,o,a),Yo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a)},t.delayTime||0)}async function M1(e,t,n){let a=await Xt(e,n);if(Yo(e,{key:"detect_search_action"},a),!["zh-CN","zh-TW"].includes(a))return;D.debug("use dual search");let u=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")u=!0;else if(!Sm(document.body))return;let o=document.querySelector("#rhs");if(!o){let i=document.querySelector("#rcnt");if(!i)return;let l=i.children;if(l&&l.length>1)o=l[1];else{let s=l[0];o=document.createElement("div"),o.id="rhs",o.style.maxWidth="372px",o.style.marginLeft="50px",i.insertBefore(o,s.nextSibling)}}if(u||Sm(document.body)){D.debug("find story");let i=await km(e,n,a);D.debug("enKeyword",i);let l=await Gs(i,t.showCount);if(D.debug("news list",l),l&&l.length<=0)return;let s=await Vs(t,l,i,t.showCount);if(!s)return;Yo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a),Ks(e,t,s,a),o.insertBefore(s,o?.firstChild)}}function Sm(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}var de=null,Xo={},Za,Zo;async function Ho(){if(Ne()==="Original"){let e={};Zo&&(e.translationMode=Zo),Za&&(e.translationTheme=Za),de&&(e={...de.state,...e}),await vt(ct(),e),await Qt(de)}else(Ne()==="Translated"||Ne()==="Error")&&la()}async function Wo(){if(de=await vt(ct(),{}),de.rule.isEbookBuilder)return cm(de);if(de.rule.isSubtitleBuilder)return sm(de);ug()}async function qo(){if(Ne()==="Original")de=await vt(ct(),{}),Za||(Za=de.state.translationTheme),de=await vt(ct(),{translationTheme:"mask"}),await Qt(de);else if(Ne()==="Translated"){let e=Bd().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[de.mainFrame,...e],n=de?.state.translationTheme;for(let a of t){let u=ka(a,ba,!0);n==="mask"?u!=="none"?Je(a,ba,"none",!0):Je(a,ba,"mask",!0):u!=="mask"?Je(a,ba,"mask",!0):Je(a,ba,"none",!0)}}}async function Js(){let e=await vt(ct(),{});return e.rule.isSubtitleBuilder?Os(e):ag(e)}function _1(e){Ne()==="Original"?im(e):Ns()}function B1(e){Ne()==="Original"?vo(e):Hn()}async function la(){let e=await vt(ct(),{});if(e.rule.isSubtitleBuilder){Ns();return}else e.rule.isEbookBuilder&&dm();Hn()}async function Qt(e){if(Ne()!=="Original"&&await la(),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Xo[e.translationService]||(Xo[e.translationService]=!0,lt()||Ui(e).catch(t=>{D.warn("init translation engine error",t)})),ot("translage_page_daily",[{name:"translage_page_daily"}],e),ot("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:rn()}),e.rule.isSubtitleBuilder)return _1(e);if(e.rule.isEbookBuilder)return gm(e);e.rule.isPdf||B1(e)}async function Lm(){Ne()==="Original"?await Qo():(Ne()==="Translated"||Ne()==="Error")&&(de=await vt(ct(),{}),de.state.translationArea!=="main"?await Qo():la())}async function Qo(){de=await vt(ct(),{translationArea:"main"}),await Qt(de)}async function Ys(){de=await vt(ct(),{translationArea:"body"}),await Qt(de)}async function $o(){if(Ne()==="Original"){let e=await vt(ct(),{translationMode:"translation"});await Qt(e)}else(Ne()==="Translated"||Ne()==="Error")&&await la()}async function Pm(e){if(de=await vt(ct(),{}),ot("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...de,sourceLanguage:"unknown"}),Ne()==="Original"){Qt(de);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function Fm(){if(Ne()==="Original")await Ys();else if(Ne()==="Translated"||Ne()==="Error"){let e={};de&&de.state&&(e=de.state),de=await vt(ct(),e),de.state.translationArea!=="body"?(de.state.translationArea="body",de=await vt(ct(),de.state),await Qt(de)):la()}}async function Mm(){de=await vt(ct(),{translationStartMode:"immediate"}),await Qt(de)}async function Bg(){let e=await vt(ct(),{});if(D.debug("init page ctx",e),e.rule.isSubtitleBuilder){Os(e);return}if(e.rule.isEbookBuilder){lm(e);return}if(e.rule.isPdf){await rm(e);return}if(Dm(e),Zo||(Zo=e.state.translationMode),Za||(Za=e.state.translationTheme),e.rule.urlChangeDelay&&await su(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await R1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=Bm(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){D.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Rn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){D.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&zd(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await Js():zt(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(D.debug(`detect page language: ${e.url} ${t}`),Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||_3(t,e.config.translationLanguagePattern)&&(n=!0,D.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&au()&&Vo(e,window),n)de.state.isAutoTranslate=!0,Qt(de);else if(D.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Bn(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Xo[e.translationService]||(Xo[e.translationService]=!0,lt()||Ui(e).catch(a=>{D.warn("init translation engine error",a)})))}}async function vt(e,t){let n=Object.keys(t);if(de){let a={url:e,config:de.config,state:{...de.state,...t}};de=await bn(a)}else{let a=await Zt(),u=t;n.length===0&&(u=void 0),de=await bn({url:e,config:a,state:u})}return de}async function _m(){let e=await Zt(),t;de&&de.state&&(t=de.state);let n={url:ct(),config:e,state:t},a=await bn(n);de=a;let u=wo(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Mg(a,o),au()&&Vo(a,o),xm(a)}),a}function R1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}var Bu=new Map,Wn=class{constructor(t,n=!1){this.logger=new fu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),j.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,l,s,c;u.tab&&u.tab.id&&(l=u.tab.id,o=`${o}:${l}`,s=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let d=Zs(i),{type:g,name:m}=d;if(g!==t)return!1;let f=Zs(o),T=Bu.get(g).get(m);if(!T)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:p,sync:w}=T,F={type:t,name:f.name,id:l,url:s,active:c};if(w){try{let S=p(a.payload,F);r({ok:!0,data:S})}catch(S){r({ok:!1,errorName:S.name,errorMessage:S.message,errorDetails:S.details})}return!1}else return p(a.payload,F).then(S=>{r({ok:!0,data:S})}).catch(S=>{r({ok:!1,errorName:S.name,errorMessage:S.message,errorDetails:S.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=Bu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new Xs(`${r}:${t}`,this.logger);return Bu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},Xs=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=Zs(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await j.runtime.sendMessage(o);return Rm(o,i,this.logger)}catch(i){if(u==="popup"){let l=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(l,n,t,i),Promise.resolve({message:l})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await j.tabs.sendMessage(r,o);return Rm(o,i,this.logger)}}};function Rm(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Qe(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Qe("noResponse","Unknown error")}function Zs(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ka=async function(e,t){let{method:n,data:a}=e,u=await _m(),r=Date.now();D.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await Ys(),et(pn,r)):n==="translateTheMainPage"?(await Qo(),et(pn,r)):n==="translateToThePageEndImmediately"?(await Mm(),et(pn,r)):n==="toggleTranslatePage"?(await Ho(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await Fm(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await Lm(),et(pn,r)):n==="toggleOnlyTransation"?(await $o(),et(pn,r)):n==="translatePage"?(await Qt(u),et(pn,r)):n==="toggleTranslationMask"?await qo():n==="restorePage"?la():n==="setCurrentPageLanguageByClient"?zt(a):n==="retryFailedParagraphs"?Wo():n==="switchTranslationMode"&&a&&a.mode&&Pm(a.mode)},O1=function(e,t){let{method:n,data:a}=e;if(D.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ne();if(n==="getCurrentPageLanguage"){let u=rn();return Js().catch(r=>{D.warn("detectCurrentPageLanguage failed",r)}),u}},e0,t0;function Rg(){let e=n0();lt()||N1(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function n0(){return e0||(e0=new Wn("content_script",!1).getConnection("main",Ka),e0)}function N1(){return t0||(t0=new Wn("content_script",!1).getConnection("main_sync",O1,{sync:!0}),t0)}var I1=new Map;function Om(e){let t=j1(64),n=new CustomEvent(b4,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{I1.set(t,(r,o)=>{r?u(r):a(o)})})}function j1(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Pd(e){return ie()?D3(e):Ke({method:"queryParagraphCache",data:e})}async function Fd(e){if(ie()){await S3(e);return}return Ke({method:"setParagraphCache",data:e})}async function X3(){if(ie())return Promise.resolve();await Ke({method:"mockRequest"})}function _o(e=!1,t=""){return ie()?(j.runtime.openOptionsPage(e,t),Promise.resolve()):Ke({method:"openOptionsPage"})}function Bm(e=""){return ie()||xt()?Ve().OPTIONS_URL:j.runtime.getURL("options.html")}function Qs(e=""){return j&&j.runtime&&j.runtime.getURL?j.runtime.getURL("options.html"):""}function Bo(e=!1){return ie()?(j.extra.openAboutPage(e),Promise.resolve()):Ke({method:"openAboutPage"})}function Ig(e=!1){return ie()?(j.extra.openSearchEnhancement(e),Promise.resolve()):Ke({method:"openSearchEnhancement"})}function Ro(e=!1){return ie()?(j.extra.openEbookViewerPage(e),Promise.resolve()):Ke({method:"openEbookViewerPage"})}function fg(e=!1){return ie()?Promise.resolve():Ke({method:"openHtmlViewerPage"})}function Oo(e=!1){return ie()?(j.extra.openEbookBuilderPage(e),Promise.resolve()):Ke({method:"openEbookBuilderPage"})}function jg(e){xt()}function ys(e=!1){return ie()?(alert("it's not support in userscript"),Promise.resolve()):Ke({method:"openPdfViewerPage"})}function hg(e=!1){return ie()?(j.extra.openSubtitleBuilderPage(e),Promise.resolve()):Ke({method:"openSubtitleBuilderPage"})}function mg(){return ie()?(D.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):Ke({method:"autoSyncLatestConfig"})}function Nm(e){let t;try{t=new URL(e)}catch{return!1}let n=Qs(),a="";try{a=new URL(n).hostname}catch{}return!!(a&&t.hostname===a)}function Lo(e){let t;try{t=new URL(e)}catch{return!1}let n=Qs(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(el(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function el(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}var z1=function(e,t){let{method:n,data:a}=e;D.debug(`popup received message: ${n}`,a||" ");let u;t.active&&(u=t.id,globalThis.document.dispatchEvent(new CustomEvent(ru,{detail:{tabId:u,payload:e}})))},a0;function Im(){Ru()}function Ru(){return a0||(a0=new Wn("popup",!1).getConnection("main_sync",z1),a0)}var ca={},tl={};function u0(e,t){if(tl[e])try{t()}catch(n){D.error("run callback failed",n)}else ca[e]||(ca[e]=[]),ca[e].push(t)}function jm(e){if(ca[e]&&ca[e].length){let t=[...ca[e]];ca[e]=[],t.forEach(n=>n())}}function nl(){let[e,t]=ye("Original"),{t:n}=Wt(),[a,u,r,o]=Fo(()=>{setTimeout(()=>{k("updateGlobalContext")()},250)}),[i,l]=ye(null),[s,c]=ye(null),[d,g]=ye(null),[m,f]=ye("auto"),[C,T]=ye(null),[{errorMsg:p,disableButton:w,noPermissionPDF:F},S]=ye({errorMsg:"",disableButton:!1,noPermissionPDF:!1}),A=z=>{let{tabId:Te,payload:Z}=z.detail,{method:b,data:_}=Z;D.debug("popup received message",b,_||" "),b==="setPageStatus"?Te&&t(_):b==="ready"&&Te&&(S({disableButton:!1,errorMsg:"",noPermissionPDF:!1}),tl[Te]=!0,jm(Te))},y=()=>{u(z=>({...z,enabled:!z.enabled})),setTimeout(()=>{R()},50)};Ze(()=>{let z=Ru();return j.tabs.query({currentWindow:!0,active:!0}).then(Te=>{let Z=Te[0].id;g(Z);let b=Te[0].url;j.tabs.onUpdated.addListener((_,K,ae)=>{_===_&&ae.url&&s&&ae.url!==s&&(c(ae.url),window.location.reload())}),globalThis.document.addEventListener(ru,A),b&&c(b),b&&Lo(b)?(c(b),z.sendMessage(`content_script:main_sync:${Z}`,{method:"ping"}).then(_=>{S({disableButton:!1,errorMsg:"",noPermissionPDF:!1}),tl[Z]=!0,jm(Z)}).catch(_=>{Nm(b)||S({disableButton:!0,errorMsg:n("reloadCurrentPage"),noPermissionPDF:!1}),D.debug("ping failed, but it is ok. cause maybe content is not injected",_)}),u0(Z,async()=>{let _=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getPageStatus"});t(_)}),u0(Z,async()=>{let _=await un();l(_)}),u0(Z,async()=>{let _=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getCurrentPageLanguage"});f(_),_==="auto"&&setTimeout(async()=>{let K=await z.sendMessage(`content_script:main_sync:${Z}`,{method:"getCurrentPageLanguage"});f(K)},500)})):el(b||"")?H1(b||"")&&U1(b||"").then(_=>{_||S({disableButton:!1,noPermissionPDF:!0,errorMsg:n("noLocalFilePermissionForPDF")})}):S({disableButton:!0,errorMsg:n("noPermissionForThisPage"),noPermissionPDF:!1}),b===""&&c("about:newtab")}).catch(Te=>{}),()=>{globalThis.document.removeEventListener(ru,A)}},[]),Ze(()=>{un().then(z=>{l(z)})},[a]),Ze(()=>{s&&i&&bn({url:s,config:i}).then(z=>{T(z)})},[s,i]);let k=(z,Te=!0,Z={})=>async()=>{let b=Ru(),K=(await j.tabs.query({currentWindow:!0,active:!0}))[0].id;b.sendMessage(`content_script:main:${K}`,{method:z,data:Z||{}}),Te&&setTimeout(()=>{globalThis.close()},10)},L=()=>{let z=j.runtime.getURL(Qu);j.tabs.create({url:z}),globalThis.close()},x=()=>{let z=j.runtime.getURL(f4);j.tabs.create({url:z}),globalThis.close()},P=()=>{let z=j.runtime.getURL(h4);xt()&&(z=Ve().SUBTITLE_BUILDER_URL),j.tabs.create({url:z}),globalThis.close()},O=()=>{s&&d&&(j.tabs.update(d,{url:j4(s)}),globalThis.close())},v=z=>{let Te=Ru();if(f(z),d&&s){let Z=Vu(s,z,i.sourceLanguageUrlPattern);u(b=>({...b,sourceLanguageUrlPattern:Z})),u0(d,()=>{Te.sendMessage(`content_script:main:${d}`,{method:"setCurrentPageLanguageByClient",data:z})})}},R=()=>{globalThis.close()},J=(z="")=>{if(xt()){let Z=Ve().OPTIONS_URL;j.tabs.create({url:Z+z})}else{let Te=j.runtime.getURL("options.html");j.tabs.create({url:Te+z})}setTimeout(()=>{globalThis.close()},50)},N=()=>{if(xt()){let Te=Ve().OPTIONS_URL;j.tabs.create({url:Te+"#about"})}else j.tabs.create({url:j.runtime.getURL("options.html#about")});setTimeout(()=>{globalThis.close()},50)},pe=()=>{let z=j.runtime.getURL("ebook/make/index.html");xt()&&(z=Ve().EBOOK_BUILDER_URL),j.tabs.create({url:z}),setTimeout(()=>{globalThis.close()},50)},fe=()=>{j.tabs.create({url:j.runtime.getURL("ebook/index.html")}),setTimeout(()=>{globalThis.close()},50)},_e=z=>{u(Te=>({...Te,generalRule:{...Te.generalRule,mouseHoverHoldKey:z}}))};return!i||!C?null:H(Fu,{onClose:R,onToggleTranslate:k("toggleTranslatePage"),openEbookBuilderPage:pe,openEbookViewerPage:fe,onTranslateLocalSubtitleFile:P,onTranslateLocalHtmlFile:x,onToggleEnabled:y,openOptionsPage:J,openAboutPage:N,onTranslatePdf:O,onTranslateLocalPdfFile:L,onTranslateTheMainPage:k("translateTheMainPage"),onTranslateTheWholePage:k("translateTheWholePage"),ontranslateToThePageEndImmediately:k("translateToThePageEndImmediately"),onSwitchTranslationMode:z=>{k("switchTranslationMode",!0,{mode:z})()},onTranslatePage:k("translatePage"),onRestorePage:k("restorePage",!1),onSetPageLanguage:v,onUserConfigChange:z=>{u(z)},config:i,pageStatus:e,ctx:C,currentUrl:s,currentLang:m,onSetLocalConfig:Yn,onSetBuildinConfig:Pr,request:Or,onMouseTriggerChanged:_e,errorMsg:p,disabledButton:w,noPermissionPDF:F})}async function U1(e){try{let t=new URL(e),n=await fetch(t.href);return!0}catch{return!1}}function H1(e){try{return new URL(e).protocol==="file:"}catch{return!1}}var zm=document.getElementById("mount");Im();zm&&(async()=>{let e=await un();e.debug&&D.setLevel("debug"),pa(H(So,{lang:e.interfaceLanguage,translations:ko,fallbackLang:"zh-CN",children:H(nl,{})}),zm)})();})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/dist/firefox/styles/input.css b/dist/firefox/styles/input.css index b869b0c45..a1a775ac3 100644 --- a/dist/firefox/styles/input.css +++ b/dist/firefox/styles/input.css @@ -71,6 +71,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -79,6 +82,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -213,6 +220,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } diff --git a/dist/userscript/immersive-translate.user.js b/dist/userscript/immersive-translate.user.js index b9cbf2327..4f1795562 100644 --- a/dist/userscript/immersive-translate.user.js +++ b/dist/userscript/immersive-translate.user.js @@ -1,7 +1,7 @@ // ==UserScript== // @name Immersive Translate // @description Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc. -// @version 0.7.1 +// @version 0.7.2 // @namespace https://immersive-translate.owenyoung.com/ // @author Owen Young // @homepageURL https://immersivetranslate.com/ @@ -74,7 +74,7 @@ // @name:zh-CN 沉浸式翻译 // @description:zh-CN 沉浸式网页双语翻译扩展,免费使用,支持 Deepl/Google/有道/腾讯翻译等多个翻译服务,支持 Firefox/Chrome/油猴脚本,亦可在 iOS Safari 上使用。 // ==/UserScript== -(()=>{var Ng=Object.defineProperty;var Ig=(e,t)=>{for(var n in t)Ng(e,n,{get:t[n],enumerable:!0})};var ul=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var u0=(e,t,n)=>(ul(e,t,"read from private field"),n?n.call(e):t.get(e)),rl=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},ol=(e,t,n,a)=>(ul(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T16:25:29.335Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Wg=Object.defineProperty;var qg=(e,t)=>{for(var n in t)Wg(e,n,{get:t[n],enumerable:!0})};var sl=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var r0=(e,t,n)=>(sl(e,t,"read from private field"),n?n.call(e):t.get(e)),ll=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},cl=(e,t,n,a)=>(sl(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var E={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -567,6 +567,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -575,6 +578,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -709,6 +716,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4135,12 +4143,12 @@ body {
-`,OPTIONS_URL:"https://dash.immersivetranslate.com/",EBOOK_VIEWER_URL:"https://app.immersivetranslate.com/ebook/",EBOOK_BUILDER_URL:"https://app.immersivetranslate.com/ebook/make/",SUBTITLE_BUILDER_URL:"https://app.immersivetranslate.com/subtitle/",HTML_VIEWER_URL:"https://app.immersivetranslate.com/html/",MOCK:"0",DEBUG:"0",IMMERSIVE_TRANSLATE_USERSCRIPT:"1",INSTALL_FROM:"dev"};var q1=sl(2),il=sl(3);function sl(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var zg=/\s+/g,Hg=/[\t\n\v\f\r ]+/g;function ll(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?Ug:Wg;return String(e).replace(t.style==="html"?Hg:zg,t.trim?qg(n):n)}function Ug(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function Wg(){return" "}function qg(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var cl={}.hasOwnProperty;function Kg(e){return e==null?"":ll(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function $g(e){return il(" "+Kg(e)+" ")}function Gg(e){let t=$g(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function ep(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function tp(e,t,n,a){t=ap(t,n,a);let u=[],r;if(t)for(r in t)ju.call(t,r)&&u.push([r,np(e,t[r])]);return u.length===0?o0():u.sort(up)}function np(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of pp){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/r>.5?t==="zh-CN"?El(e)?"zh-TW":"zh-CN":t:"auto"}var Tl=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function Za(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Hu(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...Tl.keys()]},u=gl(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=Tl.get(r);if(o)return o}return"auto"}function Ie(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var ce=Ie();function te(){return ce.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function Cl(){return ce.HAS_CSP_ERROR=="1"}function Rt(){if(ce.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function xl(){return typeof Deno<"u"}var bb=Ie().PROD==="1",ca=Ie().PROD!=="1";function wl(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}if(typeof GM>"u"&&typeof GM_info<"u"&&typeof GM_getValue<"u"){let e=null;typeof GM_xmlhttpRequest<"u"?e=GM_xmlhttpRequest:typeof GM_xmlHttpRequest<"u"&&(e=GM_xmlHttpRequest);let t=null;typeof GM_registerMenuCommand<"u"&&(t=GM_registerMenuCommand),globalThis.GM={info:GM_info,getValue:GM_getValue,setValue:GM_setValue,deleteValue:GM_deleteValue,listValues:GM_listValues,xmlHttpRequest:e,registerMenuCommand:t,addStyle:typeof GM_addStyle<"u"?GM_addStyle:null,openInTab:typeof GM_openInTab<"u"?GM_openInTab:null,addElement:typeof GM_addElement<"u"?GM_addElement:null}}typeof GM<"u"&&GM&&GM.info===void 0&&typeof GM_info<"u"&&(GM.info=GM_info);var vl={get:async e=>{if(e===null){let a=await GM.listValues();Array.isArray(a)||a&&wp(a)&&(a=Object.keys(a));let u={};for(let r of a)u[r]=await GM.getValue(r);return u}let t=[];typeof e=="string"?t=[e]:Array.isArray(e)?t=e:t=Object.keys(e);let n={};for(let a of t)n[a]=await GM.getValue(a);return n},set:async e=>{for(let t in e)await GM.setValue(t,e[t])},remove:async e=>{if(typeof e=="string")await GM.deleteValue(e);else if(Array.isArray(e))for(let t of e)await GM.deleteValue(t)}};function fp(){if(typeof GM<"u"&&GM&&GM.info&&GM.info.script){let e=GM.info.script||{};return e._isUserscript=!0,e}else return{_isUserscript:!0,version:"0.0.0"}}function Qa(e,t=!0){GM&&GM.openInTab?GM.openInTab(e,!1):globalThis.open(e,t?"_blank":"_self")}function hp(e=!0,t=""){let n=Ie();GM&&GM.info&&GM.info.scriptHandler&&GM.info.scriptHandler==="Stay"?e=!1:e=!0;let a=n.OPTIONS_URL;if(a)Qa(a+t,e);else throw new Error("options url not found")}function bp(e=!1){let n=Ie().OPTIONS_URL;if(n)Qa(n+"#about",e);else throw new Error("options url not found")}function Ep(e=!1){let n=Ie().EBOOK_VIEWER_URL;if(n)Qa(n,e);else throw new Error("ebook url not found")}function yp(e=!1){let n=Ie().EBOOK_BUILDER_URL;if(n)Qa(n,e);else throw new Error("ebook url not found")}function Tp(e=!1){let n=Ie().SUBTITLE_BUILDER_URL;if(n)Qa(n,e);else throw new Error("subtitle url not found")}function Cp(){return globalThis.navigator.languages||[globalThis.navigator.language||globalThis.navigator.userLanguage]}var xp={storage:{local:vl,sync:vl},runtime:{getManifest:fp,lastError:null,openOptionsPage:hp},extra:{detectLanguage:Za,openAboutPage:bp,openEbookViewerPage:Ep,openEbookBuilderPage:yp,openSubtitleBuilderPage:Tp},i18n:{getAcceptLanguages:Cp,detectLanguage:Za}};function wp(e){return e!==null&&typeof e=="object"}globalThis.immersiveTranslateBrowserAPI=xp;(function(){"use strict";var e=window.Bluebird||window.Promise;if(self.GM_fetch)return;let t;if(typeof GM<"u"&&GM.xmlHttpRequest)t=GM.xmlHttpRequest;else if(typeof GM<"u"&&GM_xmlhttpRequest)t=GM_xmlhttpRequest;else if(typeof GM_xmlhttpRequest<"u")t=GM_xmlhttpRequest;else if(typeof GM<"u"&&GM.xmlHttpRequest)t=GM.xmlHttpRequest;else return;function n(d){if(typeof d!="string"&&(d=d.toString()),/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(d))throw new TypeError("Invalid character in header field name");return d.toLowerCase()}function a(d){return typeof d!="string"&&(d=d.toString()),d}function u(d){if(d.bodyUsed)return e.reject(new TypeError("Already read"));d.bodyUsed=!0}function r(d){return new e(function(f,C){d.onload=function(){f(d.result)},d.onerror=function(){C(d.error)}})}function o(d){var f=new FileReader;return f.readAsArrayBuffer(d),r(f)}function i(d){var f=new FileReader;return f.readAsText(d),r(f)}var s={blob:"FileReader"in self&&"Blob"in self&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in self},l=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function c(d){var f=d.toUpperCase();return l.indexOf(f)>-1?f:d}function m(d){var f=new FormData;return d.trim().split("&").forEach(function(C){if(C){var y=C.split("="),p=y.shift().replace(/\+/g," "),T=y.join("=").replace(/\+/g," ");f.append(decodeURIComponent(p),decodeURIComponent(T))}}),f}function g(d){var f=new Headers;if(typeof d=="string"){var C=d.trim().split(` -`);C.forEach(function(p){var T=p.trim().split(":"),v=T.shift().trim(),k=T.join(":").trim();f.append(v,k)})}else if(typeof d=="object")for(var y in d)Array.isArray(d[y])&&d[y].forEach(function(p){f.append(y,p)});return f}self.Headers=Headers,self.Request=Request,self.Response=Response,self.GM_fetch=function(d,f){var C,y;return f||(typeof d=="string"?f={}:d=f.url),Request&&Request.prototype&&Request.prototype.isPrototypeOf&&Request.prototype.isPrototypeOf(f)?C=f:(f.body&&(y=f.body),C=new Request(d,f)),new e(function(p,T){var v={};f&&f.extra&&(v=f.extra);var k;function S(A,B){if(A)return A;if(B.get("X-Request-URL"))return B.get("X-Request-URL")}v.method=C.method||"GET",v.timeout=6e4,C.timeout&&(v.timeout=C.timeout),v.url=C.url,v.synchronous=!1,v.onload=function(A){var B=A.status;if(B<100||B>599){T(new TypeError("Network request failed"));return}var M=A.responseHeaders;k=g(M);var D=S(A.finalUrl||A.responseURL,k);k.set("X-Final-URL",D);var P={status:B,statusText:A.statusText,headers:k,url:D},z=A.responseText;let w=new Response(z,P);p(w)},v.onerror=function(A){T(new TypeError("Network request failed"))},v.ontimeout=function(A){T(new TypeError("Network request timeout"))},v.onabort=function(A){T(new TypeError("Network request abort"))},v.headers={},C.headers.forEach(function(A,B){v.headers[B]=A}),y&&(v.data=y),t(v)})},self.GM_fetch.polyfill=!0})();function da(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var i0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function Uu(e,t){let n=da(),a=setTimeout(()=>n.reject(new i0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function eu(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(s),r(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var kl=class{#e=0;#t=[];#n=[];#a=da();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tYp,bgBlue:()=>ef,bgBrightBlack:()=>uf,bgBrightBlue:()=>lf,bgBrightCyan:()=>df,bgBrightGreen:()=>of,bgBrightMagenta:()=>cf,bgBrightRed:()=>rf,bgBrightWhite:()=>mf,bgBrightYellow:()=>sf,bgCyan:()=>nf,bgGreen:()=>Zp,bgMagenta:()=>tf,bgRed:()=>Xp,bgRgb24:()=>hf,bgRgb8:()=>pf,bgWhite:()=>af,bgYellow:()=>Qp,black:()=>Bp,blue:()=>Ip,bold:()=>Dp,brightBlack:()=>Al,brightBlue:()=>$p,brightCyan:()=>Vp,brightGreen:()=>qp,brightMagenta:()=>Gp,brightRed:()=>Wp,brightWhite:()=>Jp,brightYellow:()=>Kp,cyan:()=>zp,dim:()=>Ap,getColorEnabled:()=>kp,gray:()=>Up,green:()=>Op,hidden:()=>Mp,inverse:()=>Pp,italic:()=>Lp,magenta:()=>jp,red:()=>Rp,reset:()=>Sp,rgb24:()=>ff,rgb8:()=>gf,setColorEnabled:()=>vp,strikethrough:()=>_p,stripColor:()=>Ef,underline:()=>Fp,white:()=>Hp,yellow:()=>Np});var{Deno:Sl}=globalThis,Dl=typeof Sl?.noColor=="boolean"?Sl.noColor:!0,s0=!Dl;function vp(e){Dl||(s0=e)}function kp(){return s0}function ue(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function re(e,t){return s0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function Sp(e){return re(e,ue([0],0))}function Dp(e){return re(e,ue([1],22))}function Ap(e){return re(e,ue([2],22))}function Lp(e){return re(e,ue([3],23))}function Fp(e){return re(e,ue([4],24))}function Pp(e){return re(e,ue([7],27))}function Mp(e){return re(e,ue([8],28))}function _p(e){return re(e,ue([9],29))}function Bp(e){return re(e,ue([30],39))}function Rp(e){return re(e,ue([31],39))}function Op(e){return re(e,ue([32],39))}function Np(e){return re(e,ue([33],39))}function Ip(e){return re(e,ue([34],39))}function jp(e){return re(e,ue([35],39))}function zp(e){return re(e,ue([36],39))}function Hp(e){return re(e,ue([37],39))}function Up(e){return Al(e)}function Al(e){return re(e,ue([90],39))}function Wp(e){return re(e,ue([91],39))}function qp(e){return re(e,ue([92],39))}function Kp(e){return re(e,ue([93],39))}function $p(e){return re(e,ue([94],39))}function Gp(e){return re(e,ue([95],39))}function Vp(e){return re(e,ue([96],39))}function Jp(e){return re(e,ue([97],39))}function Yp(e){return re(e,ue([40],49))}function Xp(e){return re(e,ue([41],49))}function Zp(e){return re(e,ue([42],49))}function Qp(e){return re(e,ue([43],49))}function ef(e){return re(e,ue([44],49))}function tf(e){return re(e,ue([45],49))}function nf(e){return re(e,ue([46],49))}function af(e){return re(e,ue([47],49))}function uf(e){return re(e,ue([100],49))}function rf(e){return re(e,ue([101],49))}function of(e){return re(e,ue([102],49))}function sf(e){return re(e,ue([103],49))}function lf(e){return re(e,ue([104],49))}function cf(e){return re(e,ue([105],49))}function df(e){return re(e,ue([106],49))}function mf(e){return re(e,ue([107],49))}function xn(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function gf(e,t){return re(e,ue([38,5,xn(t)],39))}function pf(e,t){return re(e,ue([48,5,xn(t)],49))}function ff(e,t){return typeof t=="number"?re(e,ue([38,2,t>>16&255,t>>8&255,t&255],39)):re(e,ue([38,2,xn(t.r),xn(t.g),xn(t.b)],39))}function hf(e,t){return typeof t=="number"?re(e,ue([48,2,t>>16&255,t>>8&255,t&255],49)):re(e,ue([48,2,xn(t.r),xn(t.g),xn(t.b)],49))}var bf=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function Ef(e){return e.replace(bf,"")}var l0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},yf={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function c0(e,t){let n={...yf,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new l0(u,n.maxAttempts)}var sE=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var Wu=globalThis||(typeof window<"u"?window:self),Cf=Object.create,m0=Object.defineProperty,xf=Object.getOwnPropertyDescriptor,wf=Object.getOwnPropertyNames,vf=Object.getPrototypeOf,kf=Object.prototype.hasOwnProperty,Sf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Df=(e,t)=>{for(var n in t)m0(e,n,{get:t[n],enumerable:!0})},d0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of wf(t))!kf.call(e,u)&&u!==n&&m0(e,u,{get:()=>t[u],enumerable:!(a=xf(t,u))||a.enumerable});return e},Af=(e,t,n)=>(d0(e,t,"default"),n&&d0(n,t,"default")),Fl=(e,t,n)=>(n=e!=null?Cf(vf(e)):{},d0(t||!e||!e.__esModule?m0(n,"default",{value:e,enumerable:!0}):n,e)),Pl=Sf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof Wu=="object"&&Wu&&Wu.Object===Object&&Wu,m=typeof self=="object"&&self&&self.Object===Object&&self,g=c||m||Function("return this")(),d=Object.prototype,f=d.toString,C=Math.max,y=Math.min,p=function(){return g.Date.now()};function T(M,D,P){var z,w,G,de,q,be,fe=0,Bt=!1,Ee=!1,wt=!0;if(typeof M!="function")throw new TypeError(n);D=B(D)||0,k(P)&&(Bt=!!P.leading,Ee="maxWait"in P,G=Ee?C(B(P.maxWait)||0,D):G,wt="trailing"in P?!!P.trailing:wt);function ye(X){var ae=z,le=w;return z=w=void 0,fe=X,de=M.apply(le,ae),de}function b(X){return fe=X,q=setTimeout(se,D),Bt?ye(X):de}function R(X){var ae=X-be,le=X-fe,J=D-ae;return Ee?y(J,G-le):J}function $(X){var ae=X-be,le=X-fe;return be===void 0||ae>=D||ae<0||Ee&&le>=G}function se(){var X=p();if($(X))return V(X);q=setTimeout(se,R(X))}function V(X){return q=void 0,wt&&z?ye(X):(z=w=void 0,de)}function Se(){q!==void 0&&clearTimeout(q),fe=0,z=be=w=q=void 0}function Z(){return q===void 0?de:V(p())}function Te(){var X=p(),ae=$(X);if(z=arguments,w=this,be=X,ae){if(q===void 0)return b(be);if(Ee)return q=setTimeout(se,D),ye(be)}return q===void 0&&(q=setTimeout(se,D)),de}return Te.cancel=Se,Te.flush=Z,Te}function v(M,D,P){var z=!0,w=!0;if(typeof M!="function")throw new TypeError(n);return k(P)&&(z="leading"in P?!!P.leading:z,w="trailing"in P?!!P.trailing:w),T(M,D,{leading:z,maxWait:D,trailing:w})}function k(M){var D=typeof M;return!!M&&(D=="object"||D=="function")}function S(M){return!!M&&typeof M=="object"}function A(M){return typeof M=="symbol"||S(M)&&f.call(M)==u}function B(M){if(typeof M=="number")return M;if(A(M))return a;if(k(M)){var D=typeof M.valueOf=="function"?M.valueOf():M;M=k(D)?D+"":D}if(typeof M!="string")return M===0?M:+M;M=M.replace(r,"");var P=i.test(M);return P||s.test(M)?l(M.slice(2),P?2:8):o.test(M)?a:+M}t.exports=v}),Ml={};Df(Ml,{default:()=>lt});var Lf=Fl(Pl());Af(Ml,Fl(Pl()));var{default:Ll,...Ff}=Lf,lt=Ll!==void 0?Ll:Ff;var Pf=Object.create,p0=Object.defineProperty,Mf=Object.getOwnPropertyDescriptor,_f=Object.getOwnPropertyNames,Bf=Object.getPrototypeOf,Rf=Object.prototype.hasOwnProperty,Of=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Nf=(e,t)=>{for(var n in t)p0(e,n,{get:t[n],enumerable:!0})},g0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of _f(t))!Rf.call(e,u)&&u!==n&&p0(e,u,{get:()=>t[u],enumerable:!(a=Mf(t,u))||a.enumerable});return e},If=(e,t,n)=>(g0(e,t,"default"),n&&g0(n,t,"default")),Bl=(e,t,n)=>(n=e!=null?Pf(Bf(e)):{},g0(t||!e||!e.__esModule?p0(n,"default",{value:e,enumerable:!0}):n,e)),Rl=Of((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,m){l(a)==="object"&&l(r)==="object"?r.exports=m():(i=[],o=m,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(r.exports=s))})(void 0,function(){return function(c){function m(d){if(g[d])return g[d].exports;var f=g[d]={i:d,l:!1,exports:{}};return c[d].call(f.exports,f,f.exports,m),f.l=!0,f.exports}var g={};return m.m=c,m.c=g,m.i=function(d){return d},m.d=function(d,f,C){m.o(d,f)||Object.defineProperty(d,f,{configurable:!1,enumerable:!0,get:C})},m.n=function(d){var f=d&&d.__esModule?function(){return d.default}:function(){return d};return m.d(f,"a",f),f},m.o=function(d,f){return Object.prototype.hasOwnProperty.call(d,f)},m.p="",m(m.s=0)}([function(c,m,g){function d(b,R){var $={};for(var se in b)R.indexOf(se)>=0||Object.prototype.hasOwnProperty.call(b,se)&&($[se]=b[se]);return $}Object.defineProperty(m,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},C=Object.assign||function(b){for(var R=1;R'+se+"",le.onclick=function(){return w(J,ae)},le.listener=function(N){(D(N)||P(N))&&q()},z(le,ae),Se&&Se<1&&(Se=1),!Te&&Se&&k(Se).then(function(){return w(J,ae)})},fe=m.force=function(b,R){var $=b.type,se=$===void 0?5:$,V=b.text,Se=b.buttonText,Z=Se===void 0?"OK":Se,Te=b.callback,X=b.position,ae=X===void 0?p.positions.force||ae.top:X;S(),q();var le=document.createElement("div"),J=A();le.id=J;var N=document.createElement("div");N.classList.add(p.classes.textbox),N.classList.add(p.classes.backgroundInfo),N.innerHTML='
'+V+"
";var Q=document.createElement("div");Q.classList.add(p.classes.button),Q.classList.add(B[se]),Q.innerHTML=Z,Q.onclick=function(){w(J,ae),de(),Te?Te():R&&R()},le.appendChild(N),le.appendChild(Q),le.listener=function(Le){D(Le)&&Q.click()},z(le,ae),G()},Bt=m.confirm=function(b,R,$){var se=b.text,V=b.submitText,Se=V===void 0?"Yes":V,Z=b.cancelText,Te=Z===void 0?"Cancel":Z,X=b.submitCallback,ae=b.cancelCallback,le=b.position,J=le===void 0?p.positions.confirm||J.top:le;S(),q();var N=document.createElement("div"),Q=A();N.id=Q;var Le=document.createElement("div");Le.classList.add(p.classes.textbox),Le.classList.add(p.classes.backgroundInfo),Le.innerHTML='
'+se+"
";var De=document.createElement("div");De.classList.add(p.classes.button),De.classList.add(p.classes.elementHalf),De.classList.add(p.classes.backgroundSuccess),De.innerHTML=Se,De.onclick=function(){w(Q,J),de(),X?X():R&&R()};var ee=document.createElement("div");ee.classList.add(p.classes.button),ee.classList.add(p.classes.elementHalf),ee.classList.add(p.classes.backgroundError),ee.innerHTML=Te,ee.onclick=function(){w(Q,J),de(),ae?ae():$&&$()},N.appendChild(Le),N.appendChild(De),N.appendChild(ee),N.listener=function(He){D(He)?De.click():P(He)&&ee.click()},z(N,J),G(N,J)},Ee=function(b,R,$){var se=b.text,V=b.submitText,Se=V===void 0?"Submit":V,Z=b.cancelText,Te=Z===void 0?"Cancel":Z,X=b.submitCallback,ae=b.cancelCallback,le=b.position,J=le===void 0?p.positions.input||J.top:le,N=d(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);S(),q();var Q=document.createElement("div"),Le=A();Q.id=Le;var De=document.createElement("div");De.classList.add(p.classes.textbox),De.classList.add(p.classes.backgroundInfo),De.innerHTML='
'+se+"
";var ee=document.createElement("input");ee.classList.add(p.classes.inputField),ee.setAttribute("autocapitalize",N.autocapitalize||"none"),ee.setAttribute("autocomplete",N.autocomplete||"off"),ee.setAttribute("autocorrect",N.autocorrect||"off"),ee.setAttribute("autofocus",N.autofocus||"true"),ee.setAttribute("inputmode",N.inputmode||"verbatim"),ee.setAttribute("max",N.max||""),ee.setAttribute("maxlength",N.maxlength||""),ee.setAttribute("min",N.min||""),ee.setAttribute("minlength",N.minlength||""),ee.setAttribute("placeholder",N.placeholder||""),ee.setAttribute("spellcheck",N.spellcheck||"default"),ee.setAttribute("step",N.step||"any"),ee.setAttribute("type",N.type||"text"),ee.value=N.value||"",N.allowed&&(ee.oninput=function(){var Me=void 0;if(Array.isArray(N.allowed)){for(var _e="",Be=N.allowed,vt=0;vt'+$+"",ae.appendChild(J),Z.forEach(function(Q,Le){var De=Q.type,ee=De===void 0?1:De,He=Q.text,tt=Q.handler,Me=document.createElement("div");Me.classList.add(B[ee]),Me.classList.add(p.classes.button),Me.classList.add(p.classes.selectChoice);var _e=Z[Le+1];_e&&!_e.type&&(_e.type=1),_e&&_e.type===ee&&Me.classList.add(p.classes.selectChoiceRepeated),Me.innerHTML=He,Me.onclick=function(){w(le,X),de(),tt()},ae.appendChild(Me)});var N=document.createElement("div");N.classList.add(p.classes.backgroundNeutral),N.classList.add(p.classes.button),N.innerHTML=V,N.onclick=function(){w(le,X),de(),Se?Se():R&&R()},ae.appendChild(N),ae.listener=function(Q){P(Q)&&N.click()},z(ae,X),G(ae,X)},ye=m.date=function(b,R,$){var se=b.value,V=se===void 0?new Date:se,Se=b.submitText,Z=Se===void 0?"OK":Se,Te=b.cancelText,X=Te===void 0?"Cancel":Te,ae=b.submitCallback,le=b.cancelCallback,J=b.position,N=J===void 0?p.positions.date||N.top:J;S(),q();var Q="▾",Le=document.createElement("div"),De=document.createElement("div"),ee=document.createElement("div"),He=function(Ce){Le.innerHTML=p.dateMonths[Ce.getMonth()],De.innerHTML=Ce.getDate(),ee.innerHTML=Ce.getFullYear()},tt=function(Ce){var we=new Date(V.getFullYear(),V.getMonth()+1,0).getDate(),Ft=Ce.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Ft)>we&&(Ft=we.toString()),Ce.target.textContent=Ft,Number(Ft)<1&&(Ft="1"),V.setDate(Number(Ft))},Me=function(Ce){var we=Ce.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);Ce.target.textContent=we,V.setFullYear(Number(we))},_e=function(Ce){He(V)},Be=function(Ce){var we=new Date(V.getFullYear(),V.getMonth()+Ce+1,0).getDate();V.getDate()>we&&V.setDate(we),V.setMonth(V.getMonth()+Ce),He(V)},vt=function(Ce){V.setDate(V.getDate()+Ce),He(V)},Cn=function(Ce){var we=V.getFullYear()+Ce;we<0?V.setFullYear(0):V.setFullYear(V.getFullYear()+Ce),He(V)},Ue=document.createElement("div"),en=A();Ue.id=en;var $t=document.createElement("div");$t.classList.add(p.classes.backgroundInfo);var nt=document.createElement("div");nt.classList.add(p.classes.dateSelectorInner);var Lt=document.createElement("div");Lt.classList.add(p.classes.button),Lt.classList.add(p.classes.elementThird),Lt.classList.add(p.classes.dateSelectorUp),Lt.innerHTML=Q;var F=document.createElement("div");F.classList.add(p.classes.button),F.classList.add(p.classes.elementThird),F.classList.add(p.classes.dateSelectorUp),F.innerHTML=Q;var Y=document.createElement("div");Y.classList.add(p.classes.button),Y.classList.add(p.classes.elementThird),Y.classList.add(p.classes.dateSelectorUp),Y.innerHTML=Q,Le.classList.add(p.classes.element),Le.classList.add(p.classes.elementThird),Le.innerHTML=p.dateMonths[V.getMonth()],De.classList.add(p.classes.element),De.classList.add(p.classes.elementThird),De.setAttribute("contentEditable",!0),De.addEventListener("input",tt),De.addEventListener("blur",_e),De.innerHTML=V.getDate(),ee.classList.add(p.classes.element),ee.classList.add(p.classes.elementThird),ee.setAttribute("contentEditable",!0),ee.addEventListener("input",Me),ee.addEventListener("blur",_e),ee.innerHTML=V.getFullYear();var xe=document.createElement("div");xe.classList.add(p.classes.button),xe.classList.add(p.classes.elementThird),xe.innerHTML=Q;var ge=document.createElement("div");ge.classList.add(p.classes.button),ge.classList.add(p.classes.elementThird),ge.innerHTML=Q;var he=document.createElement("div");he.classList.add(p.classes.button),he.classList.add(p.classes.elementThird),he.innerHTML=Q,Lt.onclick=function(){return Be(1)},F.onclick=function(){return vt(1)},Y.onclick=function(){return Cn(1)},xe.onclick=function(){return Be(-1)},ge.onclick=function(){return vt(-1)},he.onclick=function(){return Cn(-1)};var Ne=document.createElement("div");Ne.classList.add(p.classes.button),Ne.classList.add(p.classes.elementHalf),Ne.classList.add(p.classes.backgroundSuccess),Ne.innerHTML=Z,Ne.onclick=function(){w(en,N),de(),ae?ae(V):R&&R(V)};var ot=document.createElement("div");ot.classList.add(p.classes.button),ot.classList.add(p.classes.elementHalf),ot.classList.add(p.classes.backgroundError),ot.innerHTML=X,ot.onclick=function(){w(en,N),de(),le?le(V):$&&$(V)},nt.appendChild(Lt),nt.appendChild(F),nt.appendChild(Y),nt.appendChild(Le),nt.appendChild(De),nt.appendChild(ee),nt.appendChild(xe),nt.appendChild(ge),nt.appendChild(he),$t.appendChild(nt),Ue.appendChild($t),Ue.appendChild(Ne),Ue.appendChild(ot),Ue.listener=function(Ce){D(Ce)?Ne.click():P(Ce)&&ot.click()},z(Ue,N),G(Ue,N)};m.default={alert:be,force:fe,confirm:Bt,input:Ee,select:wt,date:ye,setOptions:T,hideAlerts:q}}])})}).call(a,u(0)(n))}])})}),Ol={};Nf(Ol,{default:()=>qu});var jf=Bl(Rl());If(Ol,Bl(Rl()));var{default:_l,...zf}=jf,qu=_l!==void 0?_l:zf;var f0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function h0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Hl(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function Hf(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Pe.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Pe.splice(0,Pe.length),(t===93||t===224)&&(t=91),t in it){it[t]=!1;for(var a in tn)tn[a]===t&&(je[a]=!1)}}function Yf(e){if(typeof e>"u")Object.keys(Ve).forEach(function(o){return delete Ve[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&b0(o)});else if(typeof e=="object")e.key&&b0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Hl(tn,s):[];Ve[m]=Ve[m].filter(function(d){var f=a?d.method===a:!0;return!(f&&d.scope===n&&Hf(d.mods,g))})}})};function Il(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(!it[r]&&t.mods.indexOf(+r)>-1||it[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!it[16]&&!it[18]&&!it[17]&&!it[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function jl(e,t){var n=Ve["*"],a=e.keyCode||e.which||e.charCode;if(je.filter.call(this,e)){if((a===93||a===224)&&(a=91),Pe.indexOf(a)===-1&&a!==229&&Pe.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var C=y0[f];e[f]&&Pe.indexOf(C)===-1?Pe.push(C):!e[f]&&Pe.indexOf(C)>-1?Pe.splice(Pe.indexOf(C),1):f==="metaKey"&&e[f]&&Pe.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Pe=Pe.slice(Pe.indexOf(C))))}),a in it){it[a]=!0;for(var u in tn)tn[u]===a&&(je[u]=!0);if(!n)return}for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(it[r]=e[y0[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Pe.indexOf(17)===-1&&Pe.push(17),Pe.indexOf(18)===-1&&Pe.push(18),it[17]=!0,it[18]=!0);var o=au();if(n)for(var i=0;i-1}function je(e,t,n){Pe=[];var a=Ul(e),u=[],r="all",o=document,i=0,s=!1,l=!0,c="+",m=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(m=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=Hl(tn,e)),e=e[e.length-1],e=e==="*"?"*":$u(e),e in Ve||(Ve[e]=[]),Ve[e].push({keyup:s,keydown:l,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!Xf(o)&&window&&(ql.push(o),h0(o,"keydown",function(g){jl(g,o)},m),Nl||(Nl=!0,h0(window,"focus",function(){Pe=[]},m)),h0(o,"keyup",function(g){jl(g,o),Jf(g)},m))}function Zf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ve).forEach(function(n){var a=Ve[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var E0={getPressedKeyString:Kf,setScope:Kl,getScope:au,deleteScope:Vf,getPressedKeyCodes:qf,isPressed:Gf,filter:$f,trigger:Zf,unbind:Yf,keyMap:nu,modifier:tn,modifierMap:y0};for(Ku in E0)Object.prototype.hasOwnProperty.call(E0,Ku)&&(je[Ku]=E0[Ku]);var Ku;typeof document<"u"&&(zl=window.hotkeys,je.noConflict=function(e){return e&&window.hotkeys===je&&(window.hotkeys=zl),je},window.hotkeys=je);var zl;var Qf=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},e2=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new Qf:{reset:()=>{},stop:()=>{}}}},T0=new e2,t2="poegempjloogba",n2="ension://",a2="me-";function uu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function Xl(e){return e?e.PROD==="1":!0}function Zl(e){return e?e.MOCK==="1":!1}function Ql(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var u2="rome-ext";function r2(e,t){return t?e+(t-e%t):e}function o2(e,t){return e.split(t).length-1}function i2(e){let t=Date.now(),n=1;for(let a of e)n+=o2(a,"i");return r2(t,n)}function s2(e,t){return Math.floor(Math.random()*(t-e+1))+e}var l2="extension",c2="chro";function d2(){return s2(1e6,1e8)}var $l="BrowserExt";function m2(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var Gl="DeepL",Vl="ension",g2="ch"+u2+n2+"cofdb"+t2+"gkncekinflcnj";function e4(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",g2),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${Gl}${$l}${Vl}/${r||"1.1.1"} ${l}`)}else i.append("user-agent",`${Gl}${$l}${Vl}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function p2(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:i2(n)},id:d2()},o=e4({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${c2+a2+l2},${t}`,headers:o,body:m2(r),method:"POST"}}function f2(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Wn={},qn={};async function Jl(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=uu(u);i||(i=uu(r)[1]);let s={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(s=await Gu(e,t));let[l,c]=uu(s.refreshTokenExpiresAt);i=c,i||(i=uu(s.refreshTokenChecksAt)[1]);let m=s.refreshToken;if(Wn[m])return new Promise((g,d)=>{Wn[m].push((f,C)=>{f?d(f):g(C)})});Wn[m]=[];try{let g=await h2(m,t.onFetch),d={state:{...n,...s,...g},shouldUpdateRefreshToken:i};return Wn[m].forEach(f=>{f(null,d)}),delete Wn[m],d}catch(g){throw Wn[m].forEach(d=>{d(g)}),delete Wn[m],g}}async function Gu(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(qn[e])return new Promise((u,r)=>{qn[e].push((o,i)=>{o?r(o):u(i)})});try{qn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return qn[e].forEach(m=>{m(null,c)}),delete qn[e],c}catch(u){throw qn[e].forEach(r=>{r(u)}),delete qn[e],u}}async function h2(e,t){if(!e)throw new Error("refreshToken is required");let n=Xl(),a=Zl();if(!n&&!a){await Ql(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:e4({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=f2(r.access_token);if(r.expires_in){let i=new Date,s=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function Yl(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(b2(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...p2({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},s=Xl(),l=Zl();if(!s&&!l)return await Ql(50),{translations:u.map(d=>({text:"mock: "+d,detected_source_language:"EN"}))};let c=await n(i.url,i),m=JSON.parse(c.body),g=[];if(m.result&&m.result.texts)g=m.result.texts.map(d=>({text:d.text,detected_source_language:m.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function b2(e){let t=0;for(let n of e)t+=n.length;return t}async function E2(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await y2(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return T0.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){T0.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function y2(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var Vu=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>E2({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await Yl(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await Yl(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await Gu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw T0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=uu(e);if(t)n&&Jl(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&Gu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await Jl(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&Gu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var T2={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},n4={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},We={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},ht={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},wn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},L=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=L.getVersionPrecision(e),u=L.getVersionPrecision(t),r=Math.max(a,u),o=0,i=L.map([e,t],s=>{let l=r-L.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return L.map(c.split("."),m=>new Array(20-m.length).join("0")+m).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return T2[e]}static getBrowserTypeByAlias(e){return n4[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,C2=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=L.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=L.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=L.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=L.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=L.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=L.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=L.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=L.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=L.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=L.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=L.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=L.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=L.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=L.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=L.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=L.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=L.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=L.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=L.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=L.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=L.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=L.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=L.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=L.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=L.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=L.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=L.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:L.getFirstMatch(a,e),version:L.getSecondMatch(a,e)}}}],x2=C2,w2=[{test:[/Roku\/DVP/],describe(e){let t=L.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:ht.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=L.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:ht.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=L.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=L.getWindowsVersionName(t);return{name:ht.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:ht.iOS},n=L.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=L.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=L.getMacOSVersionName(t),a={name:ht.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=L.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:ht.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=L.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=L.getAndroidVersionName(t),a={name:ht.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=L.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:ht.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=L.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||L.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||L.getFirstMatch(/\bbb(\d+)/i,e);return{name:ht.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=L.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:ht.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=L.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:ht.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:ht.Linux}}},{test:[/CrOS/],describe(){return{name:ht.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=L.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:ht.PlayStation4,version:t}}}],v2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=L.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:We.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:We.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:We.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:We.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:We.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=L.getFirstMatch(/(ipod|iphone)/i,e);return{type:We.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:We.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:We.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:We.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:We.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:We.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:We.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:We.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:We.tv}}}],k2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:wn.Blink};let t=L.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:wn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:wn.Trident},n=L.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:wn.Presto},n=L.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:wn.Gecko},n=L.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:wn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:wn.WebKit},n=L.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],S2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=L.find(x2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=L.find(w2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=L.find(v2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=L.find(k2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return L.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=L.find(r,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=L.find(r,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(u>0){let r=Object.keys(a),o=L.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=L.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(L.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},t4=S2,D2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new t4(e,t)}static parse(e){return new t4(e).getResult()}static get BROWSER_MAP(){return n4}static get ENGINE_MAP(){return wn}static get OS_MAP(){return ht}static get PLATFORMS_MAP(){return We}},Ju=D2;var{entries:c4,setPrototypeOf:a4,isFrozen:A2,getPrototypeOf:L2,getOwnPropertyDescriptor:F2}=Object,{freeze:bt,seal:Vt,create:P2}=Object,{apply:S0,construct:D0}=typeof Reflect<"u"&&Reflect;S0||(S0=function(e,t,n){return e.apply(t,n)});bt||(bt=function(e){return e});Vt||(Vt=function(e){return e});D0||(D0=function(e,t){return new e(...t)});var M2=Nt(Array.prototype.forEach),u4=Nt(Array.prototype.pop),ru=Nt(Array.prototype.push),Zu=Nt(String.prototype.toLowerCase),C0=Nt(String.prototype.toString),_2=Nt(String.prototype.match),Gt=Nt(String.prototype.replace),B2=Nt(String.prototype.indexOf),R2=Nt(String.prototype.trim),Pt=Nt(RegExp.prototype.test),ou=O2(TypeError);function Nt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),H2=Vt(/\${[\w\W]*}/gm),U2=Vt(/^data-[\-\w.\u00B7-\uFFFF]/),W2=Vt(/^aria-[\-\w]+$/),d4=Vt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),q2=Vt(/^(?:\w+script|data):/i),K2=Vt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),m4=Vt(/^html$/i),l4=Object.freeze({__proto__:null,MUSTACHE_EXPR:j2,ERB_EXPR:z2,TMPLIT_EXPR:H2,DATA_ATTR:U2,ARIA_ATTR:W2,IS_ALLOWED_URI:d4,IS_SCRIPT_OR_DATA:q2,ATTR_WHITESPACE:K2,DOCTYPE_NAME:m4}),$2=()=>typeof window>"u"?null:window,G2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function g4(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:$2(),t=h=>g4(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:m,DOMParser:g,trustedTypes:d}=e,f=s.prototype,C=Yu(f,"cloneNode"),y=Yu(f,"nextSibling"),p=Yu(f,"childNodes"),T=Yu(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let v,k="",{implementation:S,createNodeIterator:A,createDocumentFragment:B,getElementsByTagName:M}=u,{importNode:D}=n,P={};t.isSupported=typeof c4=="function"&&typeof T=="function"&&S&&S.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:z,ERB_EXPR:w,TMPLIT_EXPR:G,DATA_ATTR:de,ARIA_ATTR:q,IS_SCRIPT_OR_DATA:be,ATTR_WHITESPACE:fe}=l4,{IS_ALLOWED_URI:Bt}=l4,Ee=null,wt=pe({},[...r4,...x0,...w0,...v0,...o4]),ye=null,b=pe({},[...i4,...k0,...s4,...Xu]),R=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),$=null,se=null,V=!0,Se=!0,Z=!1,Te=!0,X=!1,ae=!1,le=!1,J=!1,N=!1,Q=!1,Le=!1,De=!0,ee=!1,He="user-content-",tt=!0,Me=!1,_e={},Be=null,vt=pe({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Cn=null,Ue=pe({},["audio","video","img","source","image","track"]),en=null,$t=pe({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),nt="http://www.w3.org/1998/Math/MathML",Lt="http://www.w3.org/2000/svg",F="http://www.w3.org/1999/xhtml",Y=F,xe=!1,ge=null,he=pe({},[nt,Lt,F],C0),Ne,ot=["application/xhtml+xml","text/html"],Ce="text/html",we,Ft=null,Mg=u.createElement("form"),Vs=function(h){return h instanceof RegExp||h instanceof Function},t0=function(h){if(!(Ft&&Ft===h)){if((!h||typeof h!="object")&&(h={}),h=ma(h),Ne=ot.indexOf(h.PARSER_MEDIA_TYPE)===-1?Ne=Ce:Ne=h.PARSER_MEDIA_TYPE,we=Ne==="application/xhtml+xml"?C0:Zu,Ee="ALLOWED_TAGS"in h?pe({},h.ALLOWED_TAGS,we):wt,ye="ALLOWED_ATTR"in h?pe({},h.ALLOWED_ATTR,we):b,ge="ALLOWED_NAMESPACES"in h?pe({},h.ALLOWED_NAMESPACES,C0):he,en="ADD_URI_SAFE_ATTR"in h?pe(ma($t),h.ADD_URI_SAFE_ATTR,we):$t,Cn="ADD_DATA_URI_TAGS"in h?pe(ma(Ue),h.ADD_DATA_URI_TAGS,we):Ue,Be="FORBID_CONTENTS"in h?pe({},h.FORBID_CONTENTS,we):vt,$="FORBID_TAGS"in h?pe({},h.FORBID_TAGS,we):{},se="FORBID_ATTR"in h?pe({},h.FORBID_ATTR,we):{},_e="USE_PROFILES"in h?h.USE_PROFILES:!1,V=h.ALLOW_ARIA_ATTR!==!1,Se=h.ALLOW_DATA_ATTR!==!1,Z=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Te=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,X=h.SAFE_FOR_TEMPLATES||!1,ae=h.WHOLE_DOCUMENT||!1,N=h.RETURN_DOM||!1,Q=h.RETURN_DOM_FRAGMENT||!1,Le=h.RETURN_TRUSTED_TYPE||!1,J=h.FORCE_BODY||!1,De=h.SANITIZE_DOM!==!1,ee=h.SANITIZE_NAMED_PROPS||!1,tt=h.KEEP_CONTENT!==!1,Me=h.IN_PLACE||!1,Bt=h.ALLOWED_URI_REGEXP||d4,Y=h.NAMESPACE||F,R=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&Vs(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(R.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&Vs(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(R.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(R.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),X&&(Se=!1),Q&&(N=!0),_e&&(Ee=pe({},[...o4]),ye=[],_e.html===!0&&(pe(Ee,r4),pe(ye,i4)),_e.svg===!0&&(pe(Ee,x0),pe(ye,k0),pe(ye,Xu)),_e.svgFilters===!0&&(pe(Ee,w0),pe(ye,k0),pe(ye,Xu)),_e.mathMl===!0&&(pe(Ee,v0),pe(ye,s4),pe(ye,Xu))),h.ADD_TAGS&&(Ee===wt&&(Ee=ma(Ee)),pe(Ee,h.ADD_TAGS,we)),h.ADD_ATTR&&(ye===b&&(ye=ma(ye)),pe(ye,h.ADD_ATTR,we)),h.ADD_URI_SAFE_ATTR&&pe(en,h.ADD_URI_SAFE_ATTR,we),h.FORBID_CONTENTS&&(Be===vt&&(Be=ma(Be)),pe(Be,h.FORBID_CONTENTS,we)),tt&&(Ee["#text"]=!0),ae&&pe(Ee,["html","head","body"]),Ee.table&&(pe(Ee,["tbody"]),delete $.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw ou('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw ou('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');v=h.TRUSTED_TYPES_POLICY,k=v.createHTML("")}else v===void 0&&(v=G2(d,a)),v!==null&&typeof k=="string"&&(k=v.createHTML(""));bt&&bt(h),Ft=h}},Js=pe({},["mi","mo","mn","ms","mtext"]),Ys=pe({},["foreignobject","desc","title","annotation-xml"]),_g=pe({},["title","style","font","a","script"]),Nu=pe({},x0);pe(Nu,w0),pe(Nu,N2);let n0=pe({},v0);pe(n0,I2);let Bg=function(h){let H=T(h);(!H||!H.tagName)&&(H={namespaceURI:Y,tagName:"template"});let _=Zu(h.tagName),ve=Zu(H.tagName);return ge[h.namespaceURI]?h.namespaceURI===Lt?H.namespaceURI===F?_==="svg":H.namespaceURI===nt?_==="svg"&&(ve==="annotation-xml"||Js[ve]):!!Nu[_]:h.namespaceURI===nt?H.namespaceURI===F?_==="math":H.namespaceURI===Lt?_==="math"&&Ys[ve]:!!n0[_]:h.namespaceURI===F?H.namespaceURI===Lt&&!Ys[ve]||H.namespaceURI===nt&&!Js[ve]?!1:!n0[_]&&(_g[_]||!Nu[_]):!!(Ne==="application/xhtml+xml"&&ge[h.namespaceURI]):!1},sa=function(h){ru(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},a0=function(h,H){try{ru(t.removed,{attribute:H.getAttributeNode(h),from:H})}catch{ru(t.removed,{attribute:null,from:H})}if(H.removeAttribute(h),h==="is"&&!ye[h])if(N||Q)try{sa(H)}catch{}else try{H.setAttribute(h,"")}catch{}},Xs=function(h){let H,_;if(J)h=""+h;else{let ft=_2(h,/^[\r\n\t ]+/);_=ft&&ft[0]}Ne==="application/xhtml+xml"&&Y===F&&(h=''+h+"");let ve=v?v.createHTML(h):h;if(Y===F)try{H=new g().parseFromString(ve,Ne)}catch{}if(!H||!H.documentElement){H=S.createDocument(Y,"template",null);try{H.documentElement.innerHTML=xe?k:ve}catch{}}let Xe=H.body||H.documentElement;return h&&_&&Xe.insertBefore(u.createTextNode(_),Xe.childNodes[0]||null),Y===F?M.call(H,ae?"html":"body")[0]:ae?H.documentElement:Xe},Zs=function(h){return A.call(h.ownerDocument||h,h,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Rg=function(h){return h instanceof m&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Iu=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},mn=function(h,H,_){P[h]&&M2(P[h],ve=>{ve.call(t,H,_,Ft)})},Qs=function(h){let H;if(mn("beforeSanitizeElements",h,null),Rg(h))return sa(h),!0;let _=we(h.nodeName);if(mn("uponSanitizeElement",h,{tagName:_,allowedTags:Ee}),h.hasChildNodes()&&!Iu(h.firstElementChild)&&(!Iu(h.content)||!Iu(h.content.firstElementChild))&&Pt(/<[/\w]/g,h.innerHTML)&&Pt(/<[/\w]/g,h.textContent))return sa(h),!0;if(!Ee[_]||$[_]){if(!$[_]&&tl(_)&&(R.tagNameCheck instanceof RegExp&&Pt(R.tagNameCheck,_)||R.tagNameCheck instanceof Function&&R.tagNameCheck(_)))return!1;if(tt&&!Be[_]){let ve=T(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&ve){let ft=Xe.length;for(let kt=ft-1;kt>=0;--kt)ve.insertBefore(C(Xe[kt],!0),y(h))}}return sa(h),!0}return h instanceof s&&!Bg(h)||(_==="noscript"||_==="noembed")&&Pt(/<\/no(script|embed)/i,h.innerHTML)?(sa(h),!0):(X&&h.nodeType===3&&(H=h.textContent,H=Gt(H,z," "),H=Gt(H,w," "),H=Gt(H,G," "),h.textContent!==H&&(ru(t.removed,{element:h.cloneNode()}),h.textContent=H)),mn("afterSanitizeElements",h,null),!1)},el=function(h,H,_){if(De&&(H==="id"||H==="name")&&(_ in u||_ in Mg))return!1;if(!(Se&&!se[H]&&Pt(de,H))&&!(V&&Pt(q,H))){if(!ye[H]||se[H]){if(!(tl(h)&&(R.tagNameCheck instanceof RegExp&&Pt(R.tagNameCheck,h)||R.tagNameCheck instanceof Function&&R.tagNameCheck(h))&&(R.attributeNameCheck instanceof RegExp&&Pt(R.attributeNameCheck,H)||R.attributeNameCheck instanceof Function&&R.attributeNameCheck(H))||H==="is"&&R.allowCustomizedBuiltInElements&&(R.tagNameCheck instanceof RegExp&&Pt(R.tagNameCheck,_)||R.tagNameCheck instanceof Function&&R.tagNameCheck(_))))return!1}else if(!en[H]&&!Pt(Bt,Gt(_,fe,""))&&!((H==="src"||H==="xlink:href"||H==="href")&&h!=="script"&&B2(_,"data:")===0&&Cn[h])&&!(Z&&!Pt(be,Gt(_,fe,"")))&&_)return!1}return!0},tl=function(h){return h.indexOf("-")>0},nl=function(h){let H,_,ve,Xe;mn("beforeSanitizeAttributes",h,null);let{attributes:ft}=h;if(!ft)return;let kt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye};for(Xe=ft.length;Xe--;){H=ft[Xe];let{name:at,namespaceURI:la}=H;if(_=at==="value"?H.value:R2(H.value),ve=we(at),kt.attrName=ve,kt.attrValue=_,kt.keepAttr=!0,kt.forceKeepAttr=void 0,mn("uponSanitizeAttribute",h,kt),_=kt.attrValue,kt.forceKeepAttr||(a0(at,h),!kt.keepAttr))continue;if(!Te&&Pt(/\/>/i,_)){a0(at,h);continue}X&&(_=Gt(_,z," "),_=Gt(_,w," "),_=Gt(_,G," "));let al=we(h.nodeName);if(el(al,ve,_)){if(ee&&(ve==="id"||ve==="name")&&(a0(at,h),_=He+_),v&&typeof d=="object"&&typeof d.getAttributeType=="function"&&!la)switch(d.getAttributeType(al,ve)){case"TrustedHTML":{_=v.createHTML(_);break}case"TrustedScriptURL":{_=v.createScriptURL(_);break}}try{la?h.setAttributeNS(la,at,_):h.setAttribute(at,_),u4(t.removed)}catch{}}}mn("afterSanitizeAttributes",h,null)},Og=function h(H){let _,ve=Zs(H);for(mn("beforeSanitizeShadowDOM",H,null);_=ve.nextNode();)mn("uponSanitizeShadowNode",_,null),!Qs(_)&&(_.content instanceof r&&h(_.content),nl(_));mn("afterSanitizeShadowDOM",H,null)};return t.sanitize=function(h){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},_,ve,Xe,ft;if(xe=!h,xe&&(h=""),typeof h!="string"&&!Iu(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw ou("dirty is not a string, aborting")}else throw ou("toString is not a function");if(!t.isSupported)return h;if(le||t0(H),t.removed=[],typeof h=="string"&&(Me=!1),Me){if(h.nodeName){let la=we(h.nodeName);if(!Ee[la]||$[la])throw ou("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)_=Xs(""),ve=_.ownerDocument.importNode(h,!0),ve.nodeType===1&&ve.nodeName==="BODY"||ve.nodeName==="HTML"?_=ve:_.appendChild(ve);else{if(!N&&!X&&!ae&&h.indexOf("<")===-1)return v&&Le?v.createHTML(h):h;if(_=Xs(h),!_)return N?null:Le?k:""}_&&J&&sa(_.firstChild);let kt=Zs(Me?h:_);for(;Xe=kt.nextNode();)Qs(Xe)||(Xe.content instanceof r&&Og(Xe.content),nl(Xe));if(Me)return h;if(N){if(Q)for(ft=B.call(_.ownerDocument);_.firstChild;)ft.appendChild(_.firstChild);else ft=_;return(ye.shadowroot||ye.shadowrootmod)&&(ft=D.call(n,ft,!0)),ft}let at=ae?_.outerHTML:_.innerHTML;return ae&&Ee["!doctype"]&&_.ownerDocument&&_.ownerDocument.doctype&&_.ownerDocument.doctype.name&&Pt(m4,_.ownerDocument.doctype.name)&&(at=" -`+at),X&&(at=Gt(at,z," "),at=Gt(at,w," "),at=Gt(at,G," ")),v&&Le?v.createHTML(at):at},t.setConfig=function(h){t0(h),le=!0},t.clearConfig=function(){Ft=null,le=!1},t.isValidAttribute=function(h,H,_){Ft||t0({});let ve=we(h),Xe=we(H);return el(ve,Xe,_)},t.addHook=function(h,H){typeof H=="function"&&(P[h]=P[h]||[],ru(P[h],H))},t.removeHook=function(h){if(P[h])return u4(P[h])},t.removeHooks=function(h){P[h]&&(P[h]=[])},t.removeAllHooks=function(){P={}},t}var Ae=g4();var uy=qu.alert;var p4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var f4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var h4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var X2=[{code:"zh-CN",messages:p4},{code:"zh-TW",messages:f4},{code:"en",messages:h4}],gn="immersiveTranslateDeeplGlobalState",Qu="immersiveTranslateBingGlobalState",It={};for(let e of X2)It[e.code]=e.messages;var Kn="Immersive Translate",I="immersive-translate";var oe="immersiveTranslate";var vy=oe+"GoogleAccessToken",ky=oe+"AuthFlow";var Sy=oe+"AuthState",er=oe+"IframeMessage",Dy=oe+"WaitForRateLimit",tr=oe+"DocumentMessageAsk",Et=oe+"DocumentMessageTellThirdParty",E4=oe+"DocumentMessageThirdPartyTell",nr=oe+"DocumentMessageHandler",Z2=`${oe}Container`,y4=`${oe}SpecifiedContainer`,vn="buildinConfig",iu="localConfig",A0="openOptionsPage",L0="openAboutPage";var F0="openEbookViewer",P0="openEbookBuilder";var ar=`${oe}PageTranslatedStatus`,Ay=`${oe}PageUrlChanged`,kn=`${oe}ReceiveCommand`,T4=oe+"LastUseMouseHoverTime",C4=oe+"LastUseInputTime",pn=oe+"LastUseManualTranslatePageTime",Ly=`${oe}PopupReceiveMessage`,Q2="immersivetranslate.com",eh="config.immersivetranslate.com",Fy=`https://${Q2}/`,su=`https://${eh}/default_config.json`,Py=`${oe}Mark`,lu="immersiveTranslateEffect",St=`${oe}Root`,My=`data-${I}-effect`,nn=`data-${I}-translation-element-mark`,x4=`${oe}TranslationElementMark`,_y=`${oe}TranslatedMark`,By=`${oe}ParagraphId`,w4=`${oe}LoadingId`,M0=`data-${I}-loading-id`,v4=`${oe}ErrorId`,ur=`data-${I}-error-id`,th=`${oe}AtomicBlockMark`,k4=`${oe}ExcludeMark`,Ry=`data-${I}-exclude-mark`,nh=`${oe}StayOriginalMark`,Oy=`${oe}PreWhitespaceMark`,rr=`${oe}InlineMark`,S4=`${oe}BlockMark`,Ny=`${oe}Left`,Iy=`${oe}Right`,jy=`${oe}Width`,zy=`${oe}Height`,Hy=`${oe}Top`,Uy=`${oe}FontSize`,cu="lastRunTime",Wy=`${oe}GlobalStyleMark`,or=["@","#"],ir=" --- ",D4=` -`,jt=`${I}-target-wrapper`,qy=`${I}-pdf-target-container`,A4=`${I}-target-inner`,Ky=`${I}-source-wrapper`,_0=`${I}-target-translation-block-wrapper`,$y=`${I}-root-translation-theme`,ga=`${oe}RootTranslationTheme`,L4=`${I}-target-translation-vertical-block-wrapper`,F4=`${I}-target-translation-pdf-block-wrapper`,P4=`${I}-target-translation-pre-whitespace`,B0=`${I}-target-translation-inline-wrapper`;var M4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},zt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],_4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},B4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},R4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var O4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var sr="zh-CN";var b4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,OPTIONS_URL:"https://dash.immersivetranslate.com/",EBOOK_VIEWER_URL:"https://app.immersivetranslate.com/ebook/",EBOOK_BUILDER_URL:"https://app.immersivetranslate.com/ebook/make/",SUBTITLE_BUILDER_URL:"https://app.immersivetranslate.com/subtitle/",HTML_VIEWER_URL:"https://app.immersivetranslate.com/html/",MOCK:"0",DEBUG:"0",IMMERSIVE_TRANSLATE_USERSCRIPT:"1",INSTALL_FROM:"official_userscript"};var V1=ml(2),dl=ml(3);function ml(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let u=typeof n.slice=="function"?n:String(n),r=u.length-e+1;if(r<1)return a;for(;r--;)a[r]=u.slice(r,r+e);return a}}var Kg=/\s+/g,Gg=/[\t\n\v\f\r ]+/g;function gl(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?Vg:Jg;return String(e).replace(t.style==="html"?Gg:Kg,t.trim?Yg(n):n)}function Vg(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function Jg(){return" "}function Yg(e){return t;function t(n,a,u){return a===0||a+n.length===u.length?"":e(n)}}var pl={}.hasOwnProperty;function Xg(e){return e==null?"":gl(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function Zg(e){return dl(" "+Xg(e)+" ")}function Qg(e){let t=Zg(e),n={},a=-1;for(;++an&&(n=r,a=u)}return[a,n]}function op(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function ip(e,t,n,a){t=lp(t,n,a);let u=[],r;if(t)for(r in t)ju.call(t,r)&&u.push([r,sp(e,t[r])]);return u.length===0?i0():u.sort(cp)}function sp(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let r=e.length-a;for(let o of Tp){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/r>.5?t==="zh-CN"?Cl(e)?"zh-TW":"zh-CN":t:"auto"}var vl=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function Za(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Hu(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...vl.keys()]},u=bl(e,a);if(u&&u.length>0){if(u.length>1&&u[0][0]!=="eng"&&u[1][0]==="eng"&&u[1][1]>.6)return"en";let[r]=u[0],o=vl.get(r);if(o)return o}return"auto"}function Ie(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():E}var ce=Ie();function te(){return ce.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function kl(){return ce.HAS_CSP_ERROR=="1"}function Rt(){if(ce.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function Sl(){return typeof Deno<"u"}var xb=Ie().PROD==="1",ca=Ie().PROD!=="1";function Dl(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}if(typeof GM>"u"&&typeof GM_info<"u"&&typeof GM_getValue<"u"){let e=null;typeof GM_xmlhttpRequest<"u"?e=GM_xmlhttpRequest:typeof GM_xmlHttpRequest<"u"&&(e=GM_xmlHttpRequest);let t=null;typeof GM_registerMenuCommand<"u"&&(t=GM_registerMenuCommand),globalThis.GM={info:GM_info,getValue:GM_getValue,setValue:GM_setValue,deleteValue:GM_deleteValue,listValues:GM_listValues,xmlHttpRequest:e,registerMenuCommand:t,addStyle:typeof GM_addStyle<"u"?GM_addStyle:null,openInTab:typeof GM_openInTab<"u"?GM_openInTab:null,addElement:typeof GM_addElement<"u"?GM_addElement:null}}typeof GM<"u"&&GM&&GM.info===void 0&&typeof GM_info<"u"&&(GM.info=GM_info);var Al={get:async e=>{if(e===null){let a=await GM.listValues();Array.isArray(a)||a&&Lp(a)&&(a=Object.keys(a));let u={};for(let r of a)u[r]=await GM.getValue(r);return u}let t=[];typeof e=="string"?t=[e]:Array.isArray(e)?t=e:t=Object.keys(e);let n={};for(let a of t)n[a]=await GM.getValue(a);return n},set:async e=>{for(let t in e)await GM.setValue(t,e[t])},remove:async e=>{if(typeof e=="string")await GM.deleteValue(e);else if(Array.isArray(e))for(let t of e)await GM.deleteValue(t)}};function xp(){if(typeof GM<"u"&&GM&&GM.info&&GM.info.script){let e=GM.info.script||{};return e._isUserscript=!0,e}else return{_isUserscript:!0,version:"0.0.0"}}function Qa(e,t=!0){GM&&GM.openInTab?GM.openInTab(e,!1):globalThis.open(e,t?"_blank":"_self")}function Cp(e=!0,t=""){let n=Ie();GM&&GM.info&&GM.info.scriptHandler&&GM.info.scriptHandler==="Stay"?e=!1:e=!0;let a=n.OPTIONS_URL;if(a)Qa(a+t,e);else throw new Error("options url not found")}function wp(e=!1){let n=Ie().OPTIONS_URL;if(n)Qa(n+"#about",e);else throw new Error("options url not found")}function vp(e=!1){let n=Ie().EBOOK_VIEWER_URL;if(n)Qa(n,e);else throw new Error("ebook url not found")}function kp(e=!1){let n=Ie().EBOOK_BUILDER_URL;if(n)Qa(n,e);else throw new Error("ebook url not found")}function Sp(e=!1){let n=Ie().SUBTITLE_BUILDER_URL;if(n)Qa(n,e);else throw new Error("subtitle url not found")}function Dp(){return globalThis.navigator.languages||[globalThis.navigator.language||globalThis.navigator.userLanguage]}var Ap={storage:{local:Al,sync:Al},runtime:{getManifest:xp,lastError:null,openOptionsPage:Cp},extra:{detectLanguage:Za,openAboutPage:wp,openEbookViewerPage:vp,openEbookBuilderPage:kp,openSubtitleBuilderPage:Sp},i18n:{getAcceptLanguages:Dp,detectLanguage:Za}};function Lp(e){return e!==null&&typeof e=="object"}globalThis.immersiveTranslateBrowserAPI=Ap;(function(){"use strict";var e=window.Bluebird||window.Promise;if(self.GM_fetch)return;let t;if(typeof GM<"u"&&GM.xmlHttpRequest)t=GM.xmlHttpRequest;else if(typeof GM<"u"&&GM_xmlhttpRequest)t=GM_xmlhttpRequest;else if(typeof GM_xmlhttpRequest<"u")t=GM_xmlhttpRequest;else if(typeof GM<"u"&&GM.xmlHttpRequest)t=GM.xmlHttpRequest;else return;function n(d){if(typeof d!="string"&&(d=d.toString()),/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(d))throw new TypeError("Invalid character in header field name");return d.toLowerCase()}function a(d){return typeof d!="string"&&(d=d.toString()),d}function u(d){if(d.bodyUsed)return e.reject(new TypeError("Already read"));d.bodyUsed=!0}function r(d){return new e(function(f,T){d.onload=function(){f(d.result)},d.onerror=function(){T(d.error)}})}function o(d){var f=new FileReader;return f.readAsArrayBuffer(d),r(f)}function i(d){var f=new FileReader;return f.readAsText(d),r(f)}var s={blob:"FileReader"in self&&"Blob"in self&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in self},l=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function c(d){var f=d.toUpperCase();return l.indexOf(f)>-1?f:d}function m(d){var f=new FormData;return d.trim().split("&").forEach(function(T){if(T){var y=T.split("="),p=y.shift().replace(/\+/g," "),x=y.join("=").replace(/\+/g," ");f.append(decodeURIComponent(p),decodeURIComponent(x))}}),f}function g(d){var f=new Headers;if(typeof d=="string"){var T=d.trim().split(` +`);T.forEach(function(p){var x=p.trim().split(":"),v=x.shift().trim(),k=x.join(":").trim();f.append(v,k)})}else if(typeof d=="object")for(var y in d)Array.isArray(d[y])&&d[y].forEach(function(p){f.append(y,p)});return f}self.Headers=Headers,self.Request=Request,self.Response=Response,self.GM_fetch=function(d,f){var T,y;return f||(typeof d=="string"?f={}:d=f.url),Request&&Request.prototype&&Request.prototype.isPrototypeOf&&Request.prototype.isPrototypeOf(f)?T=f:(f.body&&(y=f.body),T=new Request(d,f)),new e(function(p,x){var v={};f&&f.extra&&(v=f.extra);var k;function S(A,B){if(A)return A;if(B.get("X-Request-URL"))return B.get("X-Request-URL")}v.method=T.method||"GET",v.timeout=6e4,T.timeout&&(v.timeout=T.timeout),v.url=T.url,v.synchronous=!1,v.onload=function(A){var B=A.status;if(B<100||B>599){x(new TypeError("Network request failed"));return}var M=A.responseHeaders;k=g(M);var D=S(A.finalUrl||A.responseURL,k);k.set("X-Final-URL",D);var P={status:B,statusText:A.statusText,headers:k,url:D},z=A.responseText;let w=new Response(z,P);p(w)},v.onerror=function(A){x(new TypeError("Network request failed"))},v.ontimeout=function(A){x(new TypeError("Network request timeout"))},v.onabort=function(A){x(new TypeError("Network request abort"))},v.headers={},T.headers.forEach(function(A,B){v.headers[B]=A}),y&&(v.data=y),t(v)})},self.GM_fetch.polyfill=!0})();function da(){let e,t="pending",n=new Promise((a,u)=>{e={async resolve(r){await r,t="fulfilled",a(r)},reject(r){t="rejected",u(r)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var s0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function Uu(e,t){let n=da(),a=setTimeout(()=>n.reject(new s0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function eu(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((u,r)=>{let o=()=>{clearTimeout(s),r(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),u()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var Ll=class{#e=0;#t=[];#n=[];#a=da();add(t){++this.#e,this.#u(t[Symbol.asyncIterator]())}async#u(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tnf,bgBlue:()=>of,bgBrightBlack:()=>df,bgBrightBlue:()=>ff,bgBrightCyan:()=>bf,bgBrightGreen:()=>gf,bgBrightMagenta:()=>hf,bgBrightRed:()=>mf,bgBrightWhite:()=>Ef,bgBrightYellow:()=>pf,bgCyan:()=>lf,bgGreen:()=>uf,bgMagenta:()=>sf,bgRed:()=>af,bgRgb24:()=>Cf,bgRgb8:()=>Tf,bgWhite:()=>cf,bgYellow:()=>rf,black:()=>zp,blue:()=>qp,bold:()=>_p,brightBlack:()=>Ml,brightBlue:()=>Zp,brightCyan:()=>ef,brightGreen:()=>Yp,brightMagenta:()=>Qp,brightRed:()=>Jp,brightWhite:()=>tf,brightYellow:()=>Xp,cyan:()=>Kp,dim:()=>Bp,getColorEnabled:()=>Pp,gray:()=>Vp,green:()=>Up,hidden:()=>Ip,inverse:()=>Np,italic:()=>Rp,magenta:()=>$p,red:()=>Hp,reset:()=>Mp,rgb24:()=>xf,rgb8:()=>yf,setColorEnabled:()=>Fp,strikethrough:()=>jp,stripColor:()=>vf,underline:()=>Op,white:()=>Gp,yellow:()=>Wp});var{Deno:Fl}=globalThis,Pl=typeof Fl?.noColor=="boolean"?Fl.noColor:!0,l0=!Pl;function Fp(e){Pl||(l0=e)}function Pp(){return l0}function ue(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function re(e,t){return l0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function Mp(e){return re(e,ue([0],0))}function _p(e){return re(e,ue([1],22))}function Bp(e){return re(e,ue([2],22))}function Rp(e){return re(e,ue([3],23))}function Op(e){return re(e,ue([4],24))}function Np(e){return re(e,ue([7],27))}function Ip(e){return re(e,ue([8],28))}function jp(e){return re(e,ue([9],29))}function zp(e){return re(e,ue([30],39))}function Hp(e){return re(e,ue([31],39))}function Up(e){return re(e,ue([32],39))}function Wp(e){return re(e,ue([33],39))}function qp(e){return re(e,ue([34],39))}function $p(e){return re(e,ue([35],39))}function Kp(e){return re(e,ue([36],39))}function Gp(e){return re(e,ue([37],39))}function Vp(e){return Ml(e)}function Ml(e){return re(e,ue([90],39))}function Jp(e){return re(e,ue([91],39))}function Yp(e){return re(e,ue([92],39))}function Xp(e){return re(e,ue([93],39))}function Zp(e){return re(e,ue([94],39))}function Qp(e){return re(e,ue([95],39))}function ef(e){return re(e,ue([96],39))}function tf(e){return re(e,ue([97],39))}function nf(e){return re(e,ue([40],49))}function af(e){return re(e,ue([41],49))}function uf(e){return re(e,ue([42],49))}function rf(e){return re(e,ue([43],49))}function of(e){return re(e,ue([44],49))}function sf(e){return re(e,ue([45],49))}function lf(e){return re(e,ue([46],49))}function cf(e){return re(e,ue([47],49))}function df(e){return re(e,ue([100],49))}function mf(e){return re(e,ue([101],49))}function gf(e){return re(e,ue([102],49))}function pf(e){return re(e,ue([103],49))}function ff(e){return re(e,ue([104],49))}function hf(e){return re(e,ue([105],49))}function bf(e){return re(e,ue([106],49))}function Ef(e){return re(e,ue([107],49))}function Cn(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function yf(e,t){return re(e,ue([38,5,Cn(t)],39))}function Tf(e,t){return re(e,ue([48,5,Cn(t)],49))}function xf(e,t){return typeof t=="number"?re(e,ue([38,2,t>>16&255,t>>8&255,t&255],39)):re(e,ue([38,2,Cn(t.r),Cn(t.g),Cn(t.b)],39))}function Cf(e,t){return typeof t=="number"?re(e,ue([48,2,t>>16&255,t>>8&255,t&255],49)):re(e,ue([48,2,Cn(t.r),Cn(t.g),Cn(t.b)],49))}var wf=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function vf(e){return e.replace(wf,"")}var c0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},kf={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function d0(e,t){let n={...kf,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,u;for(let r=0;rsetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),u=o}throw new c0(u,n.maxAttempts)}var mE=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var Wu=globalThis||(typeof window<"u"?window:self),Df=Object.create,g0=Object.defineProperty,Af=Object.getOwnPropertyDescriptor,Lf=Object.getOwnPropertyNames,Ff=Object.getPrototypeOf,Pf=Object.prototype.hasOwnProperty,Mf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),_f=(e,t)=>{for(var n in t)g0(e,n,{get:t[n],enumerable:!0})},m0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of Lf(t))!Pf.call(e,u)&&u!==n&&g0(e,u,{get:()=>t[u],enumerable:!(a=Af(t,u))||a.enumerable});return e},Bf=(e,t,n)=>(m0(e,t,"default"),n&&m0(n,t,"default")),Bl=(e,t,n)=>(n=e!=null?Df(Ff(e)):{},m0(t||!e||!e.__esModule?g0(n,"default",{value:e,enumerable:!0}):n,e)),Rl=Mf((e,t)=>{var n="Expected a function",a=NaN,u="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof Wu=="object"&&Wu&&Wu.Object===Object&&Wu,m=typeof self=="object"&&self&&self.Object===Object&&self,g=c||m||Function("return this")(),d=Object.prototype,f=d.toString,T=Math.max,y=Math.min,p=function(){return g.Date.now()};function x(M,D,P){var z,w,G,de,q,be,fe=0,Bt=!1,Ee=!1,wt=!0;if(typeof M!="function")throw new TypeError(n);D=B(D)||0,k(P)&&(Bt=!!P.leading,Ee="maxWait"in P,G=Ee?T(B(P.maxWait)||0,D):G,wt="trailing"in P?!!P.trailing:wt);function ye(X){var ae=z,le=w;return z=w=void 0,fe=X,de=M.apply(le,ae),de}function b(X){return fe=X,q=setTimeout(se,D),Bt?ye(X):de}function R(X){var ae=X-be,le=X-fe,J=D-ae;return Ee?y(J,G-le):J}function K(X){var ae=X-be,le=X-fe;return be===void 0||ae>=D||ae<0||Ee&&le>=G}function se(){var X=p();if(K(X))return V(X);q=setTimeout(se,R(X))}function V(X){return q=void 0,wt&&z?ye(X):(z=w=void 0,de)}function De(){q!==void 0&&clearTimeout(q),fe=0,z=be=w=q=void 0}function Z(){return q===void 0?de:V(p())}function Te(){var X=p(),ae=K(X);if(z=arguments,w=this,be=X,ae){if(q===void 0)return b(be);if(Ee)return q=setTimeout(se,D),ye(be)}return q===void 0&&(q=setTimeout(se,D)),de}return Te.cancel=De,Te.flush=Z,Te}function v(M,D,P){var z=!0,w=!0;if(typeof M!="function")throw new TypeError(n);return k(P)&&(z="leading"in P?!!P.leading:z,w="trailing"in P?!!P.trailing:w),x(M,D,{leading:z,maxWait:D,trailing:w})}function k(M){var D=typeof M;return!!M&&(D=="object"||D=="function")}function S(M){return!!M&&typeof M=="object"}function A(M){return typeof M=="symbol"||S(M)&&f.call(M)==u}function B(M){if(typeof M=="number")return M;if(A(M))return a;if(k(M)){var D=typeof M.valueOf=="function"?M.valueOf():M;M=k(D)?D+"":D}if(typeof M!="string")return M===0?M:+M;M=M.replace(r,"");var P=i.test(M);return P||s.test(M)?l(M.slice(2),P?2:8):o.test(M)?a:+M}t.exports=v}),Ol={};_f(Ol,{default:()=>lt});var Rf=Bl(Rl());Bf(Ol,Bl(Rl()));var{default:_l,...Of}=Rf,lt=_l!==void 0?_l:Of;var Nf=Object.create,f0=Object.defineProperty,If=Object.getOwnPropertyDescriptor,jf=Object.getOwnPropertyNames,zf=Object.getPrototypeOf,Hf=Object.prototype.hasOwnProperty,Uf=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Wf=(e,t)=>{for(var n in t)f0(e,n,{get:t[n],enumerable:!0})},p0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of jf(t))!Hf.call(e,u)&&u!==n&&f0(e,u,{get:()=>t[u],enumerable:!(a=If(t,u))||a.enumerable});return e},qf=(e,t,n)=>(p0(e,t,"default"),n&&p0(n,t,"default")),Il=(e,t,n)=>(n=e!=null?Nf(zf(e)):{},p0(t||!e||!e.__esModule?f0(n,"default",{value:e,enumerable:!0}):n,e)),jl=Uf((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(r){if(u[r])return u[r].exports;var o=u[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var u={};return a.m=n,a.c=u,a.i=function(r){return r},a.d=function(r,o,i){a.o(r,o)||Object.defineProperty(r,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return a.d(o,"a",o),o},a.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(u){return u.webpackPolyfill||(u.deprecate=function(){},u.paths=[],u.children||(u.children=[]),Object.defineProperty(u,"loaded",{enumerable:!0,get:function(){return u.l}}),Object.defineProperty(u,"id",{enumerable:!0,get:function(){return u.i}}),u.webpackPolyfill=1),u}},function(n,a,u){"use strict";(function(r){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,m){l(a)==="object"&&l(r)==="object"?r.exports=m():(i=[],o=m,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(r.exports=s))})(void 0,function(){return function(c){function m(d){if(g[d])return g[d].exports;var f=g[d]={i:d,l:!1,exports:{}};return c[d].call(f.exports,f,f.exports,m),f.l=!0,f.exports}var g={};return m.m=c,m.c=g,m.i=function(d){return d},m.d=function(d,f,T){m.o(d,f)||Object.defineProperty(d,f,{configurable:!1,enumerable:!0,get:T})},m.n=function(d){var f=d&&d.__esModule?function(){return d.default}:function(){return d};return m.d(f,"a",f),f},m.o=function(d,f){return Object.prototype.hasOwnProperty.call(d,f)},m.p="",m(m.s=0)}([function(c,m,g){function d(b,R){var K={};for(var se in b)R.indexOf(se)>=0||Object.prototype.hasOwnProperty.call(b,se)&&(K[se]=b[se]);return K}Object.defineProperty(m,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(b){return typeof b>"u"?"undefined":l(b)}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b>"u"?"undefined":l(b)},T=Object.assign||function(b){for(var R=1;R'+se+"",le.onclick=function(){return w(J,ae)},le.listener=function(I){(D(I)||P(I))&&q()},z(le,ae),De&&De<1&&(De=1),!Te&&De&&k(De).then(function(){return w(J,ae)})},fe=m.force=function(b,R){var K=b.type,se=K===void 0?5:K,V=b.text,De=b.buttonText,Z=De===void 0?"OK":De,Te=b.callback,X=b.position,ae=X===void 0?p.positions.force||ae.top:X;S(),q();var le=document.createElement("div"),J=A();le.id=J;var I=document.createElement("div");I.classList.add(p.classes.textbox),I.classList.add(p.classes.backgroundInfo),I.innerHTML='
'+V+"
";var Q=document.createElement("div");Q.classList.add(p.classes.button),Q.classList.add(B[se]),Q.innerHTML=Z,Q.onclick=function(){w(J,ae),de(),Te?Te():R&&R()},le.appendChild(I),le.appendChild(Q),le.listener=function(Le){D(Le)&&Q.click()},z(le,ae),G()},Bt=m.confirm=function(b,R,K){var se=b.text,V=b.submitText,De=V===void 0?"Yes":V,Z=b.cancelText,Te=Z===void 0?"Cancel":Z,X=b.submitCallback,ae=b.cancelCallback,le=b.position,J=le===void 0?p.positions.confirm||J.top:le;S(),q();var I=document.createElement("div"),Q=A();I.id=Q;var Le=document.createElement("div");Le.classList.add(p.classes.textbox),Le.classList.add(p.classes.backgroundInfo),Le.innerHTML='
'+se+"
";var Ae=document.createElement("div");Ae.classList.add(p.classes.button),Ae.classList.add(p.classes.elementHalf),Ae.classList.add(p.classes.backgroundSuccess),Ae.innerHTML=De,Ae.onclick=function(){w(Q,J),de(),X?X():R&&R()};var ee=document.createElement("div");ee.classList.add(p.classes.button),ee.classList.add(p.classes.elementHalf),ee.classList.add(p.classes.backgroundError),ee.innerHTML=Te,ee.onclick=function(){w(Q,J),de(),ae?ae():K&&K()},I.appendChild(Le),I.appendChild(Ae),I.appendChild(ee),I.listener=function(He){D(He)?Ae.click():P(He)&&ee.click()},z(I,J),G(I,J)},Ee=function(b,R,K){var se=b.text,V=b.submitText,De=V===void 0?"Submit":V,Z=b.cancelText,Te=Z===void 0?"Cancel":Z,X=b.submitCallback,ae=b.cancelCallback,le=b.position,J=le===void 0?p.positions.input||J.top:le,I=d(b,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);S(),q();var Q=document.createElement("div"),Le=A();Q.id=Le;var Ae=document.createElement("div");Ae.classList.add(p.classes.textbox),Ae.classList.add(p.classes.backgroundInfo),Ae.innerHTML='
'+se+"
";var ee=document.createElement("input");ee.classList.add(p.classes.inputField),ee.setAttribute("autocapitalize",I.autocapitalize||"none"),ee.setAttribute("autocomplete",I.autocomplete||"off"),ee.setAttribute("autocorrect",I.autocorrect||"off"),ee.setAttribute("autofocus",I.autofocus||"true"),ee.setAttribute("inputmode",I.inputmode||"verbatim"),ee.setAttribute("max",I.max||""),ee.setAttribute("maxlength",I.maxlength||""),ee.setAttribute("min",I.min||""),ee.setAttribute("minlength",I.minlength||""),ee.setAttribute("placeholder",I.placeholder||""),ee.setAttribute("spellcheck",I.spellcheck||"default"),ee.setAttribute("step",I.step||"any"),ee.setAttribute("type",I.type||"text"),ee.value=I.value||"",I.allowed&&(ee.oninput=function(){var Me=void 0;if(Array.isArray(I.allowed)){for(var _e="",Be=I.allowed,vt=0;vt'+K+"",ae.appendChild(J),Z.forEach(function(Q,Le){var Ae=Q.type,ee=Ae===void 0?1:Ae,He=Q.text,tt=Q.handler,Me=document.createElement("div");Me.classList.add(B[ee]),Me.classList.add(p.classes.button),Me.classList.add(p.classes.selectChoice);var _e=Z[Le+1];_e&&!_e.type&&(_e.type=1),_e&&_e.type===ee&&Me.classList.add(p.classes.selectChoiceRepeated),Me.innerHTML=He,Me.onclick=function(){w(le,X),de(),tt()},ae.appendChild(Me)});var I=document.createElement("div");I.classList.add(p.classes.backgroundNeutral),I.classList.add(p.classes.button),I.innerHTML=V,I.onclick=function(){w(le,X),de(),De?De():R&&R()},ae.appendChild(I),ae.listener=function(Q){P(Q)&&I.click()},z(ae,X),G(ae,X)},ye=m.date=function(b,R,K){var se=b.value,V=se===void 0?new Date:se,De=b.submitText,Z=De===void 0?"OK":De,Te=b.cancelText,X=Te===void 0?"Cancel":Te,ae=b.submitCallback,le=b.cancelCallback,J=b.position,I=J===void 0?p.positions.date||I.top:J;S(),q();var Q="▾",Le=document.createElement("div"),Ae=document.createElement("div"),ee=document.createElement("div"),He=function(xe){Le.innerHTML=p.dateMonths[xe.getMonth()],Ae.innerHTML=xe.getDate(),ee.innerHTML=xe.getFullYear()},tt=function(xe){var ve=new Date(V.getFullYear(),V.getMonth()+1,0).getDate(),Ft=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Ft)>ve&&(Ft=ve.toString()),xe.target.textContent=Ft,Number(Ft)<1&&(Ft="1"),V.setDate(Number(Ft))},Me=function(xe){var ve=xe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);xe.target.textContent=ve,V.setFullYear(Number(ve))},_e=function(xe){He(V)},Be=function(xe){var ve=new Date(V.getFullYear(),V.getMonth()+xe+1,0).getDate();V.getDate()>ve&&V.setDate(ve),V.setMonth(V.getMonth()+xe),He(V)},vt=function(xe){V.setDate(V.getDate()+xe),He(V)},xn=function(xe){var ve=V.getFullYear()+xe;ve<0?V.setFullYear(0):V.setFullYear(V.getFullYear()+xe),He(V)},Ue=document.createElement("div"),tn=A();Ue.id=tn;var Kt=document.createElement("div");Kt.classList.add(p.classes.backgroundInfo);var nt=document.createElement("div");nt.classList.add(p.classes.dateSelectorInner);var Lt=document.createElement("div");Lt.classList.add(p.classes.button),Lt.classList.add(p.classes.elementThird),Lt.classList.add(p.classes.dateSelectorUp),Lt.innerHTML=Q;var F=document.createElement("div");F.classList.add(p.classes.button),F.classList.add(p.classes.elementThird),F.classList.add(p.classes.dateSelectorUp),F.innerHTML=Q;var Y=document.createElement("div");Y.classList.add(p.classes.button),Y.classList.add(p.classes.elementThird),Y.classList.add(p.classes.dateSelectorUp),Y.innerHTML=Q,Le.classList.add(p.classes.element),Le.classList.add(p.classes.elementThird),Le.innerHTML=p.dateMonths[V.getMonth()],Ae.classList.add(p.classes.element),Ae.classList.add(p.classes.elementThird),Ae.setAttribute("contentEditable",!0),Ae.addEventListener("input",tt),Ae.addEventListener("blur",_e),Ae.innerHTML=V.getDate(),ee.classList.add(p.classes.element),ee.classList.add(p.classes.elementThird),ee.setAttribute("contentEditable",!0),ee.addEventListener("input",Me),ee.addEventListener("blur",_e),ee.innerHTML=V.getFullYear();var we=document.createElement("div");we.classList.add(p.classes.button),we.classList.add(p.classes.elementThird),we.innerHTML=Q;var ge=document.createElement("div");ge.classList.add(p.classes.button),ge.classList.add(p.classes.elementThird),ge.innerHTML=Q;var he=document.createElement("div");he.classList.add(p.classes.button),he.classList.add(p.classes.elementThird),he.innerHTML=Q,Lt.onclick=function(){return Be(1)},F.onclick=function(){return vt(1)},Y.onclick=function(){return xn(1)},we.onclick=function(){return Be(-1)},ge.onclick=function(){return vt(-1)},he.onclick=function(){return xn(-1)};var Ne=document.createElement("div");Ne.classList.add(p.classes.button),Ne.classList.add(p.classes.elementHalf),Ne.classList.add(p.classes.backgroundSuccess),Ne.innerHTML=Z,Ne.onclick=function(){w(tn,I),de(),ae?ae(V):R&&R(V)};var ot=document.createElement("div");ot.classList.add(p.classes.button),ot.classList.add(p.classes.elementHalf),ot.classList.add(p.classes.backgroundError),ot.innerHTML=X,ot.onclick=function(){w(tn,I),de(),le?le(V):K&&K(V)},nt.appendChild(Lt),nt.appendChild(F),nt.appendChild(Y),nt.appendChild(Le),nt.appendChild(Ae),nt.appendChild(ee),nt.appendChild(we),nt.appendChild(ge),nt.appendChild(he),Kt.appendChild(nt),Ue.appendChild(Kt),Ue.appendChild(Ne),Ue.appendChild(ot),Ue.listener=function(xe){D(xe)?Ne.click():P(xe)&&ot.click()},z(Ue,I),G(Ue,I)};m.default={alert:be,force:fe,confirm:Bt,input:Ee,select:wt,date:ye,setOptions:x,hideAlerts:q}}])})}).call(a,u(0)(n))}])})}),zl={};Wf(zl,{default:()=>qu});var $f=Il(jl());qf(zl,Il(jl()));var{default:Nl,...Kf}=$f,qu=Nl!==void 0?Nl:Kf;var h0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function b0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function $l(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function Gf(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,u=!0,r=0;r=0&&Pe.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&Pe.splice(0,Pe.length),(t===93||t===224)&&(t=91),t in it){it[t]=!1;for(var a in nn)nn[a]===t&&(je[a]=!1)}}function n2(e){if(typeof e>"u")Object.keys(Ge).forEach(function(o){return delete Ge[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&E0(o)});else if(typeof e=="object")e.key&&E0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?$l(nn,s):[];Ge[m]=Ge[m].filter(function(d){var f=a?d.method===a:!0;return!(f&&d.scope===n&&Gf(d.mods,g))})}})};function Ul(e,t,n,a){if(t.element===a){var u;if(t.scope===n||t.scope==="all"){u=t.mods.length>0;for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(!it[r]&&t.mods.indexOf(+r)>-1||it[r]&&t.mods.indexOf(+r)===-1)&&(u=!1);(t.mods.length===0&&!it[16]&&!it[18]&&!it[17]&&!it[91]||u||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Wl(e,t){var n=Ge["*"],a=e.keyCode||e.which||e.charCode;if(je.filter.call(this,e)){if((a===93||a===224)&&(a=91),Pe.indexOf(a)===-1&&a!==229&&Pe.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var T=T0[f];e[f]&&Pe.indexOf(T)===-1?Pe.push(T):!e[f]&&Pe.indexOf(T)>-1?Pe.splice(Pe.indexOf(T),1):f==="metaKey"&&e[f]&&Pe.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(Pe=Pe.slice(Pe.indexOf(T))))}),a in it){it[a]=!0;for(var u in nn)nn[u]===a&&(je[u]=!0);if(!n)return}for(var r in it)Object.prototype.hasOwnProperty.call(it,r)&&(it[r]=e[T0[r]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(Pe.indexOf(17)===-1&&Pe.push(17),Pe.indexOf(18)===-1&&Pe.push(18),it[17]=!0,it[18]=!0);var o=au();if(n)for(var i=0;i-1}function je(e,t,n){Pe=[];var a=Kl(e),u=[],r="all",o=document,i=0,s=!1,l=!0,c="+",m=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(r=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(m=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(r=t);i1&&(u=$l(nn,e)),e=e[e.length-1],e=e==="*"?"*":Ku(e),e in Ge||(Ge[e]=[]),Ge[e].push({keyup:s,keydown:l,scope:r,mods:u,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!a2(o)&&window&&(Vl.push(o),b0(o,"keydown",function(g){Wl(g,o)},m),Hl||(Hl=!0,b0(window,"focus",function(){Pe=[]},m)),b0(o,"keyup",function(g){Wl(g,o),t2(g)},m))}function u2(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(Ge).forEach(function(n){var a=Ge[n].filter(function(u){return u.scope===t&&u.shortcut===e});a.forEach(function(u){u&&u.method&&u.method()})})}var y0={getPressedKeyString:Xf,setScope:Jl,getScope:au,deleteScope:e2,getPressedKeyCodes:Yf,isPressed:Qf,filter:Zf,trigger:u2,unbind:n2,keyMap:nu,modifier:nn,modifierMap:T0};for($u in y0)Object.prototype.hasOwnProperty.call(y0,$u)&&(je[$u]=y0[$u]);var $u;typeof document<"u"&&(ql=window.hotkeys,je.noConflict=function(e){return e&&window.hotkeys===je&&(window.hotkeys=ql),je},window.hotkeys=je);var ql;var r2=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},o2=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new r2:{reset:()=>{},stop:()=>{}}}},x0=new o2,i2="poegempjloogba",s2="ension://",l2="me-";function uu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function t4(e){return e?e.PROD==="1":!0}function n4(e){return e?e.MOCK==="1":!1}function a4(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var c2="rome-ext";function d2(e,t){return t?e+(t-e%t):e}function m2(e,t){return e.split(t).length-1}function g2(e){let t=Date.now(),n=1;for(let a of e)n+=m2(a,"i");return d2(t,n)}function p2(e,t){return Math.floor(Math.random()*(t-e+1))+e}var f2="extension",h2="chro";function b2(){return p2(1e6,1e8)}var Yl="BrowserExt";function E2(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var Xl="DeepL",Zl="ension",y2="ch"+c2+s2+"cofdb"+i2+"gkncekinflcnj";function u4(e){let{contentType:t,userAgent:n,url:a,authorization:u,clientVersion:r}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),u&&i.append("authorization",`Bearer ${u}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",y2),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${Xl}${Yl}${Zl}/${r||"1.1.1"} ${l}`)}else i.append("user-agent",`${Xl}${Yl}${Zl}/${r||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function T2(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:u}=e,r={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:u||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:g2(n)},id:b2()},o=u4({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${h2+l2+f2},${t}`,headers:o,body:E2(r),method:"POST"}}function x2(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Wn={},qn={};async function Ql(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r}=n,[o,i]=uu(u);i||(i=uu(r)[1]);let s={refreshToken:a,refreshTokenExpiresAt:u,refreshTokenChecksAt:r||new Date().toISOString()};o||(s=await Gu(e,t));let[l,c]=uu(s.refreshTokenExpiresAt);i=c,i||(i=uu(s.refreshTokenChecksAt)[1]);let m=s.refreshToken;if(Wn[m])return new Promise((g,d)=>{Wn[m].push((f,T)=>{f?d(f):g(T)})});Wn[m]=[];try{let g=await C2(m,t.onFetch),d={state:{...n,...s,...g},shouldUpdateRefreshToken:i};return Wn[m].forEach(f=>{f(null,d)}),delete Wn[m],d}catch(g){throw Wn[m].forEach(d=>{d(g)}),delete Wn[m],g}}async function Gu(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(qn[e])return new Promise((u,r)=>{qn[e].push((o,i)=>{o?r(o):u(i)})});try{qn[e]=[];let u=new URLSearchParams({grant_type:"auth_key",auth_key:e}),r=new URL("/refresh_token?"+u.toString(),n),o=await a(r.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return qn[e].forEach(m=>{m(null,c)}),delete qn[e],c}catch(u){throw qn[e].forEach(r=>{r(u)}),delete qn[e],u}}async function C2(e,t){if(!e)throw new Error("refreshToken is required");let n=t4(),a=n4();if(!n&&!a){await a4(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let u="https://w.deepl.com/oidc/token",r=await t(u,{headers:u4({url:u,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=x2(r.access_token);if(r.expires_in){let i=new Date,s=new Date(i.getTime()+r.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function e4(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),u=a.getAll("text");if(u.length<1)throw new Error("No text to translate");if(w2(u)>5e3)throw new Error("text too long, the max length is 5000 characters.");let r=a.get("target_lang");if(!r)throw new Error("No target language");let o=a.get("source_lang"),i={...T2({texts:u,authorization:e,target_lang:r,source_lang:o}),responseType:"raw"},s=t4(),l=n4();if(!s&&!l)return await a4(50),{translations:u.map(d=>({text:"mock: "+d,detected_source_language:"EN"}))};let c=await n(i.url,i),m=JSON.parse(c.body),g=[];if(m.result&&m.result.texts)g=m.result.texts.map(d=>({text:d.text,detected_source_language:m.result.lang}));else throw new Error("No response from deepl api");return{translations:g}}function w2(e){let t=0;for(let n of e)t+=n.length;return t}async function v2(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let u=await k2(t,a);if(u.ok&&u.status>=200&&u.status<400)if(n==="json"){let r=await u.json();return x0.debug("response",JSON.stringify(r,null,2)),r}else{if(n==="text")return await u.text();if(n==="raw"){let r=await u.text(),o=Object.fromEntries([...u.headers.entries()]),i=u.url;return{body:r,headers:o,status:u.status,statusText:u.statusText,url:i}}}else{let r;try{r=await u.text()}catch(o){x0.error("parse response failed",o)}throw new Error(u.status+": "+u.statusText||" "+r||"")}}async function k2(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,u=setTimeout(()=>a.abort(),n),r=await fetch(e,{...t,signal:a.signal});return clearTimeout(u),r}var Vu=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>v2({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((r,o)=>{a.append("text",r)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let u=await e4(this.state.accessToken,a.toString(),this.onFetch);if(u&&u.translations&&u.translations.length>0)return Array.isArray(e)?u.translations.map(r=>({text:r.text,detectedSourceLanguage:r.detected_source_language})):{text:u.translations[0].text,detectedSourceLanguage:u.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await e4(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await Gu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw x0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=uu(e);if(t)n&&Ql(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:u})=>{this.setState({...this.state,...a}),u&&Gu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:u}=await Ql(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),u&&Gu(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(r=>{this.setState({...this.state,...r})}).catch(r=>{})}catch(a){this.onFetchTokenError(a)}}};var S2={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},o4={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},We={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},ht={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},wn={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},L=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=L.getVersionPrecision(e),u=L.getVersionPrecision(t),r=Math.max(a,u),o=0,i=L.map([e,t],s=>{let l=r-L.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return L.map(c.split("."),m=>new Array(20-m.length).join("0")+m).reverse()});for(n&&(o=r-Math.min(a,u)),r-=1;r>=o;){if(i[0][r]>i[1][r])return 1;if(i[0][r]===i[1][r]){if(r===o)return 0;r-=1}else if(i[0][r]{n[o]=r[o]})}return e}static getBrowserAlias(e){return S2[e]}static getBrowserTypeByAlias(e){return o4[e]||""}},Fe=/version\/(\d+(\.?_?\d+)+)/i,D2=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=L.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=L.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=L.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=L.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=L.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=L.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=L.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=L.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=L.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=L.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=L.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=L.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=L.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=L.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=L.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=L.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=L.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=L.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=L.getFirstMatch(Fe,e)||L.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=L.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=L.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=L.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=L.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=L.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=L.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=L.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=L.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=L.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=L.getFirstMatch(Fe,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:L.getFirstMatch(a,e),version:L.getSecondMatch(a,e)}}}],A2=D2,L2=[{test:[/Roku\/DVP/],describe(e){let t=L.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:ht.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=L.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:ht.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=L.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=L.getWindowsVersionName(t);return{name:ht.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:ht.iOS},n=L.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=L.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=L.getMacOSVersionName(t),a={name:ht.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=L.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:ht.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=L.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=L.getAndroidVersionName(t),a={name:ht.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=L.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:ht.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=L.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||L.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||L.getFirstMatch(/\bbb(\d+)/i,e);return{name:ht.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=L.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:ht.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=L.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:ht.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:ht.Linux}}},{test:[/CrOS/],describe(){return{name:ht.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=L.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:ht.PlayStation4,version:t}}}],F2=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=L.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:We.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:We.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:We.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:We.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:We.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:We.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=L.getFirstMatch(/(ipod|iphone)/i,e);return{type:We.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:We.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:We.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:We.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:We.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:We.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:We.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:We.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:We.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:We.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:We.tv}}}],P2=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:wn.Blink};let t=L.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:wn.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:wn.Trident},n=L.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:wn.Presto},n=L.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:wn.Gecko},n=L.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:wn.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:wn.WebKit},n=L.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],M2=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=L.find(A2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=L.find(L2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=L.find(F2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=L.find(P2,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return L.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},u=0;if(Object.keys(e).forEach(r=>{let o=e[r];typeof o=="string"?(a[r]=o,u+=1):typeof o=="object"&&(t[r]=o,n+=1)}),n>0){let r=Object.keys(t),o=L.find(r,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=L.find(r,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(u>0){let r=Object.keys(a),o=L.find(r,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),u=L.getBrowserTypeByAlias(a);return t&&u&&(a=u.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,u=this.getBrowserVersion();if(typeof u=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(L.compareVersions(u,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},r4=M2,_2=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new r4(e,t)}static parse(e){return new r4(e).getResult()}static get BROWSER_MAP(){return o4}static get ENGINE_MAP(){return wn}static get OS_MAP(){return ht}static get PLATFORMS_MAP(){return We}},Ju=_2;var{entries:p4,setPrototypeOf:i4,isFrozen:B2,getPrototypeOf:R2,getOwnPropertyDescriptor:O2}=Object,{freeze:bt,seal:Vt,create:N2}=Object,{apply:D0,construct:A0}=typeof Reflect<"u"&&Reflect;D0||(D0=function(e,t,n){return e.apply(t,n)});bt||(bt=function(e){return e});Vt||(Vt=function(e){return e});A0||(A0=function(e,t){return new e(...t)});var I2=Nt(Array.prototype.forEach),s4=Nt(Array.prototype.pop),ru=Nt(Array.prototype.push),Zu=Nt(String.prototype.toLowerCase),C0=Nt(String.prototype.toString),j2=Nt(String.prototype.match),Gt=Nt(String.prototype.replace),z2=Nt(String.prototype.indexOf),H2=Nt(String.prototype.trim),Pt=Nt(RegExp.prototype.test),ou=U2(TypeError);function Nt(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),u=1;u/gm),G2=Vt(/\${[\w\W]*}/gm),V2=Vt(/^data-[\-\w.\u00B7-\uFFFF]/),J2=Vt(/^aria-[\-\w]+$/),f4=Vt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Y2=Vt(/^(?:\w+script|data):/i),X2=Vt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),h4=Vt(/^html$/i),g4=Object.freeze({__proto__:null,MUSTACHE_EXPR:$2,ERB_EXPR:K2,TMPLIT_EXPR:G2,DATA_ATTR:V2,ARIA_ATTR:J2,IS_ALLOWED_URI:f4,IS_SCRIPT_OR_DATA:Y2,ATTR_WHITESPACE:X2,DOCTYPE_NAME:h4}),Z2=()=>typeof window>"u"?null:window,Q2=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let u="dompurify"+(n?"#"+n:"");try{return e.createPolicy(u,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return null}};function b4(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Z2(),t=h=>b4(h);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:u}=e,{DocumentFragment:r,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:m,DOMParser:g,trustedTypes:d}=e,f=s.prototype,T=Yu(f,"cloneNode"),y=Yu(f,"nextSibling"),p=Yu(f,"childNodes"),x=Yu(f,"parentNode");if(typeof o=="function"){let h=u.createElement("template");h.content&&h.content.ownerDocument&&(u=h.content.ownerDocument)}let v,k="",{implementation:S,createNodeIterator:A,createDocumentFragment:B,getElementsByTagName:M}=u,{importNode:D}=n,P={};t.isSupported=typeof p4=="function"&&typeof x=="function"&&S&&S.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:z,ERB_EXPR:w,TMPLIT_EXPR:G,DATA_ATTR:de,ARIA_ATTR:q,IS_SCRIPT_OR_DATA:be,ATTR_WHITESPACE:fe}=g4,{IS_ALLOWED_URI:Bt}=g4,Ee=null,wt=pe({},[...l4,...w0,...v0,...k0,...c4]),ye=null,b=pe({},[...d4,...S0,...m4,...Xu]),R=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),K=null,se=null,V=!0,De=!0,Z=!1,Te=!0,X=!1,ae=!1,le=!1,J=!1,I=!1,Q=!1,Le=!1,Ae=!0,ee=!1,He="user-content-",tt=!0,Me=!1,_e={},Be=null,vt=pe({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),xn=null,Ue=pe({},["audio","video","img","source","image","track"]),tn=null,Kt=pe({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),nt="http://www.w3.org/1998/Math/MathML",Lt="http://www.w3.org/2000/svg",F="http://www.w3.org/1999/xhtml",Y=F,we=!1,ge=null,he=pe({},[nt,Lt,F],C0),Ne,ot=["application/xhtml+xml","text/html"],xe="text/html",ve,Ft=null,Ig=u.createElement("form"),Zs=function(h){return h instanceof RegExp||h instanceof Function},n0=function(h){if(!(Ft&&Ft===h)){if((!h||typeof h!="object")&&(h={}),h=ma(h),Ne=ot.indexOf(h.PARSER_MEDIA_TYPE)===-1?Ne=xe:Ne=h.PARSER_MEDIA_TYPE,ve=Ne==="application/xhtml+xml"?C0:Zu,Ee="ALLOWED_TAGS"in h?pe({},h.ALLOWED_TAGS,ve):wt,ye="ALLOWED_ATTR"in h?pe({},h.ALLOWED_ATTR,ve):b,ge="ALLOWED_NAMESPACES"in h?pe({},h.ALLOWED_NAMESPACES,C0):he,tn="ADD_URI_SAFE_ATTR"in h?pe(ma(Kt),h.ADD_URI_SAFE_ATTR,ve):Kt,xn="ADD_DATA_URI_TAGS"in h?pe(ma(Ue),h.ADD_DATA_URI_TAGS,ve):Ue,Be="FORBID_CONTENTS"in h?pe({},h.FORBID_CONTENTS,ve):vt,K="FORBID_TAGS"in h?pe({},h.FORBID_TAGS,ve):{},se="FORBID_ATTR"in h?pe({},h.FORBID_ATTR,ve):{},_e="USE_PROFILES"in h?h.USE_PROFILES:!1,V=h.ALLOW_ARIA_ATTR!==!1,De=h.ALLOW_DATA_ATTR!==!1,Z=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Te=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,X=h.SAFE_FOR_TEMPLATES||!1,ae=h.WHOLE_DOCUMENT||!1,I=h.RETURN_DOM||!1,Q=h.RETURN_DOM_FRAGMENT||!1,Le=h.RETURN_TRUSTED_TYPE||!1,J=h.FORCE_BODY||!1,Ae=h.SANITIZE_DOM!==!1,ee=h.SANITIZE_NAMED_PROPS||!1,tt=h.KEEP_CONTENT!==!1,Me=h.IN_PLACE||!1,Bt=h.ALLOWED_URI_REGEXP||f4,Y=h.NAMESPACE||F,R=h.CUSTOM_ELEMENT_HANDLING||{},h.CUSTOM_ELEMENT_HANDLING&&Zs(h.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(R.tagNameCheck=h.CUSTOM_ELEMENT_HANDLING.tagNameCheck),h.CUSTOM_ELEMENT_HANDLING&&Zs(h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(R.attributeNameCheck=h.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(R.allowCustomizedBuiltInElements=h.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),X&&(De=!1),Q&&(I=!0),_e&&(Ee=pe({},[...c4]),ye=[],_e.html===!0&&(pe(Ee,l4),pe(ye,d4)),_e.svg===!0&&(pe(Ee,w0),pe(ye,S0),pe(ye,Xu)),_e.svgFilters===!0&&(pe(Ee,v0),pe(ye,S0),pe(ye,Xu)),_e.mathMl===!0&&(pe(Ee,k0),pe(ye,m4),pe(ye,Xu))),h.ADD_TAGS&&(Ee===wt&&(Ee=ma(Ee)),pe(Ee,h.ADD_TAGS,ve)),h.ADD_ATTR&&(ye===b&&(ye=ma(ye)),pe(ye,h.ADD_ATTR,ve)),h.ADD_URI_SAFE_ATTR&&pe(tn,h.ADD_URI_SAFE_ATTR,ve),h.FORBID_CONTENTS&&(Be===vt&&(Be=ma(Be)),pe(Be,h.FORBID_CONTENTS,ve)),tt&&(Ee["#text"]=!0),ae&&pe(Ee,["html","head","body"]),Ee.table&&(pe(Ee,["tbody"]),delete K.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw ou('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw ou('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');v=h.TRUSTED_TYPES_POLICY,k=v.createHTML("")}else v===void 0&&(v=Q2(d,a)),v!==null&&typeof k=="string"&&(k=v.createHTML(""));bt&&bt(h),Ft=h}},Qs=pe({},["mi","mo","mn","ms","mtext"]),el=pe({},["foreignobject","desc","title","annotation-xml"]),jg=pe({},["title","style","font","a","script"]),Nu=pe({},w0);pe(Nu,v0),pe(Nu,W2);let a0=pe({},k0);pe(a0,q2);let zg=function(h){let H=x(h);(!H||!H.tagName)&&(H={namespaceURI:Y,tagName:"template"});let _=Zu(h.tagName),ke=Zu(H.tagName);return ge[h.namespaceURI]?h.namespaceURI===Lt?H.namespaceURI===F?_==="svg":H.namespaceURI===nt?_==="svg"&&(ke==="annotation-xml"||Qs[ke]):!!Nu[_]:h.namespaceURI===nt?H.namespaceURI===F?_==="math":H.namespaceURI===Lt?_==="math"&&el[ke]:!!a0[_]:h.namespaceURI===F?H.namespaceURI===Lt&&!el[ke]||H.namespaceURI===nt&&!Qs[ke]?!1:!a0[_]&&(jg[_]||!Nu[_]):!!(Ne==="application/xhtml+xml"&&ge[h.namespaceURI]):!1},sa=function(h){ru(t.removed,{element:h});try{h.parentNode.removeChild(h)}catch{h.remove()}},u0=function(h,H){try{ru(t.removed,{attribute:H.getAttributeNode(h),from:H})}catch{ru(t.removed,{attribute:null,from:H})}if(H.removeAttribute(h),h==="is"&&!ye[h])if(I||Q)try{sa(H)}catch{}else try{H.setAttribute(h,"")}catch{}},tl=function(h){let H,_;if(J)h=""+h;else{let ft=j2(h,/^[\r\n\t ]+/);_=ft&&ft[0]}Ne==="application/xhtml+xml"&&Y===F&&(h=''+h+"");let ke=v?v.createHTML(h):h;if(Y===F)try{H=new g().parseFromString(ke,Ne)}catch{}if(!H||!H.documentElement){H=S.createDocument(Y,"template",null);try{H.documentElement.innerHTML=we?k:ke}catch{}}let Xe=H.body||H.documentElement;return h&&_&&Xe.insertBefore(u.createTextNode(_),Xe.childNodes[0]||null),Y===F?M.call(H,ae?"html":"body")[0]:ae?H.documentElement:Xe},nl=function(h){return A.call(h.ownerDocument||h,h,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Hg=function(h){return h instanceof m&&(typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||!(h.attributes instanceof c)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function")},Iu=function(h){return typeof i=="object"?h instanceof i:h&&typeof h=="object"&&typeof h.nodeType=="number"&&typeof h.nodeName=="string"},mn=function(h,H,_){P[h]&&I2(P[h],ke=>{ke.call(t,H,_,Ft)})},al=function(h){let H;if(mn("beforeSanitizeElements",h,null),Hg(h))return sa(h),!0;let _=ve(h.nodeName);if(mn("uponSanitizeElement",h,{tagName:_,allowedTags:Ee}),h.hasChildNodes()&&!Iu(h.firstElementChild)&&(!Iu(h.content)||!Iu(h.content.firstElementChild))&&Pt(/<[/\w]/g,h.innerHTML)&&Pt(/<[/\w]/g,h.textContent))return sa(h),!0;if(!Ee[_]||K[_]){if(!K[_]&&rl(_)&&(R.tagNameCheck instanceof RegExp&&Pt(R.tagNameCheck,_)||R.tagNameCheck instanceof Function&&R.tagNameCheck(_)))return!1;if(tt&&!Be[_]){let ke=x(h)||h.parentNode,Xe=p(h)||h.childNodes;if(Xe&&ke){let ft=Xe.length;for(let kt=ft-1;kt>=0;--kt)ke.insertBefore(T(Xe[kt],!0),y(h))}}return sa(h),!0}return h instanceof s&&!zg(h)||(_==="noscript"||_==="noembed")&&Pt(/<\/no(script|embed)/i,h.innerHTML)?(sa(h),!0):(X&&h.nodeType===3&&(H=h.textContent,H=Gt(H,z," "),H=Gt(H,w," "),H=Gt(H,G," "),h.textContent!==H&&(ru(t.removed,{element:h.cloneNode()}),h.textContent=H)),mn("afterSanitizeElements",h,null),!1)},ul=function(h,H,_){if(Ae&&(H==="id"||H==="name")&&(_ in u||_ in Ig))return!1;if(!(De&&!se[H]&&Pt(de,H))&&!(V&&Pt(q,H))){if(!ye[H]||se[H]){if(!(rl(h)&&(R.tagNameCheck instanceof RegExp&&Pt(R.tagNameCheck,h)||R.tagNameCheck instanceof Function&&R.tagNameCheck(h))&&(R.attributeNameCheck instanceof RegExp&&Pt(R.attributeNameCheck,H)||R.attributeNameCheck instanceof Function&&R.attributeNameCheck(H))||H==="is"&&R.allowCustomizedBuiltInElements&&(R.tagNameCheck instanceof RegExp&&Pt(R.tagNameCheck,_)||R.tagNameCheck instanceof Function&&R.tagNameCheck(_))))return!1}else if(!tn[H]&&!Pt(Bt,Gt(_,fe,""))&&!((H==="src"||H==="xlink:href"||H==="href")&&h!=="script"&&z2(_,"data:")===0&&xn[h])&&!(Z&&!Pt(be,Gt(_,fe,"")))&&_)return!1}return!0},rl=function(h){return h.indexOf("-")>0},ol=function(h){let H,_,ke,Xe;mn("beforeSanitizeAttributes",h,null);let{attributes:ft}=h;if(!ft)return;let kt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye};for(Xe=ft.length;Xe--;){H=ft[Xe];let{name:at,namespaceURI:la}=H;if(_=at==="value"?H.value:H2(H.value),ke=ve(at),kt.attrName=ke,kt.attrValue=_,kt.keepAttr=!0,kt.forceKeepAttr=void 0,mn("uponSanitizeAttribute",h,kt),_=kt.attrValue,kt.forceKeepAttr||(u0(at,h),!kt.keepAttr))continue;if(!Te&&Pt(/\/>/i,_)){u0(at,h);continue}X&&(_=Gt(_,z," "),_=Gt(_,w," "),_=Gt(_,G," "));let il=ve(h.nodeName);if(ul(il,ke,_)){if(ee&&(ke==="id"||ke==="name")&&(u0(at,h),_=He+_),v&&typeof d=="object"&&typeof d.getAttributeType=="function"&&!la)switch(d.getAttributeType(il,ke)){case"TrustedHTML":{_=v.createHTML(_);break}case"TrustedScriptURL":{_=v.createScriptURL(_);break}}try{la?h.setAttributeNS(la,at,_):h.setAttribute(at,_),s4(t.removed)}catch{}}}mn("afterSanitizeAttributes",h,null)},Ug=function h(H){let _,ke=nl(H);for(mn("beforeSanitizeShadowDOM",H,null);_=ke.nextNode();)mn("uponSanitizeShadowNode",_,null),!al(_)&&(_.content instanceof r&&h(_.content),ol(_));mn("afterSanitizeShadowDOM",H,null)};return t.sanitize=function(h){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},_,ke,Xe,ft;if(we=!h,we&&(h=""),typeof h!="string"&&!Iu(h))if(typeof h.toString=="function"){if(h=h.toString(),typeof h!="string")throw ou("dirty is not a string, aborting")}else throw ou("toString is not a function");if(!t.isSupported)return h;if(le||n0(H),t.removed=[],typeof h=="string"&&(Me=!1),Me){if(h.nodeName){let la=ve(h.nodeName);if(!Ee[la]||K[la])throw ou("root node is forbidden and cannot be sanitized in-place")}}else if(h instanceof i)_=tl(""),ke=_.ownerDocument.importNode(h,!0),ke.nodeType===1&&ke.nodeName==="BODY"||ke.nodeName==="HTML"?_=ke:_.appendChild(ke);else{if(!I&&!X&&!ae&&h.indexOf("<")===-1)return v&&Le?v.createHTML(h):h;if(_=tl(h),!_)return I?null:Le?k:""}_&&J&&sa(_.firstChild);let kt=nl(Me?h:_);for(;Xe=kt.nextNode();)al(Xe)||(Xe.content instanceof r&&Ug(Xe.content),ol(Xe));if(Me)return h;if(I){if(Q)for(ft=B.call(_.ownerDocument);_.firstChild;)ft.appendChild(_.firstChild);else ft=_;return(ye.shadowroot||ye.shadowrootmod)&&(ft=D.call(n,ft,!0)),ft}let at=ae?_.outerHTML:_.innerHTML;return ae&&Ee["!doctype"]&&_.ownerDocument&&_.ownerDocument.doctype&&_.ownerDocument.doctype.name&&Pt(h4,_.ownerDocument.doctype.name)&&(at=" +`+at),X&&(at=Gt(at,z," "),at=Gt(at,w," "),at=Gt(at,G," ")),v&&Le?v.createHTML(at):at},t.setConfig=function(h){n0(h),le=!0},t.clearConfig=function(){Ft=null,le=!1},t.isValidAttribute=function(h,H,_){Ft||n0({});let ke=ve(h),Xe=ve(H);return ul(ke,Xe,_)},t.addHook=function(h,H){typeof H=="function"&&(P[h]=P[h]||[],ru(P[h],H))},t.removeHook=function(h){if(P[h])return s4(P[h])},t.removeHooks=function(h){P[h]&&(P[h]=[])},t.removeAllHooks=function(){P={}},t}var Ce=b4();var sy=qu.alert;var E4={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var y4={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var T4={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var ah=[{code:"zh-CN",messages:E4},{code:"zh-TW",messages:y4},{code:"en",messages:T4}],gn="immersiveTranslateDeeplGlobalState",Qu="immersiveTranslateBingGlobalState",It={};for(let e of ah)It[e.code]=e.messages;var $n="Immersive Translate",N="immersive-translate";var oe="immersiveTranslate";var Ay=oe+"GoogleAccessToken",Ly=oe+"AuthFlow";var Fy=oe+"AuthState",er=oe+"IframeMessage",Py=oe+"WaitForRateLimit",tr=oe+"DocumentMessageAsk",Et=oe+"DocumentMessageTellThirdParty",C4=oe+"DocumentMessageThirdPartyTell",nr=oe+"DocumentMessageHandler",uh=`${oe}Container`,w4=`${oe}SpecifiedContainer`,vn="buildinConfig",iu="localConfig",L0="openOptionsPage",F0="openAboutPage";var P0="openEbookViewer",M0="openEbookBuilder";var ar=`${oe}PageTranslatedStatus`,My=`${oe}PageUrlChanged`,kn=`${oe}ReceiveCommand`,v4=oe+"LastUseMouseHoverTime",k4=oe+"LastUseInputTime",pn=oe+"LastUseManualTranslatePageTime",_y=`${oe}PopupReceiveMessage`,rh="immersivetranslate.com",oh="config.immersivetranslate.com",By=`https://${rh}/`,su=`https://${oh}/default_config.json`,Ry=`${oe}Mark`,lu="immersiveTranslateEffect",St=`${oe}Root`,Oy=`data-${N}-effect`,an=`data-${N}-translation-element-mark`,S4=`${oe}TranslationElementMark`,Ny=`${oe}TranslatedMark`,Iy=`${oe}ParagraphId`,D4=`${oe}LoadingId`,_0=`data-${N}-loading-id`,A4=`${oe}ErrorId`,ur=`data-${N}-error-id`,ih=`${oe}AtomicBlockMark`,L4=`${oe}ExcludeMark`,jy=`data-${N}-exclude-mark`,sh=`${oe}StayOriginalMark`,zy=`${oe}PreWhitespaceMark`,rr=`${oe}InlineMark`,F4=`${oe}BlockMark`,Hy=`${oe}Left`,Uy=`${oe}Right`,Wy=`${oe}Width`,qy=`${oe}Height`,$y=`${oe}Top`,Ky=`${oe}FontSize`,cu="lastRunTime",Gy=`${oe}GlobalStyleMark`,or=["@","#"],ir=" --- ",P4=` +`,jt=`${N}-target-wrapper`,Vy=`${N}-pdf-target-container`,M4=`${N}-target-inner`,Jy=`${N}-source-wrapper`,B0=`${N}-target-translation-block-wrapper`,Yy=`${N}-root-translation-theme`,ga=`${oe}RootTranslationTheme`,_4=`${N}-target-translation-vertical-block-wrapper`,B4=`${N}-target-translation-pdf-block-wrapper`,R4=`${N}-target-translation-pre-whitespace`,R0=`${N}-target-translation-inline-wrapper`;var O4={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},zt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],N4={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},I4={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},j4={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var z4=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"];var sr="zh-CN";var x4=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],fn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...b4,{type:"password",name:"apikey",required:!0}],props:b4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},R0={type:oe+"ChildFrameToRootFrameIdentifier"},lr=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var N4='';var pa=console,O0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=Ot.green;a>1e4?u=Ot.red:a>1e3&&(u=Ot.yellow),pa.debug(Ot.dim(Kn+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},du=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pa.log(Ot.dim(Kn+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pa.log(Ot.green(Kn+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pa.warn(Ot.yellow(Kn+" WARN:"),...t)}error(...t){this.#e<=3&&pa.error(Ot.red(Kn+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pa.error(Ot.red(Kn+" FATAL:"),...t)}timing(){return this.level===0?new O0:{reset:()=>{},stop:()=>{}}}},x=new du;var N0=/iPhone/i,I4=/iPod/i,j4=/iPad/i,z4=/\biOS-universal(?:.+)Mac\b/i,I0=/\bAndroid(?:.+)Mobile\b/i,H4=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,cr=/Silk/i,hn=/Windows Phone/i,U4=/\bWindows(?:.+)ARM\b/i,W4=/BlackBerry/i,q4=/BB10/i,K4=/Opera Mini/i,$4=/\b(CriOS|Chrome)(?:.+)Mobile/i,G4=/Mobile(?:.+)Firefox\b/i,V4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function ah(e){return t=>t.test(e)}function ha(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=ah(n),r={apple:{phone:u(N0)&&!u(hn),ipod:u(I4),tablet:!u(N0)&&(u(j4)||V4(t))&&!u(hn),universal:u(z4),device:(u(N0)||u(I4)||u(j4)||u(z4)||V4(t))&&!u(hn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(cr),device:u(fa)||u(cr)},android:{phone:!u(hn)&&u(fa)||!u(hn)&&u(I0),tablet:!u(hn)&&!u(fa)&&!u(I0)&&(u(cr)||u(H4)),device:!u(hn)&&(u(fa)||u(cr)||u(I0)||u(H4))||u(/\bokhttp\b/i)},windows:{phone:u(hn),tablet:u(U4),device:u(hn)||u(U4)},other:{blackberry:u(W4),blackberry10:u(q4),opera:u(K4),firefox:u(G4),chrome:u($4),device:u(W4)||u(q4)||u(K4)||u(G4)||u($4)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var j0="DENO",dr="CHROME",mr="FIREFOX";function J4(e){let t=dr;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=mr:/deno/i.test(n)&&(t=j0)}catch{}return e===dr&&t===dr||e===mr&&t===mr||e===j0&&t===j0}function Y4(){return J4(dr)}function X4(){return typeof Deno<"u"}function gr(){return J4(mr)}function Z4(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function mu(){return!!globalThis.matchMedia("(pointer:fine)").matches}var Q4={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},ec={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:Q4,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:Q4,query:()=>{},sendMessage:()=>{}}};var U;X4()?U=ec:U=globalThis.immersiveTranslateBrowserAPI;function $n(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=zt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":zt[u]}else return"auto";else return zt[a]}var pr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...x4,{type:"password",name:"apikey",required:!0}],props:x4},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},O0={type:oe+"ChildFrameToRootFrameIdentifier"},lr=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"];var H4='';var pa=console,N0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),u=Ot.green;a>1e4?u=Ot.red:a>1e3&&(u=Ot.yellow),pa.debug(Ot.dim($n+" TIMING:"),t,"in",u(a+"ms")),this.#e=n}},du=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&pa.log(Ot.dim($n+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&pa.log(Ot.green($n+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&pa.warn(Ot.yellow($n+" WARN:"),...t)}error(...t){this.#e<=3&&pa.error(Ot.red($n+" ERROR:"),...t)}fatal(...t){this.#e<=4&&pa.error(Ot.red($n+" FATAL:"),...t)}timing(){return this.level===0?new N0:{reset:()=>{},stop:()=>{}}}},C=new du;var I0=/iPhone/i,U4=/iPod/i,W4=/iPad/i,q4=/\biOS-universal(?:.+)Mac\b/i,j0=/\bAndroid(?:.+)Mobile\b/i,$4=/Android/i,fa=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,cr=/Silk/i,hn=/Windows Phone/i,K4=/\bWindows(?:.+)ARM\b/i,G4=/BlackBerry/i,V4=/BB10/i,J4=/Opera Mini/i,Y4=/\b(CriOS|Chrome)(?:.+)Mobile/i,X4=/Mobile(?:.+)Firefox\b/i,Z4=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function lh(e){return t=>t.test(e)}function ha(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let u=lh(n),r={apple:{phone:u(I0)&&!u(hn),ipod:u(U4),tablet:!u(I0)&&(u(W4)||Z4(t))&&!u(hn),universal:u(q4),device:(u(I0)||u(U4)||u(W4)||u(q4)||Z4(t))&&!u(hn)},amazon:{phone:u(fa),tablet:!u(fa)&&u(cr),device:u(fa)||u(cr)},android:{phone:!u(hn)&&u(fa)||!u(hn)&&u(j0),tablet:!u(hn)&&!u(fa)&&!u(j0)&&(u(cr)||u($4)),device:!u(hn)&&(u(fa)||u(cr)||u(j0)||u($4))||u(/\bokhttp\b/i)},windows:{phone:u(hn),tablet:u(K4),device:u(hn)||u(K4)},other:{blackberry:u(G4),blackberry10:u(V4),opera:u(J4),firefox:u(X4),chrome:u(Y4),device:u(G4)||u(V4)||u(J4)||u(X4)||u(Y4)},any:!1,phone:!1,tablet:!1};return r.any=r.apple.device||r.android.device||r.windows.device||r.other.device,r.phone=r.apple.phone||r.android.phone||r.windows.phone,r.tablet=r.apple.tablet||r.android.tablet||r.windows.tablet,r}var z0="DENO",dr="CHROME",mr="FIREFOX";function Q4(e){let t=dr;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=mr:/deno/i.test(n)&&(t=z0)}catch{}return e===dr&&t===dr||e===mr&&t===mr||e===z0&&t===z0}function ec(){return Q4(dr)}function tc(){return typeof Deno<"u"}function gr(){return Q4(mr)}function nc(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function mu(){return!!globalThis.matchMedia("(pointer:fine)").matches}var ac={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},uc={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:ac,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:ac,query:()=>{},sendMessage:()=>{}}};var U;tc()?U=uc:U=globalThis.immersiveTranslateBrowserAPI;function Kn(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=zt.map(u=>u.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let u=n.indexOf(t);return u===-1?"auto":zt[u]}else return"auto";else return zt[a]}var pr={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4160,70 +4168,81 @@ body { ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};function z0(e){return Array.isArray(e)?e:e?[e]:[]}function H0(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Sn(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function fr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let s=z0(i);u[o]=Array.from(new Set([...u[o],...s]))}else u[o]=z0(i)}),u}function rh(){if(ce.PROD==="1")return{};let e={};if(ce.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&ce.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:ce.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:ce.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&ce.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:ce.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:ce.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:ce.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:ce.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&ce.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:ce.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:ce.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&ce.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:ce.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:ce.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:ce.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(ce.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=ce.DEEPL_PROXY_ENDPOINT),ce.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=ce.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),ce.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:ce.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return ce.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),ce.MOCK==="1"&&(e.translationService="mock"),ce.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=ce.IMMERSIVE_TRANSLATE_SERVICE),e}async function gu(){let e=await U.storage.local.get(iu);if(e[iu]){let t=e[iu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await pu(r),r}else return{}}async function pu(e){await U.storage.local.set({[iu]:e})}async function tc(e){await U.storage.local.set({[vn]:e})}async function nc(){let e=await U.storage.local.get(vn),n={...uc(),...pr,buildinConfigUpdatedAt:ce.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function Gn(){let e=await U.storage.local.get(vn),t={...pr,buildinConfigUpdatedAt:ce.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let T=new Date(p.buildinConfigUpdatedAt),v=new Date(t.buildinConfigUpdatedAt);T>v&&(t=p)}}let n={};if(!te()&&U.commands&&U.commands.getAll){let p=await U.commands.getAll();for(let T of p)T.name&&T.shortcut&&(n[T.name]=T.shortcut)}let a=uc(),u=rh(),r=await U0(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await gu(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(T=>new Date(T.expiredAt)>s);if(p.length>0){let T=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],v=Array.isArray(T)?T:[T],k=Array.from(new Set(v.concat(p.map(S=>S.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:k}}}let l=Object.assign({},o,u,r);if(!l.interfaceLanguage){let p=await oh();l.interfaceLanguage=p}let c=l.interfaceLanguage==="en",m=l.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,d=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!m&&!g&&d?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),C=Object.keys(f),y=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of C){let T=p;if(T==="generalRule")typeof l[T]=="object"&&(f[T]=fr(a[T],l[T]));else if(T==="translationServices"){let v=l[T]||{},k=t[T]||{},S=Object.keys(k),A=Object.keys(v),B=[...new Set([...S,...A])],M={};for(let D of B)M[D]={...k[D],...v[D]};f[T]=M}else if(typeof l[T]!="string"&&typeof l[T]!="boolean"&&typeof l[T]!="number"&&y.includes(T))l[T]&&(f[T]=Object.assign(f[T],l[T])),T==="shortcuts"&&(te()||Rt()?f[T]={...f[T],...n}:f[T]={...n});else if(T==="rules"){if(Array.isArray(l[T])&&(f[T]=[...l[T],...f[T]]),ce.PROD==="0"&&ce.DEV_RULES){let v=JSON.parse(ce.DEV_RULES);f[T]=[...v,...f[T]]}}else l[T]!==void 0&&(f[T]=l[T])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function U0(){return(await U.storage.sync.get("userConfig")||{}).userConfig||{}}async function ac(e){await U.storage.sync.set({userConfig:e})}var oh=async()=>{let e=["zh-CN"];try{e=await U.i18n.getAcceptLanguages()}catch(a){x.warn("get browser language error:",a)}let n=e.map(a=>$n(a)).find(a=>It[a]);return n||"en"},uc=()=>{let e={...pr,buildinConfigUpdatedAt:ce.BUILD_TIME};return{...e,targetLanguage:sr,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var Ze=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function oc(e){let t;if(e&&e.retry&&e.retry>0)try{t=await c0(rc.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await rc(e);return t}async function rc(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await r(t,a)}catch(s){x.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of ih(i.body)){let m=new TextDecoder().decode(c);s+=m;let g;for(;(g=s.indexOf(` -`))>=0;){let d=s.slice(0,g).trim();if(s=s.slice(g+1),d.startsWith("event:")||d==="")continue;let f="";if(d.startsWith("data:")&&(f=d.slice(5).trim()),f==="[DONE]")break;let C;try{C=JSON.parse(f??"")}catch(y){x.debug("json error",y);continue}l=C}}return l}}else{let s;try{s=await i.text()}catch(m){x.error("parse response failed",m)}s&&x.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new Ze("fetchError",c,s)}}async function*ih(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Dn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function sh(e,t){return e<>>32-t}function br(e,t,n,a,u,r){return Dn(sh(Dn(Dn(t,e),Dn(a,r)),u),n)}function ct(e,t,n,a,u,r,o){return br(t&n|~t&a,e,t,u,r,o)}function dt(e,t,n,a,u,r,o){return br(t&a|n&~a,e,t,u,r,o)}function mt(e,t,n,a,u,r,o){return br(t^n^a,e,t,u,r,o)}function gt(e,t,n,a,u,r,o){return br(n^(t|~a),e,t,u,r,o)}function hr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function W0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=hr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=hr(u.concat(W0(t)),512+t.length*8),ic(hr(r.concat(o),512+128))}function sc(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function q0(e){return unescape(encodeURIComponent(e))}function lc(e){return lh(q0(e))}function dh(e){return sc(lc(e))}function cc(e,t){return ch(q0(e),q0(t))}function mh(e,t){return sc(cc(e,t))}function An(e,t,n){return t?n?cc(t,e):mh(t,e):n?lc(e):dh(e)}function dc(e,t,n){let a=gh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((s,l)=>s+l.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function gh(e,t){let n=[],a=[];for(let u=0;u0?f"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};function H0(e){return Array.isArray(e)?e:e?[e]:[]}function U0(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Sn(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function fr(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let u={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))u[o]=i;else if(o.startsWith("additional")){let s=H0(i);u[o]=Array.from(new Set([...u[o],...s]))}else u[o]=H0(i)}),u}function dh(){if(ce.PROD==="1")return{};let e={};if(ce.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&ce.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:ce.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:ce.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&ce.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:ce.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:ce.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:ce.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:ce.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&ce.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:ce.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:ce.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&ce.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:ce.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:ce.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(ce.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:ce.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(ce.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=ce.DEEPL_PROXY_ENDPOINT),ce.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=ce.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),ce.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:ce.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return ce.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),ce.MOCK==="1"&&(e.translationService="mock"),ce.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=ce.IMMERSIVE_TRANSLATE_SERVICE),e}async function gu(){let e=await U.storage.local.get(iu);if(e[iu]){let t=e[iu],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),u=!1;a.length!==n.length&&(n=a,u=!0);let r={...t,tempTranslationUrlMatches:[...n]};return u&&await pu(r),r}else return{}}async function pu(e){await U.storage.local.set({[iu]:e})}async function rc(e){await U.storage.local.set({[vn]:e})}async function oc(){let e=await U.storage.local.get(vn),n={...sc(),...pr,buildinConfigUpdatedAt:ce.BUILD_TIME};if(e[vn]){let a=e[vn];if(a&&a.buildinConfigUpdatedAt){let u=new Date(a.buildinConfigUpdatedAt),r=new Date(n.buildinConfigUpdatedAt);u>r&&(n=a)}}return n}async function Gn(){let e=await U.storage.local.get(vn),t={...pr,buildinConfigUpdatedAt:ce.BUILD_TIME};if(e[vn]){let p=e[vn];if(p&&p.buildinConfigUpdatedAt){let x=new Date(p.buildinConfigUpdatedAt),v=new Date(t.buildinConfigUpdatedAt);x>v&&(t=p)}}let n={};if(!te()&&U.commands&&U.commands.getAll){let p=await U.commands.getAll();for(let x of p)x.name&&x.shortcut&&(n[x.name]=x.shortcut)}let a=sc(),u=dh(),r=await W0(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await gu(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let p=i.tempTranslationUrlMatches.filter(x=>new Date(x.expiredAt)>s);if(p.length>0){let x=r.translationUrlPattern?r.translationUrlPattern?.matches||[]:[],v=Array.isArray(x)?x:[x],k=Array.from(new Set(v.concat(p.map(S=>S.match))));r.translationUrlPattern={...r.translationUrlPattern,matches:k}}}let l=Object.assign({},o,u,r);if(!l.interfaceLanguage){let p=await mh();l.interfaceLanguage=p}let c=l.interfaceLanguage==="en",m=l.targetLanguage==="en",g=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,d=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!m&&!g&&d?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),T=Object.keys(f),y=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let p of T){let x=p;if(x==="generalRule")typeof l[x]=="object"&&(f[x]=fr(a[x],l[x]));else if(x==="translationServices"){let v=l[x]||{},k=t[x]||{},S=Object.keys(k),A=Object.keys(v),B=[...new Set([...S,...A])],M={};for(let D of B)M[D]={...k[D],...v[D]};f[x]=M}else if(typeof l[x]!="string"&&typeof l[x]!="boolean"&&typeof l[x]!="number"&&y.includes(x))l[x]&&(f[x]=Object.assign(f[x],l[x])),x==="shortcuts"&&(te()||Rt()?f[x]={...f[x],...n}:f[x]={...n});else if(x==="rules"){if(Array.isArray(l[x])&&(f[x]=[...l[x],...f[x]]),ce.PROD==="0"&&ce.DEV_RULES){let v=JSON.parse(ce.DEV_RULES);f[x]=[...v,...f[x]]}}else l[x]!==void 0&&(f[x]=l[x])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function W0(){return(await U.storage.sync.get("userConfig")||{}).userConfig||{}}async function ic(e){await U.storage.sync.set({userConfig:e})}var mh=async()=>{let e=["zh-CN"];try{e=await U.i18n.getAcceptLanguages()}catch(a){C.warn("get browser language error:",a)}let n=e.map(a=>Kn(a)).find(a=>It[a]);return n||"en"},sc=()=>{let e={...pr,buildinConfigUpdatedAt:ce.BUILD_TIME};return{...e,targetLanguage:sr,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};var Ze=class extends Error{constructor(n,a,u){super(a);this.name=n,u&&(this.details=u)}};async function cc(e){let t;if(e&&e.retry&&e.retry>0)try{t=await d0(lc.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await lc(e);return t}async function lc(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let u=!0;e.fetchPolyfill&&(u=!1);let r=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),u){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await r(t,a)}catch(s){C.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of gh(i.body)){let m=new TextDecoder().decode(c);s+=m;let g;for(;(g=s.indexOf(` +`))>=0;){let d=s.slice(0,g).trim();if(s=s.slice(g+1),d.startsWith("event:")||d==="")continue;let f="";if(d.startsWith("data:")&&(f=d.slice(5).trim()),f==="[DONE]")break;let T;try{T=JSON.parse(f??"")}catch(y){C.debug("json error",y);continue}l=T}}return l}}else{let s;try{s=await i.text()}catch(m){C.error("parse response failed",m)}s&&C.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new Ze("fetchError",c,s)}}async function*gh(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function Dn(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function ph(e,t){return e<>>32-t}function br(e,t,n,a,u,r){return Dn(ph(Dn(Dn(t,e),Dn(a,r)),u),n)}function ct(e,t,n,a,u,r,o){return br(t&n|~t&a,e,t,u,r,o)}function dt(e,t,n,a,u,r,o){return br(t&a|n&~a,e,t,u,r,o)}function mt(e,t,n,a,u,r,o){return br(t^n^a,e,t,u,r,o)}function gt(e,t,n,a,u,r,o){return br(n^(t|~a),e,t,u,r,o)}function hr(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,u,r,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function q0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=hr(a,e.length*8)),n=0;n<16;n+=1)u[n]=a[n]^909522486,r[n]=a[n]^1549556828;return o=hr(u.concat(q0(t)),512+t.length*8),dc(hr(r.concat(o),512+128))}function mc(e){var t="0123456789abcdef",n="",a,u;for(u=0;u>>4&15)+t.charAt(a&15);return n}function $0(e){return unescape(encodeURIComponent(e))}function gc(e){return fh($0(e))}function bh(e){return mc(gc(e))}function pc(e,t){return hh($0(e),$0(t))}function Eh(e,t){return mc(pc(e,t))}function An(e,t,n){return t?n?pc(t,e):Eh(t,e):n?gc(e):bh(e)}function fc(e,t,n){let a=yh(e,t),u=[],r={from:e[0].from,fromByClient:e[0].fromByClient,to:e[0].to,tempSentences:[],url:e[0].url};for(let o of a)(r.tempSentences.reduce((s,l)=>s+l.text.length,0)+o.text.length>t||r.tempSentences.length>=n)&&(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(r.from!==o.from||r.to!==o.to)&&(r.tempSentences.length>0?(u.push(r),r={fromByClient:r.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(r.from=o.from,r.to=o.to)),r.tempSentences.push(o);return r.tempSentences.length>0&&u.push(r),u}function yh(e,t){let n=[],a=[];for(let u=0;u0?ft){let p=[];K0(C,t,p);for(let T=0;T0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&K0(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let s=r.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){u=!1;break}}r.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var mc=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let s=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,m=!!s.beta;return i===e.translationService||l&&u||c&&(n||u)||m&&(a||n||u)?!0:!c&&!m&&!l}).map(i=>$0(i,e))};function Mt(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var ba=[];async function Er(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function gc(e){let t=`${I}-${e.service}@${e.from}->${e.to}`;return await fh(t,e)}async function pc(e){let t=An(e.originalText),n=`${I}-${e.service}@${e.from}->${e.to}`;return await ph(n,t)}async function ph(e,t){let n=await Er(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),u()}})}async function fh(e,t){let n=await Er(e);return(await bh()).includes(e)||await hh(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=s=>{n.close(),u(!0)},i.onerror=s=>{n.close(),u(!1)}})}async function hh(e){let t="cache_list",n=await Er(I+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),ba.push(e)},u.onerror=r=>{n.close()}}async function bh(){if(ba&&ba.length>0)return ba;let e=await Er(I+"-cacheList","cache_list");return ba=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),ba}function Qe(){try{return globalThis.self!==globalThis.top}catch{return!0}}var G0="Original";function Re(){return G0}function yt(e){G0=e,fc(G0)}var bc="auto",yr="auto",hc="auto";function Tr(e){bc=e}function Ut(e){yr=e}function an(){return yr!=="auto"?yr:hc!=="auto"?hc:bc}function Ea(){return yr}var Ec=oe+"SyncStoreKey_";function V0(e,t){let n=Ec+e;return U.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=Ec+e;return U.storage.sync.set({[n]:t})}var fu=new Map,ya=class{constructor(t,n=!1){this.logger=new du,n&&this.logger.setLevel("debug"),this.fromType=t,fu.has(t)||(fu.set(t,new Map),U.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,s,l,c;u.tab&&u.tab.id&&(s=u.tab.id,o=`${o}:${s}`,l=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let m=Y0(i),{type:g,name:d}=m;if(g!==t)return!1;let f=Y0(o),y=fu.get(g).get(d);if(!y)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:p,sync:T}=y,v={type:t,name:f.name,id:s,url:l,active:c};if(T){try{let k=p(a.payload,v);r({ok:!0,data:k})}catch(k){r({ok:!1,errorName:k.name,errorMessage:k.message,errorDetails:k.details})}return!1}else return p(a.payload,v).then(k=>{r({ok:!0,data:k})}).catch(k=>{r({ok:!1,errorName:k.name,errorMessage:k.message,errorDetails:k.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=fu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new J0(`${r}:${t}`,this.logger);return fu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},J0=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=Y0(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await U.runtime.sendMessage(o);return yc(o,i,this.logger)}catch(i){if(u==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await U.tabs.sendMessage(r,o);return yc(o,i,this.logger)}}};function yc(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Ze(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Ze("noResponse","Unknown error")}function Y0(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ta=async function(e,t){let{method:n,data:a}=e,u=await kc(),r=Date.now();x.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await Z0(),et(pn,r)):n==="translateTheMainPage"?(await Dr(),et(pn,r)):n==="translateToThePageEndImmediately"?(await vc(),et(pn,r)):n==="toggleTranslatePage"?(await vr(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await wc(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await Cc(),et(pn,r)):n==="toggleOnlyTransation"?(await Ar(),et(pn,r)):n==="translatePage"?(await Jt(u),et(pn,r)):n==="toggleTranslationMask"?await Sr():n==="restorePage"?Vn():n==="setCurrentPageLanguageByClient"?Ut(a):n==="retryFailedParagraphs"?kr():n==="switchTranslationMode"&&a&&a.mode&&xc(a.mode)},Eh=function(e,t){let{method:n,data:a}=e;if(x.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Re();if(n==="getCurrentPageLanguage"){let u=an();return X0().catch(r=>{x.warn("detectCurrentPageLanguage failed",r)}),u}},Cr,xr;function Tc(){let e=wr();Qe()||yh(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function wr(){return Cr||(Cr=new ya("content_script",!1).getConnection("main",Ta),Cr)}function yh(){return xr||(xr=new ya("content_script",!1).getConnection("main_sync",Eh,{sync:!0}),xr)}var Th=new Map;function Sc(e){let t=Ch(64),n=new CustomEvent(tr,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{Th.set(t,(r,o)=>{r?u(r):a(o)})})}function Ch(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Mc(e){return te()?pc(e):qe({method:"queryParagraphCache",data:e})}async function _c(e){if(te()){await gc(e);return}return qe({method:"setParagraphCache",data:e})}async function Bc(){if(te())return Promise.resolve();await qe({method:"mockRequest"})}function Fr(e=!1,t=""){return te()?(U.runtime.openOptionsPage(e,t),Promise.resolve()):qe({method:"openOptionsPage"})}function Rc(e=""){return te()||Rt()?Ie().OPTIONS_URL:U.runtime.getURL("options.html")}function Oc(e=""){return U&&U.runtime&&U.runtime.getURL?U.runtime.getURL("options.html"):""}function Pr(e=!1){return te()?(U.extra.openAboutPage(e),Promise.resolve()):qe({method:"openAboutPage"})}function Nc(e=!1){return te()?(U.extra.openSearchEnhancement(e),Promise.resolve()):qe({method:"openSearchEnhancement"})}function Mr(e=!1){return te()?(U.extra.openEbookViewerPage(e),Promise.resolve()):qe({method:"openEbookViewerPage"})}function Ic(e=!1){return te()?Promise.resolve():qe({method:"openHtmlViewerPage"})}function _r(e=!1){return te()?(U.extra.openEbookBuilderPage(e),Promise.resolve()):qe({method:"openEbookBuilderPage"})}function Br(e){Rt()}function Q0(e=!1){return te()?(alert("it's not support in userscript"),Promise.resolve()):qe({method:"openPdfViewerPage"})}function jc(e=!1){return te()?(U.extra.openSubtitleBuilderPage(e),Promise.resolve()):qe({method:"openSubtitleBuilderPage"})}function zc(){return te()?(x.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):qe({method:"autoSyncLatestConfig"})}var Hc=oe+"StoreKey_";function Rr(e,t){let n=Hc+e;return U.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Uc(e,t){let n=Hc+e;return U.storage.local.set({[n]:t})}var Or={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.1",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Fn(){return Or.version}var Wc="G-MKMD9LWFTR";async function Ke(e,t,n){try{let a=Ie();if(a.INSTALL_FROM==="firefox_store")return;let r=te(),o=Qe(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let M=await Rr(s,0),D=Nr(new Date(M)),P=Date.now(),z=Nr(new Date(P));if(D===z)return;await Uc(s,P)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",m=await V0("fakeUserId","");m||(m=await Rr("fakeUserId",""),m&&await et("fakeUserId",m));let g=Fn(),d=new Date,f=await V0("installedAt","");f||(f=await Rr("installedAt",""),f&&await et("installedAt",f)),m?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(m=wh(32),await et("fakeUserId",m)),f||(f=d.toISOString(),await et("installedAt",f));let C=new Date(f),y=Nr(C),p=Nr(d),T=y===p,v=d.getTime()-C.getTime()<7*24*60*60*1e3,k=`https://www.google-analytics.com/mp/collect?measurement_id=${Wc}&api_secret=${c}`;i||(k=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${Wc}&api_secret=${c}`);let S=Ju.parse(window.navigator.userAgent),A=t.map(M=>{let D=M.params||{};S.os&&(D.os_name=S.os.name||"unknown",D.os_version=S.os.version||"unknown",D.os_version_name=S.os.versionName||"unknown"),S.browser&&(D.browser_name=S.browser.name||"unknown",D.browser_version=S.browser.version||"unknown"),S.platform&&(D.platform_type=S.platform.type||"unknown"),S.engine&&(D.engine_name=S.engine.name||"unknown",D.engine_version=S.engine.version||"unknown"),n.translationService&&(D.translation_service=n.translationService),n.targetLanguage&&(D.target_language=n.targetLanguage),n.config.interfaceLanguage&&(D.interface_language=n.config.interfaceLanguage),g&&(D.version=g),n.config.translationTheme&&(D.translation_theme=n.config.translationTheme),n.config.alpha&&(D.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?D.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):D.always_translate_languages="none",a.INSTALL_FROM&&(D.install_from=a.INSTALL_FROM),n.config.beta&&(D.beta=n.config.alpha.toString()),n.config.translationArea&&(D.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(D.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),y&&(D.install_day=vh(C)),n.config.translationMode&&(D.translation_mode=n.config.translationMode),D.userscript=r.toString(),T?D.is_new_user_today="1":D.is_new_user_today="0",v?D.is_new_user_this_week="1":D.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?D.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():D.temp_translate_domain_minutes="0";let P="html";if(n.rule.isEbook?P="ebookReader":n.rule.isPdf?P="pdfReader":n.rule.isEbookBuilder?P="ebookBuilder":n.rule.isSubtitleBuilder&&(P="subtitleBuilder"),D.page_type=P,o?D.main_frame=0:D.main_frame=1,!l){let z=n.url;try{let w=new URL(z);D.site_host=w.hostname}catch{D.site_host="unknown"}n.sourceLanguage&&(D.source_language=n.sourceLanguage)}return{...M,params:D}}),B=await W({responseType:"text",url:k,method:"POST",body:JSON.stringify({client_id:m,user_id:m,events:A})})}catch{}}function wh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var st=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function Pn(e){return e!=null}function Gc(e,t,n){return`${e.type}#${t}#${n}`}function Vc(e,t,n,a,u){return{body:u,id:a,type:Gc(e,t,n)}}function kh(e,t,n,a){return{id:n,response:a,type:Gc(e,"ask",t)}}function Jc(e,t,n,a){if(Pn(a)){let u=a.type;if(Pn(u)&&Pn(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Sh(e,t,n){if(Pn(n)){let a=n.type;if(Pn(a)&&Pn(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function Dh(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function Ah(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Sh(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Lh(e,t,n,a){let u=r=>{let o=r.data;Jc(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function Kc(e,t,n,a,u,r){let o=async i=>{let s=i.data;if(Jc(n,"ask",a,s)){let l=await r(s.body);t=i.source,t.postMessage(kh(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function Fh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(Vc(t,"tell",n,r,a),u)}async function $c(e,t,n,a,u,r,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let m=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await Ah(e,n,a,i);clearTimeout(m),l(g)});return t.postMessage(Vc(n,"ask",a,i,u),r),s}var un=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];Kc(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(Pn(r))return new un(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new un(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new un(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await $c(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Lh(this.thisWindow,this.protocol,t,n))}tell(t,n){Fh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(Kc(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return $c(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){Dh(this.listeners)}};var Ph;function Ir(){return Ph}var Mh=new st({limit:7,interval:1250}),_h={tencent:new st({limit:3,interval:1350}),baidu:new st({limit:1,interval:1550}),strict:new st({limit:1,interval:1050}),d:new st({limit:1,interval:1050}),youdao:new st({limit:5,interval:1050}),you:new st({limit:5,interval:1050}),cai:new st({limit:5,interval:1050}),google:new st({limit:10,interval:1050}),deepl:new st({limit:10,interval:1050}),transmart:new st({limit:30,interval:1050}),papago:new st({limit:3,interval:1150}),openai:new st({limit:10,interval:1300}),chatgpt:new st({limit:1,interval:1350})};function hu(e){return _h[e]||Mh}async function Yc(e){if(Qe()){let n=Ir();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return x.error("can not comunicate with root frame, use strict limiter",a),hu("strict").getDelay()}else return hu("strict").getDelay()}else return hu(e).getDelay()}async function Xc(e,t){if(!Qe()){let a=hu(e);t&&a.setOptions(t)}}async function Zc(e){let t=e.key;return{value:hu(t).getDelay()}}var ne=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let y of u)y.from&&y.from!=="auto"&&i.add(y.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=dc(u,l,c)}catch(y){if(a)for(let p=0;py));let m=[],g=[],d=(y,p,T)=>{let v=p.translatedTexts[0];g[y]||(g[y]=p,g[y].translatedTexts=Array(p.sentenceTotalParts).fill(null)),g[y].translatedTexts[p.partIndex]=v;let k=g[y],S=0;for(let A=0;A{let k=await Yc(this.translationOptions.translationService);await eu(k||0);let S=p.from;if(s&&(S="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(S=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(B=>B.text),from:S,to:p.to,url:T,options:n}),sourceTempSentences:p.tempSentences};{let A=D4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(A=this.serviceConfig.translationTextSeparator);let B=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(B=this.serviceConfig.newlinePlaceholderDelimiters);let M="";B&&B.length>=2?M=p.tempSentences.map((G,de)=>de===p.tempSentences.length-1?G.text:G.text+B[0]+(de+1)+B[1]).join(""):M=p.tempSentences.map(G=>G.text).join(A);let D=await this.translate({text:M,from:S,to:p.to,url:T,options:n}),{text:P}=D,z=[];if(B&&B.length>=2){let G=`${B[0]}\\d+${B[1]}`;B&&B.length>=3&&(G=B[2]);let de=new RegExp(G,"g");z=P.split(de)}else z=P.split(A);let w=[];if(z.length>p.tempSentences.length){for(let G=0;G{let{text:S,sourceTempSentences:A}=k;for(let B=0;B{if(a){for(let S=0;S({...y.sentence,text:y.translatedTexts.join("")}))}}detectLanguageLocally(t){return Je({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ne.langMap=new Map;var Ca="input is invalid type",ei=typeof window=="object",Mn=ei?window:{};Mn.JS_SHA256_NO_WINDOW&&(ei=!1);var Bh=!ei&&typeof self=="object",Rh=!Mn.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Rh?Mn=global:Bh&&(Mn=self);var Ux=!Mn.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,Wx=typeof define=="function"&&define.amd,bu=!Mn.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",K="0123456789abcdef".split(""),Oh=[-2147483648,8388608,32768,128],Yt=[24,16,8,0],jr=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],zr=["hex","array","digest","arrayBuffer"],ut=[];(Mn.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});bu&&(Mn.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var Qc=function(e,t){return function(n){return new rt(t,!0).update(n)[e]()}},t3=function(e){var t=Qc("hex",e);t.create=function(){return new rt(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};rt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Oh[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};rt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,m,g,d,f,C,y,p,T,v;for(l=16;l<64;++l)d=s[l-15],c=(d>>>7|d<<25)^(d>>>18|d<<14)^d>>>3,d=s[l-2],m=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10,s[l]=s[l-16]+c+s[l-7]+m<<0;for(v=t&n,l=0;l<64;l+=4)this.first?(this.is224?(y=300032,d=s[0]-1413257819,i=d-150054599<<0,a=d+24177077<<0):(y=704751109,d=s[0]-210244248,i=d-1521486534<<0,a=d+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),m=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),y=e&t,g=y^e&n^v,C=u&r^~u&o,d=i+m+C+jr[l]+s[l],f=c+g,i=a+d<<0,a=d+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),m=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,g=p^a&t^y,C=i&u^~i&r,d=o+m+C+jr[l+1]+s[l+1],f=c+g,o=n+d<<0,n=d+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),m=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),T=n&a,g=T^n&e^p,C=o&i^~o&u,d=r+m+C+jr[l+2]+s[l+2],f=c+g,r=t+d<<0,t=d+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),m=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),v=t&n,g=v^t&a^T,C=r&o^~r&i,d=u+m+C+jr[l+3]+s[l+3],f=c+g,u=e+d<<0,e=d+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};rt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=K[e>>28&15]+K[e>>24&15]+K[e>>20&15]+K[e>>16&15]+K[e>>12&15]+K[e>>8&15]+K[e>>4&15]+K[e&15]+K[t>>28&15]+K[t>>24&15]+K[t>>20&15]+K[t>>16&15]+K[t>>12&15]+K[t>>8&15]+K[t>>4&15]+K[t&15]+K[n>>28&15]+K[n>>24&15]+K[n>>20&15]+K[n>>16&15]+K[n>>12&15]+K[n>>8&15]+K[n>>4&15]+K[n&15]+K[a>>28&15]+K[a>>24&15]+K[a>>20&15]+K[a>>16&15]+K[a>>12&15]+K[a>>8&15]+K[a>>4&15]+K[a&15]+K[u>>28&15]+K[u>>24&15]+K[u>>20&15]+K[u>>16&15]+K[u>>12&15]+K[u>>8&15]+K[u>>4&15]+K[u&15]+K[r>>28&15]+K[r>>24&15]+K[r>>20&15]+K[r>>16&15]+K[r>>12&15]+K[r>>8&15]+K[r>>4&15]+K[r&15]+K[o>>28&15]+K[o>>24&15]+K[o>>20&15]+K[o>>16&15]+K[o>>12&15]+K[o>>8&15]+K[o>>4&15]+K[o&15];return this.is224||(s+=K[i>>28&15]+K[i>>24&15]+K[i>>20&15]+K[i>>16&15]+K[i>>12&15]+K[i>>8&15]+K[i>>4&15]+K[i&15]),s};rt.prototype.toString=rt.prototype.hex;rt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};rt.prototype.array=rt.prototype.digest;rt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function Hr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,s;for(a=0;a>6,r[i++]=128|s&63):s<55296||s>=57344?(r[i++]=224|s>>12,r[i++]=128|s>>6&63,r[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|s>>18,r[i++]=128|s>>12&63,r[i++]=128|s>>6&63,r[i++]=128|s&63);e=r}else if(u==="object"){if(e===null)throw new Error(Ca);if(bu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!bu||!ArrayBuffer.isView(e)))throw new Error(Ca)}else throw new Error(Ca);e.length>64&&(e=new rt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var m=e[a]||0;l[a]=92^m,c[a]=54^m}rt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}Hr.prototype=new rt;Hr.prototype.finalize=function(){if(rt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();rt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),rt.prototype.finalize.call(this)}};var xa=t3();xa.sha256=xa;xa.sha224=t3(!0);xa.sha256.hmac=n3();xa.sha224.hmac=n3(!0);var a3=xa;var u3=a3.sha256;function Xt(e){return Promise.resolve(u3(e))}function Ur(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function _n(e,t){let n=u3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function r3(e,t){let n=await _n(e,t);return Ur(n)}async function Wr(e,t){let n=Nh(t),a=await _n(e,n);return Ur(a)}function Nh(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}var o3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Zt=class extends ne{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceText:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceTextList:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),m=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Xt(r)].join(` +`;continue}else if(T.length>t){let p=[];K0(T,t,p);for(let x=0;x0&&f{let i=e.lastIndexOf(o,t);return i>r?i:r},-1);if(u===-1){let r=e.slice(0,t);if(r&&!r.trim())return;n.push({text:r,prefix:"",suffix:""}),e.length>t&&K0(e.slice(t),t,n)}else{let r=e.slice(0,u+1);if(r&&r.trim()==="")return;r.startsWith(" ")?n.push({text:r.slice(1),prefix:" ",suffix:""}):n.push({text:r,prefix:"",suffix:""}),u+10){let s=r.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){u=!1;break}}r.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:u,config:a,props:n.props||[],allProps:r,optionalProps:i,explicitProps:o}}var hc=e=>{let{config:t}=e,n=t.alpha,a=t.beta,u=t.canary,r=t.debug;return Object.keys(fn).filter(i=>{let s=fn[i];if(i.startsWith("mock"))return r?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,m=!!s.beta;return i===e.translationService||l&&u||c&&(n||u)||m&&(a||n||u)?!0:!c&&!m&&!l}).map(i=>G0(i,e))};function Mt(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var ba=[];async function Er(e,t){return await new Promise((n,a)=>{let u=e,r=1,o=indexedDB.open(u,r);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function bc(e){let t=`${N}-${e.service}@${e.from}->${e.to}`;return await xh(t,e)}async function Ec(e){let t=An(e.originalText),n=`${N}-${e.service}@${e.from}->${e.to}`;return await Th(n,t)}async function Th(e,t){let n=await Er(e);return await new Promise((a,u)=>{if(!n)return u();let r="cache",i=n.transaction([r],"readonly").objectStore(r).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),u()}})}async function xh(e,t){let n=await Er(e);return(await wh()).includes(e)||await Ch(e),await new Promise(u=>{if(!n)return u(!1);let r="cache",i=n.transaction([r],"readwrite").objectStore(r).put(t);i.onsuccess=s=>{n.close(),u(!0)},i.onerror=s=>{n.close(),u(!1)}})}async function Ch(e){let t="cache_list",n=await Er(N+"-cacheList",t),u=n.transaction([t],"readwrite").objectStore(t).put({key:e});u.onsuccess=r=>{n.close(),ba.push(e)},u.onerror=r=>{n.close()}}async function wh(){if(ba&&ba.length>0)return ba;let e=await Er(N+"-cacheList","cache_list");return ba=await new Promise(t=>{let n="cache_list",u=e.transaction([n],"readonly").objectStore(n).getAllKeys();u.onsuccess=r=>{e.close(),t(u.result)},u.onerror=r=>{e.close(),t([])}}),ba}function Qe(){try{return globalThis.self!==globalThis.top}catch{return!0}}var V0="Original";function Re(){return V0}function yt(e){V0=e,yc(V0)}var xc="auto",yr="auto",Tc="auto";function Tr(e){xc=e}function Ut(e){yr=e}function un(){return yr!=="auto"?yr:Tc!=="auto"?Tc:xc}function Ea(){return yr}var Cc=oe+"SyncStoreKey_";function J0(e,t){let n=Cc+e;return U.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function et(e,t){let n=Cc+e;return U.storage.sync.set({[n]:t})}var fu=new Map,ya=class{constructor(t,n=!1){this.logger=new du,n&&this.logger.setLevel("debug"),this.fromType=t,fu.has(t)||(fu.set(t,new Map),U.runtime.onMessage.addListener((a,u,r)=>{let o=a.from,i=a.to,s,l,c;u.tab&&u.tab.id&&(s=u.tab.id,o=`${o}:${s}`,l=u.tab.url,c=u.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let m=X0(i),{type:g,name:d}=m;if(g!==t)return!1;let f=X0(o),y=fu.get(g).get(d);if(!y)return this.logger.debug(`no message handler for ${g}:${i}, but it's ok`),!1;let{messageHandler:p,sync:x}=y,v={type:t,name:f.name,id:s,url:l,active:c};if(x){try{let k=p(a.payload,v);r({ok:!0,data:k})}catch(k){r({ok:!1,errorName:k.name,errorMessage:k.message,errorDetails:k.details})}return!1}else return p(a.payload,v).then(k=>{r({ok:!0,data:k})}).catch(k=>{r({ok:!1,errorName:k.name,errorMessage:k.message,errorDetails:k.details})}),!0}))}getConnection(t,n,a){let u=!1;a&&a.sync&&(u=!0);let r=this.fromType,o=fu.get(r);if(o.has(t))return o.get(t).connectionInstance;{let i=new Y0(`${r}:${t}`,this.logger);return fu.get(r).set(t,{messageHandler:n,sync:u,connectionInstance:i}),i}}},Y0=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=X0(t),{type:u,id:r}=a;if(u!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await U.runtime.sendMessage(o);return wc(o,i,this.logger)}catch(i){if(u==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await U.tabs.sendMessage(r,o);return wc(o,i,this.logger)}}};function wc(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new Ze(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new Ze("noResponse","Unknown error")}function X0(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Ta=async function(e,t){let{method:n,data:a}=e,u=await Lc(),r=Date.now();C.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await Q0(),et(pn,r)):n==="translateTheMainPage"?(await Dr(),et(pn,r)):n==="translateToThePageEndImmediately"?(await Ac(),et(pn,r)):n==="toggleTranslatePage"?(await vr(),et(pn,r)):n==="toggleTranslateTheWholePage"?(await Dc(),et(pn,r)):n==="toggleTranslateTheMainPage"?(await kc(),et(pn,r)):n==="toggleOnlyTransation"?(await Ar(),et(pn,r)):n==="translatePage"?(await Jt(u),et(pn,r)):n==="toggleTranslationMask"?await Sr():n==="restorePage"?Vn():n==="setCurrentPageLanguageByClient"?Ut(a):n==="retryFailedParagraphs"?kr():n==="switchTranslationMode"&&a&&a.mode&&Sc(a.mode)},vh=function(e,t){let{method:n,data:a}=e;if(C.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Re();if(n==="getCurrentPageLanguage"){let u=un();return Z0().catch(r=>{C.warn("detectCurrentPageLanguage failed",r)}),u}},xr,Cr;function vc(){let e=wr();Qe()||kh(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function wr(){return xr||(xr=new ya("content_script",!1).getConnection("main",Ta),xr)}function kh(){return Cr||(Cr=new ya("content_script",!1).getConnection("main_sync",vh,{sync:!0}),Cr)}var Sh=new Map;function Fc(e){let t=Dh(64),n=new CustomEvent(tr,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,u)=>{Sh.set(t,(r,o)=>{r?u(r):a(o)})})}function Dh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u{})}function Oc(e){return te()?Ec(e):qe({method:"queryParagraphCache",data:e})}async function Nc(e){if(te()){await bc(e);return}return qe({method:"setParagraphCache",data:e})}async function Ic(){if(te())return Promise.resolve();await qe({method:"mockRequest"})}function Fr(e=!1,t=""){return te()?(U.runtime.openOptionsPage(e,t),Promise.resolve()):qe({method:"openOptionsPage"})}function jc(e=""){return te()||Rt()?Ie().OPTIONS_URL:U.runtime.getURL("options.html")}function zc(e=""){return U&&U.runtime&&U.runtime.getURL?U.runtime.getURL("options.html"):""}function Pr(e=!1){return te()?(U.extra.openAboutPage(e),Promise.resolve()):qe({method:"openAboutPage"})}function Hc(e=!1){return te()?(U.extra.openSearchEnhancement(e),Promise.resolve()):qe({method:"openSearchEnhancement"})}function Mr(e=!1){return te()?(U.extra.openEbookViewerPage(e),Promise.resolve()):qe({method:"openEbookViewerPage"})}function Uc(e=!1){return te()?Promise.resolve():qe({method:"openHtmlViewerPage"})}function _r(e=!1){return te()?(U.extra.openEbookBuilderPage(e),Promise.resolve()):qe({method:"openEbookBuilderPage"})}function Br(e){Rt()}function ei(e=!1){return te()?(alert("it's not support in userscript"),Promise.resolve()):qe({method:"openPdfViewerPage"})}function Wc(e=!1){return te()?(U.extra.openSubtitleBuilderPage(e),Promise.resolve()):qe({method:"openSubtitleBuilderPage"})}function qc(){return te()?(C.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):qe({method:"autoSyncLatestConfig"})}var $c=oe+"StoreKey_";function Rr(e,t){let n=$c+e;return U.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Kc(e,t){let n=$c+e;return U.storage.local.set({[n]:t})}var Or={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.2",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function Fn(){return Or.version}var Gc="G-MKMD9LWFTR";async function Je(e,t,n){try{let a=Ie();if(a.INSTALL_FROM==="firefox_store")return;let r=te(),o=Qe(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let M=await Rr(s,0),D=Nr(new Date(M)),P=Date.now(),z=Nr(new Date(P));if(D===z)return;await Kc(s,P)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",m=await J0("fakeUserId","");m||(m=await Rr("fakeUserId",""),m&&await et("fakeUserId",m));let g=Fn(),d=new Date,f=await J0("installedAt","");f||(f=await Rr("installedAt",""),f&&await et("installedAt",f)),m?f||(f=new Date(0).toISOString(),await et("installedAt",f)):(m=Lh(32),await et("fakeUserId",m)),f||(f=d.toISOString(),await et("installedAt",f));let T=new Date(f),y=Nr(T),p=Nr(d),x=y===p,v=d.getTime()-T.getTime()<7*24*60*60*1e3,k=`https://www.google-analytics.com/mp/collect?measurement_id=${Gc}&api_secret=${c}`;i||(k=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${Gc}&api_secret=${c}`);let S=Ju.parse(window.navigator.userAgent),A=t.map(M=>{let D=M.params||{};S.os&&(D.os_name=S.os.name||"unknown",D.os_version=S.os.version||"unknown",D.os_version_name=S.os.versionName||"unknown"),S.browser&&(D.browser_name=S.browser.name||"unknown",D.browser_version=S.browser.version||"unknown"),S.platform&&(D.platform_type=S.platform.type||"unknown"),S.engine&&(D.engine_name=S.engine.name||"unknown",D.engine_version=S.engine.version||"unknown"),n.translationService&&(D.translation_service=n.translationService),n.targetLanguage&&(D.target_language=n.targetLanguage),n.config.interfaceLanguage&&(D.interface_language=n.config.interfaceLanguage),g&&(D.version=g),n.config.translationTheme&&(D.translation_theme=n.config.translationTheme),n.config.alpha&&(D.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?D.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):D.always_translate_languages="none",a.INSTALL_FROM&&(D.install_from=a.INSTALL_FROM),n.config.beta&&(D.beta=n.config.alpha.toString()),n.config.translationArea&&(D.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(D.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),y&&(D.install_day=Fh(T)),n.config.translationMode&&(D.translation_mode=n.config.translationMode),D.userscript=r.toString(),x?D.is_new_user_today="1":D.is_new_user_today="0",v?D.is_new_user_this_week="1":D.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?D.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():D.temp_translate_domain_minutes="0";let P="html";if(n.rule.isEbook?P="ebookReader":n.rule.isPdf?P="pdfReader":n.rule.isEbookBuilder?P="ebookBuilder":n.rule.isSubtitleBuilder&&(P="subtitleBuilder"),D.page_type=P,o?D.main_frame=0:D.main_frame=1,!l){let z=n.url;try{let w=new URL(z);D.site_host=w.hostname}catch{D.site_host="unknown"}n.sourceLanguage&&(D.source_language=n.sourceLanguage)}return{...M,params:D}}),B=await W({responseType:"text",url:k,method:"POST",body:JSON.stringify({client_id:m,user_id:m,events:A})})}catch{}}function Lh(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u0){if(a.includes(e)||a.includes(""))return!1;for(let u of a)if(u.includes("*")&&new RegExp(u).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let u of n)if(u.includes("*")&&new RegExp(u).test(e))return!0}return!1}var st=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,u=Date.now();if(t.length=r?(t.push(u),0):(t.push(r),r-u)}};function Pn(e){return e!=null}function Xc(e,t,n){return`${e.type}#${t}#${n}`}function Zc(e,t,n,a,u){return{body:u,id:a,type:Xc(e,t,n)}}function Ph(e,t,n,a){return{id:n,response:a,type:Xc(e,"ask",t)}}function Qc(e,t,n,a){if(Pn(a)){let u=a.type;if(Pn(u)&&Pn(a.body)){let[r,o,i]=u.split("#");return r===e.type&&o===t&&i===n}else return!1}else return!1}function Mh(e,t,n){if(Pn(n)){let a=n.type;if(Pn(a)&&Pn(n.response)){let[u,r,o]=a.split("#");return u===e.type&&r==="ask"&&o===t}else return!1}else return!1}function _h(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function Bh(e,t,n,a){return new Promise(u=>{let r=o=>{let i=o.data;Mh(t,n,i)&&i.id===a&&(e.removeEventListener("message",r),u(i.response))};e.addEventListener("message",r)})}function Rh(e,t,n,a){let u=r=>{let o=r.data;Qc(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",u),[e,u]}function Jc(e,t,n,a,u,r){let o=async i=>{let s=i.data;if(Qc(n,"ask",a,s)){let l=await r(s.body);t=i.source,t.postMessage(Ph(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function Oh(e,t,n,a,u){let r=Math.random().toString();return e.postMessage(Zc(t,"tell",n,r,a),u)}async function Yc(e,t,n,a,u,r,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let m=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),g=await Bh(e,n,a,i);clearTimeout(m),l(g)});return t.postMessage(Zc(n,"ask",a,i,u),r),s}var rn=class{constructor(t,n,a=window,u="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=u;this.listeners=[];Jc(a,n,this.getSystemProtocol("ping"),"ping",u,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let u=0;u<=n;u++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",u=window){let r=n.contentWindow;if(Pn(r))return new rn(t,r,u,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:u=window.parent}={}){return new rn(t,u,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new rn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await Yc(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Rh(this.thisWindow,this.protocol,t,n))}tell(t,n){Oh(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(Jc(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return Yc(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){_h(this.listeners)}};var Nh;function Ir(){return Nh}var Ih=new st({limit:7,interval:1250}),jh={tencent:new st({limit:3,interval:1350}),baidu:new st({limit:1,interval:1550}),strict:new st({limit:1,interval:1050}),d:new st({limit:1,interval:1050}),youdao:new st({limit:5,interval:1050}),you:new st({limit:5,interval:1050}),cai:new st({limit:5,interval:1050}),google:new st({limit:10,interval:1050}),deepl:new st({limit:10,interval:1050}),transmart:new st({limit:30,interval:1050}),papago:new st({limit:3,interval:1150}),openai:new st({limit:10,interval:1300}),chatgpt:new st({limit:1,interval:1350})};function hu(e){return jh[e]||Ih}async function e3(e){if(Qe()){let n=Ir();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return C.error("can not comunicate with root frame, use strict limiter",a),hu("strict").getDelay()}else return hu("strict").getDelay()}else return hu(e).getDelay()}async function t3(e,t){if(!Qe()){let a=hu(e);t&&a.setOptions(t)}}async function n3(e){let t=e.key;return{value:hu(t).getDelay()}}var ne=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:u}=t,r=[],o=null,i=new Set;for(let y of u)y.from&&y.from!=="auto"&&i.add(y.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{r=fc(u,l,c)}catch(y){if(a)for(let p=0;py));let m=[],g=[],d=(y,p,x)=>{let v=p.translatedTexts[0];g[y]||(g[y]=p,g[y].translatedTexts=Array(p.sentenceTotalParts).fill(null)),g[y].translatedTexts[p.partIndex]=v;let k=g[y],S=0;for(let A=0;A{let k=await e3(this.translationOptions.translationService);await eu(k||0);let S=p.from;if(s&&(S="auto"),p.fromByClient&&p.fromByClient!=="auto"&&(S=p.fromByClient),this.isSupportList)return{...await this.translateList({text:p.tempSentences.map(B=>B.text),from:S,to:p.to,url:x,options:n}),sourceTempSentences:p.tempSentences};{let A=P4;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(A=this.serviceConfig.translationTextSeparator);let B=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(B=this.serviceConfig.newlinePlaceholderDelimiters);let M="";B&&B.length>=2?M=p.tempSentences.map((G,de)=>de===p.tempSentences.length-1?G.text:G.text+B[0]+(de+1)+B[1]).join(""):M=p.tempSentences.map(G=>G.text).join(A);let D=await this.translate({text:M,from:S,to:p.to,url:x,options:n}),{text:P}=D,z=[];if(B&&B.length>=2){let G=`${B[0]}\\d+${B[1]}`;B&&B.length>=3&&(G=B[2]);let de=new RegExp(G,"g");z=P.split(de)}else z=P.split(A);let w=[];if(z.length>p.tempSentences.length){for(let G=0;G{let{text:S,sourceTempSentences:A}=k;for(let B=0;B{if(a){for(let S=0;S({...y.sentence,text:y.translatedTexts.join("")}))}}detectLanguageLocally(t){return Ve({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};ne.langMap=new Map;var xa="input is invalid type",ti=typeof window=="object",Mn=ti?window:{};Mn.JS_SHA256_NO_WINDOW&&(ti=!1);var zh=!ti&&typeof self=="object",Hh=!Mn.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Hh?Mn=global:zh&&(Mn=self);var KC=!Mn.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,GC=typeof define=="function"&&define.amd,bu=!Mn.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",$="0123456789abcdef".split(""),Uh=[-2147483648,8388608,32768,128],Yt=[24,16,8,0],jr=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],zr=["hex","array","digest","arrayBuffer"],ut=[];(Mn.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});bu&&(Mn.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var a3=function(e,t){return function(n){return new rt(t,!0).update(n)[e]()}},r3=function(e){var t=a3("hex",e);t.create=function(){return new rt(e)},t.update=function(u){return t.create().update(u)};for(var n=0;n>2]|=e[u]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[r>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};rt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Uh[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};rt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,m,g,d,f,T,y,p,x,v;for(l=16;l<64;++l)d=s[l-15],c=(d>>>7|d<<25)^(d>>>18|d<<14)^d>>>3,d=s[l-2],m=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10,s[l]=s[l-16]+c+s[l-7]+m<<0;for(v=t&n,l=0;l<64;l+=4)this.first?(this.is224?(y=300032,d=s[0]-1413257819,i=d-150054599<<0,a=d+24177077<<0):(y=704751109,d=s[0]-210244248,i=d-1521486534<<0,a=d+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),m=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),y=e&t,g=y^e&n^v,T=u&r^~u&o,d=i+m+T+jr[l]+s[l],f=c+g,i=a+d<<0,a=d+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),m=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),p=a&e,g=p^a&t^y,T=i&u^~i&r,d=o+m+T+jr[l+1]+s[l+1],f=c+g,o=n+d<<0,n=d+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),m=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),x=n&a,g=x^n&e^p,T=o&i^~o&u,d=r+m+T+jr[l+2]+s[l+2],f=c+g,r=t+d<<0,t=d+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),m=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),v=t&n,g=v^t&a^x,T=r&o^~r&i,d=u+m+T+jr[l+3]+s[l+3],f=c+g,u=e+d<<0,e=d+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+u<<0,this.h5=this.h5+r<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};rt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=$[e>>28&15]+$[e>>24&15]+$[e>>20&15]+$[e>>16&15]+$[e>>12&15]+$[e>>8&15]+$[e>>4&15]+$[e&15]+$[t>>28&15]+$[t>>24&15]+$[t>>20&15]+$[t>>16&15]+$[t>>12&15]+$[t>>8&15]+$[t>>4&15]+$[t&15]+$[n>>28&15]+$[n>>24&15]+$[n>>20&15]+$[n>>16&15]+$[n>>12&15]+$[n>>8&15]+$[n>>4&15]+$[n&15]+$[a>>28&15]+$[a>>24&15]+$[a>>20&15]+$[a>>16&15]+$[a>>12&15]+$[a>>8&15]+$[a>>4&15]+$[a&15]+$[u>>28&15]+$[u>>24&15]+$[u>>20&15]+$[u>>16&15]+$[u>>12&15]+$[u>>8&15]+$[u>>4&15]+$[u&15]+$[r>>28&15]+$[r>>24&15]+$[r>>20&15]+$[r>>16&15]+$[r>>12&15]+$[r>>8&15]+$[r>>4&15]+$[r&15]+$[o>>28&15]+$[o>>24&15]+$[o>>20&15]+$[o>>16&15]+$[o>>12&15]+$[o>>8&15]+$[o>>4&15]+$[o&15];return this.is224||(s+=$[i>>28&15]+$[i>>24&15]+$[i>>20&15]+$[i>>16&15]+$[i>>12&15]+$[i>>8&15]+$[i>>4&15]+$[i&15]),s};rt.prototype.toString=rt.prototype.hex;rt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,u=this.h4,r=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,u>>24&255,u>>16&255,u>>8&255,u&255,r>>24&255,r>>16&255,r>>8&255,r&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};rt.prototype.array=rt.prototype.digest;rt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function Hr(e,t,n){var a,u=typeof e;if(u==="string"){var r=[],o=e.length,i=0,s;for(a=0;a>6,r[i++]=128|s&63):s<55296||s>=57344?(r[i++]=224|s>>12,r[i++]=128|s>>6&63,r[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),r[i++]=240|s>>18,r[i++]=128|s>>12&63,r[i++]=128|s>>6&63,r[i++]=128|s&63);e=r}else if(u==="object"){if(e===null)throw new Error(xa);if(bu&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!bu||!ArrayBuffer.isView(e)))throw new Error(xa)}else throw new Error(xa);e.length>64&&(e=new rt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var m=e[a]||0;l[a]=92^m,c[a]=54^m}rt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}Hr.prototype=new rt;Hr.prototype.finalize=function(){if(rt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();rt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),rt.prototype.finalize.call(this)}};var Ca=r3();Ca.sha256=Ca;Ca.sha224=r3(!0);Ca.sha256.hmac=o3();Ca.sha224.hmac=o3(!0);var i3=Ca;var s3=i3.sha256;function Xt(e){return Promise.resolve(s3(e))}function Ur(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function _n(e,t){let n=s3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function l3(e,t){let n=await _n(e,t);return Ur(n)}async function Wr(e,t){let n=Wh(t),a=await _n(e,n);return Ur(a)}function Wh(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}var c3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Zt=class extends ne{constructor(n,a,u){super(n,a,u);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),u=`${n.getUTCMonth()+1}`.padStart(2,"0"),r=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${u}-${r}`}async translate(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceText:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async translateList(n){let{text:a,from:u,to:r}=n,o=JSON.stringify({ProjectId:0,Source:Zt.langMap.get(u)||"auto",SourceTextList:a,Target:Zt.langMap.get(r)||r}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Zt.langMapReverse.get(i.Response.Source)||u,to:Zt.langMapReverse.get(i.Response.Target)||r}}async signedRequest({secretId:n,secretKey:a,action:u,payload:r,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),m=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Xt(r)].join(` `),g=Zt.getUTCDate(l),d=["TC3-HMAC-SHA256",c,`${g}/${o}/tc3_request`,await Xt(m)].join(` -`),f=await r3(g,`TC3${a}`),C=await Wr(o,f),y=await Wr("tc3_request",C),p=await Wr(d,y),T=await W({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(T instanceof Error)throw T;if(T.Response&&T.Response.Error&&T.Response.Error.Message)throw new Error(T.Response.Error.Message);return T}},Jn=Zt;Jn.langMap=new Map(o3),Jn.langMapReverse=new Map(o3.map(([n,a])=>[a,n]));var i3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Ih={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},qr=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await W({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:Ih});return{text:i.targetText,from:qr.langMapReverse.get(i.source)||u,to:qr.langMapReverse.get(i.target)||r}}},Yn=qr;Yn.langMap=new Map(i3),Yn.langMapReverse=new Map(i3.map(([n,a])=>[a,n]));var s3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Bn=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await W({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await W({retry:2,url:o})}}},bn=Bn;bn.langMap=new Map(s3),bn.langMapReverse=new Map(s3.map(([n,a])=>[a,n]));function jh(e,t){return t?e+(t-e%t):e}function zh(e,t){return e.split(t).length-1}function ti(e){let t=Date.now(),n=1;for(let a of e)n+=zh(a,"i");return jh(t,n)}function Hh(e,t){return Math.floor(Math.random()*(t-e+1))+e}function ni(){return Hh(1e6,1e8)}var ai="https://www2.deepl.com/jsonrpc",ui="auto",l3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function Uh(e=l3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function ri(e){return Uh()[e.toLowerCase()]}var Wh={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function qh(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function Kh(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function $h(e,t,n,a,u,r,o){let i=ni(),s=Kh(a,n),l=[];t.forEach(g=>{l.push({text:g,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=ti(t);let c=await W({retry:2,method:"POST",url:e,body:qh(s),headers:Wh}),m={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{m.text.push(g.text)}),m}async function c3(e,t,n,a=ui,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:$h(e,t,ri(n),ri(a)??"auto",u,r,o):{text:[],from:a,to:n}}var d3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wa=class extends ne{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=ai;n&&n.apiUrl&&(this.API_URL=Ht(ai,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await c3(this.API_URL,a,wa.langMap.get(u)||u,wa.langMap.get(r)||"auto");return{text:o.text,from:wa.langMapReverse.get(o.from),to:wa.langMapReverse.get(o.to)}}},Rn=wa;Rn.langMap=new Map(d3),Rn.langMapReverse=new Map(d3.map(([n,a])=>[a,n]));var m3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],oi="https://transmart.qq.com/api/imt",Xn=class extends ne{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Xn.langMap.get(r)||r,i=Xn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let s=Ie(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=g3());let m=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),g=await W({url:oi,body:m,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=Ie(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=g3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(u.join(` -`));if(l===r)return{text:u,from:l,to:r};let c=Xn.langMap.get(l)||l,m=Xn.langMap.get(r)||r,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:m},type:"plain"}),d=await W({url:oi,body:g,method:"POST"});if(d.header.ret_code!=="succ")throw new Error(d.message||d.header.ret_code);return{text:d.auto_translation,from:l||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await W({url:oi,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Xn.langMapReverse.get(r);return o||r}},Zn=Xn;Zn.langMap=new Map(m3),Zn.langMapReverse=new Map(m3.map(([n,a])=>[a,n]));function g3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function p3(){return Math.random()>=0}var va=class extends ne{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await Bc(),!p3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var h3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],ii=new Map(h3),f3=new Map(h3.map(([e,t])=>[t,e])),si=class extends ne{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=si.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await W({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:ii.get(u)||"auto",target_lang:ii.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:f3.get(i.source_lang),to:f3.get(i.target_lang)}}else throw new Error(o.msg)}},Eu=si;Eu.langMap=ii,Eu.DEFAULT_CODENAME="deepl";var Kr=Eu;var $r=new Map;async function li(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=An(e.body)),$r.has(t))return $r.get(t);let n=W(e);$r.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{$r.delete(t)},3e4)}}async function b3(e){return li(e)}async function yu(e){if(Qe()){let n=Ir();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw x.error("can not comunicate with root frame, use strict limiter",a),a}else return li(e)}else return li(e)}var Dt=null,E3=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],ci=new Map(E3),Gh=new Map(E3.map(([e,t])=>[t,e])),Gr=class extends ne{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ht(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ht(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ht(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ht(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await U.storage.local.remove(gn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await U.storage.local.get(gn);a&&a[gn]&&(Dt=a[gn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new Vu(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?yu({url:u,...r}):W({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,U.storage.local.set({[gn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await U.storage.local.set({[gn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:ci.get(a)||"",target_lang:ci.get(u)||u},i=this.getRandomKey(),s=new URLSearchParams(o);r.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let m;if(i.startsWith("immersive_")){let f=new Vu(i,{state:Dt,onFetch:(C,y)=>{let T=new URL(C).pathname;return T==="/refresh_token"||T==="/oidc/token"?yu({url:C,...y}):W({url:C,...y})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:C=>{Dt=C,U.storage.local.set({[gn]:Dt})}});m=await f.translateApi(l),f.getIsStateChanged()&&(Dt=f.getState(),await U.storage.local.set({[gn]:Dt}))}else m=await W({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=m,d=g.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let y=await new bn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(p=>p.text).join(` +`),f=await l3(g,`TC3${a}`),T=await Wr(o,f),y=await Wr("tc3_request",T),p=await Wr(d,y),x=await W({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":u,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${g}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${p}`},body:r});if(x instanceof Error)throw x;if(x.Response&&x.Response.Error&&x.Response.Error.Message)throw new Error(x.Response.Error.Message);return x}},Jn=Zt;Jn.langMap=new Map(c3),Jn.langMapReverse=new Map(c3.map(([n,a])=>[a,n]));var d3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],qh={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},qr=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=new URLSearchParams({source:u,target:r,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await W({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:qh});return{text:i.targetText,from:qr.langMapReverse.get(i.source)||u,to:qr.langMapReverse.get(i.target)||r}}},Yn=qr;Yn.langMap=new Map(d3),Yn.langMapReverse=new Map(d3.map(([n,a])=>[a,n]));var m3=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],Bn=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async translateXml(n){let{text:a,from:u,to:r}=n;if(!a)return{...n};let o=Bn.langMap.get(u)||"auto",i=Bn.langMap.get(r)||r,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:Bn.langMapReverse.get(s.data[2])||"auto",to:r}}async fetchXmlWithoutToken(n,a,u){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}).toString();return{data:await W({retry:2,url:o})}}async fetchWithoutToken(n,a,u){let r=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:u,q:n}),o=this.apiUrl+"?"+r.toString();return{data:await W({retry:2,url:o})}}},bn=Bn;bn.langMap=new Map(m3),bn.langMapReverse=new Map(m3.map(([n,a])=>[a,n]));function $h(e,t){return t?e+(t-e%t):e}function Kh(e,t){return e.split(t).length-1}function ni(e){let t=Date.now(),n=1;for(let a of e)n+=Kh(a,"i");return $h(t,n)}function Gh(e,t){return Math.floor(Math.random()*(t-e+1))+e}function ai(){return Gh(1e6,1e8)}var ui="https://www2.deepl.com/jsonrpc",ri="auto",g3=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function Vh(e=g3){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function oi(e){return Vh()[e.toLowerCase()]}var Jh={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function Yh(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function Xh(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function Zh(e,t,n,a,u,r,o){let i=ai(),s=Xh(a,n),l=[];t.forEach(g=>{l.push({text:g,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=ni(t);let c=await W({retry:2,method:"POST",url:e,body:Yh(s),headers:Jh}),m={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(g=>{m.text.push(g.text)}),m}async function p3(e,t,n,a=ri,u,r,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:Zh(e,t,oi(n),oi(a)??"auto",u,r,o):{text:[],from:a,to:n}}var f3=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wa=class extends ne{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=ui;n&&n.apiUrl&&(this.API_URL=Ht(ui,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:u,from:r}=n,o=await p3(this.API_URL,a,wa.langMap.get(u)||u,wa.langMap.get(r)||"auto");return{text:o.text,from:wa.langMapReverse.get(o.from),to:wa.langMapReverse.get(o.to)}}},Rn=wa;Rn.langMap=new Map(f3),Rn.langMapReverse=new Map(f3.map(([n,a])=>[a,n]));var h3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],ii="https://transmart.qq.com/api/imt",Xn=class extends ne{constructor(n,a,u){super(n,a,u);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:u}=n,r=await this.detectLanguage(a),o=Xn.langMap.get(r)||r,i=Xn.langMap.get(u)||u;if(r===u)return{text:a,from:r,to:u};let s=Ie(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=b3());let m=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),g=await W({url:ii,body:m,method:"POST",retry:2});if(g.header.ret_code!=="succ")throw new Error(g.message||g.header.ret_code);return{text:g.auto_translation,from:r||"auto",to:u}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:u,to:r}=n,o=Ie(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=b3()),u.length===1){let f=await this.translate({from:a,text:u[0],to:r,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(u.join(` +`));if(l===r)return{text:u,from:l,to:r};let c=Xn.langMap.get(l)||l,m=Xn.langMap.get(r)||r,g=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:u,lang:c,orig_url:i},target:{lang:m},type:"plain"}),d=await W({url:ii,body:g,method:"POST"});if(d.header.ret_code!=="succ")throw new Error(d.message||d.header.ret_code);return{text:d.auto_translation,from:l||"auto",to:r}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},u=await W({url:ii,method:"POST",body:JSON.stringify(a)});if(u.header.ret_code!=="succ")throw new Error(u.message||u.header.ret_code);let r=u.language,o=Xn.langMapReverse.get(r);return o||r}},Zn=Xn;Zn.langMap=new Map(h3),Zn.langMapReverse=new Map(h3.map(([n,a])=>[a,n]));function b3(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function E3(){return Math.random()>=0}var va=class extends ne{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,u=a.match(/^\s*/)[0].length;return{text:a.slice(0,u)+"\u6A21\u62DF\uFF1A"+a.slice(u,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:u,to:r}=n;if(await Ic(),!E3())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:u,to:r,text:[""]}:{from:u,to:r,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var T3=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],si=new Map(T3),y3=new Map(T3.map(([e,t])=>[t,e])),li=class extends ne{constructor(n,a,u){super(n,a,u);this.apikey="";this.codename=li.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:u,to:r}=n,o=await W({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:si.get(u)||"auto",target_lang:si.get(r)||r})});if(o.status){let i=o;return i.result&&r=="zh-TW",{text:i.result,from:y3.get(i.source_lang),to:y3.get(i.target_lang)}}else throw new Error(o.msg)}},Eu=li;Eu.langMap=si,Eu.DEFAULT_CODENAME="deepl";var $r=Eu;var Kr=new Map;async function ci(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=An(e.body)),Kr.has(t))return Kr.get(t);let n=W(e);Kr.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Kr.delete(t)},3e4)}}async function x3(e){return ci(e)}async function yu(e){if(Qe()){let n=Ir();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw C.error("can not comunicate with root frame, use strict limiter",a),a}else return ci(e)}else return ci(e)}var Dt=null,C3=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],di=new Map(C3),Qh=new Map(C3.map(([e,t])=>[t,e])),Gr=class extends ne{constructor(n,a,u){super(n,a,u);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=Ht(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=Ht(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=Ht(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=Ht(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(r=>r.trim())}static async clearState(){Dt=null,await U.storage.local.remove(gn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Dt){Dt={};let a=await U.storage.local.get(gn);a&&a[gn]&&(Dt=a[gn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new Vu(n,{state:Dt,onFetch:(u,r)=>{let i=new URL(u).pathname;return i==="/refresh_token"||i==="/oidc/token"?yu({url:u,...r}):W({url:u,...r})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:u=>{Dt=u,U.storage.local.set({[gn]:Dt})}});await a.updateToken(),Dt=a.getState(),a.getIsStateChanged()&&await U.storage.local.set({[gn]:Dt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:u,text:r}=n,o={source_lang:di.get(a)||"",target_lang:di.get(u)||u},i=this.getRandomKey(),s=new URLSearchParams(o);r.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let m;if(i.startsWith("immersive_")){let f=new Vu(i,{state:Dt,onFetch:(T,y)=>{let x=new URL(T).pathname;return x==="/refresh_token"||x==="/oidc/token"?yu({url:T,...y}):W({url:T,...y})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:T=>{Dt=T,U.storage.local.set({[gn]:Dt})}});m=await f.translateApi(l),f.getIsStateChanged()&&(Dt=f.getState(),await U.storage.local.set({[gn]:Dt}))}else m=await W({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:g}=m,d=g.map(f=>f.text);if(u==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let y=await new bn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:g.map(p=>p.text).join(` `),url:"",options:{}});y&&y.text&&(d=y.text.split(` -`))}return{text:d,from:g[0]&&Gh.get(g[0].detected_source_language)||a,to:u}}};Gr.langMap=ci;var y3=Gr;var Vh=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],di=new Map(Vh),Vr=class extends ne{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:di.get(u)||u,to:di.get(r)||r,apikey:this.APIKEY})},s=await W(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` -`)&&(l=l.slice(0,-1)),{text:l,from:u,to:r}}else throw new Error(JSON.stringify(s))}};Vr.langMap=di;var T3=Vr;var Jh=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],mi=new Map(Jh),Jr=class extends ne{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:mi.get(r)||r};u!=="auto"&&(o.from=mi.get(u)||u);let i=new URLSearchParams(o),s=JSON.stringify(a.map(m=>({text:m}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await W(l);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(m=>m.translations.map(d=>d.text).join(" "))}}};Jr.langMap=mi;var C3=Jr;var Yh=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Tu=new Map(Yh),gi=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=` +`))}return{text:d,from:g[0]&&Qh.get(g[0].detected_source_language)||a,to:u}}};Gr.langMap=di;var w3=Gr;var e9=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],mi=new Map(e9),Vr=class extends ne{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:u,to:r}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:mi.get(u)||u,to:mi.get(r)||r,apikey:this.APIKEY})},s=await W(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` +`)&&(l=l.slice(0,-1)),{text:l,from:u,to:r}}else throw new Error(JSON.stringify(s))}};Vr.langMap=mi;var v3=Vr;var t9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],gi=new Map(t9),Jr=class extends ne{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:[]};let o={"api-version":"3.0",to:gi.get(r)||r};u!=="auto"&&(o.from=gi.get(u)||u);let i=new URLSearchParams(o),s=JSON.stringify(a.map(m=>({text:m}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await W(l);if(c.length===0)throw new Error("server response invalid");return{from:u,to:r,text:c.map(m=>m.translations.map(d=>d.text).join(" "))}}};Jr.langMap=gi;var k3=Jr;var n9=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Tu=new Map(n9),pi=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n,o;if(a.length===0)return{from:u,to:r,text:[]};let i=`
-`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!Tu.get(u)?(o=(await W({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Tu.get(u)||u,target:Tu.get(r)||r})):l.body=JSON.stringify({text:s,source:Tu.get(u),target:Tu.get(r)||r});let c=await W(l);if(c.translatedText==="")throw new Error("server response invalid");let m=c.translatedText.split("
").map(g=>g.trim());return{from:u,to:r,text:m}}},x3=gi;var Xh=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],Cu=new Map(Xh),Yr=class extends ne{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};u==="auto"||!Tu.get(u)?(o=(await W({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Tu.get(u)||u,target:Tu.get(r)||r})):l.body=JSON.stringify({text:s,source:Tu.get(u),target:Tu.get(r)||r});let c=await W(l);if(c.translatedText==="")throw new Error("server response invalid");let m=c.translatedText.split("
").map(g=>g.trim());return{from:u,to:r,text:m}}},S3=pi;var a9=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],xu=new Map(a9),Yr=class extends ne{constructor(n,a,u){super(n,a,u);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ht(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=Cu.get(u)||u,i=Cu.get(r)||r,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let d=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:d})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},m=this.getRandomKey();m&&(c.headers.Authorization="Bearer "+m,c.headers["api-key"]=m,m.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await W(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let d=g.choices[0].message.content.trim();return d.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(d=""),!a.includes(".")&&(d.endsWith("\u3002")||d.endsWith("."))&&(d=d.slice(0,-1)),{from:u,to:r,text:d}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,Cu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,Cu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await W(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:u,to:r,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};Yr.langMap=Cu;var w3=Yr;var pi=oe+"CacheKey_";function Xr(e,t){let n=pi+e;return U.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),u0(this,ka)}},hi=to;ka=new WeakMap;var bi=new hi;Object.freeze(bi);var xu=class extends ne{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: +{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(r=>r.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=Ht(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=Ht(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=xu.get(u)||u,i=xu.get(r)||r,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let d=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:d})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},m=this.getRandomKey();m&&(c.headers.Authorization="Bearer "+m,c.headers["api-key"]=m,m.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let g=await W(c);if(g&&g.choices&&g.choices.length>0&&g.choices[0].message&&g.choices[0].message.content){let d=g.choices[0].message.content.trim();return d.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(d=""),!a.includes(".")&&(d.endsWith("\u3002")||d.endsWith("."))&&(d=d.slice(0,-1)),{from:u,to:r,text:d}}else throw new Error("server response invalid: "+JSON.stringify(g))}async translate3(n){let{text:a,from:u,to:r}=n;if(a.length===0)return{from:u,to:r,text:""};let o=this.prompt.replace(/{{to}}/g,xu.get(r)||r).replace(/{{text}}/g,a).replace(/{{from}}/g,xu.get(u)||u),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await W(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:u,to:r,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};Yr.langMap=xu;var D3=Yr;var fi=oe+"CacheKey_";function Xr(e,t){let n=fi+e;return U.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:u,expired:r}=a[n];return r&&rt())),r0(this,ka)}},bi=to;ka=new WeakMap;var Ei=new bi;Object.freeze(Ei);var Cu=class extends ne{constructor(n,a,u){super(n,a,u);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: -{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{r=s,n.apply(l,i)};s-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await W({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return x.debug("delete conversation res:",a),a}}async translate(n){return await bi.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=eo.get(u)||u,i=eo.get(r)||r;if(this.accessToken=await v3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await W({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Mt(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:Mt()})});return x.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw x.debug("post chatgpt error:",c),await Qr(fi),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:m}=s;a(null,{from:l,to:c,text:m})},300,200);await bi.enqueue(async()=>{let s="chatgpt"+Mt(),l=U.runtime.connect({name:s}),c,m;l.onMessage.addListener(y=>{if(!(!y||y==="")){if(y==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{m=JSON.parse(y)}catch(p){x.debug("chatgpt json error",p,y);return}c=m?.conversation_id,m?.message?.author?.role==="assistant"&&i({from:r,to:o,text:m?.message?.content?.parts?.[0]})}});let g=eo.get(r)||r,d=eo.get(o)||o;if(this.accessToken=await v3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let C=this.prompt.replace(/{{to}}/g,d).replace(/{{text}}/g,u).replace(/{{from}}/g,g);W({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Mt(),role:"user",content:{content_type:"text",parts:[C]}}],model:f,parent_message_id:Mt()})}).catch(y=>{x.debug("chatgpt error",y),l.disconnect(),this.deleteConversation(c),a(y,{from:r,to:o,text:""})})})}};var Qh=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],$e={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Ei=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},yi=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Ei(t);if(a)return Array.isArray(n)?`${a}=${n.map(Ei).sort().join(`&${a}=`)}`:`${a}=${Ei(n)}`}).filter(t=>t).join("&"),Sa=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${$e.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[$e.tokenHeader]=t.sessionToken),u[$e.dateHeader]=a,u[$e.notSignBody]="",u[$e.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[$e.algorithmKey]=$e.algorithm,u[$e.signHeadersKey]="",u[$e.signQueriesKey]=void 0,u[$e.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[$e.signQueriesKey]=Object.keys(u).sort().join(";"),u[$e.signatureKey]=i,yi(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[$e.dateHeader]=n,t.sessionToken&&(this.request.headers[$e.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[$e.contentSha256Header]=await Xt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return Ur(await _n(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push($e.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` -`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=yi(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} +{{text}}`}throttleDebounce(n,a,u){let r=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{r=s,n.apply(l,i)};s-r>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},u))}}async deleteConversation(n){if(n){let a=await W({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return C.debug("delete conversation res:",a),a}}async translate(n){return await Ei.enqueue(async()=>{let{text:a,from:u,to:r}=n;if(a.length===0)return Promise.resolve({from:u,to:r,text:""});let o=eo.get(u)||u,i=eo.get(r)||r;if(this.accessToken=await A3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await W({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Mt(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:Mt()})});return C.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:u,to:r,text:c?.message?.content?.parts?.[0]})}catch(c){throw C.debug("post chatgpt error:",c),await Qr(hi),c}})}async translateStream(n,a){let{text:u,from:r,to:o}=n;if(u.length===0){a(null,{from:r,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:m}=s;a(null,{from:l,to:c,text:m})},300,200);await Ei.enqueue(async()=>{let s="chatgpt"+Mt(),l=U.runtime.connect({name:s}),c,m;l.onMessage.addListener(y=>{if(!(!y||y==="")){if(y==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{m=JSON.parse(y)}catch(p){C.debug("chatgpt json error",p,y);return}c=m?.conversation_id,m?.message?.author?.role==="assistant"&&i({from:r,to:o,text:m?.message?.content?.parts?.[0]})}});let g=eo.get(r)||r,d=eo.get(o)||o;if(this.accessToken=await A3(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let T=this.prompt.replace(/{{to}}/g,d).replace(/{{text}}/g,u).replace(/{{from}}/g,g);W({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Mt(),role:"user",content:{content_type:"text",parts:[T]}}],model:f,parent_message_id:Mt()})}).catch(y=>{C.debug("chatgpt error",y),l.disconnect(),this.deleteConversation(c),a(y,{from:r,to:o,text:""})})})}};var r9=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],$e={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},yi=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Ti=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=yi(t);if(a)return Array.isArray(n)?`${a}=${n.map(yi).sort().join(`&${a}=`)}`:`${a}=${yi(n)}`}).filter(t=>t).join("&"),Sa=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let u=t[a];return typeof u<"u"&&u!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],u=this.credentialString(n);return a.push(`${$e.algorithm} Credential=${t.accessKeyId}/${u}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),u={...this.request.params},r=this.request.params,o=this.request.headers;t.sessionToken&&(u[$e.tokenHeader]=t.sessionToken),u[$e.dateHeader]=a,u[$e.notSignBody]="",u[$e.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,u[$e.algorithmKey]=$e.algorithm,u[$e.signHeadersKey]="",u[$e.signQueriesKey]=void 0,u[$e.signatureKey]=void 0,u=this.sortParams(u),this.request.params=u,this.request.headers={};let i=await this.signature(t,a);return this.request.params=r,this.request.headers=o,u[$e.signQueriesKey]=Object.keys(u).sort().join(";"),u[$e.signatureKey]=i,Ti(u)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[$e.dateHeader]=n,t.sessionToken&&(this.request.headers[$e.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[$e.contentSha256Header]=await Xt(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return Ur(await _n(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push($e.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` +`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Ti(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} `),t.push(this.signedHeaders()),t.push(await this.hexEncodedBodyHash()),t.join(` `)}canonicalHeaders(){let t=[];Object.keys(this.request.headers).forEach(a=>{t.push([a,this.request.headers[a]])}),t.sort((a,u)=>a[0].toLowerCase(){let u=a[0].toLowerCase();if(this.isSignableHeader(u)){let r=a[1];if(typeof r>"u"||r===null||typeof r.toString!="function")throw new Error(`Header ${u} contains invalid value`);n.push(`${u}:${this.canonicalHeaderValues(r.toString())}`)}}),n.join(` -`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Xt(t)}async hexEncodedBodyHash(){return this.request.headers[$e.contentSha256Header]?this.request.headers[$e.contentSha256Header]:this.request.body?await this.hexEncodedHash(yi(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return Qh.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await _n(n,`${$e.kDatePrefix}${t.secretKey}`),o=await _n(a,r),i=await _n(u,o);return _n($e.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,$e.v4Identifier].join("/")}};var k3=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Ti=new Map(k3),e9=new Map(k3.map(([e,t])=>[t,e])),no=class extends ne{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Sa(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await W({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new Ze(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new Ze(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=Ti.get(u),i={TargetLanguage:Ti.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` -`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new Sa(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),m=await W({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(m.TranslationList){let g=m.TranslationList.map(f=>f.Translation),d=u;return m.TranslationList.length>0&&m.TranslationList[0].DetectedSourceLanguage&&(d=e9.get(m.TranslationList[0].DetectedSourceLanguage)||u),{text:g,from:d,to:r}}else if(m.ResponseMetadata&&m.ResponseMetadata.Error){let g=m.ResponseMetadata.Error;throw new Ze(g.Code,g.Message)}else if(m.ResponseMetaData&&m.ResponseMetaData.Error){let g=m.ResponseMetaData.Error;throw new Ze(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(m))}};no.langMap=Ti;var S3=no;var D3=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Ci=new Map(D3),t9=new Map(D3.map(([e,t])=>[t,e])),Da=class extends ne{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=Ci.get(u)||"detect",i=Ci.get(r)||r,l=await W({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,m=u;return l.detected_language&&(m=t9.get(l.detected_language)||u),{text:c,from:m,to:r}}else{let c=l.base_resp;throw new Ze(c.status_code.toString(),c.status_message)}}};Da.langMap=Ci;var n9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],xi=new Map(n9),Aa=class extends ne{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await W({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:xi.get(u)||u,target_lang:xi.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Aa.langMap=xi;var wi="https://{s}bing.com",M3=wi+"/translator",a9=wi+"/ttranslatev3",u9=wi+"/tspellcheckv3",ao="bingGlobalConfig",_3=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],A3=new Map(_3),L3=new Map(_3.map(([e,t])=>[t,e])),F3=1e3,Qt,La;function vi(e,t){return e.replace("{s}",t?t+".":"")}async function r9(){if(!Qt){let n=await U.storage.local.get(ao);return n&&(Qt=n[ao]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Qt;return Date.now()-e>t}async function P3(){let e,t,n,a,u,r,o,i,s,l;try{let c=vi(M3,e),m=await W({retry:2,url:c,responseType:"raw"}),{body:g,headers:d,url:f}=m;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=d["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,s]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Qt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await U.storage.local.set({[ao]:Qt}),Qt}function o9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Qt;return vi(e?u9:a9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Qt.count++:"")}function i9(e,t,n,a){let{token:u,key:r}=Qt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function B3(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>F3)throw new Error(`The supported maximum length of text is ${F3}. Please shorten the text.`);La||(La=P3()),await La,await r9()&&(La=P3(),await La),t=t||"auto",n=n||"zh-CN",t=A3.get(t)||t,n=A3.get(n)||n;let u=o9(!1),r=i9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:vi(M3,Qt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),s=u,l=i.toString(),c=await W({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Qt=null,La=null,await U.storage.local.remove(ao),c.ShowCaptcha)throw new Error(` +`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Xt(t)}async hexEncodedBodyHash(){return this.request.headers[$e.contentSha256Header]?this.request.headers[$e.contentSha256Header]:this.request.body?await this.hexEncodedHash(Ti(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return r9.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,u){let r=await _n(n,`${$e.kDatePrefix}${t.secretKey}`),o=await _n(a,r),i=await _n(u,o);return _n($e.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,$e.v4Identifier].join("/")}};var L3=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],xi=new Map(L3),o9=new Map(L3.map(([e,t])=>[t,e])),no=class extends ne{constructor(n,a,u){super(n,a,u);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let u={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},r=new Sa(u,"translate");await r.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(u.params),i=await W({retry:2,url:"https://open.volcengineapi.com"+u.pathname+"?"+o.toString(),headers:r.request.headers,method:u.method,body:u.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new Ze(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new Ze(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:u,to:r}=n,o=xi.get(u),i={TargetLanguage:xi.get(r)||r,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` +`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new Sa(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),m=await W({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(m.TranslationList){let g=m.TranslationList.map(f=>f.Translation),d=u;return m.TranslationList.length>0&&m.TranslationList[0].DetectedSourceLanguage&&(d=o9.get(m.TranslationList[0].DetectedSourceLanguage)||u),{text:g,from:d,to:r}}else if(m.ResponseMetadata&&m.ResponseMetadata.Error){let g=m.ResponseMetadata.Error;throw new Ze(g.Code,g.Message)}else if(m.ResponseMetaData&&m.ResponseMetaData.Error){let g=m.ResponseMetaData.Error;throw new Ze(g.Code,g.Message)}else throw new Error("response: "+JSON.stringify(m))}};no.langMap=xi;var F3=no;var P3=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Ci=new Map(P3),i9=new Map(P3.map(([e,t])=>[t,e])),Da=class extends ne{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:u,to:r}=n,o=Ci.get(u)||"detect",i=Ci.get(r)||r,l=await W({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,m=u;return l.detected_language&&(m=i9.get(l.detected_language)||u),{text:c,from:m,to:r}}else{let c=l.base_resp;throw new Ze(c.status_code.toString(),c.status_message)}}};Da.langMap=Ci;var s9=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],wi=new Map(s9),Aa=class extends ne{constructor(n,a,u){super(n,a,u);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:u,to:r}=n,i=await W({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:wi.get(u)||u,target_lang:wi.get(r)||r,text:a})});if(i.code===200)return{text:i.data,from:u,to:r};throw new Error(i.message||i.message||"API Error")}};Aa.langMap=wi;var vi="https://{s}bing.com",O3=vi+"/translator",l9=vi+"/ttranslatev3",c9=vi+"/tspellcheckv3",ao="bingGlobalConfig",N3=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],M3=new Map(N3),_3=new Map(N3.map(([e,t])=>[t,e])),B3=1e3,Qt,La;function ki(e,t){return e.replace("{s}",t?t+".":"")}async function d9(){if(!Qt){let n=await U.storage.local.get(ao);return n&&(Qt=n[ao]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Qt;return Date.now()-e>t}async function R3(){let e,t,n,a,u,r,o,i,s,l;try{let c=ki(O3,e),m=await W({retry:2,url:c,responseType:"raw"}),{body:g,headers:d,url:f}=m;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=d["set-cookie"],t=g.match(/IG:"([^"]+)"/)[1],n=g.match(/data-iid="([^"]+)"/)[1],[u,a,r,o,i,s]=JSON.parse(g.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Qt={subdomain:e,IG:t,IID:n,key:u,token:a,tokenTs:u,tokenExpiryInterval:r,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await U.storage.local.set({[ao]:Qt}),Qt}function m9(e){let{IG:t,IID:n,subdomain:a,isVertical:u}=Qt;return ki(e?c9:l9,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Qt.count++:"")}function g9(e,t,n,a){let{token:u,key:r}=Qt,o={fromLang:n,text:t,token:u,key:r};return!e&&a&&(o.to=a),o}async function I3(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>B3)throw new Error(`The supported maximum length of text is ${B3}. Please shorten the text.`);La||(La=R3()),await La,await d9()&&(La=R3(),await La),t=t||"auto",n=n||"zh-CN",t=M3.get(t)||t,n=M3.get(n)||n;let u=m9(!1),r=g9(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:ki(O3,Qt.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(r),s=u,l=i.toString(),c=await W({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Qt=null,La=null,await U.storage.local.remove(ao),c.ShowCaptcha)throw new Error(` Sorry that bing translator seems to be asking for the captcha, Please take care not to request too frequently. The response code is ${c.StatusCode}. `);if(c.StatusCode===401)throw new Error(` Max count of translation exceeded. Please try it again later. The response code is 401. - `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let m=c[0].translations[0],g=c[0].detectedLanguage;return{text:m.text,from:L3.get(g.language),to:L3.get(m.to)}}function R3(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Qn=null,s9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],ki=new Map(s9),Fa=class extends ne{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Qn=null,await Qr(Qu)}async translate(n){let{text:a,from:u,to:r}=n;return a?await B3(a,u,r):{...n}}async init(){if(!Qn){Qn={};let n=await Xr(Qu);n&&(Qn=n)}await O3(Qn)}async translateList(n){let{from:a,to:u,text:r}=n,o=ki.get(a)||"auto",i=ki.get(u)||u;o==="auto"&&(o="");let s=await O3(Qn),l=[];for(let d of r)l.push({Text:d});let c=JSON.stringify(l),m=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await W({url:m,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(d=>d.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(g))}};Fa.langMap=ki;async function O3(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return N3().catch(u=>{x.error(u)}),e}return N3()}async function N3(){let e=await yu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=R3(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return Qn=t,await Zr(Qu,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var I3=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Si=new Map(I3),l9=new Map(I3.map(([e,t])=>[t,e])),uo=class extends ne{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Si.get(s)||"auto",to:Si.get(l)||l,q:i,salt:a,appid:r,sign:An(r+i+a+o)}),m=new URL(u);m.search=c.toString();let g=await W({url:m.toString()});if(g.error_code)throw new Ze("API_SERVER_ERROR",g.error_msg);let{trans_result:d,from:f}=g,C=d.map(({dst:p})=>p);return{from:l9.get(f)||f,to:l,text:C.join(` -`)}}};uo.langMap=Si;var j3=uo;var c9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ro=new Map(c9),oo=class extends ne{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!ro.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Je({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await W({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${ro.get(u)||"auto"}2${ro.get(r)}`})})).target,from:u,to:r}}};oo.langMap=ro;var z3=oo;var d9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],io=new Map(d9),so=class extends ne{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!io.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Je({text:a.join(" "),minLength:10}));let i=a;return{text:(await W({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${io.get(u)||"auto"}2${io.get(r)}`})})).target,from:u,to:r}}};so.langMap=io;var H3=so;var U3=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Di=new Map(U3),m9=new Map(U3.map(([e,t])=>[t,e]));function g9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var lo=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=p9(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+g9(a)+o+i+this.appSecret,l=await Xt(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Di.get(u)||"auto",to:Di.get(r)||r,sign:l,signType:"v3",curtime:i.toString()},m=new URLSearchParams(c),d=await W({url:"https://openapi.youdao.com/api",method:"POST",body:m.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!d.translation)throw new Error(JSON.stringify(d));let f=d.l,[C,y]=f.split("2");return{text:d.translation.join(` -`),from:m9.get(C),to:r}}};lo.langMap=Di;function p9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var co=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:Ai.get(u)||"auto",to:Ai.get(r)||r},i=new URLSearchParams(o),s=await W({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` -`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};co.langMap=Ai;var K3=co;var f9={mock:va,mock2:va,google:bn,transmart:Zn,deepl:y3,volc:S3,volcAlpha:Da,bing:Fa,tencent:Jn,tenAlpha:Yn,baidu:j3,caiyun:z3,cai:H3,openl:Kr,youdao:W3,you:K3,d:Rn,dpro:Rn,deeplx:Aa,niu:T3,azure:C3,openai:w3,chatgpt:xu,papago:x3},On={};Object.keys(fn).forEach(e=>{On[e]={...fn[e],class:f9[e]}});function $3(e,t){let n=zt;if(On[e]&&On[e].class&&On[e].class.langMap&&On[e].class.langMap.size>0){let a=On[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return zt}async function Pa(e,t){if(!e.text)return e;let n=await rn({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Ze("translateFailed","translate failed")}async function Li(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new On[r].class(o,a,{translationService:r}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await Xc(r,o),await i.init()}async function rn(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,s=u,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],m={sentences:Array(e.sentences.length)},g=e.sentences.length,d=-1;if(r.cache)for(let p of e.sentences){d++;let T=s;s==="openl"&&(T=s+"-"+l.codename||Kr.DEFAULT_CODENAME);let v=null;try{v=await Uu(Mc({originalText:p.text,from:p.from,to:p.to,service:T}),1e3)}catch(k){x.warn("query cache DB error, but it's ok",k)}if(v){let k={...p,text:v.translatedText};m.sentences[d]=k,n&&n(null,k,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&x.debug(`use ${g-f} sentences from cache`),!c.length)return m;let C;try{C=new On[s].class(l,o,{translationService:s}),await C.init()}catch(p){if(n)for(let T of c)n(p,null,T);throw p}let y=await C.multipleTranslate({sentences:c},l,(p,T,v)=>{if(n&&n(p,T,v),!p&&T&&!s.startsWith("mock")&&r.cache){let k=s;s==="openl"&&(k=s+"-"+l.codename||Kr.DEFAULT_CODENAME),r.cache&&Uu(_c({translatedText:T.text,from:v.from,to:v.to,detectedFrom:T.from,key:An(v.text),service:k}),3e3).catch(S=>{x.warn("set cache DB error",S)})}});for(let p of y.sentences){let T=m.sentences.findIndex(v=>!v);if(T===-1)throw new Ze("translateFailed","can not match the result");m.sentences[T]=p}return m}var mo=!1,h9=te();function G3(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function b9(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&V3(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Nn(r,rr)){if(u===!0)return!0;continue}if(wu(r.nodeName,t.inlineTags))return!0;if(!Fi(r,t))return!1}}return!0}function Pi(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(wu(e.nodeName,n)||Fi(e,t)){if(Nn(e,S4)||wu(e.nodeName,["BR"]))return!1;if(Nn(e,rr))return!0;if(Fi(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return b9(e,t)}else return Nn(e,rr);return!1}function V3(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Nn(e,k4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Nn(e,y4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||wu(e.nodeName,r))}function Ma(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!Y3(a)&&a.length>=n}function J3(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(Y3(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function Y3(e){for(let t=0;t127)return!1;return!0}function X3(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function Z3(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function Q3(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function ed(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Nn(e,t,n=!1){return Mi(e,t,"1",n)}function Mi(e,t,n,a=!1){return mo&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function _a(e){return(e.innerText||e.textContent||"").trim()}function _i(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function go(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Ye(e,t,n,a=!1){e.isContentEditable||(mo&&!a?(e.dataset[lu]||(e.dataset[lu]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[lu]||(e.dataset[lu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function po(e,t,n=!1){if(mo&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function Ba(e,t,n=!1){return mo&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function Fi(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!wu(e.nodeName,n)}function Ra(e){let{config:t}=e,n=or;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ze(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Qe())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function In(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){x.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else x.warn("injectCSS failed, rootDocument does not have head node",e)}function Oa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(h9){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function wu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function td(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function nd(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||V3(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return x.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function ad(e,t,n){let a=0,u=(r,o,i,s)=>{if(++a>100||s===r)return r;let l=r.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return r;let c=l.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}var E9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function En(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function Bi(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(En(e,r))return!1;if(En(e,u)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!E9.includes(n.display):En(e,a)}var _t=En;function ea(e){return!!e.shadowRoot}function jn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function vu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function fo(e){let t=or;return e&&(t=e),t}async function on(e,t="",n=100){let a="auto";return t?await Je({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Ea()),a)}function ho(e,t){return Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function y9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${I}-loading-${n} notranslate">`}function ku(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",jt),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Ye(a,w4,t.toString());let u=y9(e);return a.innerHTML=Ae.sanitize(u),a}function Na(e,t){return e.querySelector(`[${M0}='${t}']`)}function ud(){document.querySelectorAll(`[${M0}]`).forEach(t=>{t.remove()})}function rd(){document.querySelectorAll(`.${jt}-error`).forEach(t=>{t.remove()})}function od(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Oa(n)&&t.push(n)}),t}function id(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let s=u[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||ed(i)||X3(i)||Q3(i)||Z3(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ma(r,n,a)}function sn(e){return e.nodeType===Node.ELEMENT_NODE}function sd(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function ld(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var T9=1e5;function zn(e){let{onParagraph:t,filterRule:n,id:a}=e;n=C9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,m={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,d=null;function f(k){let{container:S,onFrame:A,onIgnoreElement:B,id:M}=k,D=document.createTreeWalker(S,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,w=>{let G=z(w);return G==NodeFilter.FILTER_ACCEPT?At.mark(w,M):G==NodeFilter.FILTER_REJECT,G}),P=S;if(z(P)===NodeFilter.FILTER_REJECT)return;for(At.mark(P,M);P;){if(o&&o.length>0){let{currentNode:w,isMatchedSelection:G}=C(D,P,o);if(w)P=w;else break;if(!G)continue}if(P.nodeType===Node.ELEMENT_NODE||P.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let w=P;if(w.nodeName==="IFRAME"){A&&A(w);break}w.nodeType===Node.ELEMENT_NODE&&(r&&Oi(w,r),l&&Ii(w,l));let G=Bi(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(_t(w,u)&&!G){p(w);let be=null;for(;!(be=D.nextSibling())&&D.parentNode(););P=be;continue}let de=ea(w);(!cd(m,w)||G)&&(y(),w.childNodes.length>0&&T(m,w,w.immersiveTranslateComputedStyle||null)),de&&w.shadowRoot?.mode==="open"&&(G?A?.(w.shadowRoot):f({...k,container:w.shadowRoot})),w.nodeType===Node.ELEMENT_NODE&&w.nodeName==="PRE"&&i&&k9(w)}else if(P.nodeType===Node.TEXT_NODE)p(P);else throw new Error("should not be here");P=D.nextNode(),m.commonAncestorContainer&&P&&P.parentNode===m.commonAncestorContainer&&(m._currentStacks=[]),m.commonAncestorContainer&&P&&P.nodeType===Node.ELEMENT_NODE&&m._currentStacks.push(P)}function z(w){if(w.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(sn(w)){if(l){let q=Object.keys(l);if(q.length>0&&_t(w,q))for(let fe of q){let Bt=l[fe];if(w.matches(fe)){let Ee=l[fe],wt=Object.keys(Ee);for(let ye of wt){let b=Ee[ye];w.getAttribute(ye)!==b&&(b===null?w.removeAttribute(ye):w.setAttribute(ye,b))}break}}}if(!k.force&&At.isMarked(w,M)||sd(w,M)||ji(w,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||w.nodeName==="IFRAME"&&!Oa(w))return NodeFilter.FILTER_REJECT;if(w.nodeType===Node.ELEMENT_NODE){let q=window.getComputedStyle(w);if(w.immersiveTranslateComputedStyle={display:q.display,whiteSpace:q.whiteSpace},Ni(w.immersiveTranslateComputedStyle))return B&&B(w),NodeFilter.FILTER_REJECT;let be=Bi(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(_t(w,u)&&be)return NodeFilter.FILTER_REJECT}let{width:G,height:de}=w.getBoundingClientRect();return w.nodeName==="IMG"&&(G>48&&de>48?w.immersiveTranslateComputedStyle={display:"block"}:G>0&&de>0&&c!==!1&&(w.setAttribute("width",G),w.setAttribute("height",de))),!w.childNodes||w.childNodes&&w.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!m.isPreWhitespace&&(G>0&&G<4||de>0&&de<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(w.nodeType===Node.TEXT_NODE){let G=w.textContent?.trim();if(!G)return m.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let de=w.parentNode;if(de.getBoundingClientRect){let{width:q,height:be}=de.getBoundingClientRect();if(q>0&&q<4||be>0&&be<4)return NodeFilter.FILTER_REJECT}return s>0&&G.length>=s&&Ri(w,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),m&&m.commonAncestorContainer&&m.flatNodes.length>0&&y();function C(k,S,A){let B=S.immersiveTranslateComputedStyle||null;if(d){if(!d.contains(S))if(g=!1,S&&S.nodeType===Node.ELEMENT_NODE)if(bo(S,A))g=!0,d=S,y(),T(m,d,B);else return g=!1,S=k.nextNode(),{currentNode:S,isMatchedSelection:g};else return g=!1,S=k.nextNode(),{currentNode:S,isMatchedSelection:g}}else if(S&&S.nodeType===Node.ELEMENT_NODE)if(bo(S,A))g=!0,d=S,y(),T(m,d,B);else return g=!1,S=k.nextNode(),{currentNode:S,isMatchedSelection:g};else return g=!1,S=k.nextNode(),{currentNode:S,isMatchedSelection:g};return{currentNode:S,isMatchedSelection:!0}}function y(){let k=v9(m,a);k&&t&&t(k),dd(m)}function p(k){if(!cd(m,k)){y(),dd(m);let S=k.parentNode;S&&T(m,S,S.computedStyle)}m.flatNodes.push(k)}function T(k,S,A){k.commonAncestorContainer=S;let B=v(A);k.isPreWhitespace=B}function v(k){return k&&k.whiteSpace&&k.whiteSpace.startsWith("pre")||k&&k.whiteSpace==="break-spaces"||!1}}function cd(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=ea(t));let a=w9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function C9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function x9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function Oi(e,t){if(t){let n=Object.keys(t);if(n.length>0&&_t(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function w9(e){return e&&e._currentStacks?e._currentStacks.some(t=>ea(t)):!1}function v9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=S9(n,a);r||(r=a);let o=[];for(let g of n){let d=x9(e,r,g);d&&(o.includes(d)||o.push(d))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,m=0;for(;c&&(l.push(c),c!==s);){if(m++,m>T9){x.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function dd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function Ni(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var At={_marked_key:"immersive_translate_walked",isMarked(e,t){return Mi(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return po(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return Ye(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=Ba(e,"markWalk")||"";return Ye(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||ea(e)):!1}};function k9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=Ae.sanitize(n)}function S9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function Ri(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",s=n[r+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&Ri(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),s=document.createElement("br");i.parentNode?.insertBefore(s,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=G3(e,[a]);for(let i of o)for(let s of r){let l=u[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function gd(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let m of l){let g=s[m];if(m==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||D9(c,u,r)||!J3(f,n,a))continue}c.getAttribute(m)!==g&&(g===null?c.removeAttribute(m):c.setAttribute(m,g))}}}function Ii(e,t){if(t){let n=Object.keys(t);if(n.length>0&&_t(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function ji(e,t){return _t(e,t.excludeSelectors||[])?_t(e,t.selectors||[])?!1:!_t(e,t.stayOriginalSelectors||[]):!1}function bo(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return _t(e,t.concat(n))}function D9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ma(r,t,n))return!0}}return!1}var pd=["*://*/*","*","*://*"],hd="immersive-translate-wildcard-placeholder.com";function zi(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>pd.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===r)return!0;if(pd.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===r:L9(u,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let y=i.split("://");l=y[0],l==="*"&&y.length>1&&(l="*",i="https://"+y[1])}else l="*",i="https://"+i;let m=i.replace(/\*/g,hd),g;try{g=new URL(m)}catch{return x.debug("invalid match pattern",m,"raw match value:",c),!1}let d=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let C=A9(l+":",fd(d),fd(f));if(C){let y=new URL(u);return y.port="",C.test(y.href)}else return!1}});if(o)return o}return null}function fd(e){return e.replaceAll(hd,"*")}function A9(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Wt(e,t){return zi(e,t)!==null}function L9(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}async function qt(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:m,targetLanguage:g,sourceLanguageUrlPattern:d,immediateTranslationPattern:f}=n,C=Ia(t,o),y=Ia(t,f),p=i,T=Object.keys(s);for(let Z of T){let Te=s[Z];if(Ia(t,Te)){p=Z;break}}let v=l,k=Object.keys(c);for(let Z of k){let Te=c[Z];if(Te&&Ia(t,Te)){v=Z;break}}let S=Ia(t,m),A=bd(t,m);A||(A=Wt(t,O4)),A||(A=Wt(t,n.blockUrls));let B=bd(t,n.inputTranslationUrlPattern);B||(B=Wt(t,n.inputTranslationBlockUrls));let M=Wt(t,n.mutationBlockUrls),D=Object.keys(d),P={};for(let Z of D){let Te=d[Z];if(Te&&Te.matches)for(let X of Te.matches)P[X]=Z}let z=Object.keys(P),w=zi(t,z);w&&(r=P[w]??"auto",P[w]&&P[w]!=="auto"&&Ut(P[w]));let G=g||"zh-CN",de=u.hostname,q=await Xt(de),be=u.pathname+u.search+u.hash,fe=await Xt(be),Bt=`https://${q}.com/${fe}`,Ee=await gu(),wt=await nc(),ye=n.translationStartMode;ye==="dynamic"&&y&&(ye="immediate");let b={targetLanguage:G,config:n,translationService:p,isTranslateUrl:S,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:A,isMutationTranslationExcludeUrl:M,isInputTranslationExcludeUrl:B,rule:n.generalRule,url:t,encryptedUrl:Bt,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:C,cache:n.cache,translationTheme:v},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:C,cache:n.cache,translationTheme:v},localConfig:Ee};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(Z=>!b.config.generalRule.bodyTranslateTags.includes(Z)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(Z=>Z!==".btn"));let R=n.translationServices[b.translationService]||{};R.immediateTranslationTextCount!==void 0&&F9(R.immediateTranslationTextCount)&&R.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=R.immediateTranslationTextCount),b.translationService==="deepl"&&R&&R.authKey&&R.authKey.startsWith("immersive_")&&R.immediateTranslationTextCountForImmersiveDeepl!==void 0&&R.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=R.immediateTranslationTextCountForImmersiveDeepl),R&&R.translationDebounce&&typeof R.translationDebounce=="number"&&(b.state.translationDebounce=R.translationDebounce);let $=wt.immediateTranslationTextCount;n.immediateTranslationTextCount!==$&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let se=n.rules,V;globalThis.PDFViewerApplication?V=se.find(Z=>Z.isPdf):globalThis.immersiveTranslateEbookViewer?V=se.find(Z=>Z.isEbook):globalThis.immersiveTranslateEbookBuilder?V=se.find(Z=>Z.isEbookBuilder):V=se.find(Z=>Ia(t,Z)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),V&&V.isEbookBuilder&&(b.state.translationStartMode="immediate");let Se=n.generalRule;if(V&&(b.rule=fr(Se,V)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(Z=>!b.rule.bodyTranslateTags.includes(Z)&&!b.rule.forceTranslateTags.includes(Z))),b.rule.mainFrameSelector){let Z=document.querySelector(b.rule.mainFrameSelector);Z&&(b.mainFrame=Z)}return b}function Ia(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&Wt(e,a)?!1:n&&n.length>0&&Wt(e,n)?!0:r&&r.length>0&&go(r)?!1:!!(u&&u.length>0&&go(u))}function bd(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Wt(e,n)||a&&a.length>0&&go(a))}function F9(e){return typeof e=="number"}function Ed(e,t,n,a){let u=t,r=M4[u]||[],o="";e&&r&&r.length>0&&r.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let m=n[c];if(["borderRadius"].includes(c)&&(m+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${m}; -`,t==="marker"&&c==="backgroundColor"&&typeof m=="string"){let{r:g,g:d,b:f}=td(m);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${g}, ${d}, ${f}; + `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let m=c[0].translations[0],g=c[0].detectedLanguage;return{text:m.text,from:_3.get(g.language),to:_3.get(m.to)}}function j3(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),u=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),r=JSON.parse(u),o=new Date(r.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Qn=null,p9=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Si=new Map(p9),Fa=class extends ne{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Qn=null,await Qr(Qu)}async translate(n){let{text:a,from:u,to:r}=n;return a?await I3(a,u,r):{...n}}async init(){if(!Qn){Qn={};let n=await Xr(Qu);n&&(Qn=n)}await z3(Qn)}async translateList(n){let{from:a,to:u,text:r}=n,o=Si.get(a)||"auto",i=Si.get(u)||u;o==="auto"&&(o="");let s=await z3(Qn),l=[];for(let d of r)l.push({Text:d});let c=JSON.stringify(l),m=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,g=await W({url:m,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(g&&g.length>0&&g[0].translations&&g[0].translations.length>0)return{text:g.map(d=>d.translations[0]?.text||""),from:a,to:u};throw new Error("Microsoft translate error "+JSON.stringify(g))}};Fa.langMap=Si;async function z3(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return H3().catch(u=>{C.error(u)}),e}return H3()}async function H3(){let e=await yu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=j3(e),n=t.accessTokenExpiresAt,u=new Date(n).getTime()-Date.now();return Qn=t,await Zr(Qu,t,u-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var U3=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Di=new Map(U3),f9=new Map(U3.map(([e,t])=>[t,e])),uo=class extends ne{constructor(n,a,u){super(n,a,u);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:u}=this,{appid:r,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Di.get(s)||"auto",to:Di.get(l)||l,q:i,salt:a,appid:r,sign:An(r+i+a+o)}),m=new URL(u);m.search=c.toString();let g=await W({url:m.toString()});if(g.error_code)throw new Ze("API_SERVER_ERROR",g.error_msg);let{trans_result:d,from:f}=g,T=d.map(({dst:p})=>p);return{from:f9.get(f)||f,to:l,text:T.join(` +`)}}};uo.langMap=Di;var W3=uo;var h9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ro=new Map(h9),oo=class extends ne{constructor(n,a,u){super(n,a,u);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(r=>r.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:u,to:r}=n;if(!ro.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ve({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await W({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${ro.get(u)||"auto"}2${ro.get(r)}`})})).target,from:u,to:r}}};oo.langMap=ro;var q3=oo;var b9=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],io=new Map(b9),so=class extends ne{constructor(n,a,u){super(n,a,u);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:u,to:r}=n;if(!io.get(r))throw new Error(`Unsupported language: ${r}`);u==="auto"&&(u=await Ve({text:a.join(" "),minLength:10}));let i=a;return{text:(await W({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${io.get(u)||"auto"}2${io.get(r)}`})})).target,from:u,to:r}}};so.langMap=io;var $3=so;var K3=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Ai=new Map(K3),E9=new Map(K3.map(([e,t])=>[t,e]));function y9(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var lo=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o=T9(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+y9(a)+o+i+this.appSecret,l=await Xt(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Ai.get(u)||"auto",to:Ai.get(r)||r,sign:l,signType:"v3",curtime:i.toString()},m=new URLSearchParams(c),d=await W({url:"https://openapi.youdao.com/api",method:"POST",body:m.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!d.translation)throw new Error(JSON.stringify(d));let f=d.l,[T,y]=f.split("2");return{text:d.translation.join(` +`),from:E9.get(T),to:r}}};lo.langMap=Ai;function T9(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,u=0;for(;u[t,e]));var co=class extends ne{constructor(n,a,u){super(n,a,u);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:u,to:r}=n,o={q:a,from:Li.get(u)||"auto",to:Li.get(r)||r},i=new URLSearchParams(o),s=await W({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` +`),from:u,to:r};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};co.langMap=Li;var J3=co;var x9={mock:va,mock2:va,google:bn,transmart:Zn,deepl:w3,volc:F3,volcAlpha:Da,bing:Fa,tencent:Jn,tenAlpha:Yn,baidu:W3,caiyun:q3,cai:$3,openl:$r,youdao:G3,you:J3,d:Rn,dpro:Rn,deeplx:Aa,niu:v3,azure:k3,openai:D3,chatgpt:Cu,papago:S3},On={};Object.keys(fn).forEach(e=>{On[e]={...fn[e],class:x9[e]}});function Y3(e,t){let n=zt;if(On[e]&&On[e].class&&On[e].class.langMap&&On[e].class.langMap.size>0){let a=On[e].class.langMap,u=n.filter(r=>a.get(r));return u.includes(t)||u.unshift("placeholder"),u}else return zt}async function Pa(e,t){if(!e.text)return e;let n=await on({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new Ze("translateFailed","translate failed")}async function Fi(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,u=t.translationServices,r=n,o=u[r]||{},i=new On[r].class(o,a,{translationService:r}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await t3(r,o),await i.init()}async function on(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:u,state:r}=t,o=a.translationGeneralConfig,i=a.translationServices,s=u,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(p=>({...p,from:"auto"})));let c=[],m={sentences:Array(e.sentences.length)},g=e.sentences.length,d=-1;if(r.cache)for(let p of e.sentences){d++;let x=s;s==="openl"&&(x=s+"-"+l.codename||$r.DEFAULT_CODENAME);let v=null;try{v=await Uu(Oc({originalText:p.text,from:p.from,to:p.to,service:x}),1e3)}catch(k){C.warn("query cache DB error, but it's ok",k)}if(v){let k={...p,text:v.translatedText};m.sentences[d]=k,n&&n(null,k,p)}else c.push(p)}else c.push(...e.sentences);let f=c.length;if(g-f>0&&C.debug(`use ${g-f} sentences from cache`),!c.length)return m;let T;try{T=new On[s].class(l,o,{translationService:s}),await T.init()}catch(p){if(n)for(let x of c)n(p,null,x);throw p}let y=await T.multipleTranslate({sentences:c},l,(p,x,v)=>{if(n&&n(p,x,v),!p&&x&&!s.startsWith("mock")&&r.cache){let k=s;s==="openl"&&(k=s+"-"+l.codename||$r.DEFAULT_CODENAME),r.cache&&Uu(Nc({translatedText:x.text,from:v.from,to:v.to,detectedFrom:x.from,key:An(v.text),service:k}),3e3).catch(S=>{C.warn("set cache DB error",S)})}});for(let p of y.sentences){let x=m.sentences.findIndex(v=>!v);if(x===-1)throw new Ze("translateFailed","can not match the result");m.sentences[x]=p}return m}var mo=!1,C9=te();function X3(e,t){let n=[];for(let a of t){let u=e.querySelectorAll(a);for(let r of u)n.push(r)}return n}function w9(e,t){let n=function(r){return r.nodeType===Node.ELEMENT_NODE||r.nodeType===Node.TEXT_NODE?r.nodeType===Node.ELEMENT_NODE&&Z3(r,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),u=!0;for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.ELEMENT_NODE){if(Nn(r,rr)){if(u===!0)return!0;continue}if(wu(r.nodeName,t.inlineTags))return!0;if(!Pi(r,t))return!1}}return!0}function Mi(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(wu(e.nodeName,n)||Pi(e,t)){if(Nn(e,F4)||wu(e.nodeName,["BR"]))return!1;if(Nn(e,rr))return!0;if(Pi(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return w9(e,t)}else return Nn(e,rr);return!1}function Z3(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&Nn(e,L4,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&Nn(e,w4))return!1;let{stayOriginalTags:a,excludeTags:u}=t,r=[];return n&&u&&u.length>0?r=u||[]:r=u.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||wu(e.nodeName,r))}function Ma(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!ed(a)&&a.length>=n}function Q3(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(ed(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function ed(e){for(let t=0;t127)return!1;return!0}function td(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function nd(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function ad(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function ud(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function Nn(e,t,n=!1){return _i(e,t,"1",n)}function _i(e,t,n,a=!1){return mo&&!a?e[St]?!!(e[St]&&e[St][t]===n):!1:e.dataset[t]===n}function _a(e){return(e.innerText||e.textContent||"").trim()}function Bi(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function go(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function Ye(e,t,n,a=!1){e.isContentEditable||(mo&&!a?(e.dataset[lu]||(e.dataset[lu]="1"),e[St]||(e[St]={}),e[St][t]||(e[St][t]=n)):(e.dataset[lu]||(e.dataset[lu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function po(e,t,n=!1){if(mo&&!n){if(!e[St]||!e[St][t])return;delete e[St][t]}else delete e.dataset[t]}function Ba(e,t,n=!1){return mo&&!n?!e[St]||!e[St][t]?void 0:e[St][t]:e.dataset[t]}function Pi(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!wu(e.nodeName,n)}function Ra(e){let{config:t}=e,n=or;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function ze(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Qe())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function In(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){C.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let u=e.querySelector(`style[data-id="${n}"]`);u&&u.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else C.warn("injectCSS failed, rootDocument does not have head node",e)}function Oa(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(C9){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function wu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function rd(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),u=parseInt(t.substring(4,6),16);return{r:n,g:a,b:u}}function od(e,t,n,a){if(a.document.caretPositionFromPoint){let u=a.document.caretPositionFromPoint(e,t);if(u){let r=a.document.createRange(),o=u.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||Z3(o,n,!0))return null;try{r.setStart(o,u.offset),r.setEnd(o,u.offset)}catch(i){return C.warn("getRangeFromPoint error",i),null}return r}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function id(e,t,n){let a=0,u=(r,o,i,s)=>{if(++a>100||s===r)return r;let l=r.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return r;let c=l.elementFromPoint(o,i);return c?u(c,o,i,r):r};return u(e,t,n)}var v9=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function En(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function Ri(e,t,n){let{blockSelectors:a,extraBlockSelectors:u,extraInlineSelectors:r}=t;if(En(e,r))return!1;if(En(e,u)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!v9.includes(n.display):En(e,a)}var _t=En;function ea(e){return!!e.shadowRoot}function jn(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function vu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function fo(e){let t=or;return e&&(t=e),t}async function en(e,t="",n=100){let a="auto";return t?await Ve({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=Ea()),a)}function ho(e,t){return Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function k9(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${N}-loading-${n} notranslate">`}function ku(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",jt),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),Ye(a,D4,t.toString());let u=k9(e);return a.innerHTML=Ce.sanitize(u),a}function Na(e,t){return e.querySelector(`[${_0}='${t}']`)}function sd(){document.querySelectorAll(`[${_0}]`).forEach(t=>{t.remove()})}function ld(){document.querySelectorAll(`.${jt}-error`).forEach(t=>{t.remove()})}function cd(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{Oa(n)&&t.push(n)}),t}function dd(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:u,text:r}=e,o=new RegExp(`${u[0]}(\\d+)${u[1]}`,"gi");if(u.length>2){let s=u[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=r.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(r)||i.includes("")||i.includes("< styles>")||ud(i)||td(i)||ad(i)||nd(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Ma(r,n,a)}function sn(e){return e.nodeType===Node.ELEMENT_NODE}function md(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function gd(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var S9=1e5;function zn(e){let{onParagraph:t,filterRule:n,id:a}=e;n=D9(n);let{stayOriginalSelectors:u,globalStyles:r,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,m={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},g=!1,d=null;function f(k){let{container:S,onFrame:A,onIgnoreElement:B,id:M}=k,D=document.createTreeWalker(S,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,w=>{let G=z(w);return G==NodeFilter.FILTER_ACCEPT?At.mark(w,M):G==NodeFilter.FILTER_REJECT,G}),P=S;if(z(P)===NodeFilter.FILTER_REJECT)return;for(At.mark(P,M);P;){if(o&&o.length>0){let{currentNode:w,isMatchedSelection:G}=T(D,P,o);if(w)P=w;else break;if(!G)continue}if(P.nodeType===Node.ELEMENT_NODE||P.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let w=P;if(w.nodeName==="IFRAME"){A&&A(w);break}w.nodeType===Node.ELEMENT_NODE&&(r&&Ni(w,r),l&&ji(w,l));let G=Ri(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(_t(w,u)&&!G){p(w);let be=null;for(;!(be=D.nextSibling())&&D.parentNode(););P=be;continue}let de=ea(w);(!pd(m,w)||G)&&(y(),w.childNodes.length>0&&x(m,w,w.immersiveTranslateComputedStyle||null)),de&&w.shadowRoot?.mode==="open"&&(G?A?.(w.shadowRoot):f({...k,container:w.shadowRoot})),w.nodeType===Node.ELEMENT_NODE&&w.nodeName==="PRE"&&i&&P9(w)}else if(P.nodeType===Node.TEXT_NODE)p(P);else throw new Error("should not be here");P=D.nextNode(),m.commonAncestorContainer&&P&&P.parentNode===m.commonAncestorContainer&&(m._currentStacks=[]),m.commonAncestorContainer&&P&&P.nodeType===Node.ELEMENT_NODE&&m._currentStacks.push(P)}function z(w){if(w.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(sn(w)){if(l){let q=Object.keys(l);if(q.length>0&&_t(w,q))for(let fe of q){let Bt=l[fe];if(w.matches(fe)){let Ee=l[fe],wt=Object.keys(Ee);for(let ye of wt){let b=Ee[ye];w.getAttribute(ye)!==b&&(b===null?w.removeAttribute(ye):w.setAttribute(ye,b))}break}}}if(!k.force&&At.isMarked(w,M)||md(w,M)||zi(w,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:u})||w.nodeName==="IFRAME"&&!Oa(w))return NodeFilter.FILTER_REJECT;if(w.nodeType===Node.ELEMENT_NODE){let q=window.getComputedStyle(w);if(w.immersiveTranslateComputedStyle={display:q.display,whiteSpace:q.whiteSpace},Ii(w.immersiveTranslateComputedStyle))return B&&B(w),NodeFilter.FILTER_REJECT;let be=Ri(w,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},w.immersiveTranslateComputedStyle||null);if(_t(w,u)&&be)return NodeFilter.FILTER_REJECT}let{width:G,height:de}=w.getBoundingClientRect();return w.nodeName==="IMG"&&(G>48&&de>48?w.immersiveTranslateComputedStyle={display:"block"}:G>0&&de>0&&c!==!1&&(w.setAttribute("width",G),w.setAttribute("height",de))),!w.childNodes||w.childNodes&&w.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!m.isPreWhitespace&&(G>0&&G<4||de>0&&de<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(w.nodeType===Node.TEXT_NODE){let G=w.textContent?.trim();if(!G)return m.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let de=w.parentNode;if(de.getBoundingClientRect){let{width:q,height:be}=de.getBoundingClientRect();if(q>0&&q<4||be>0&&be<4)return NodeFilter.FILTER_REJECT}return s>0&&G.length>=s&&Oi(w,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),m&&m.commonAncestorContainer&&m.flatNodes.length>0&&y();function T(k,S,A){let B=S.immersiveTranslateComputedStyle||null;if(d){if(!d.contains(S))if(g=!1,S&&S.nodeType===Node.ELEMENT_NODE)if(bo(S,A))g=!0,d=S,y(),x(m,d,B);else return g=!1,S=k.nextNode(),{currentNode:S,isMatchedSelection:g};else return g=!1,S=k.nextNode(),{currentNode:S,isMatchedSelection:g}}else if(S&&S.nodeType===Node.ELEMENT_NODE)if(bo(S,A))g=!0,d=S,y(),x(m,d,B);else return g=!1,S=k.nextNode(),{currentNode:S,isMatchedSelection:g};else return g=!1,S=k.nextNode(),{currentNode:S,isMatchedSelection:g};return{currentNode:S,isMatchedSelection:!0}}function y(){let k=F9(m,a);k&&t&&t(k),fd(m)}function p(k){if(!pd(m,k)){y(),fd(m);let S=k.parentNode;S&&x(m,S,S.computedStyle)}m.flatNodes.push(k)}function x(k,S,A){k.commonAncestorContainer=S;let B=v(A);k.isPreWhitespace=B}function v(k){return k&&k.whiteSpace&&k.whiteSpace.startsWith("pre")||k&&k.whiteSpace==="break-spaces"||!1}}function pd(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=ea(t));let a=L9(e),u=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?u=!0:e.commonAncestorContainer&&(u=!1,e._currentStacks=[])),u}function D9(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function A9(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function Ni(e,t){if(t){let n=Object.keys(t);if(n.length>0&&_t(e,n))for(let u of n){let r=t[u];if(e.matches(u)){e.style.cssText=r;break}}}}function L9(e){return e&&e._currentStacks?e._currentStacks.some(t=>ea(t)):!1}function F9(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(g=>g.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let r=M9(n,a);r||(r=a);let o=[];for(let g of n){let d=A9(e,r,g);d&&(o.includes(d)||o.push(d))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,m=0;for(;c&&(l.push(c),c!==s);){if(m++,m>S9){C.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:r,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function fd(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function Ii(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,u=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(u)&&(u=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||u<-1e3}var At={_marked_key:"immersive_translate_walked",isMarked(e,t){return _i(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return po(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||ea(e)))return Ye(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=Ba(e,"markWalk")||"";return Ye(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||ea(e)):!1}};function P9(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=Ce.sanitize(n)}function M9(e,t){if(!e.length)return null;let n=e.map(a=>{let u=new Set;for(;(a=a.parentNode)&&(u.add(a),a!==t););return u});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(u=>u.has(a)))return a;return null}function Oi(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let r=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(r>1){let o=n[r-1]||"",i=n[r-2]||"",s=n[r+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?r=-1:isNaN(Number(o))||(r=-1)}if(r===-1)n.length>t+20&&Oi(e,t+20);else{let o=n.slice(r+1);r++,o.startsWith(" ")&&r++;let i=e.splitText(r),s=document.createElement("br");i.parentNode?.insertBefore(s,i),r+10)for(let a of n){let u=t[a],r=Object.keys(u),o=X3(e,[a]);for(let i of o)for(let s of r){let l=u[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function bd(e,t,n,a,u,r){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let m of l){let g=s[m];if(m==="translate"&&g==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||_9(c,u,r)||!Q3(f,n,a))continue}c.getAttribute(m)!==g&&(g===null?c.removeAttribute(m):c.setAttribute(m,g))}}}function ji(e,t){if(t){let n=Object.keys(t);if(n.length>0&&_t(e,n))for(let u of n){let r=t[u];if(e.matches(u)){let o=t[u],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function zi(e,t){return _t(e,t.excludeSelectors||[])?_t(e,t.selectors||[])?!1:!_t(e,t.stayOriginalSelectors||[]):!1}function bo(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return _t(e,t.concat(n))}function _9(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,u=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.TEXT_NODE&&parent){let r=u.textContent||"";if(r.includes("Copyright"))continue;if(Ma(r,t,n))return!0}}return!1}var Ed=["*://*/*","*","*://*"],Td="immersive-translate-wildcard-placeholder.com";function Hi(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>Ed.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let u=a.href,r=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===r)return!0;if(Ed.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===r:R9(u,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let y=i.split("://");l=y[0],l==="*"&&y.length>1&&(l="*",i="https://"+y[1])}else l="*",i="https://"+i;let m=i.replace(/\*/g,Td),g;try{g=new URL(m)}catch{return C.debug("invalid match pattern",m,"raw match value:",c),!1}let d=g.hostname,f=g.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let T=B9(l+":",yd(d),yd(f));if(T){let y=new URL(u);return y.port="",T.test(y.href)}else return!1}});if(o)return o}return null}function yd(e){return e.replaceAll(Td,"*")}function B9(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Wt(e,t){return Hi(e,t)!==null}function R9(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}async function qt(e){let{url:t,config:n,state:a}=e,u=new URL(t),r="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:m,targetLanguage:g,sourceLanguageUrlPattern:d,immediateTranslationPattern:f}=n,T=Ia(t,o),y=Ia(t,f),p=i,x=Object.keys(s);for(let Z of x){let Te=s[Z];if(Ia(t,Te)){p=Z;break}}let v=l,k=Object.keys(c);for(let Z of k){let Te=c[Z];if(Te&&Ia(t,Te)){v=Z;break}}let S=Ia(t,m),A=xd(t,m);A||(A=Wt(t,z4)),A||(A=Wt(t,n.blockUrls));let B=xd(t,n.inputTranslationUrlPattern);B||(B=Wt(t,n.inputTranslationBlockUrls));let M=Wt(t,n.mutationBlockUrls),D=Object.keys(d),P={};for(let Z of D){let Te=d[Z];if(Te&&Te.matches)for(let X of Te.matches)P[X]=Z}let z=Object.keys(P),w=Hi(t,z);w&&(r=P[w]??"auto",P[w]&&P[w]!=="auto"&&Ut(P[w]));let G=g||"zh-CN",de=u.hostname,q=await Xt(de),be=u.pathname+u.search+u.hash,fe=await Xt(be),Bt=`https://${q}.com/${fe}`,Ee=await gu(),wt=await oc(),ye=n.translationStartMode;ye==="dynamic"&&y&&(ye="immediate");let b={targetLanguage:G,config:n,translationService:p,isTranslateUrl:S,sourceLanguage:r,mainFrame:document.body,isTranslateExcludeUrl:A,isMutationTranslationExcludeUrl:M,isInputTranslationExcludeUrl:B,rule:n.generalRule,url:t,encryptedUrl:Bt,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:T,cache:n.cache,translationTheme:v},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:ye,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:T,cache:n.cache,translationTheme:v},localConfig:Ee};b.state.translationArea==="body"&&(b.config.generalRule.excludeTags=b.config.generalRule.excludeTags.filter(Z=>!b.config.generalRule.bodyTranslateTags.includes(Z)),b.config.generalRule.additionalExcludeSelectors=b.config.generalRule.additionalExcludeSelectors.filter(Z=>Z!==".btn"));let R=n.translationServices[b.translationService]||{};R.immediateTranslationTextCount!==void 0&&O9(R.immediateTranslationTextCount)&&R.immediateTranslationTextCount>=0&&(b.state.immediateTranslationTextCount=R.immediateTranslationTextCount),b.translationService==="deepl"&&R&&R.authKey&&R.authKey.startsWith("immersive_")&&R.immediateTranslationTextCountForImmersiveDeepl!==void 0&&R.immediateTranslationTextCountForImmersiveDeepl>=0&&(b.state.immediateTranslationTextCount=R.immediateTranslationTextCountForImmersiveDeepl),R&&R.translationDebounce&&typeof R.translationDebounce=="number"&&(b.state.translationDebounce=R.translationDebounce);let K=wt.immediateTranslationTextCount;n.immediateTranslationTextCount!==K&&(b.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let se=n.rules,V;globalThis.PDFViewerApplication?V=se.find(Z=>Z.isPdf):globalThis.immersiveTranslateEbookViewer?V=se.find(Z=>Z.isEbook):globalThis.immersiveTranslateEbookBuilder?V=se.find(Z=>Z.isEbookBuilder):V=se.find(Z=>Ia(t,Z)),b.rule.isPdf&&(b.state.translationArea="main"),b.state.translationArea==="body"&&(b.rule.paragraphMinTextCount=1,b.rule.paragraphMinWordCount=1),V&&V.isEbookBuilder&&(b.state.translationStartMode="immediate");let De=n.generalRule;if(V&&(b.rule=fr(De,V)),b.rule.selectors.length>0&&(b.rule.paragraphMinTextCount=2,b.rule.paragraphMinWordCount=1),b.state.translationArea==="body"&&b.rule.excludeTags&&(b.rule.excludeTags=b.rule.excludeTags.filter(Z=>!b.rule.bodyTranslateTags.includes(Z)&&!b.rule.forceTranslateTags.includes(Z))),b.rule.mainFrameSelector){let Z=document.querySelector(b.rule.mainFrameSelector);Z&&(b.mainFrame=Z)}return b}function Ia(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:u,excludeSelectorMatches:r}=t;return a&&a.length>0&&Wt(e,a)?!1:n&&n.length>0&&Wt(e,n)?!0:r&&r.length>0&&go(r)?!1:!!(u&&u.length>0&&go(u))}function xd(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Wt(e,n)||a&&a.length>0&&go(a))}function O9(e){return typeof e=="number"}function Cd(e,t,n,a){let u=t,r=O4[u]||[],o="";e&&r&&r.length>0&&r.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let m=n[c];if(["borderRadius"].includes(c)&&(m+="px"),o+=`--immersive-translate-theme-${u}-${c}: ${m}; +`,t==="marker"&&c==="backgroundColor"&&typeof m=="string"){let{r:g,g:d,b:f}=rd(m);o+=`--immersive-translate-theme-${u}-${c}-rgb: ${g}, ${d}, ${f}; `}}});let i="";if(n&&n.textColor){let l=n.textColor;i+=` .immersive-translate-target-translation-theme-${u}-inner{color: ${l};} `}if(n&&n.zoom){let l=n.zoom;i+=` .immersive-translate-target-translation-theme-${u}-inner{font-size: max(13px, ${l}%);} `}let s="";o&&(s=`:root { ${o}} -`),i&&(s+=i),s?In(e,s,"immersive-translate-user-custom-style"):a&&In(e,"","immersive-translate-user-custom-style")}function ja(e,t){let a=Ie().IMMERSIVE_TRANSLATE_INJECTED_CSS;In(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};Ed(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` +`),i&&(s+=i),s?In(e,s,"immersive-translate-user-custom-style"):a&&In(e,"","immersive-translate-user-custom-style")}function ja(e,t){let a=Ie().IMMERSIVE_TRANSLATE_INJECTED_CSS;In(e,a,"immersive-translate-default-injected-css");let u=t.config.translationThemePatterns||{},r=t.state.translationTheme,o=u[r]||{};Cd(e,r,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` `)),t.rule.additionalInjectedCss&&t.rule.additionalInjectedCss.length>0&&(i+=` `+t.rule.additionalInjectedCss.join(` -`))),i&&In(e,i,"immersive-translate-dynamic-injected-css")}async function yd(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Je({text:_a(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=$n(document.documentElement.lang)),e}function Td(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function Hi(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=P9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let m=n.substring(s+i.length,c),g=Object.keys(o).filter(d=>d!=="tag").map(d=>`${d}="${o[d]}"`).join(" ");n=n.replace(`${i}${m}`,`<${l} ${g}>${m}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function Su(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function ta(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=Su(e,n,t);return r===t&&n!==a&&(r=Su(e,a,t)),Hi(r,u)}function P9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function Eo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function Ui(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(P4),e&&(r.push(`${I}-target-translation-theme-${e}`),t?r.push(`${B0}-theme-${e}`):r.push(`${_0}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(B0):(r.push(_0),u&&r.push(F4)),r}function Wi(e){let t=["notranslate",A4];return e&&t.push(`${I}-target-translation-theme-${e}-inner`),t}function Cd(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,m=Ra(n),g="afterend",d=m[0].replace(/\//g,"/");d=d.replace(/"/g,'\\"'),d=d.replace(//g,">");let f=m[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let C=`${d}(\\d+)${f}`,y=new RegExp(C,"g"),p=Eo(s);p=Ae.sanitize(p),o.length>0&&(p=p.replace(y,S=>{let A=p.indexOf(S),B=p[A-1]===" ",M=p[A+S.length]===" ",D=S.slice(m[0].length,-m[1].length),P=Number(D);if(isNaN(P))return S;let z=o[Number(P)];if(z&&z.type==="element"){let w=z.value.outerHTML;return B||(w=" "+w),M||(w=w+" "),w}else x.error("variable type not supported",z,S);return S}));let T=Ui(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&T.push(L4);let v=Wi(r),k="";return a.translationBlockStyle&&(k=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${k} class="${T.join(" ")}" ${nn}="1"><${a.targetWrapperTag} class="${v.join(" ")}" ${nn}="1">${p}`,e.inline||(l==="smart"?p=`
${p}`:p=`${l}${p}`),e.inline&&(l!=="smart"?p=`${l}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${nn}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:g}}function yo(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let s=0;s2&&(y=`<${u[2]}${C}>`),i[C]=l,o.push({text:y,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";m&&(f=jn(qi(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&_t(l,a)){let C=Object.keys(i).length,y=`${u[0]}${C}${u[1]}`;u.length>2&&(y=`<${u[2]}${C}>`),i[C]=l;let p=Ki(o).endsWith(" ")?" ":"",T=jn(l.innerText||l.textContent),v=jn(l.nextSibling).startsWith(" ")?" ":"",k=vu(p+T+v),S=k[0]+y+k[1];if(p===" ")S=S.trimStart();else if(!S.startsWith(" ")){let A=vu(l.previousSibling)[1];A===""&&(A=" "),S=A+S}o.push({text:S,type:"variable"})}else{let f=Ki(o).endsWith(" ")?" ":"",C=jn(l.innerText||l.textContent);m&&(C=jn(qi(l)));let y=jn(l.nextSibling).startsWith(" ")?" ":"",p=vu(f+C+y),T=p[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+p[1];if(f===" ")T=T.trimStart();else{let v=vu(l.previousSibling)[1];v===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(v=" "),T=v+T}o.push({text:T,type:"text"})}else{let f=Ki(o).endsWith(" ")?" ":"",C="";l.textContent&&(C=jn(qi(l))),f===" "&&(C=C.trimStart()),o.push({text:C,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(m=o[l-1].text),l2){let c=l[2];return M9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=Cd(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function qi(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function M9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:m}=e;o=o||[];let g=Eo(e.targetText);g=Ae.sanitize(g);let d=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),C=new RegExp(`<${t}(\\d+)>`);o.length>0&&(d=d.replace(f,v=>{let k=d.indexOf(v),S=d[k-1]===" ",A=d[k+v.length]===" ",B=v.match(C);if(!B)return v;let M=B[1],D=Number(M);if(isNaN(D))return v;let P=o[Number(D)];if(P&&P.type==="element"){let z=P.value.outerHTML;return S||(z=" "+z),A||(z=z+" "),z}else if(P&&P.type==="text"){let z=P.value;return S||(z=" "+z),A||(z=z+" "),z}else x.error("variable type not supported",P,v);return v}));let y=Ui(l,n,a||[],i,c),p=Wi(l),T="";return m&&(T=`style="${m}"`),d=`<${u} ${T} class="${y.join(" ")}" ${nn}="1"><${u} class="${p.join(" ")}" ${nn}="1">${d}`,n||(r==="smart"?d=`
${d}`:d=`${r}${d}`),n&&(r!=="smart"?d=`${r}${d}`:d=`<${u} class="notranslate" ${nn}="1"> ${d}`),s==="smart"?d=`${d}`:d=`${d}${s}`,{html:d,position:"afterend"}}function Ki(e){let t=e[e.length-1];return t?t.text:""}function Kt(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var _9={sanitize:e=>e};function Co(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:Kt(e.ctx),onParagraph:Du.bind(null,e),onFrame:n=>{Gi(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),ca&&Ye(t,"consumeContainer",e.id))}function Gi(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Oa(t))return;x.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ha(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else x.debug("onFrame shadowRoot",t.host),Ha(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ha(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=Kt(t.ctx),r=0;if(s(t,e,n))return;if(sn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(sn(c)&&(a&&Oi(c,a),u&&Ii(c,u)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(At.mark(l.currentNode,t.id);l.nextNode();){At.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let m=l.currentNode;if(At.mark(l.currentNode,t.id),i(m)){o(m);continue}else break}if(!l.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){At.clearMark(l),r++,t.immediateTranslateCapacity>=0?Co(t,l):(ca&&Ye(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return Gi(t,l.shadowRoot,n),!1;if(c==="iframe")return Gi(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let m=t.containerRule;if(m.selectors&&m.selectors?.length>0)return bo(l,m.selectors);if(m.pageHeight){let g=l.scrollHeight;if(g>0&&g0)return!0}return!1}function s(l,c,m){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||m&&At.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let d=Kt(l.ctx);return!!ji(c,{excludeSelectors:d.excludeSelectors,selectors:d.selectors,stayOriginalSelectors:d.stayOriginalSelectors})}}function Vi(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!At.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(To(e.rootNodes),wd(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=$i(e.rootNodes);To(e.rootNodes),za(o,a,e.targetNodes||[]),wd(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];za(o,a,e.rootNodes||[]),vd(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=$i(e.rootNodes);za(o,a,e.targetNodes||[]),vd(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=$i(e.targetNodes);To(e.targetNodes),za(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&To(e.targetNodes)}catch(o){x.error(o)}}}function wd(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Ye(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function vd(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=Ba(a,"immersiveTranslateClassBak");po(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function $i(e){return e?e[e.length-1].nextSibling:null}function To(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function za(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var B9=lt(Yi,300);async function Du(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||R9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,ca&&Ye(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Ra(u),i=yo(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await Xi(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:fo(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(s){if(x.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(O9(e,t.text),Ji(e,t)):(ca&&Ye(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function R9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?sn(t)&&t.classList.contains(jt):!1}function O9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function Ji(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),ca&&Ye(t.commonAncestorContainer,"consumeParagraph",e.id),B9.call(e,e.ctx)}async function Yi(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await rn(a,t,(u,r,o)=>{let i=o.id,s=N9(e,i.toString());s&&I9.call(null,u,r,o,s,t,n)})}catch(u){x.error("translateCurrentQueue error",u);return}}function N9(e,t){return e.find(n=>n.id===t)}function I9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${I}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Na(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(x.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=u,l=n.id,c=document.createElement(s.targetWrapperTag);Ye(c,v4,l.toString()),c.classList.add("notranslate",jt,jt+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let m=a.rootNodes[a.rootNodes.length-1].nextSibling;za(m,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` -`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let d=ta(It,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=ta(It,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),C=`<${s.targetWrapperTag} class="${I}-error notranslate"><${s.targetWrapperTag} class="${I}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=Ae.sanitize(C)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=xd(a,u),l=document.createElement(u.rule.targetWrapperTag);l.classList.add("notranslate",jt),l.setAttribute("lang",u.targetLanguage),l.setAttribute(nn,"1");let c=_9.sanitize(s);l.innerHTML=c,a.targetNodes=[l],Vi(a,r),o=!0}else x.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function Xi(e,t){let{text:n}=e,a=await Je({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!id({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Ea());let s=an(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return Ln(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(d=>Ln(c,d,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var j9=[];function kd(e){j9.push(e)}function Sd(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(ir)||Zi(e).catch(r=>{x.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var wo="";async function Zi(e){let t=document.title;if(!t||t.includes(ir))return;wo!==t&&(wo=t);let n=await on(e,t);if(!ho(e,n))try{let a=await Pa({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=wo+ir+a.text)}catch(a){throw a}}function Dd(e){e.rule.isTranslateTitle&&(document.title=wo)}var Qi;function Ad(e){let t=e.ctx.rule.aiRule;if(x.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=Kt(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{vo(e,l,a)}),Qi=new MutationObserver(l=>{l.forEach(function(c){if(sn(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(m=>{m===r&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,x.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),vo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(m=>{let g=m.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(x.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),vo(e,g,a))},100))})}})}),Qi.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){En(l,[t.streamingSelector])&&(r=l,x.debug("streamingNode",r)),En(l,[t.messageWrapperSelector])&&(o=l,x.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),x.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),vo(e,o,a),r=void 0,o=null}}function vo(e,t,n){zn({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Du(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function Ld(){Qi?.disconnect()}var O=null;function So(){return O||null}function Do(e){z9(e),G9(e),q9(e),$9(e),ja(document,e),yt("Translated"),K9(O),W9(O),kd(Hn),H9(O)}function z9(e){e.rule.initialSelectorGlobalAttributes&&gd(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function H9(e){Ad(e)}function U9(){Ld()}function W9(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ha(n,e)})}async function q9(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await pu({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function K9(e){e.ctx.rule.isTranslateTitle&&(Zi(e.ctx),e.titleDynamicObserver=Sd(e.ctx))}function $9(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function G9(e){let t=Mt();O&&(t=O.id),O=O||{},O.ctx=e,O.id=t,O.paragraphQueue=O.paragraphQueue||[],O.rule={excludeSelectors:Kt(e).excludeSelectors,selectors:e.rule.selectors},O.currentUrl=window.location.href,O.containerRule={pageHeight:screen.availHeight,selectors:O.rule.selectors},O.paragraphEntities=O.paragraphEntities||{},O.autoIncreaseParagraphId=O.autoIncreaseParagraphId||1,O.interruptEffectDOM=!1,O.urlChangeDelay=e.rule.urlChangeDelay,O.immediateTranslateCapacity=e.state.immediateTranslationTextCount,O.observeContainers=O.observeContainers||[],O.observeParagraphs=O.observeParagraphs||[],O.dynamicContainerObserver=O.dynamicContainerObserver||Z9(O),O.ignoreResizeObserver=O.ignoreResizeObserver||Q9(O),O.containerVisibleObserver=O.containerVisibleObserver||J9(O),O.paragraphVisibleObserver=O.paragraphVisibleObserver||Y9(O),O.injectCssToDocument=ko,O.walkContainer=zn,O.translateState=e.state.translationMode||e.config.translationMode||"dual",O.allInlineWindows=[window],window.onerror=V9(O,e),window.immersiveTranslateSwitchTranslateState=ts.bind(O)}function Pd(e,t){t.getRootNode()instanceof ShadowRoot?ko(t.getRootNode(),e):ko(t.ownerDocument,e),es(e)}function es(e){O||(O={},O.ctx=e,O.id=Mt(),O.paragraphQueue=[],O.injectCssToDocument=ko,O.rule={excludeSelectors:Kt(e).excludeSelectors,selectors:e.rule.selectors},O.currentUrl=window.location.href,O.paragraphEntities={},O.autoIncreaseParagraphId=1,O.interruptEffectDOM=!1,O.urlChangeDelay=e.rule.urlChangeDelay,O.translateState=e.config.translationMode||"dual",O.observeContainers=[],O.observeParagraphs=[],O.allInlineWindows=[window],window.switchTranslateState=ts.bind(O))}function Hn(e=!0){O&&(yt("Original"),U9(),O.interruptEffectDOM=!0,O.ignoreResizeObserver?.disconnect(),O.dynamicContainerObserver?.disconnect(),O.containerVisibleObserver?.disconnect(),O.paragraphVisibleObserver?.disconnect(),O.titleDynamicObserver?.disconnect(),Dd(O.ctx),ud(),rd(),e&&ts.call(O,"original"),Object.values(O.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),O=null)}function V9(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{Do(t)},e.urlChangeDelay||2e3)),!0}}function J9(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(Co(e,a.target),n.unobserve(a.target))})})}function Y9(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{Ji(e,o)}),n.unobserve(u)}})})}var Fd;function X9(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(Fd),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),Fd=setTimeout(()=>{let u=e.ctx;Do(u)},e.urlChangeDelay),!0)):!1}function Z9(e){return new MutationObserver(t=>{if(!X9(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!At.isSkipMarkEle(n.target)&&!At.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...r,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&En(n.target,e.ctx.rule.mutationObserverContainerSelectors)){At.clearMark(n.target),n.target.paragraphs=void 0,Co(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Ha(r,e))})}})}function Q9(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);Ni(r)||(n.unobserve(a.target),Ha(u,e))}})}function ts(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{Vi(t,e)}),e=="original"&&document.querySelectorAll(`.${jt}`).forEach(t=>t.remove())}function ko(e,t){if(e instanceof HTMLIFrameElement){ja(e.contentDocument,t);return}ja(e,t)}async function Md(e){let t=Qe(),n="auto";if(te()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=_i(e.mainFrame):a=_a(e.mainFrame).slice(0,1e3),n=await Je({text:a})}else if(t)n=await Je({text:_a(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=_i(e.mainFrame),n=await Je({text:a})}else n=await Pc();return n==="auto"&&(n=await yd()),Tr(n),n}async function _d(){if(!O)return;document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=O.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){O.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${ur}='${n}']`);r&&r.remove()}}Yi.call(O,O.ctx)}var Bd={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},Rd={...It,"zh-CN":{...Bd["zh-CN"],...It["zh-CN"]},"zh-TW":{...Bd["zh-TW"],...It["zh-TW"]}},Od=Rd;function Ua(e,t,n){return ta(Rd,e,t,sr,n)}var Ao=(e,t,n,a)=>{let u=_4[e]||e,r=B4[e],o=R4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${u})`}else return u};function Wa(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{x.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:er,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function ns(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&je(o,i=>{i.preventDefault(),Wa({method:a[r]})})}}var Bo,me,Hd,e6,Au,Nd,Ud,Po={},Wd=[],t6=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Un(e,t){for(var n in t)e[n]=t[n];return e}function qd(e){var t=e.parentNode;t&&t.removeChild(e)}function Kd(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?Bo.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return Lo(e,o,a,u,null)}function Lo(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++Hd};return u==null&&me.vnode!=null&&me.vnode(r),r}function ln(e){return e.children}function Fo(e,t){this.props=e,this.context=t}function qa(e,t){if(t==null)return e.__?qa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Lo(d.type,d.props,d.key,d.ref?d.ref:null,d.__v):d)!=null){if(d.__=n,d.__b=n.__b+1,(g=p[c])===null||g&&d.key==g.key&&d.type===g.type)p[c]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Oo}),n.__[e]}function ke(e){return Lu=1,r6(lm,e)}function r6(e,t,n){var a=Io(Fu++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):lm(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Ge,!Ge.u)){Ge.u=!0;var u=Ge.shouldComponentUpdate;Ge.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var m=c.__[0];c.__=c.__N,c.__N=void 0,m!==c.__[0]&&(l=!0)}}),!!l&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function Ct(e,t){var n=Io(Fu++,3);!me.__s&&sm(n.__H,t)&&(n.__=e,n.i=t,Ge.__H.__h.push(n))}function ss(e){return Lu=5,im(function(){return{current:e}},[])}function im(e,t){var n=Io(Fu++,7);return sm(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function na(e,t){return Lu=8,im(function(){return e},t)}function ls(e){var t=Ge.context[e.__c],n=Io(Fu++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Ge)),t.props.value):e.__}function o6(){for(var e;e=om.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(No),e.__H.__h.forEach(is),e.__H.__h=[]}catch(t){e.__H.__h=[],me.__e(t,e.__v)}}me.__b=function(e){typeof e.type!="function"||e.o||e.type===ln?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Ge=null,em&&em(e)},me.__r=function(e){tm&&tm(e),Fu=0;var t=(Ge=e.__c).__H;t&&(os===Ge?(t.__h=[],Ge.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Oo,n.__N=n.i=void 0})):(t.__h.forEach(No),t.__h.forEach(is),t.__h=[])),os=Ge},me.diffed=function(e){nm&&nm(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(om.push(t)!==1&&Qd===me.requestAnimationFrame||((Qd=me.requestAnimationFrame)||i6)(o6)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Oo&&(n.__=n.__V),n.i=void 0,n.__V=Oo})),os=Ge=null},me.__c=function(e,t){t.some(function(n){try{n.__h.forEach(No),n.__h=n.__h.filter(function(a){return!a.__||is(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],me.__e(a,n.__v)}}),am&&am(e,t)},me.unmount=function(e){um&&um(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{No(a)}catch(u){t=u}}),n.__H=void 0,t&&me.__e(t,n.__v))};var rm=typeof requestAnimationFrame=="function";function i6(e){var t,n=function(){clearTimeout(a),rm&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);rm&&(t=requestAnimationFrame(n))}function No(e){var t=Ge,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Ge=t}function is(e){var t=Ge;e.__c=e.__(),Ge=t}function sm(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function lm(e,t){return typeof t=="function"?t(e):t}var Ka={},s6={root:"",lang:"en",fallbackLang:"en"};function cs(e,t){let n=Object.assign({},s6,e);Ka=t||Ka;let[a,u]=ke(n.lang),[r,o]=ke(Ka),[i,s]=ke(!1),l=m=>{if(r.hasOwnProperty(m))return;s(!1);let g=Td(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(d=>d.json()).then(d=>{Ka[m]=d,o({...Ka}),s(!0)}).catch(d=>{o({...Ka}),s(!0)}))};return Ct(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:u,t:(m,g)=>{if(!r.hasOwnProperty(a))return m;let d=Su(r,a,m);return d===m&&a!==n.fallbackLang&&(d=Su(r,n.fallbackLang,m)),Hi(d,g)},isReady:i}}var l6=0;function j(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--l6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return me.vnode&&me.vnode(s),s}var ms=rs(null),ds={root:"assets",lang:"en",fallbackLang:"en"},cm=e=>{let{t,setLang:n,lang:a,isReady:u}=cs({root:e.root||ds.root,lang:e.lang||ds.lang,fallbackLang:e.fallbackLang||ds.fallbackLang,getUrl:e.getUrl},e.translations);return j(ms.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function dm(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let l of r){let m=n[l].matches;for(let g of m)u[g]||(u[g]=[]),u[g].push(l)}let o=u[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(m=>m!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function mm(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function gm(e){let t;try{t=new URL(e)}catch{return!1}let n=Oc(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(c6(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function c6(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function pm(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function fm(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function yn(e){let{items:t,maxWidth:n}=e;return n=n||128,j("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>j("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var jo="DROP_DOWN_DEFAULT_VALUE";function gs(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=ss(null);return j("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:jo,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==jo){o.current.value=jo,o.current?.dispatchEvent(new Event("change"));let l=u.find(c=>c.value===s);l&&n(l)}},children:[{value:jo,label:e.label}].concat(u).map((i,s)=>j("option",{value:i.value,children:i.label},"option-"+s))})}function cn(){return ls(ms)}function ps(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=cn(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[r,"\uFF1A"]}),j(yn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Pu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var d6=({date:e})=>{let{t}=cn(),[n,a]=ke(!1);return Ct(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:j("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},m6=({minVersion:e})=>{let{t}=cn();return j("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},g6=()=>{let{t:e}=cn();return j("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},p6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=cn();return j("p",{class:"text-sm",children:[a("failToSyncRules")," ",j("a",{onClick:t,children:a("retry")}),j("br",{}),a("failedReason"),"\uFF1A",e,j("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function fs(e){let{isShowError:t,request:n}=e,[a,u]=ke(null),{t:r}=cn(),[o,i]=ke(null),[s,l]=ke(null),[c,m]=ke(""),[g,d]=ke(!1),[f,C]=ke(!1),[y,p]=ke(!1),[T,v]=ke(null),[k,S]=ke(null),A=Fn(),B=async()=>{m("");let M=o;if(o===null)try{let D=await n({url:su});D?(i(D),M=D,d(!0)):(m(r("unknownError")),l(null))}catch(D){l(null),m(D.message);return}M!==null?(e.setStorageBuildinConfig(M),l(!1),u(M.buildinConfigUpdatedAt)):(m(r("canNotFetchRemoteRule")),l(null))};return Ct(()=>{Gn().then(M=>{let D=M.buildinConfigUpdatedAt;v(M);let P=new Date(D);if(u(D),A==="0.0.0"){p(!0);return}n({url:su}).then(z=>{let w=z,G=w.minVersion,de=A;i(w);let q=w.latestVersion;if(q&&(Pu(de,q)?S(!0):S(!1)),Pu(de,G)){let be=w.buildinConfigUpdatedAt;new Date(be)>P?(l(!0),B()):l(!1)}else C(!0),l(null)}).catch(z=>{l(null),m(z.message)})})},[]),Ct(()=>{Gn().then(M=>{v(M)})},[a]),T?j("div",{class:"text-sm mt-2",style:{maxWidth:218},children:y?j(g6,{}):c?t===!1?null:j(p6,{handleSyncing:B,message:c,date:a||""}):f?t===!1?null:j(m6,{minVersion:o.minVersion}):s===null||s===!0?null:g?j(d6,{date:a}):null}):null}function hs(e){let t=Fn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:m,config:g,openAboutPage:d,onTranslateTheWholePage:f,onToggleEnabled:C,openOptionsPage:y,ontranslateToThePageEndImmediately:p,onSetPageLanguage:T,onToggleTranslate:v,onTranslateLocalPdfFile:k,onTranslatePdf:S,onRestorePage:A,ctx:B,currentUrl:M,currentLang:D,onClose:P,onTranslatePage:z,onSetLocalConfig:w,onMouseTriggerChanged:G,errorMsg:de,disabledButton:q,noPermissionPDF:be}=e,fe=a,[Bt,Ee]=ke(""),[wt,ye]=ke(de),{t:b,lang:R}=cn(),$=60;R.startsWith("zh")||($=65);let se=null,V=null,Se=null,Z=null,Te=null,X=null,ae=null,le=null,J=null,N=null,Q=null,Le=null,De=!0;if(g){Rt()&&g&&(De=g.generalRule.showSponsorOnSafari);let{translationService:F,translationServices:Y,translationUrlPattern:xe}=g;fn[F]&&(le=$0(F,B)),Y&&Y[F]?Le=Y[F]||{}:Le={};try{J=new URL(M||"")}catch{}if(M&&gm(M)){N=pm(J.hostname),Q=fm(M);let{matches:ge,excludeMatches:he}=xe;V=ge.includes(N),se=ge.includes(J.hostname),Z=he.includes(N),Se=he.includes(J.hostname),X=ge.includes(Q),ae=he.includes(Q)}}if(g&&D&&D!=="auto"){let{translationLanguagePattern:F}=g,{matches:Y}=F;Y.includes(D)?Te=!0:Te=!1}let ee=F=>{F.preventDefault(),y()},He=F=>{fe(Y=>(Y.alpha?Ee("Success disable alpha!"):Ee("Success enable alpha!"),{...Y,alpha:!Y.alpha}))},tt=F=>{fe(Y=>({...Y,translationMode:F})),o(F)},Me=()=>{fe(F=>({...F,translationArea:"body"})),f()},_e=()=>{fe(F=>({...F,translationArea:"main"})),n()},Be=(F,Y,xe,ge)=>{if(F==="default"){fe(ot=>{let Ce={...ot.translationUrlPattern};return{...ot,translationUrlPattern:{...ot.translationUrlPattern,matches:Sn([J?.hostname,N,M],Ce.matches),excludeMatches:Sn([J?.hostname,N,M],Ce.excludeMatches)}}});return}let he=F,Ne=he==="matches"?"excludeMatches":"matches";J&&fe(ot=>{let Ce={...ot.translationUrlPattern};return Ce[he]=H0(Y,Ce[he]),ge.length>0&&(Ce[he]=Sn(ge,Ce[he])),Ce[Ne]=Sn(xe,Ce[Ne]),{...ot,translationUrlPattern:{...ot.translationUrlPattern,...Ce}}}),he==="matches"&&l==="Original"?setTimeout(()=>{z(),P()},100):he==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{A(),P()},100)},vt=F=>{if(!F){fe(ge=>{let he={...ge.translationLanguagePattern};return{...ge,translationLanguagePattern:{...ge.translationLanguagePattern,matches:Sn(D,he.matches),excludeMatches:Sn(D,he.excludeMatches)}}});return}let Y=F,xe=Y==="matches"?"excludeMatches":"matches";D&&fe(ge=>{let he={...ge.translationLanguagePattern};return he[Y]=H0(D,he[Y]),he[xe]=Sn(D,he[xe]),{...ge,translationLanguagePattern:{...ge.translationLanguagePattern,...he}}}),Y==="matches"&&l==="Original"&&setTimeout(()=>{z(),P()},100)},Cn=J?.pathname.toLowerCase().endsWith(".pdf"),Ue=b("translate");l==="Translated"||l==="Error"?Ue=b("show-original"):l==="Original"?Cn?gr()&&J.protocol==="file:"||be?Ue=b("translate-firefox-local-pdf"):te()?Ue=b("noSupportTranslate-pdf"):Ue=b("translate-pdf"):Ue=b("translate"):Ue=b(l);let en=b("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(g.shortcuts.toggleTranslatePage&&(Z4()&&B.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ue+=` (${b(`fingers.${B.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ue+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(en+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let $t=[];B&&($t=mc(B));let nt=F=>{F.preventDefault(),P()},Lt=$3(B.config.translationService,B.config.targetLanguage);return j("div",{class:"p-3",children:[j("div",{class:"text-sm",children:[j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),j(yn,{items:zt.map(F=>({label:Ao(F,g.interfaceLanguage),value:F,selected:F===B.sourceLanguage,onSelected:Y=>{T(Y.value)}}))})]}),g&&g.targetLanguage&&j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),j(yn,{items:Lt.filter(F=>F!=="auto").map(F=>({label:Ao(F,g.interfaceLanguage),value:F,selected:F===g.targetLanguage,onSelected:Y=>{fe(xe=>({...xe,targetLanguage:Y.value}))}}))})]}),le&&$t.length>0&&j(ln,{children:[j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),j(yn,{items:$t.map(F=>({label:`${b("translationServices."+F.id)}${F.ok?"":" "+b("needAction")}`,value:F.id,selected:F.selected,onSelected:Y=>{let xe=$t.find(ge=>ge.id===Y.value);xe.ok?(fe(ge=>({...ge,translationService:xe.id})),xe.props.length===0?setTimeout(()=>{z()},1):setTimeout(()=>{A()},1)):(fe(ge=>({...ge,translationService:xe.id})),setTimeout(()=>{y()},100))}}))})]}),Le&&le.props.length>0&&le.props.map((F,Y)=>j("div",{class:"pl-4 text-sm",children:j(ps,{field:F,value:Le[F.name],onChange:xe=>{fe(ge=>{let he=ge.translationServices||{},Ne=he[le.id]||{};return setTimeout(()=>{A()},1),{...ge,translationServices:{...he,[le.id]:{...Ne,[F.name]:xe}}}})}},"field-"+Y)},"service"+Y))]}),J&&j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:b("forThisSite")}),j(yn,{items:[{label:b("default"),value:"default",selected:se===!1&&Se===!1&&!V&&!Z&&!X&&!ae,onSelected:()=>{Be("default",J.hostname,[],[]);let F=J.hostname,Y=B.localConfig.tempTranslationUrlMatches||[],xe=Y.filter(he=>he.match!==F),ge=!1;xe.length!==Y.length&&(ge=!0),ge&&w({...B.localConfig,tempTranslationUrlMatches:[...xe]})}},Q&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:X,onSelected:()=>{Be("matches",Q,[Q],[])}},{label:b("alwaysTranslateSomeSite",{hostname:J.hostname}),value:"matches",selected:se,onSelected:F=>{Be(F.value,J.hostname,[J.hostname,N,Q],[N])}},N&&{label:b("alwaysTranslateSomeSite",{hostname:N}),value:"matchesWild",selected:V,onSelected:()=>{Be("matches",N,[Q,J.hostname,N],[J.hostname])}},Q&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:ae,onSelected:()=>{Be("excludeMatches",Q,[Q],[])}},{label:b("neverTranslateSomeSite",{hostname:J.hostname}),value:"excludeMatches",selected:Se,onSelected:F=>{Be(F.value,J.hostname,[J.hostname,N,Q],[N])}},N&&{label:b("neverTranslateSomeSite",{hostname:N}),value:"excludeMatchesWild",selected:Z,onSelected:()=>{Be("excludeMatches",N,[J.hostname,Q,N],[J.hostname])}}].filter(Boolean)})]}),G&&mu()&&j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),j(yn,{items:lr.filter(F=>!(lr.includes(g.generalRule.mouseHoverHoldKey)&&F==="OtherCustom")).map(F=>{let Y=b("mouseHoldKey",{key:F}),xe=lr.includes(g.generalRule.mouseHoverHoldKey),ge=F===g.generalRule.mouseHoverHoldKey;return F==="Auto"?Y=b("mouseHoldKeyAuto"):F==="Off"?Y=b("mouseHoldKeyOff"):F==="OtherCustom"?Y=xe?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):F==="Other"&&(Y=b("mouseHoldKeyOther")),xe||F==="OtherCustom"&&(ge=!0),{label:Y,value:F,selected:ge,onSelected:he=>{he.value==="Other"?y("#interface"):G(he.value)}}})})]})]}),j("div",{class:"",children:j("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Cn?S&&S():v()},"aria-busy":l==="Translating",disabled:q||l==="Translating",children:Ue})}),j("div",{class:"text-sm",children:Bt}),j("div",{class:"text-sm",children:wt}),j("div",{class:"flex justify-between flex-wrap",children:[D&&D!=="auto"?j("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[j("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Te,onChange:F=>{let Y=F.target.checked;vt(Y?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:Ao(D,g.interfaceLanguage,!1,!0)})]}):j("span",{}),j("div",{class:"flex flex-end flex-grow",children:j(gs,{label:b("more"),showArrow:!0,maxWidth:$,onSelected:F=>{F.value==="changeToOnlyTranslationMode"?tt("translation"):F.value==="changeToDualTranslationMode"?tt("dual"):F.value==="translateTheWholePage"?f():F.value==="translateToThePageEndImmediately"?p():F.value==="translateTheMainPage"?n():F.value==="showTranslationOnly"||(F.value==="translateLocalPdfFile"?k&&k():F.value==="translateLocalHtmlFile"?r&&r():F.value==="translateLocalSubtitleFile"?i&&i():F.value==="donate"?(globalThis.open(g.donateUrl),P()):F.value==="feedback"?(globalThis.open(g.feedbackUrl),P()):F.value==="options"?(y(),P()):F.value==="changeToTranslateTheWholePage"?Me():F.value==="changeToTranslateTheMainPage"?_e():F.value==="about"?d():F.value==="toggleEnabled"?C():F.value==="openEbookViewer"?m():F.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+en,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!te()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!te()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(De?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),j("footer",{children:[j(fs,{isShowError:!1,request:u,setStorageBuildinConfig:s}),j("div",{class:"mt-3 text-sm flex justify-between",children:[j("a",{href:"#",class:"secondary",onClick:ee,children:b("options")}),te()&&j("a",{href:"#",class:"secondary",onClick:nt,children:b("close")}),j("span",{class:"immersive-translate-no-select muted",onClick:mm(7)(He),children:["V",t,g.enabled?null:j("a",{href:"#",onClick:C,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var bs={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return U.storage[n].get(a)},set:(e,t,n)=>U.storage[n].set({[e]:t})};function zo(e,t,n){let[a]=ke(()=>typeof t=="function"?t():t),[u]=ke(n),[r,o]=ke(a),[i,s]=ke(!1),[l,c]=ke("");Ct(()=>{bs.get(e,a,u).then(g=>{g[e]&&o(g[e]),s(!0),c("")}).catch(g=>{s(!1),c(g)})},[e,a,u]);let m=na(g=>{let d=typeof g=="function"?g(r):g;x.debug("new settings",d),bs.set(e,d,u).then(()=>{o(d),s(!0),c("")}).catch(f=>{o(d),s(!1),c(f)})},[u,e,r]);return[r,m,i,l]}function Es(e,t,n){let a=[];return function(){let[r,o,i,s]=zo(e,t,n),l=na(c=>{for(let m of a)m(c)},[]);return Ct(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,l,i,s]}}function hm(e,t){return Es(e,t,"sync")}var f6="userConfig",h6={},b6=hm(f6,h6);function bm(e){let[t,n,a,u]=b6(),r=na(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function Ho(e){try{let t=new Date;x.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await U.storage.local.set({[cu]:t.toISOString()}),await E6(),te()||await zc()}catch(t){x.error("run cron task failed",t)}}async function Em(){let t=(await Tt()).interval;if(t){let n=await U.storage.local.get(cu);if(n&&n[cu]){let a=n[cu];if(Date.now()-new Date(a).getTime()a?(await U.storage.local.set({buildinConfig:t}),x.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):x.debug(`no need to sync rules, latest: ${a}`):x.info(`local version is too old, please update to ${o} or later`)}catch(e){x.error("sync rules error: ",e)}}function ys(e){let{onClose:t}=e,[n,a]=ke("Original"),[u,r,o,i]=bm(()=>{setTimeout(()=>{v("updateGlobalContext",!1)()},250)}),[s,l]=ke(null),[c,m]=ke(globalThis.location.href),[g,d]=ke("auto"),[f,C]=ke(null),y=q=>{a(q.detail)},p=q=>{d(q);let be=dm(c,q,s.sourceLanguageUrlPattern);r(fe=>({...fe,sourceLanguageUrlPattern:be})),Ut(q)},T=()=>{m(globalThis.location.href)};Ct(()=>(document.addEventListener(ar,y,!1),Tt().then(q=>{l(q);let be=an();d(be);let fe=Re();a(fe),Ho(q.interval)}),document.addEventListener("urlChange",T),()=>{document.removeEventListener("pageTranslatedStatus",y),document.removeEventListener("urlChange",T)}),[]),Ct(()=>{Tt().then(q=>{l(q)})},[u]),Ct(()=>{c&&s&&qt({url:c,config:s}).then(q=>{C(q)})},[c,s]);let v=(q,be,fe={})=>()=>{Wa({method:q,data:fe||{}}),be&&t()},k=()=>{t()},S=()=>{r(q=>({...q,enabled:!q.enabled})),setTimeout(()=>{k()},50)},A=()=>{Q0(),setTimeout(()=>{k()},50)},B=()=>{Q0(),setTimeout(()=>{k()},50)},M=(q="")=>{Fr(!0,q),setTimeout(()=>{t()},50)},D=()=>{Pr(),setTimeout(()=>{t()},50)},P=()=>{Mr(),setTimeout(()=>{t()},50)},z=()=>{Ic(),setTimeout(()=>{t()},50)},w=()=>{_r(),setTimeout(()=>{t()},50)},G=()=>{jc(),setTimeout(()=>{t()},50)},de=q=>{r(be=>({...be,generalRule:{...be.generalRule,mouseHoverHoldKey:q}}))};return!s||!f?null:j(hs,{openEbookViewerPage:P,openEbookBuilderPage:w,onSwitchTranslationMode:q=>{v("switchTranslationMode",!0,{mode:q})()},onTranslateLocalHtmlFile:z,onTranslateLocalSubtitleFile:G,request:W,onClose:k,onToggleEnabled:S,onTranslateTheWholePage:v("translateTheWholePage",!0),openOptionsPage:M,onToggleTranslate:v("toggleTranslatePage",!0),onTranslateTheMainPage:v("translateTheMainPage",!0),ontranslateToThePageEndImmediately:v("translateToThePageEndImmediately",!0),onTranslatePage:v("translatePage",!0),onRestorePage:v("restorePage",!1),onTranslatePdf:A,openAboutPage:D,onTranslateLocalPdfFile:B,onSetPageLanguage:p,onUserConfigChange:r,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:Lr,onSetBuildinConfig:Fc,onMouseTriggerChanged:de})}function y6(e,t){for(let n of t){if(te()&&!gr()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Ts={position:"right",right:0,top:335},xt={...Ts},qo=!1,aa=null,dn=null,Ko=null,Cs=null,$a=null,xs=null,ym=6,Uo,Wo,Cm=null,xm=null;async function vs(){let e=Ie();xs=await Lc(),xt=xs.pagePopupConfig||xt;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Cs=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` -`);y6(n,[a]);let u=document.createElement("div");u.innerHTML=Ae.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),aa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");dn=o,Ko=n.querySelector("#mount"),aa.setAttribute("style",ws(xt)),As(),o.addEventListener("mousedown",wm),o.addEventListener("touchstart",x6),globalThis.addEventListener("resize",s=>{aa.setAttribute("style",ws(xt))})}function T6(){Ro(null,Ko),Ko.style.display="none",dn.style.display="block",$a=setTimeout(()=>{As(!0)},2e3)}function Tm(e){let t=e.querySelector("#mount"),n=()=>{T6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await Tt();Ro(j(cm,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:Od,children:j("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:j("div",{class:"immersive-translate-popup-wrapper",style:C6(),children:j(ys,{onClose:n})})})}),t)})().then(()=>{dn.style.display="none",Ko.style.display="block"})}function C6(){let e=ks(),t=e.height,{position:n,top:a,left:u}=xt,r={position:"fixed"},o=300,i=300,s=100;return Cl()&&(n=Ts.position,a=Ts.top),n==="right"||n==="left"?(r.top=a-s,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-s,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function ks(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function wm(e){xm=aa.getAttribute("style"),Uo=e.pageX,Wo=e.pageY,$a&&clearTimeout($a),qo=!1,dn.style.opacity="1",dn.style.transform="none",Cm=dn.getAttribute("style"),globalThis.addEventListener("mousemove",Ss),globalThis.addEventListener("mouseup",Ds),globalThis.addEventListener("touchmove",vm),globalThis.addEventListener("touchend",$o),globalThis.addEventListener("touchcancel",$o)}function x6(e){e.preventDefault&&e.preventDefault(),wm(e.changedTouches[0])}function vm(e){Ss(e.changedTouches[0])}function $o(e){e.preventDefault&&e.preventDefault(),Ds(e.changedTouches[0])}function Ss(e){e.preventDefault&&e.preventDefault(),qo=!0,aa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Ds(e){e.preventDefault&&e.preventDefault(),v6(),$a&&clearTimeout($a),Uo=Uo||0,Wo=Wo||0;let t=Math.abs(e.pageX-Uo),n=Math.abs(e.pageY-Wo);t{As(!0)},2e3)}function As(e=!1){dn.style.opacity="0.4";let t="";xt.position==="left"?t="translateX(-40%)":xt.position==="right"?t="translateX(40%)":xt.position==="top"?t="translateY(-40%)":xt.position==="bottom"&&(t="translateY(40%)"),dn.style.transform=t,e&&(dn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function v6(){globalThis.removeEventListener("mousemove",Ss),globalThis.removeEventListener("mouseup",Ds),globalThis.removeEventListener("touchmove",vm),globalThis.removeEventListener("touchend",$o),globalThis.removeEventListener("touchcancel",$o)}function ws(e){let t=k6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function k6(e){let{position:t,...n}=e,a=ks(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var Go=!1;async function km(e){if(!e){let t=await Tt(),n={url:globalThis.location.href,config:t};e=await qt(n)}e.config.debug&&x.setLevel("debug"),e.isTranslateExcludeUrl?x.debug("detect exclude url, do not inject anything."):(ha().any||te())&&e.rule.isShowUserscriptPagePopup&&(Go||(Go=!0,vs().catch(t=>{x.error("init popup error",t)})))}async function Sm(){Go||(Go=!0,vs().catch(e=>{x.error("init popup error",e)}))}var Dm=!1,Fm=[()=>{je.unbind()}],Fs=[...Fm],S6=lt(async()=>{await Fr()},50),D6=lt(async()=>{await Pr()},50),A6=lt(async()=>{await _r()},50),L6=lt(async()=>{await Mr()},50),Pm=lt(e=>{Wa({method:e})},50),F6=lt(()=>{vr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),P6=lt(()=>{Ar();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),M6=lt(()=>{Sr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function _6(e,t){let n=e.document;if(Dm)return;if(Dm=!0,te()||Tc(),n.addEventListener("securitypolicyviolation",W6),n.addEventListener("immersiveTranslateEbookLoaded",U6),n.addEventListener(E4,H6),n.addEventListener("click",u=>{N6(u,t)}),te()&&(globalThis.top!=globalThis.self?e.addEventListener("message",R6,!1):n.addEventListener(kn,B6)),globalThis.top===globalThis.self){let u=un.rootIframe(R0);u.handleAsk("getRateLimitDelay",Zc),u.handleAsk("throttleRequest",b3)}}function Mu(e,t){q6(),_6(t,e);let n=t.document,a=O6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Fs.push(()=>{n.removeEventListener("touchstart",a)}),te()&&globalThis.top===globalThis.self&&(ns(e.config),K6(e.config)),Rt()&&ns(e.config)}function B6(e){Sm()}function R6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===er&&Ta(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function O6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?F6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?M6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&P6()}function N6(e,t){let n=e.target;if(!n||!n.getAttribute){Ls(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&Ke(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${I}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),kr(),Ls(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${I}-tooltip-text`);Lm(j6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Lm(I6.bind(null,t)));Ls(n)}async function Am(e=!1){let t=document.querySelector(`.${I}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await Ac();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Dc(n)}function Lm(e){let t=`${I}-modal`,n=`${I}-modal-title`,a=`${I}-modal-body`,u=`${I}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),s=r.querySelector(`.${a}`);e(r,o,s,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=I+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=I+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(m){m.target==r&&(r.style.display="none")},e(r,s,l,c)}setTimeout(()=>{z6()},100)}function I6(e,t,n,a,u){let r=Mm.bind(null,e);n.innerHTML=`
${N4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.createElement("p");o.innerHTML=`${r("searchEnhancementNotes")}`,a.appendChild(o);let i=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let g=0;g${r("option")}`})),a.appendChild(s);let l=a.querySelector(`.${I}-open-enhancement`);l&&(l.onclick=function(){Nc(!0)});let c=document.createElement("button");c.innerText=r("closeModal"),c.className=`${I}-btn ${I}-cancel-btn`;let m=document.createElement("button");m.className=`${I}-btn`,m.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(c),u.appendChild(m),c.onclick=function(){t.style.display="none"},m.onclick=function(){let g=a.getElementsByTagName("input"),d="";for(let f=0;f{Vo()},10)}function W6(e){ce.HAS_CSP_ERROR="1"}function q6(){Fs.forEach(e=>{e()}),Fs=Fm}function K6(e){if(te()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Or.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=Ua(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:F0,title:Ua("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:P0,title:Ua("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:A0,title:Ua("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:L0,title:Ua("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===A0?S6():r.id===L0?D6():r.id===P0?A6():r.id===F0?L6():Pm(r.id)},r.key)}}function $6(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{x.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function _m(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Oe(i.left,r)&&Oe(i.width,u.width));return{prevP:u,curP:o}}function Ps(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function Bm(e){return e?e==e[0].repeat(e.length):!0}function Oe(e,t,n=5){return Math.abs(e-t)<=n}var Ms=[",","\\.","\uFF0C","\u3002"];function Rm(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Oe(a.left,u.left,7)&&Oe(a.nextTop,u.top,10)&&Jo(a,u)}function Om({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function zm(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Hm({prevLineP:e,prevP:t},n){return Oe(e.left,n.left,1)&&Oe(e.right,t.right,1)&&t.mergedTimes>=1}function _s(e,t){let{prevLineP:n}=e;return zm(e,t)&&(Oe(n.bottom,t.bottom)||Oe(n.nextTop,t.top)&&Oe(n.left,t.left))}function Um(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return zm(e,t)&&n.width0&&a/u<.1&&n.left!Ps(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Je({text:n.map(r=>r.str).join(` -`).slice(0,1e3)});Tr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await rn({sentences:u},e,(r,o,i)=>{let s=i.id,l=n[s];r?(l.translatedStr=r.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),V6(l)})}var Rs={};async function G6(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Rs).filter(n=>!!n);await Yo(Gm,t)}function V6(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Rs[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",G6)):e.translateStatus=="success"&&(Rs[e.id]=void 0,t.innerHTML=Ae.sanitize(e.translatedStr)))}function Vm(e,t){let n=[],a=Y6(e,t);return X6(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){$m(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{$m(e,n,o,!1)}),n.push("
")}}),` +`))),i&&In(e,i,"immersive-translate-dynamic-injected-css")}async function wd(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await Ve({text:_a(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=Kn(document.documentElement.lang)),e}function vd(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function Ui(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let u=t[a],r=N9(a);if(typeof u=="object"||r){let o=u;r&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let m=n.substring(s+i.length,c),g=Object.keys(o).filter(d=>d!=="tag").map(d=>`${d}="${o[d]}"`).join(" ");n=n.replace(`${i}${m}`,`<${l} ${g}>${m}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,u.toString())}}),n}function Su(e,t,n){let a=e[t];if(!a)return n;let u=n.split("."),r="";do{r+=u.shift();let o=a[r];o!==void 0&&(typeof o=="object"||!u.length)?(a=o,r=""):u.length?r+=".":a=n}while(u.length);return a}function ta(e,t,n,a,u){if(!e.hasOwnProperty(n))return t;let r=Su(e,n,t);return r===t&&n!==a&&(r=Su(e,a,t)),Ui(r,u)}function N9(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function Eo(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function Wi(e,t,n=[],a,u){let r=["notranslate"];return a&&r.push(R4),e&&(r.push(`${N}-target-translation-theme-${e}`),t?r.push(`${R0}-theme-${e}`):r.push(`${B0}-theme-${e}`)),n.length>0&&r.push(...n),t?r.push(R0):(r.push(B0),u&&r.push(B4)),r}function qi(e){let t=["notranslate",M4];return e&&t.push(`${N}-target-translation-theme-${e}-inner`),t}function kd(e,t,n){let{rule:a,state:u}=n,{translationTheme:r}=u,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,m=Ra(n),g="afterend",d=m[0].replace(/\//g,"/");d=d.replace(/"/g,'\\"'),d=d.replace(//g,">");let f=m[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let T=`${d}(\\d+)${f}`,y=new RegExp(T,"g"),p=Eo(s);p=Ce.sanitize(p),o.length>0&&(p=p.replace(y,S=>{let A=p.indexOf(S),B=p[A-1]===" ",M=p[A+S.length]===" ",D=S.slice(m[0].length,-m[1].length),P=Number(D);if(isNaN(P))return S;let z=o[Number(P)];if(z&&z.type==="element"){let w=z.value.outerHTML;return B||(w=" "+w),M||(w=w+" "),w}else C.error("variable type not supported",z,S);return S}));let x=Wi(r,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&x.push(_4);let v=qi(r),k="";return a.translationBlockStyle&&(k=`style="${a.translationBlockStyle}"`),p=`<${n.rule.targetWrapperTag} ${k} class="${x.join(" ")}" ${an}="1"><${a.targetWrapperTag} class="${v.join(" ")}" ${an}="1">${p}`,e.inline||(l==="smart"?p=`
${p}`:p=`${l}${p}`),e.inline&&(l!=="smart"?p=`${l}${p}`:p=`<${a.targetWrapperTag} class="notranslate" ${an}="1"> ${p}`),c==="smart"?p=`${p}`:p=`${p}${c}`,{html:p,position:g}}function yo(e,t){let n=null,{stayOriginalSelectors:a,delimiters:u,isPreWhitespace:r}=t,o=[],i={};for(let s=0;s2&&(y=`<${u[2]}${T}>`),i[T]=l,o.push({text:y,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";m&&(f=jn($i(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&_t(l,a)){let T=Object.keys(i).length,y=`${u[0]}${T}${u[1]}`;u.length>2&&(y=`<${u[2]}${T}>`),i[T]=l;let p=Ki(o).endsWith(" ")?" ":"",x=jn(l.innerText||l.textContent),v=jn(l.nextSibling).startsWith(" ")?" ":"",k=vu(p+x+v),S=k[0]+y+k[1];if(p===" ")S=S.trimStart();else if(!S.startsWith(" ")){let A=vu(l.previousSibling)[1];A===""&&(A=" "),S=A+S}o.push({text:S,type:"variable"})}else{let f=Ki(o).endsWith(" ")?" ":"",T=jn(l.innerText||l.textContent);m&&(T=jn($i(l)));let y=jn(l.nextSibling).startsWith(" ")?" ":"",p=vu(f+T+y),x=p[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+p[1];if(f===" ")x=x.trimStart();else{let v=vu(l.previousSibling)[1];v===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(v=" "),x=v+x}o.push({text:x,type:"text"})}else{let f=Ki(o).endsWith(" ")?" ":"",T="";l.textContent&&(T=jn($i(l))),f===" "&&(T=T.trimStart()),o.push({text:T,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(m=o[l-1].text),l2){let c=l[2];return I9({delimiterTag:c,targetText:e.targetText,inline:u,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=kd(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function $i(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function I9(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:u,wrapperPrefix:r,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:m}=e;o=o||[];let g=Eo(e.targetText);g=Ce.sanitize(g);let d=g,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),T=new RegExp(`<${t}(\\d+)>`);o.length>0&&(d=d.replace(f,v=>{let k=d.indexOf(v),S=d[k-1]===" ",A=d[k+v.length]===" ",B=v.match(T);if(!B)return v;let M=B[1],D=Number(M);if(isNaN(D))return v;let P=o[Number(D)];if(P&&P.type==="element"){let z=P.value.outerHTML;return S||(z=" "+z),A||(z=z+" "),z}else if(P&&P.type==="text"){let z=P.value;return S||(z=" "+z),A||(z=z+" "),z}else C.error("variable type not supported",P,v);return v}));let y=Wi(l,n,a||[],i,c),p=qi(l),x="";return m&&(x=`style="${m}"`),d=`<${u} ${x} class="${y.join(" ")}" ${an}="1"><${u} class="${p.join(" ")}" ${an}="1">${d}`,n||(r==="smart"?d=`
${d}`:d=`${r}${d}`),n&&(r!=="smart"?d=`${r}${d}`:d=`<${u} class="notranslate" ${an}="1"> ${d}`),s==="smart"?d=`${d}`:d=`${d}${s}`,{html:d,position:"afterend"}}function Ki(e){let t=e[e.length-1];return t?t.text:""}function $t(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var j9={sanitize:e=>e};function xo(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:$t(e.ctx),onParagraph:Du.bind(null,e),onFrame:n=>{Vi(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),ca&&Ye(t,"consumeContainer",e.id))}function Vi(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!Oa(t))return;C.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Ha(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else C.debug("onFrame shadowRoot",t.host),Ha(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Ha(e,t,n=!0){let{globalStyles:a,globalAttributes:u}=$t(t.ctx),r=0;if(s(t,e,n))return;if(sn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(sn(c)&&(a&&Ni(c,a),u&&ji(c,u)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(At.mark(l.currentNode,t.id);l.nextNode();){At.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let m=l.currentNode;if(At.mark(l.currentNode,t.id),i(m)){o(m);continue}else break}if(!l.parentNode())return}}}catch{}if(r==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){At.clearMark(l),r++,t.immediateTranslateCapacity>=0?xo(t,l):(ca&&Ye(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return Vi(t,l.shadowRoot,n),!1;if(c==="iframe")return Vi(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let m=t.containerRule;if(m.selectors&&m.selectors?.length>0)return bo(l,m.selectors);if(m.pageHeight){let g=l.scrollHeight;if(g>0&&g0)return!0}return!1}function s(l,c,m){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||m&&At.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let d=$t(l.ctx);return!!zi(c,{excludeSelectors:d.excludeSelectors,selectors:d.selectors,stayOriginalSelectors:d.stayOriginalSelectors})}}function Ji(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!At.isMarked(a,e.ctxId))return;let u=a.contains(e.rootNodes[0]),r=a.contains(e.targetNodes[0]);if(u&&r)n="dual";else if(u)n="original";else if(r)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(To(e.rootNodes),Dd(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=Gi(e.rootNodes);To(e.rootNodes),za(o,a,e.targetNodes||[]),Dd(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];za(o,a,e.rootNodes||[]),Ad(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=Gi(e.rootNodes);za(o,a,e.targetNodes||[]),Ad(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=Gi(e.targetNodes);To(e.targetNodes),za(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&To(e.targetNodes)}catch(o){C.error(o)}}}function Dd(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{Ye(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function Ad(e){if(!sn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let u=Ba(a,"immersiveTranslateClassBak");po(a,"immersiveTranslateClassBak"),a.className=u});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function Gi(e){return e?e[e.length-1].nextSibling:null}function To(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function za(e,t,n){let a=e;t&&(a?n.forEach(u=>{a.parentNode?.insertBefore(u,a)}):n.forEach(u=>{t.appendChild(u)}))}var z9=lt(Xi,300);async function Du(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||H9(t.rootNodes)||t.stepState>=2)return;t.stepState=2,ca&&Ye(a,"onParseParagraph",e.id);let{ctx:u}=e,{rule:r}=u,o=Ra(u),i=yo(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:u.rule.stayOriginalTags.concat(u.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(u.rule.stayOriginalSelectors).concat(u.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await Zi(t,{excludeLanguages:u?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:u.state.isDetectParagraphLanguage,targetLanguage:u.targetLanguage,noTranslateRegexp:u.rule.noTranslateRegexp,delimiters:fo(u.config.translationServices[u.translationService]?.placeholderDelimiters),minTextCount:n||u.state.translationArea==="body"?2:r.paragraphMinTextCount,minWordCount:n||u.state.translationArea==="body"?1:r.paragraphMinWordCount,ignoreZhCNandZhTW:u.rule.ignoreZhCNandZhTW});if(s){if(C.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(U9(e,t.text),Yi(e,t)):(ca&&Ye(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function H9(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?sn(t)&&t.classList.contains(jt):!1}function U9(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function Yi(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),ca&&Ye(t.commonAncestorContainer,"consumeParagraph",e.id),z9.call(e,e.ctx)}async function Xi(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await on(a,t,(u,r,o)=>{let i=o.id,s=W9(e,i.toString());s&&q9.call(null,u,r,o,s,t,n)})}catch(u){C.error("translateCurrentQueue error",u);return}}function W9(e,t){return e.find(n=>n.id===t)}function q9(e,t,n,a,u,r){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${N}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Na(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(C.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=u,l=n.id,c=document.createElement(s.targetWrapperTag);Ye(c,A4,l.toString()),c.classList.add("notranslate",jt,jt+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",u.targetLanguage);let m=a.rootNodes[a.rootNodes.length-1].nextSibling;za(m,a.commonAncestorContainer,[c]);let g=e.message.replaceAll(` +`,"");if(g=g.replaceAll('"',"""),i&&(i.error=new Error(g)),c){let d=ta(It,"retryAllParagraphs",u.config.interfaceLanguage,"zh-CN"),f=ta(It,"errorTooltipTitle",u.config.interfaceLanguage,"zh-CN"),T=`<${s.targetWrapperTag} class="${N}-error notranslate"><${s.targetWrapperTag} class="${N}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=Ce.sanitize(T)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=Sd(a,u),l=document.createElement(u.rule.targetWrapperTag);l.classList.add("notranslate",jt),l.setAttribute("lang",u.targetLanguage),l.setAttribute(an,"1");let c=j9.sanitize(s);l.innerHTML=c,a.targetNodes=[l],Ji(a,r),o=!0}else C.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function Zi(e,t){let{text:n}=e,a=await Ve({text:n||"",minLength:10}),{targetLanguage:u}=t;if(!dd({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=Ea());let s=un(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return Ln(c,u,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(d=>Ln(c,d,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var $9=[];function Ld(e){$9.push(e)}function Fd(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(ir)||Qi(e).catch(r=>{C.error("translateTitle error:",r.name,r.message,r.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var wo="";async function Qi(e){let t=document.title;if(!t||t.includes(ir))return;wo!==t&&(wo=t);let n=await en(e,t);if(!ho(e,n))try{let a=await Pa({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=wo+ir+a.text)}catch(a){throw a}}function Pd(e){e.rule.isTranslateTitle&&(document.title=wo)}var es;function Md(e){let t=e.ctx.rule.aiRule;if(C.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=$t(e.ctx),u=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(u,1);let r,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{vo(e,l,a)}),es=new MutationObserver(l=>{l.forEach(function(c){if(sn(c.target)){if(o==r&&c.target===r&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=r){c.removedNodes?.forEach(m=>{m===r&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==r){if(o.translated)return;o.translated=!0,C.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),vo(e,o,a);return}t.streamingChange&&r&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(m=>{let g=m.previousSibling;!g||g.translated||(g.translated=!0,setTimeout(()=>{g.childNodes[0]?.translated||(C.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",g),vo(e,g,a))},100))})}})}),es.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){En(l,[t.streamingSelector])&&(r=l,C.debug("streamingNode",r)),En(l,[t.messageWrapperSelector])&&(o=l,C.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),C.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),vo(e,o,a),r=void 0,o=null}}function vo(e,t,n){zn({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Du(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function _d(){es?.disconnect()}var O=null;function So(){return O||null}function Do(e){K9(e),Q9(e),Y9(e),Z9(e),ja(document,e),yt("Translated"),X9(O),J9(O),Ld(Hn),G9(O)}function K9(e){e.rule.initialSelectorGlobalAttributes&&bd(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function G9(e){Md(e)}function V9(){_d()}function J9(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Ha(n,e)})}async function Y9(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,u=e.localConfig.tempTranslationUrlMatches||[],r=u.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;r>-1||(u.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await pu({...e.localConfig,tempTranslationUrlMatches:[...u]})}}function X9(e){e.ctx.rule.isTranslateTitle&&(Qi(e.ctx),e.titleDynamicObserver=Fd(e.ctx))}function Z9(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function Q9(e){let t=Mt();O&&(t=O.id),O=O||{},O.ctx=e,O.id=t,O.paragraphQueue=O.paragraphQueue||[],O.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},O.currentUrl=window.location.href,O.containerRule={pageHeight:screen.availHeight,selectors:O.rule.selectors},O.paragraphEntities=O.paragraphEntities||{},O.autoIncreaseParagraphId=O.autoIncreaseParagraphId||1,O.interruptEffectDOM=!1,O.urlChangeDelay=e.rule.urlChangeDelay,O.immediateTranslateCapacity=e.state.immediateTranslationTextCount,O.observeContainers=O.observeContainers||[],O.observeParagraphs=O.observeParagraphs||[],O.dynamicContainerObserver=O.dynamicContainerObserver||u6(O),O.ignoreResizeObserver=O.ignoreResizeObserver||r6(O),O.containerVisibleObserver=O.containerVisibleObserver||t6(O),O.paragraphVisibleObserver=O.paragraphVisibleObserver||n6(O),O.injectCssToDocument=ko,O.walkContainer=zn,O.translateState=e.state.translationMode||e.config.translationMode||"dual",O.allInlineWindows=[window],window.onerror=e6(O,e),window.immersiveTranslateSwitchTranslateState=ns.bind(O)}function Rd(e,t){t.getRootNode()instanceof ShadowRoot?ko(t.getRootNode(),e):ko(t.ownerDocument,e),ts(e)}function ts(e){O||(O={},O.ctx=e,O.id=Mt(),O.paragraphQueue=[],O.injectCssToDocument=ko,O.rule={excludeSelectors:$t(e).excludeSelectors,selectors:e.rule.selectors},O.currentUrl=window.location.href,O.paragraphEntities={},O.autoIncreaseParagraphId=1,O.interruptEffectDOM=!1,O.urlChangeDelay=e.rule.urlChangeDelay,O.translateState=e.config.translationMode||"dual",O.observeContainers=[],O.observeParagraphs=[],O.allInlineWindows=[window],window.switchTranslateState=ns.bind(O))}function Hn(e=!0){O&&(yt("Original"),V9(),O.interruptEffectDOM=!0,O.ignoreResizeObserver?.disconnect(),O.dynamicContainerObserver?.disconnect(),O.containerVisibleObserver?.disconnect(),O.paragraphVisibleObserver?.disconnect(),O.titleDynamicObserver?.disconnect(),Pd(O.ctx),sd(),ld(),e&&ns.call(O,"original"),Object.values(O.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),O=null)}function e6(e,t){e.interruptEffectDOM=!1;let n;return function(a){let u=a.message,r=!1;return u?.indexOf("Minified React error")>=0&&(r=!0),r&&(clearTimeout(n),Hn(),n=setTimeout(()=>{Do(t)},e.urlChangeDelay||2e3)),!0}}function t6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(xo(e,a.target),n.unobserve(a.target))})})}function n6(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let u=a.target;(u.paragraphs||[]).forEach(o=>{Yi(e,o)}),n.unobserve(u)}})})}var Bd;function a6(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(Bd),e.translateState=="original"?!1:(Hn(e.urlChangeDelay>20),Bd=setTimeout(()=>{let u=e.ctx;Do(u)},e.urlChangeDelay),!0)):!1}function u6(e){return new MutationObserver(t=>{if(!a6(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!At.isSkipMarkEle(n.target)&&!At.isMarked(n.target,e.id))continue;let u=(n.target?.paragraphs||[]).reduce((r,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...r,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&En(n.target,e.ctx.rule.mutationObserverContainerSelectors)){At.clearMark(n.target),n.target.paragraphs=void 0,xo(e,n.target);return}n.addedNodes.forEach((r,o)=>{r.nodeType===Node.ELEMENT_NODE&&(u.includes(r)||Ha(r,e))})}})}function r6(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let u=a.target,r=globalThis.getComputedStyle(u);Ii(r)||(n.unobserve(a.target),Ha(u,e))}})}function ns(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{Ji(t,e)}),e=="original"&&document.querySelectorAll(`.${jt}`).forEach(t=>t.remove())}function ko(e,t){if(e instanceof HTMLIFrameElement){ja(e.contentDocument,t);return}ja(e,t)}async function Od(e){let t=Qe(),n="auto";if(te()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=Bi(e.mainFrame):a=_a(e.mainFrame).slice(0,1e3),n=await Ve({text:a})}else if(t)n=await Ve({text:_a(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=Bi(e.mainFrame),n=await Ve({text:a})}else n=await Rc();return n==="auto"&&(n=await wd()),Tr(n),n}async function Nd(){if(!O)return;document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=O.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){O.paragraphQueue.push(n);let r=a.commonAncestorContainer.querySelector(`[${ur}='${n}']`);r&&r.remove()}}Xi.call(O,O.ctx)}var Id={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},jd={...It,"zh-CN":{...Id["zh-CN"],...It["zh-CN"]},"zh-TW":{...Id["zh-TW"],...It["zh-TW"]}},zd=jd;function Ua(e,t,n){return ta(jd,e,t,sr,n)}var Ao=(e,t,n,a)=>{let u=N4[e]||e,r=I4[e],o=j4[e],i={"zh-CN":r,"zh-TW":o,en:u};if(n)return i[e]?i[e]:u;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${u})`}else return u};function Wa(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{C.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:er,payload:e},"*")});let n=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(n)}function as(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((r,o)=>(r[t[o]]=o,r),{}),u=Object.keys(a);for(let r of u){let o=r.replace(/MacCtrl/ig,"Ctrl");o&&je(o,i=>{i.preventDefault(),Wa({method:a[r]})})}}var Bo,me,$d,o6,Au,Hd,Kd,Po={},Gd=[],i6=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Un(e,t){for(var n in t)e[n]=t[n];return e}function Vd(e){var t=e.parentNode;t&&t.removeChild(e)}function Jd(e,t,n){var a,u,r,o={};for(r in t)r=="key"?a=t[r]:r=="ref"?u=t[r]:o[r]=t[r];if(arguments.length>2&&(o.children=arguments.length>3?Bo.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)o[r]===void 0&&(o[r]=e.defaultProps[r]);return Lo(e,o,a,u,null)}function Lo(e,t,n,a,u){var r={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:u??++$d};return u==null&&me.vnode!=null&&me.vnode(r),r}function ln(e){return e.children}function Fo(e,t){this.props=e,this.context=t}function qa(e,t){if(t==null)return e.__?qa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Lo(d.type,d.props,d.key,d.ref?d.ref:null,d.__v):d)!=null){if(d.__=n,d.__b=n.__b+1,(g=p[c])===null||g&&d.key==g.key&&d.type===g.type)p[c]=void 0;else for(m=0;m=n.__.length&&n.__.push({__V:Oo}),n.__[e]}function Se(e){return Lu=1,d6(gm,e)}function d6(e,t,n){var a=Io(Fu++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):gm(void 0,t),function(r){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,r);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Ke,!Ke.u)){Ke.u=!0;var u=Ke.shouldComponentUpdate;Ke.shouldComponentUpdate=function(r,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!u||u.call(this,r,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var m=c.__[0];c.__=c.__N,c.__N=void 0,m!==c.__[0]&&(l=!0)}}),!!l&&(!u||u.call(this,r,o,i))}}return a.__N||a.__}function xt(e,t){var n=Io(Fu++,3);!me.__s&&mm(n.__H,t)&&(n.__=e,n.i=t,Ke.__H.__h.push(n))}function ls(e){return Lu=5,dm(function(){return{current:e}},[])}function dm(e,t){var n=Io(Fu++,7);return mm(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function na(e,t){return Lu=8,dm(function(){return e},t)}function cs(e){var t=Ke.context[e.__c],n=Io(Fu++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Ke)),t.props.value):e.__}function m6(){for(var e;e=cm.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(No),e.__H.__h.forEach(ss),e.__H.__h=[]}catch(t){e.__H.__h=[],me.__e(t,e.__v)}}me.__b=function(e){typeof e.type!="function"||e.o||e.type===ln?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Ke=null,um&&um(e)},me.__r=function(e){rm&&rm(e),Fu=0;var t=(Ke=e.__c).__H;t&&(is===Ke?(t.__h=[],Ke.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Oo,n.__N=n.i=void 0})):(t.__h.forEach(No),t.__h.forEach(ss),t.__h=[])),is=Ke},me.diffed=function(e){om&&om(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(cm.push(t)!==1&&am===me.requestAnimationFrame||((am=me.requestAnimationFrame)||g6)(m6)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Oo&&(n.__=n.__V),n.i=void 0,n.__V=Oo})),is=Ke=null},me.__c=function(e,t){t.some(function(n){try{n.__h.forEach(No),n.__h=n.__h.filter(function(a){return!a.__||ss(a)})}catch(a){t.some(function(u){u.__h&&(u.__h=[])}),t=[],me.__e(a,n.__v)}}),im&&im(e,t)},me.unmount=function(e){sm&&sm(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{No(a)}catch(u){t=u}}),n.__H=void 0,t&&me.__e(t,n.__v))};var lm=typeof requestAnimationFrame=="function";function g6(e){var t,n=function(){clearTimeout(a),lm&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);lm&&(t=requestAnimationFrame(n))}function No(e){var t=Ke,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Ke=t}function ss(e){var t=Ke;e.__c=e.__(),Ke=t}function mm(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function gm(e,t){return typeof t=="function"?t(e):t}var $a={},p6={root:"",lang:"en",fallbackLang:"en"};function ds(e,t){let n=Object.assign({},p6,e);$a=t||$a;let[a,u]=Se(n.lang),[r,o]=Se($a),[i,s]=Se(!1),l=m=>{if(r.hasOwnProperty(m))return;s(!1);let g=vd(n.root||"",m);n.getUrl&&(g=n.getUrl(n.root||"",m),fetch(g).then(d=>d.json()).then(d=>{$a[m]=d,o({...$a}),s(!0)}).catch(d=>{o({...$a}),s(!0)}))};return xt(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:u,t:(m,g)=>{if(!r.hasOwnProperty(a))return m;let d=Su(r,a,m);return d===m&&a!==n.fallbackLang&&(d=Su(r,n.fallbackLang,m)),Ui(d,g)},isReady:i}}var f6=0;function j(e,t,n,a,u){var r,o,i={};for(o in t)o=="ref"?r=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--f6,__source:u,__self:a};if(typeof e=="function"&&(r=e.defaultProps))for(o in r)i[o]===void 0&&(i[o]=r[o]);return me.vnode&&me.vnode(s),s}var gs=os(null),ms={root:"assets",lang:"en",fallbackLang:"en"},pm=e=>{let{t,setLang:n,lang:a,isReady:u}=ds({root:e.root||ms.root,lang:e.lang||ms.lang,fallbackLang:e.fallbackLang||ms.fallbackLang,getUrl:e.getUrl},e.translations);return j(gs.Provider,{value:{t,setLang:n,lang:a,isReady:u},children:e.children})};function fm(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let u={},r=Object.keys(n);for(let l of r){let m=n[l].matches;for(let g of m)u[g]||(u[g]=[]),u[g].push(l)}let o=u[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(m=>m!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function hm(e,t=2e3){return n=>{let a,u=0;return r=>{++u==e&&(n(r),u=0),clearTimeout(a),a=setTimeout(()=>u=0,t)}}}function bm(e){let t;try{t=new URL(e)}catch{return!1}let n=zc(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(h6(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function h6(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function Em(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function ym(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function yn(e){let{items:t,maxWidth:n}=e;return n=n||128,j("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let u=a.target.value,r=t.find(o=>o.value===u);r&&r.onSelected(r)},children:t.map((a,u)=>j("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+u))})}var jo="DROP_DOWN_DEFAULT_VALUE";function ps(e){let{showArrow:t,onSelected:n,className:a,menus:u,maxWidth:r}=e;a=a||"",t=t??!0,r=r||70;let o=ls(null);return j("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:jo,style:{maxWidth:`${r}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==jo){o.current.value=jo,o.current?.dispatchEvent(new Event("change"));let l=u.find(c=>c.value===s);l&&n(l)}},children:[{value:jo,label:e.label}].concat(u).map((i,s)=>j("option",{value:i.value,children:i.label},"option-"+s))})}function cn(){return cs(gs)}function fs(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:u}=cn(),r=t.name;return t.label&&(r=t.label),t.labelKey&&(r=u(t.labelKey)),t.type==="select"?j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[r,"\uFF1A"]}),j(yn,{items:t.options.map(o=>({label:`${o.label?u(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Pu(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var b6=({date:e})=>{let{t}=cn(),[n,a]=Se(!1);return xt(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:j("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},E6=({minVersion:e})=>{let{t}=cn();return j("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},y6=()=>{let{t:e}=cn();return j("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},T6=({message:e,handleSyncing:t,date:n})=>{let{t:a}=cn();return j("p",{class:"text-sm",children:[a("failToSyncRules")," ",j("a",{onClick:t,children:a("retry")}),j("br",{}),a("failedReason"),"\uFF1A",e,j("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function hs(e){let{isShowError:t,request:n}=e,[a,u]=Se(null),{t:r}=cn(),[o,i]=Se(null),[s,l]=Se(null),[c,m]=Se(""),[g,d]=Se(!1),[f,T]=Se(!1),[y,p]=Se(!1),[x,v]=Se(null),[k,S]=Se(null),A=Fn(),B=async()=>{m("");let M=o;if(o===null)try{let D=await n({url:su});D?(i(D),M=D,d(!0)):(m(r("unknownError")),l(null))}catch(D){l(null),m(D.message);return}M!==null?(e.setStorageBuildinConfig(M),l(!1),u(M.buildinConfigUpdatedAt)):(m(r("canNotFetchRemoteRule")),l(null))};return xt(()=>{Gn().then(M=>{let D=M.buildinConfigUpdatedAt;v(M);let P=new Date(D);if(u(D),A==="0.0.0"){p(!0);return}n({url:su}).then(z=>{let w=z,G=w.minVersion,de=A;i(w);let q=w.latestVersion;if(q&&(Pu(de,q)?S(!0):S(!1)),Pu(de,G)){let be=w.buildinConfigUpdatedAt;new Date(be)>P?(l(!0),B()):l(!1)}else T(!0),l(null)}).catch(z=>{l(null),m(z.message)})})},[]),xt(()=>{Gn().then(M=>{v(M)})},[a]),x?j("div",{class:"text-sm mt-2",style:{maxWidth:218},children:y?j(y6,{}):c?t===!1?null:j(T6,{handleSyncing:B,message:c,date:a||""}):f?t===!1?null:j(E6,{minVersion:o.minVersion}):s===null||s===!0?null:g?j(b6,{date:a}):null}):null}function bs(e){let t=Fn(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:u,onTranslateLocalHtmlFile:r,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:m,config:g,openAboutPage:d,onTranslateTheWholePage:f,onToggleEnabled:T,openOptionsPage:y,ontranslateToThePageEndImmediately:p,onSetPageLanguage:x,onToggleTranslate:v,onTranslateLocalPdfFile:k,onTranslatePdf:S,onRestorePage:A,ctx:B,currentUrl:M,currentLang:D,onClose:P,onTranslatePage:z,onSetLocalConfig:w,onMouseTriggerChanged:G,errorMsg:de,disabledButton:q,noPermissionPDF:be}=e,fe=a,[Bt,Ee]=Se(""),[wt,ye]=Se(de),{t:b,lang:R}=cn(),K=60;R.startsWith("zh")||(K=65);let se=null,V=null,De=null,Z=null,Te=null,X=null,ae=null,le=null,J=null,I=null,Q=null,Le=null,Ae=!0;if(g){Rt()&&g&&(Ae=g.generalRule.showSponsorOnSafari);let{translationService:F,translationServices:Y,translationUrlPattern:we}=g;fn[F]&&(le=G0(F,B)),Y&&Y[F]?Le=Y[F]||{}:Le={};try{J=new URL(M||"")}catch{}if(M&&bm(M)){I=Em(J.hostname),Q=ym(M);let{matches:ge,excludeMatches:he}=we;V=ge.includes(I),se=ge.includes(J.hostname),Z=he.includes(I),De=he.includes(J.hostname),X=ge.includes(Q),ae=he.includes(Q)}}if(g&&D&&D!=="auto"){let{translationLanguagePattern:F}=g,{matches:Y}=F;Y.includes(D)?Te=!0:Te=!1}let ee=F=>{F.preventDefault(),y()},He=F=>{fe(Y=>(Y.alpha?Ee("Success disable alpha!"):Ee("Success enable alpha!"),{...Y,alpha:!Y.alpha}))},tt=F=>{fe(Y=>({...Y,translationMode:F})),o(F)},Me=()=>{fe(F=>({...F,translationArea:"body"})),f()},_e=()=>{fe(F=>({...F,translationArea:"main"})),n()},Be=(F,Y,we,ge)=>{if(F==="default"){fe(ot=>{let xe={...ot.translationUrlPattern};return{...ot,translationUrlPattern:{...ot.translationUrlPattern,matches:Sn([J?.hostname,I,M],xe.matches),excludeMatches:Sn([J?.hostname,I,M],xe.excludeMatches)}}});return}let he=F,Ne=he==="matches"?"excludeMatches":"matches";J&&fe(ot=>{let xe={...ot.translationUrlPattern};return xe[he]=U0(Y,xe[he]),ge.length>0&&(xe[he]=Sn(ge,xe[he])),xe[Ne]=Sn(we,xe[Ne]),{...ot,translationUrlPattern:{...ot.translationUrlPattern,...xe}}}),he==="matches"&&l==="Original"?setTimeout(()=>{z(),P()},100):he==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{A(),P()},100)},vt=F=>{if(!F){fe(ge=>{let he={...ge.translationLanguagePattern};return{...ge,translationLanguagePattern:{...ge.translationLanguagePattern,matches:Sn(D,he.matches),excludeMatches:Sn(D,he.excludeMatches)}}});return}let Y=F,we=Y==="matches"?"excludeMatches":"matches";D&&fe(ge=>{let he={...ge.translationLanguagePattern};return he[Y]=U0(D,he[Y]),he[we]=Sn(D,he[we]),{...ge,translationLanguagePattern:{...ge.translationLanguagePattern,...he}}}),Y==="matches"&&l==="Original"&&setTimeout(()=>{z(),P()},100)},xn=J?.pathname.toLowerCase().endsWith(".pdf"),Ue=b("translate");l==="Translated"||l==="Error"?Ue=b("show-original"):l==="Original"?xn?gr()&&J.protocol==="file:"||be?Ue=b("translate-firefox-local-pdf"):te()?Ue=b("noSupportTranslate-pdf"):Ue=b("translate-pdf"):Ue=b("translate"):Ue=b(l);let tn=b("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(g.shortcuts.toggleTranslatePage&&(nc()&&B.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ue+=` (${b(`fingers.${B.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ue+=` (${g.shortcuts.toggleTranslatePage})`),g.shortcuts.toggleTranslateToThePageEndImmediately&&(tn+=` (${g.shortcuts.toggleTranslateToThePageEndImmediately})`));let Kt=[];B&&(Kt=hc(B));let nt=F=>{F.preventDefault(),P()},Lt=Y3(B.config.translationService,B.config.targetLanguage);return j("div",{class:"p-3",children:[j("div",{class:"text-sm",children:[j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[b("popupSourceLanguage"),"\uFF1A"]}),j(yn,{items:zt.map(F=>({label:Ao(F,g.interfaceLanguage),value:F,selected:F===B.sourceLanguage,onSelected:Y=>{x(Y.value)}}))})]}),g&&g.targetLanguage&&j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[b("popupTarget"),"\uFF1A"]}),j(yn,{items:Lt.filter(F=>F!=="auto").map(F=>({label:Ao(F,g.interfaceLanguage),value:F,selected:F===g.targetLanguage,onSelected:Y=>{fe(we=>({...we,targetLanguage:Y.value}))}}))})]}),le&&Kt.length>0&&j(ln,{children:[j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[b("popupService"),"\uFF1A"]}),j(yn,{items:Kt.map(F=>({label:`${b("translationServices."+F.id)}${F.ok?"":" "+b("needAction")}`,value:F.id,selected:F.selected,onSelected:Y=>{let we=Kt.find(ge=>ge.id===Y.value);we.ok?(fe(ge=>({...ge,translationService:we.id})),we.props.length===0?setTimeout(()=>{z()},1):setTimeout(()=>{A()},1)):(fe(ge=>({...ge,translationService:we.id})),setTimeout(()=>{y()},100))}}))})]}),Le&&le.props.length>0&&le.props.map((F,Y)=>j("div",{class:"pl-4 text-sm",children:j(fs,{field:F,value:Le[F.name],onChange:we=>{fe(ge=>{let he=ge.translationServices||{},Ne=he[le.id]||{};return setTimeout(()=>{A()},1),{...ge,translationServices:{...he,[le.id]:{...Ne,[F.name]:we}}}})}},"field-"+Y)},"service"+Y))]}),J&&j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:b("forThisSite")}),j(yn,{items:[{label:b("default"),value:"default",selected:se===!1&&De===!1&&!V&&!Z&&!X&&!ae,onSelected:()=>{Be("default",J.hostname,[],[]);let F=J.hostname,Y=B.localConfig.tempTranslationUrlMatches||[],we=Y.filter(he=>he.match!==F),ge=!1;we.length!==Y.length&&(ge=!0),ge&&w({...B.localConfig,tempTranslationUrlMatches:[...we]})}},Q&&{label:b("alwaysTranslateSomeSite",{hostname:b("currentUrl")}),value:"matchesUrl",selected:X,onSelected:()=>{Be("matches",Q,[Q],[])}},{label:b("alwaysTranslateSomeSite",{hostname:J.hostname}),value:"matches",selected:se,onSelected:F=>{Be(F.value,J.hostname,[J.hostname,I,Q],[I])}},I&&{label:b("alwaysTranslateSomeSite",{hostname:I}),value:"matchesWild",selected:V,onSelected:()=>{Be("matches",I,[Q,J.hostname,I],[J.hostname])}},Q&&{label:b("neverTranslateSomeSite",{hostname:b("currentUrl")}),value:"excludeMatchesUrl",selected:ae,onSelected:()=>{Be("excludeMatches",Q,[Q],[])}},{label:b("neverTranslateSomeSite",{hostname:J.hostname}),value:"excludeMatches",selected:De,onSelected:F=>{Be(F.value,J.hostname,[J.hostname,I,Q],[I])}},I&&{label:b("neverTranslateSomeSite",{hostname:I}),value:"excludeMatchesWild",selected:Z,onSelected:()=>{Be("excludeMatches",I,[J.hostname,Q,I],[J.hostname])}}].filter(Boolean)})]}),G&&mu()&&j("div",{class:"flex justify-between mb-2",children:[j("label",{class:"inline-block",children:[b("mouse-translate"),"\uFF1A"]}),j(yn,{items:lr.filter(F=>!(lr.includes(g.generalRule.mouseHoverHoldKey)&&F==="OtherCustom")).map(F=>{let Y=b("mouseHoldKey",{key:F}),we=lr.includes(g.generalRule.mouseHoverHoldKey),ge=F===g.generalRule.mouseHoverHoldKey;return F==="Auto"?Y=b("mouseHoldKeyAuto"):F==="Off"?Y=b("mouseHoldKeyOff"):F==="OtherCustom"?Y=we?b("mouseHoldKeyOther"):b("mouseHoldKeyCustomKey",{key:g.generalRule.mouseHoverHoldKey}):F==="Other"&&(Y=b("mouseHoldKeyOther")),we||F==="OtherCustom"&&(ge=!0),{label:Y,value:F,selected:ge,onSelected:he=>{he.value==="Other"?y("#interface"):G(he.value)}}})})]})]}),j("div",{class:"",children:j("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{xn?S&&S():v()},"aria-busy":l==="Translating",disabled:q||l==="Translating",children:Ue})}),j("div",{class:"text-sm",children:Bt}),j("div",{class:"text-sm",children:wt}),j("div",{class:"flex justify-between flex-wrap",children:[D&&D!=="auto"?j("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[j("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!Te,onChange:F=>{let Y=F.target.checked;vt(Y?"matches":void 0)}}),b("alwaysTranslateSomeLanguage",{language:Ao(D,g.interfaceLanguage,!1,!0)})]}):j("span",{}),j("div",{class:"flex flex-end flex-grow",children:j(ps,{label:b("more"),showArrow:!0,maxWidth:K,onSelected:F=>{F.value==="changeToOnlyTranslationMode"?tt("translation"):F.value==="changeToDualTranslationMode"?tt("dual"):F.value==="translateTheWholePage"?f():F.value==="translateToThePageEndImmediately"?p():F.value==="translateTheMainPage"?n():F.value==="showTranslationOnly"||(F.value==="translateLocalPdfFile"?k&&k():F.value==="translateLocalHtmlFile"?r&&r():F.value==="translateLocalSubtitleFile"?i&&i():F.value==="donate"?(globalThis.open(g.donateUrl),P()):F.value==="feedback"?(globalThis.open(g.feedbackUrl),P()):F.value==="options"?(y(),P()):F.value==="changeToTranslateTheWholePage"?Me():F.value==="changeToTranslateTheMainPage"?_e():F.value==="about"?d():F.value==="toggleEnabled"?T():F.value==="openEbookViewer"?m():F.value==="openEbookBuilder"&&c())},menus:[g.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+b("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},g.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+b("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},g.translationArea==="main"&&{label:"\u{1F480} "+b("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},g.translationArea==="body"&&{label:"\u{1F4D6} "+b("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+tn,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+b("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+b("browser.openEbookBuilder"),value:"openEbookBuilder"},!te()&&{label:"\u{1F4C1} "+b("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!te()&&{label:"\u{1F310} "+b("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+b("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(g.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(g.enabled?b("clickToDisableExtension"):b("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+b(Ae?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),j("footer",{children:[j(hs,{isShowError:!1,request:u,setStorageBuildinConfig:s}),j("div",{class:"mt-3 text-sm flex justify-between",children:[j("a",{href:"#",class:"secondary",onClick:ee,children:b("options")}),te()&&j("a",{href:"#",class:"secondary",onClick:nt,children:b("close")}),j("span",{class:"immersive-translate-no-select muted",onClick:hm(7)(He),children:["V",t,g.enabled?null:j("a",{href:"#",onClick:T,children:[" ","(",b("hasBeenDisabled"),")"]})]})]})]})]})}var Es={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return U.storage[n].get(a)},set:(e,t,n)=>U.storage[n].set({[e]:t})};function zo(e,t,n){let[a]=Se(()=>typeof t=="function"?t():t),[u]=Se(n),[r,o]=Se(a),[i,s]=Se(!1),[l,c]=Se("");xt(()=>{Es.get(e,a,u).then(g=>{g[e]&&o(g[e]),s(!0),c("")}).catch(g=>{s(!1),c(g)})},[e,a,u]);let m=na(g=>{let d=typeof g=="function"?g(r):g;C.debug("new settings",d),Es.set(e,d,u).then(()=>{o(d),s(!0),c("")}).catch(f=>{o(d),s(!1),c(f)})},[u,e,r]);return[r,m,i,l]}function ys(e,t,n){let a=[];return function(){let[r,o,i,s]=zo(e,t,n),l=na(c=>{for(let m of a)m(c)},[]);return xt(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[r,l,i,s]}}function Tm(e,t){return ys(e,t,"sync")}var x6="userConfig",C6={},w6=Tm(x6,C6);function xm(e){let[t,n,a,u]=w6(),r=na(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,r,a,u,n]}async function Ho(e){try{let t=new Date;C.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await U.storage.local.set({[cu]:t.toISOString()}),await v6(),te()||await qc()}catch(t){C.error("run cron task failed",t)}}async function Cm(){let t=(await Tt()).interval;if(t){let n=await U.storage.local.get(cu);if(n&&n[cu]){let a=n[cu];if(Date.now()-new Date(a).getTime()a?(await U.storage.local.set({buildinConfig:t}),C.info(`sync remote rules success, latest: ${new Date(u).toLocaleString()}`)):C.debug(`no need to sync rules, latest: ${a}`):C.info(`local version is too old, please update to ${o} or later`)}catch(e){C.error("sync rules error: ",e)}}function Ts(e){let{onClose:t}=e,[n,a]=Se("Original"),[u,r,o,i]=xm(()=>{setTimeout(()=>{v("updateGlobalContext",!1)()},250)}),[s,l]=Se(null),[c,m]=Se(globalThis.location.href),[g,d]=Se("auto"),[f,T]=Se(null),y=q=>{a(q.detail)},p=q=>{d(q);let be=fm(c,q,s.sourceLanguageUrlPattern);r(fe=>({...fe,sourceLanguageUrlPattern:be})),Ut(q)},x=()=>{m(globalThis.location.href)};xt(()=>(document.addEventListener(ar,y,!1),Tt().then(q=>{l(q);let be=un();d(be);let fe=Re();a(fe),Ho(q.interval)}),document.addEventListener("urlChange",x),()=>{document.removeEventListener("pageTranslatedStatus",y),document.removeEventListener("urlChange",x)}),[]),xt(()=>{Tt().then(q=>{l(q)})},[u]),xt(()=>{c&&s&&qt({url:c,config:s}).then(q=>{T(q)})},[c,s]);let v=(q,be,fe={})=>()=>{Wa({method:q,data:fe||{}}),be&&t()},k=()=>{t()},S=()=>{r(q=>({...q,enabled:!q.enabled})),setTimeout(()=>{k()},50)},A=()=>{ei(),setTimeout(()=>{k()},50)},B=()=>{ei(),setTimeout(()=>{k()},50)},M=(q="")=>{Fr(!0,q),setTimeout(()=>{t()},50)},D=()=>{Pr(),setTimeout(()=>{t()},50)},P=()=>{Mr(),setTimeout(()=>{t()},50)},z=()=>{Uc(),setTimeout(()=>{t()},50)},w=()=>{_r(),setTimeout(()=>{t()},50)},G=()=>{Wc(),setTimeout(()=>{t()},50)},de=q=>{r(be=>({...be,generalRule:{...be.generalRule,mouseHoverHoldKey:q}}))};return!s||!f?null:j(bs,{openEbookViewerPage:P,openEbookBuilderPage:w,onSwitchTranslationMode:q=>{v("switchTranslationMode",!0,{mode:q})()},onTranslateLocalHtmlFile:z,onTranslateLocalSubtitleFile:G,request:W,onClose:k,onToggleEnabled:S,onTranslateTheWholePage:v("translateTheWholePage",!0),openOptionsPage:M,onToggleTranslate:v("toggleTranslatePage",!0),onTranslateTheMainPage:v("translateTheMainPage",!0),ontranslateToThePageEndImmediately:v("translateToThePageEndImmediately",!0),onTranslatePage:v("translatePage",!0),onRestorePage:v("restorePage",!1),onTranslatePdf:A,openAboutPage:D,onTranslateLocalPdfFile:B,onSetPageLanguage:p,onUserConfigChange:r,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:g,onSetLocalConfig:Lr,onSetBuildinConfig:Bc,onMouseTriggerChanged:de})}function k6(e,t){for(let n of t){if(te()&&!gr()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var xs={position:"right",right:0,top:335},Ct={...xs},qo=!1,aa=null,dn=null,$o=null,Cs=null,Ka=null,ws=null,wm=6,Uo,Wo,km=null,Sm=null;async function ks(){let e=Ie();ws=await _c(),Ct=ws.pagePopupConfig||Ct;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Cs=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` +`);k6(n,[a]);let u=document.createElement("div");u.innerHTML=Ce.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(u),aa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");dn=o,$o=n.querySelector("#mount"),aa.setAttribute("style",vs(Ct)),Ls(),o.addEventListener("mousedown",Dm),o.addEventListener("touchstart",A6),globalThis.addEventListener("resize",s=>{aa.setAttribute("style",vs(Ct))})}function S6(){Ro(null,$o),$o.style.display="none",dn.style.display="block",Ka=setTimeout(()=>{Ls(!0)},2e3)}function vm(e){let t=e.querySelector("#mount"),n=()=>{S6()},a=u=>{u&&u.target&&u.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let u=await Tt();Ro(j(pm,{lang:u.interfaceLanguage,fallbackLang:"zh-CN",translations:zd,children:j("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:j("div",{class:"immersive-translate-popup-wrapper",style:D6(),children:j(Ts,{onClose:n})})})}),t)})().then(()=>{dn.style.display="none",$o.style.display="block"})}function D6(){let e=Ss(),t=e.height,{position:n,top:a,left:u}=Ct,r={position:"fixed"},o=300,i=300,s=100;return kl()&&(n=xs.position,a=xs.top),n==="right"||n==="left"?(r.top=a-s,r.top+o>=t?(r.bottom=30,delete r.top):r.top<=10&&(r.top=10),n==="right"?r.right=0:n==="left"&&(r.left=0)):(n==="top"||n==="bottom")&&(r.left=u-s,r.left+i>=e.width?(r.right=0,delete r.left):r.left<=10&&(r.left=0),n==="top"?r.top=0:n==="bottom"&&(r.bottom=0)),r}function Ss(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function Dm(e){Sm=aa.getAttribute("style"),Uo=e.pageX,Wo=e.pageY,Ka&&clearTimeout(Ka),qo=!1,dn.style.opacity="1",dn.style.transform="none",km=dn.getAttribute("style"),globalThis.addEventListener("mousemove",Ds),globalThis.addEventListener("mouseup",As),globalThis.addEventListener("touchmove",Am),globalThis.addEventListener("touchend",Ko),globalThis.addEventListener("touchcancel",Ko)}function A6(e){e.preventDefault&&e.preventDefault(),Dm(e.changedTouches[0])}function Am(e){Ds(e.changedTouches[0])}function Ko(e){e.preventDefault&&e.preventDefault(),As(e.changedTouches[0])}function Ds(e){e.preventDefault&&e.preventDefault(),qo=!0,aa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function As(e){e.preventDefault&&e.preventDefault(),F6(),Ka&&clearTimeout(Ka),Uo=Uo||0,Wo=Wo||0;let t=Math.abs(e.pageX-Uo),n=Math.abs(e.pageY-Wo);t{Ls(!0)},2e3)}function Ls(e=!1){dn.style.opacity="0.4";let t="";Ct.position==="left"?t="translateX(-40%)":Ct.position==="right"?t="translateX(40%)":Ct.position==="top"?t="translateY(-40%)":Ct.position==="bottom"&&(t="translateY(40%)"),dn.style.transform=t,e&&(dn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function F6(){globalThis.removeEventListener("mousemove",Ds),globalThis.removeEventListener("mouseup",As),globalThis.removeEventListener("touchmove",Am),globalThis.removeEventListener("touchend",Ko),globalThis.removeEventListener("touchcancel",Ko)}function vs(e){let t=P6(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function P6(e){let{position:t,...n}=e,a=Ss(),u={};return t==="left"?(u.left=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="right"?(u.right=0,n.top>a.height?u.top=a.height-100:u.top=n.top):t==="top"?(u.top=0,n.left>a.width?u.left=a.width-100:u.left=n.left):t==="bottom"&&(u.bottom=0,n.left>a.width?u.left=a.width-100:u.left=n.left),u}var Go=!1;async function Lm(e){if(!e){let t=await Tt(),n={url:globalThis.location.href,config:t};e=await qt(n)}e.config.debug&&C.setLevel("debug"),e.isTranslateExcludeUrl?C.debug("detect exclude url, do not inject anything."):(ha().any||te())&&e.rule.isShowUserscriptPagePopup&&(Go||(Go=!0,ks().catch(t=>{C.error("init popup error",t)})))}async function Fm(){Go||(Go=!0,ks().catch(e=>{C.error("init popup error",e)}))}var Pm=!1,Bm=[()=>{je.unbind()}],Ps=[...Bm],M6=lt(async()=>{await Fr()},50),_6=lt(async()=>{await Pr()},50),B6=lt(async()=>{await _r()},50),R6=lt(async()=>{await Mr()},50),Rm=lt(e=>{Wa({method:e})},50),O6=lt(()=>{vr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),N6=lt(()=>{Ar();let e=new CustomEvent(kn,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),I6=lt(()=>{Sr();let e=new CustomEvent(kn,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function j6(e,t){let n=e.document;if(Pm)return;if(Pm=!0,te()||vc(),n.addEventListener("securitypolicyviolation",J6),n.addEventListener("immersiveTranslateEbookLoaded",V6),n.addEventListener(C4,G6),n.addEventListener("click",u=>{W6(u,t)}),te()&&(globalThis.top!=globalThis.self?e.addEventListener("message",H6,!1):n.addEventListener(kn,z6)),globalThis.top===globalThis.self){let u=rn.rootIframe(O0);u.handleAsk("getRateLimitDelay",n3),u.handleAsk("throttleRequest",x3)}}function Mu(e,t){Y6(),j6(t,e);let n=t.document,a=U6.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Ps.push(()=>{n.removeEventListener("touchstart",a)}),te()&&globalThis.top===globalThis.self&&(as(e.config),X6(e.config)),Rt()&&as(e.config)}function z6(e){Fm()}function H6(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===er&&Ta(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function U6(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?O6():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?I6():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&N6()}function W6(e,t){let n=e.target;if(!n||!n.getAttribute){Fs(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&Je(a,[{name:a}],{...t,sourceLanguage:"none"});let u=n.getAttribute(`data-${N}-action`);if(u)if(u==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),kr(),Fs(n,!0);return}else if(u=="toast-error"){let r=n.getAttribute(`data-${N}-tooltip-text`);_m($6.bind(null,t,r||""))}else u=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),_m(q6.bind(null,t)));Fs(n)}async function Mm(e=!1){let t=document.querySelector(`.${N}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await Mc();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await Pc(n)}function _m(e){let t=`${N}-modal`,n=`${N}-modal-title`,a=`${N}-modal-body`,u=`${N}-modal-footer`,r=document.querySelector(`.${t}`);if(r){let o=r.querySelector(`.${n}`),i=r.querySelector(`.${u}`),s=r.querySelector(`.${a}`);e(r,o,s,i)}else{r=document.createElement("div"),r.className=t+" notranslate",r.id=t;let o=document.createElement("div");o.className=N+"-modal-content notranslate",r.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=N+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=u,o.appendChild(c),document.body.appendChild(r),i.onclick=function(){r.style.display="none"},window.onclick=function(m){m.target==r&&(r.style.display="none")},e(r,s,l,c)}setTimeout(()=>{K6()},100)}function q6(e,t,n,a,u){let r=Om.bind(null,e);n.innerHTML=`
${H4} ${r("disableConfirm")}
`,a.innerHTML="";let o=document.querySelector(`div[data-${N}-cancel-desc]`),i=document.createElement("p");i.innerHTML=o?Ce.sanitize(o.textContent||""):Ce.sanitize(r("searchEnhancementNotes")),i.style.cssText="margin-bottom:12px",a.appendChild(i);let s=[{id:"enable-search-enhancement",value:"enable",text:r("enableSearchEnhancement")},{id:"disable-once",value:"once",text:r("disableOnce")},{id:"disable-global",value:"global",text:r("disableGlobal")}];for(let d=0;d${r("option")}`})),a.appendChild(l);let c=a.querySelector(`.${N}-open-enhancement`);c&&(c.onclick=function(){Hc(!0)});let m=document.createElement("button");m.innerText=r("closeModal"),m.className=`${N}-btn ${N}-cancel-btn`;let g=document.createElement("button");g.className=`${N}-btn`,g.innerText=r("saveSettings"),u.innerHTML="",u.appendChild(m),u.appendChild(g),m.onclick=function(){t.style.display="none"},g.onclick=function(){let d=a.getElementsByTagName("input"),f="";for(let T=0;T{Vo()},10)}function J6(e){ce.HAS_CSP_ERROR="1"}function Y6(){Ps.forEach(e=>{e()}),Ps=Bm}function X6(e){if(te()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Or.commands,u=[...Object.keys(t).filter(r=>r==="toggleTranslatePage").map(r=>{let o=t[r].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=Ua(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:r,title:i}}),{id:P0,title:Ua("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:M0,title:Ua("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:L0,title:Ua("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:F0,title:Ua("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let r of u)GM.registerMenuCommand(r.title,()=>{r.id===L0?M6():r.id===F0?_6():r.id===M0?B6():r.id===P0?R6():Rm(r.id)},r.key)}}function Z6(e){Ta(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{C.error("send content message request failed",e,n)});let t=new CustomEvent(kn,{detail:e});globalThis.document.dispatchEvent(t)}function Nm(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let u=a[a.length-1];if(!u)return{};let r=n-u.right,o=t.find(i=>Oe(i.left,r)&&Oe(i.width,u.width));return{prevP:u,curP:o}}function Ms(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function Im(e){return e?e==e[0].repeat(e.length):!0}function Oe(e,t,n=5){return Math.abs(e-t)<=n}var _s=[",","\\.","\uFF0C","\u3002"];function jm(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],u=t[0];return Oe(a.left,u.left,7)&&Oe(a.nextTop,u.top,10)&&Jo(a,u)}function zm({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function qm(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function $m({prevLineP:e,prevP:t},n){return Oe(e.left,n.left,1)&&Oe(e.right,t.right,1)&&t.mergedTimes>=1}function Bs(e,t){let{prevLineP:n}=e;return qm(e,t)&&(Oe(n.bottom,t.bottom)||Oe(n.nextTop,t.top)&&Oe(n.left,t.left))}function Km(e,t){let{prevLineP:n,prevP:a,scale:u}=e;return qm(e,t)&&n.width0&&a/u<.1&&n.left!Ms(r.str)).filter(r=>r.translateStatus!="success"&&r.translateStatus!="pending").map(r=>(r.translateStatus="pending",r));if(n.length<=0)return;let a=await Ve({text:n.map(r=>r.str).join(` +`).slice(0,1e3)});Tr(a);let u=n.map((r,o)=>({text:r.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=n[s];r?(l.translatedStr=r.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),e1(l)})}var Os={};async function Q6(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Os).filter(n=>!!n);await Yo(Xm,t)}function e1(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Os[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",Q6)):e.translateStatus=="success"&&(Os[e.id]=void 0,t.innerHTML=Ce.sanitize(e.translatedStr)))}function Zm(e,t){let n=[],a=n1(e,t);return a1(e,a).forEach(r=>{if(!(r.length<=0)){if(r.length==1){Ym(e,n,r[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),r.forEach(o=>{Ym(e,n,o,!1)}),n.push("
")}}),`
${n.join("")} -
`}function $m(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(u*o)+1).toFixed(2)}%`:"auto",m=`${(l.left*100/(u*o)).toFixed(2)}%`,g=`${(l.top*100/(r*o)).toFixed(2)}%`,d=Y4()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,C=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${m};top: ${g};width:${c};max-width:${s};`,!d&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let y=Ps(l.str)?"":"translate-pending",p=l.str;l.translateStatus=="success"&&(p=l.translatedStr,y=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function J6(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let l=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,m=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${m};height:${s-i}px;overflow:auto;`}function Y6(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,Bs(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function X6(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],Rm(e,a)){r.push(a);return}n.push([a])}),n}var Jm="immersive-translate",Ga,Tn=[];async function Zm(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(Ke("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await Ym(1);await Yo(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Tn=[],Ga=void 0,n1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await Ym(a);await Yo(e,u||[])})}}function Z6(e){if(Ga)return{...Ga,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ga={...i},i}async function Ym(e){let t=Z6(e);if(!t)return;Tn[e]||(Tn[e]=await Q6(t,e,Tn[e-1]||[]));let n=Tn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${Jm}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${Jm}-page`);let r=Vm(t,n);return u.innerHTML=Ae.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function Q6(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,s]=a._pageInfo.view;Ga.pageWidth=i,Ga.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=t1(e,u);e.origLineParagraphs=l;let{prevP:c,curP:m}=_m(e,l);return m&&Qm(c,void 0,m),e1(e,l)}function e1(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,Im(e,o)){if(jm(e,o)){r(l,o);return}if(Hm(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},r(l,o);return}if(Um(e,o)){r(l,o);return}if(_s(e,o)){r(l,o);return}if(Wm(e,o)){r(l,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],s=r.transform[5],l=r.width*n,c=t.styles[r.fontName].fontFamily,m=r.transform[3],g=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+g)*m;isNaN(f)&&(f=m);let C=i*n,y=C+l,p=(a-s-f)*n,T=p+m*n,v=T+m*n*.2,k=y+m*n*.3,S={str:o,left:C,nextLeft:k,top:p,nextTop:v,id:`pageNum-${Mt()}`,width:l,originFontName:r.fontName,fontName:c,fontSize:m,right:y,bottom:T,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(S);else{let A=u[u.length-1];if(e.prevLineP=A,qm(e,S)){Nm(e,S)?A.str+=o:A.str+=" "+o,A.right=y,A.fontName=c,A.width=Math.max(A.width+l,y-A.left),A.nextLeft=k;return}if(Km(e,S)){A.width=Math.max(A.width+l,y-A.left),A.right=y,A.nextLeft=k,A.attachList.push(S);return}u.push(S)}}),u}function Qm(e,t,n){if(!Jo(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function n1(e){setTimeout(()=>{let t="";for(let n=1;n<=Tn.length;n++){let a=!1;if(Tn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Je({text:t}).then(n=>{Ke("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ua={};async function Os(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await on(e,n,1e3);return Ut(a),a}async function eg(e){yt("Translating");let t=an(),n=Ea(),a=[...document.querySelectorAll(".source-text")];if(ho(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Ye(r,"id",o+""),i&&(Na(i,o)?.remove(),i.appendChild(ku(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await rn({sentences:u},e,(r,o,i)=>{let s=i.id,l=Na(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),r?(c.innerHTML=Ae.sanitize(`${r.message}`),ua[s]={ok:!1,sentence:i}):o&&(c.innerHTML=Ae.sanitize(o.text),ua[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{yt("Translated")}}async function tg(e){yt("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ua),n=[],a=[];for(let u of t){let r=ua[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let s=i.parentElement;i.remove(),s&&(delete ua[u],s.appendChild(ku(e,u)),a.push(r.sentence))}}}try{await rn({sentences:a},e,(u,r,o)=>{let i=o.id,s=Na(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),u?(l.innerHTML=Ae.sanitize(`${u.message}`),ua[i]={ok:!1,sentence:o}):r&&(l.innerHTML=Ae.sanitize(r.text),ua[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{yt("Translated")}}function Ns(){yt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Is={};async function ng(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await on(e,n,1e3);return Ut(a),a}async function ag(e){yt("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Is),n=[];for(let a of t){let u=Is[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${ur}='${a}']`);o&&o.remove(),n.push(u)}}try{await xo(n,e,e.config.translationMode)}catch{}finally{yt("Translated")}}function ug(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+jt);for(let u of a)u.remove()}yt("Original")}async function rg(e){yt("Translating");let t=Mt(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ja(s,e);let l=s.body;if(!l)continue;let c=Kt(e);c.isModifyImage=!1,zn({id:t,container:l,filterRule:c,onParagraph:m=>{a.push(m)}})}let r=fo(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=yo(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await Xi(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(u.push(l),Is[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await xo(u,e,e.config.translationMode)}catch{}finally{yt("Translated")}}var a1=new AbortController,{signal:u1}=a1,Ws=0,qs=0,js=!1,zs=0,_u=!1,ra,og=0,oa=[];function Xo(e,t){r1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=lt(m=>{if(js==!1&&Math.abs(m.clientX-Ws)+Math.abs(m.clientY-qs)>3&&(zs<2?zs+=1:js=!0),Ws=m.clientX,qs=m.clientY,o||_u&&!ra){let g=dg(a.rule,t);if(g){if(Ks(g))return;sg(a,g)}}},o?700:300),s=m=>{let g=m.target;Ks(g)||sg(a)},l=m=>{let g=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",d=je.getPressedKeyCodes();if(d.length>1&&je[g]&&(og=Date.now(),_u=!1),d.length===1&&je[g]){let f=Date.now();_u=!0,ra&&clearTimeout(ra),ra=setTimeout(()=>{let C=og-f;C>0&&C<=150?_u=!1:s(m),ra=void 0},150)}};if(oa.push(()=>{ra&&clearTimeout(ra)}),r)return;Hs("mousemove",i,t),oa.push(()=>{t.removeEventListener("mousemove",i)});function c(){js=!1,zs=0,i.cancel()}if(o)Hs("blur",c,t),oa.push(()=>{t.removeEventListener("blur",c)});else{let m=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];Hs("keyup",ig,t),oa.push(()=>{t.removeEventListener("keyup",ig)}),g.includes(m)?je("*","mouseHover",l):je(u.generalRule.mouseHoverHoldKey,"mouseHover",s),je.setScope("mouseHover"),oa.push(()=>{je.deleteScope("mouseHover")})}}function r1(){oa.forEach(e=>e()),oa=[]}function ig(e){_u=!1}function Hs(e,t,n=window){return n.addEventListener(e,t,{signal:u1})}function sg(e,t,n=window){if(t=t||dg(e.rule,n),!t){x.debug("can not find selection part!");return}if(Ks(t)){x.debug("exclude dom");return}Pd(e,t);let a=So();a?.currentUrl!==window.location.href&&(Hn(),es(e)),a&&(a.setupMouseHoverListener=Xo);let u=Kt(e);u.excludeSelectors=[],u.selectors=[];let r=!1;zn({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{Du(a,o,!0).then(i=>{if(i&&!r){r=!0;let s=Date.now();et(T4,s),Ke("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function dg(e,t){return o1(Ws,qs,e,t)}function o1(e,t,n,a){let u=nd(e,t,n,a);if(u==null)return;let r=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=ad(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:cg(l,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(l){x.debug("get mouse over word fail",l)}let s=u.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Zo&&self.removeEventListener("keydown",Zo),Zo=i,self.addEventListener("keydown",Zo);function i(l){if(Va)return;let c=l,m=c.target||c.srcElement,g=m?.tagName;(m?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(x1(l,u.triggerKey,u.codePrefixAlias)?s(l):r=0)}function s(l){Date.now()-o=u.triggerTimes&&(c1(e,u),r=0)}}function i1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let s=r+i;return u.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function mg(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Ja;function s1(e){let t=e.parentElement;if(!t)return;Ja=document.createElement("div"),Ja.className=I+"-input",Ja.innerHTML=`
`,t.appendChild(Ja);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function l1(){Ja&&Ja.remove()}async function c1(e,t){if(!Va)try{let m=function(){o=e.config.inputTargetLanguage;let d=r.split(" ")[0];d&&d[0]&&(d=d[0].toLowerCase()+d.slice(1)),d.trim()&&t.flatAlias.includes(d)?(o=mg(d,t.codeAlias),u=r.slice(d.length+1)):u=r},g=function(){o="";let d=i1(t),f=r.split(d);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let y=r.lastIndexOf(u),p=r.slice(0,y).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let C=r.slice(a.length+1,r.indexOf(u)).trim();if(o=mg(C,t.codeAlias),!o){x.warn("not found alias",C);return}},n=document.activeElement;Va=!0,s1(n);let a="",u="",r=Bu(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?m():(g(),o||m()),C1(e);let i=d1(u,t),s=await on(e,i);x.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;et(C4,Date.now());let c=await Pa(l,e);T1(n,a+c.text),Va=!1}catch(n){throw Va=!1,n}finally{Va=!1,l1()}}function d1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function m1(e,t){let n=t.innerHTML,a=Bu(t);return{html:n.replace(a,e),text:e}}function gg(e,t,n=!1){let a=Bu(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function Bu(e){return e.value||e.innerText||e.textContent}async function ia(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function g1(e,t,n){await ia(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await ia(10)}async function p1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await ia(10))}async function f1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await ia(20),(t.value||t.value==="")&&(t.value=e.text)}async function h1(e,t){pg(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await ia(20))}var b1=[g1.bind(null,["plain"])];function E1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function pg(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function y1(e){if(pg(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function T1(e,t){await y1(e),await ia(50);let n=m1(t,e);E1(e),x.debug("clearContnet",Bu(e)),await ia(50);for(let a of[...b1,h1,f1,p1])if(await a(n,e),x.debug("setContent",a.name,gg(n,e),Bu(e),n),gg(n,e))break}function C1(e){Ke("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function x1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function Eg(e){if(ha().any||!e.rule.enableSearchEnhancement||!/https:\/\/www\.google\..+\/search/.test(e.url))return;let t=D1(e.url);if(!t)return;let n=await on(e,t);if(Ke("detect_search_action",[{name:"detect_search_action"}],{...e,sourceLanguage:n}),!["zh-CN","zh-TW"].includes(n))return;x.debug("use dual search");let a=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")a=!0;else if(!bg(document.body))return;let r=document.querySelector(e.rule.searchEnhancementSelector);if(!r){let o=document.querySelector("#rcnt");if(!o)return;let i=o.children;if(i&&i.length>1)r=i[1];else{let s=i[0];r=document.createElement("div"),r.id="rhs",r.style.maxWidth="372px",r.style.marginLeft="50px",o.insertBefore(r,s.nextSibling)}}if(a||bg(document.body)){x.debug("find story");let o=await A1(e,t,n);x.debug("enKeyword",o);let i=await v1(o);if(x.debug("news list",i),i&&i.length<=0)return;let s=await S1(i,t,o);if(!s)return;Ke("show_search_enhancement",[{name:"show_search_enhancement"}],{...e,sourceLanguage:"search_enhancement"}),w1(e,s,n),r.insertBefore(s,r?.firstChild)}}async function w1(e,t,n){let a=t.querySelectorAll('[translate="true"]');return L1(e,[...a],n),t}async function v1(e){let n=(await W({url:k1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,u=new DOMParser().parseFromString(n,"text/xml"),r=[],o=u.querySelectorAll("item");for(let i=0;i\u82F1\u6587\u641C\u7D22 ${n} \u7684\u76F8\u5173\u65B0\u95FB:
-
${r}
`,{ADD_ATTR:["target"]});let i=a.querySelector(`.${I}-search-more`);return i&&(i.onclick=()=>{let s=a.querySelector(`.${I}-expand-items`);s.style.display=="none"?(s.style.display="block",i.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(fg(n))}),a}function hg(e){return e.map((t,n)=>{let a=t.title||"",u=t.source||"",r=a.split("-");return r.length>1&&(u=r[r.length-1].trim(),r=r.slice(0,r.length-1)),a=r.join("-"),a=a.trim(),`
${u}
`}function Ym(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:u,pageHeight:r,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(u*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(u*o)+1).toFixed(2)}%`:"auto",m=`${(l.left*100/(u*o)).toFixed(2)}%`,g=`${(l.top*100/(r*o)).toFixed(2)}%`,d=ec()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,T=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${m};top: ${g};width:${c};max-width:${s};`,!d&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let y=Ms(l.str)?"":"translate-pending",p=l.str;l.translateStatus=="success"&&(p=l.translatedStr,y=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${p}

`),t.push("
")})}function t1(e,t){let{pageWidth:n,pageHeight:a,scale:u}=e,r=t[0][0],o=r.width,i=r.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(g=>{g[0].width>o&&(o=g[0].width)});let l=`${(o*100/(n*u)).toFixed(2)}%`,c=`${(r.left*100/(n*u)).toFixed(2)}%`,m=`${(r.top*100/(a*u)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${m};height:${s-i}px;overflow:auto;`}function n1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0){n.push([a]);return}let r=n[n.length-1][0];if(e.prevLineP=r,Rs(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function a1(e,t){let n=[];return t.forEach((a,u)=>{if(u==0||a.length>1){n.push([a]);return}let r=n[n.length-1];if(e.prevGroup=r[r.length-1],jm(e,a)){r.push(a);return}n.push([a])}),n}var Qm="immersive-translate",Ga,Tn=[];async function ng(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(Je("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await eg(1);await Yo(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Tn=[],Ga=void 0,s1(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let u=await eg(a);await Yo(e,u||[])})}}function u1(e){if(Ga)return{...Ga,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let r=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(r),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return Ga={...i},i}async function eg(e){let t=u1(e);if(!t)return;Tn[e]||(Tn[e]=await r1(t,e,Tn[e-1]||[]));let n=Tn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),u=document.querySelector(`.${Qm}-page[data-page-number="${e}"]`);if(!a||u)return;u=document.createElement("div"),u.setAttribute("style",a.getAttribute("style")||""),u.setAttribute("data-page-number",e+""),u.classList.add("page"),u.classList.add(`${Qm}-page`);let r=Zm(t,n);return u.innerHTML=Ce.sanitize(r,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(u):a.parentNode?.insertBefore(u,a.nextSibling),n}async function r1(e,t,n){let a=await e.pdfDocument.getPage(t),u=await a.getTextContent(),[r,o,i,s]=a._pageInfo.view;Ga.pageWidth=i,Ga.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=i1(e,u);e.origLineParagraphs=l;let{prevP:c,curP:m}=Nm(e,l);return m&&ag(c,void 0,m),o1(e,l)}function o1(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,Um(e,o)){if(Wm(e,o)){r(l,o);return}if($m(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},r(l,o);return}if(Km(e,o)){r(l,o);return}if(Bs(e,o)){r(l,o);return}if(Gm(e,o)){r(l,o),o.left{let o=r.str;if(!o.trim())return;let i=r.transform[4],s=r.transform[5],l=r.width*n,c=t.styles[r.fontName].fontFamily,m=r.transform[3]||r.height,g=t.styles[r.fontName].descent,f=(1+(1-t.styles[r.fontName].ascent)+g)*m;isNaN(f)&&(f=m);let T=i*n,y=T+l,p=(a-s-f)*n,x=p+m*n,v=x+m*n*.2,k=y+m*n*.3,S={str:o,left:T,nextLeft:k,top:p,nextTop:v,id:`pageNum-${Mt()}`,width:l,originFontName:r.fontName,fontName:c,fontSize:m,right:y,bottom:x,attachList:[],mergedTimes:0,translatedStr:""};if(u.length==0)u.push(S);else{let A=u[u.length-1];if(e.prevLineP=A,Vm(e,S)){Hm(e,S)?A.str+=o:A.str+=" "+o,A.right=y,A.fontName=c,A.width=Math.max(A.width+l,y-A.left),A.nextLeft=k;return}if(Jm(e,S)){A.width=Math.max(A.width+l,y-A.left),A.right=y,A.nextLeft=k,A.attachList.push(S);return}u.push(S)}}),u}function ag(e,t,n){if(!Jo(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function s1(e){setTimeout(()=>{let t="";for(let n=1;n<=Tn.length;n++){let a=!1;if(Tn[n]){for(let u=0;u1e3){a=!0;break}}if(a)break}}Ve({text:t}).then(n=>{Je("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var ua={};async function Ns(e){let n=[...document.querySelectorAll(".source-text")].map(u=>u.textContent).join(""),a=await en(e,n,1e3);return Ut(a),a}async function ug(e){yt("Translating");let t=un(),n=Ea(),a=[...document.querySelectorAll(".source-text")];if(ho(e,t))return;let u=a.filter(r=>r.innerText?.trim()).map((r,o)=>{let i=r.parentElement?.parentElement?.querySelector(".target-text");return Ye(r,"id",o+""),i&&(Na(i,o)?.remove(),i.appendChild(ku(e,o))),{text:r.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await on({sentences:u},e,(r,o,i)=>{let s=i.id,l=Na(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),r?(c.innerHTML=Ce.sanitize(`${r.message}`),ua[s]={ok:!1,sentence:i}):o&&(c.innerHTML=Ce.sanitize(o.text),ua[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{yt("Translated")}}async function rg(e){yt("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(ua),n=[],a=[];for(let u of t){let r=ua[u];if(!r.ok){let i=document.querySelector(`#error-id-${u}`);if(i){let s=i.parentElement;i.remove(),s&&(delete ua[u],s.appendChild(ku(e,u)),a.push(r.sentence))}}}try{await on({sentences:a},e,(u,r,o)=>{let i=o.id,s=Na(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),u?(l.innerHTML=Ce.sanitize(`${u.message}`),ua[i]={ok:!1,sentence:o}):r&&(l.innerHTML=Ce.sanitize(r.text),ua[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{yt("Translated")}}function Is(){yt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var js={};async function og(e){let t=[...document.querySelectorAll("iframe")],n="";for(let u of t){let r=u.contentDocument;if(!r)continue;let o=r.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await en(e,n,1e3);return Ut(a),a}async function ig(e){yt("Translating"),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(js),n=[];for(let a of t){let u=js[a];if(u.error){let o=u.commonAncestorContainer.querySelector(`[${ur}='${a}']`);o&&o.remove(),n.push(u)}}try{await Co(n,e,e.config.translationMode)}catch{}finally{yt("Translated")}}function sg(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+jt);for(let u of a)u.remove()}yt("Original")}async function lg(e){yt("Translating");let t=Mt(),n=[...document.querySelectorAll("iframe")],a=[],u=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ja(s,e);let l=s.body;if(!l)continue;let c=$t(e);c.isModifyImage=!1,zn({id:t,container:l,filterRule:c,onParagraph:m=>{a.push(m)}})}let r=fo(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=yo(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:r,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await Zi(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:r,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(u.push(l),js[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:u.length}})}));try{await Co(u,e,e.config.translationMode)}catch{}finally{yt("Translated")}}var l1=new AbortController,{signal:c1}=l1,qs=0,$s=0,zs=!1,Hs=0,_u=!1,ra,cg=0,oa=[];function Xo(e,t){d1();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,u=a.config,r=u.generalRule.mouseHoverHoldKey==="Off",o=u.generalRule.mouseHoverHoldKey==="Auto",i=lt(m=>{if(zs==!1&&Math.abs(m.clientX-qs)+Math.abs(m.clientY-$s)>3&&(Hs<2?Hs+=1:zs=!0),qs=m.clientX,$s=m.clientY,o||_u&&!ra){let g=fg(a.rule,t);if(g){if(Ks(g))return;mg(a,g)}}},o?700:300),s=m=>{let g=m.target;Ks(g)||mg(a)},l=m=>{let g=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",d=je.getPressedKeyCodes();if(d.length>1&&je[g]&&(cg=Date.now(),_u=!1),d.length===1&&je[g]){let f=Date.now();_u=!0,ra&&clearTimeout(ra),ra=setTimeout(()=>{let T=cg-f;T>0&&T<=150?_u=!1:s(m),ra=void 0},150)}};if(oa.push(()=>{ra&&clearTimeout(ra)}),r)return;Us("mousemove",i,t),oa.push(()=>{t.removeEventListener("mousemove",i)});function c(){zs=!1,Hs=0,i.cancel()}if(o)Us("blur",c,t),oa.push(()=>{t.removeEventListener("blur",c)});else{let m=u?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",g=["ctrl","alt","shift","cmd","command","option","control"];Us("keyup",dg,t),oa.push(()=>{t.removeEventListener("keyup",dg)}),g.includes(m)?je("*","mouseHover",l):je(u.generalRule.mouseHoverHoldKey,"mouseHover",s),je.setScope("mouseHover"),oa.push(()=>{je.deleteScope("mouseHover")})}}function d1(){oa.forEach(e=>e()),oa=[]}function dg(e){_u=!1}function Us(e,t,n=window){return n.addEventListener(e,t,{signal:c1})}function mg(e,t,n=window){if(t=t||fg(e.rule,n),!t){C.debug("can not find selection part!");return}if(Ks(t)){C.debug("exclude dom");return}Rd(e,t);let a=So();a?.currentUrl!==window.location.href&&(Hn(),ts(e)),a&&(a.setupMouseHoverListener=Xo);let u=$t(e);u.excludeSelectors=[],u.selectors=[];let r=!1;zn({id:a.id,container:t,filterRule:u,force:!0,onParagraph:o=>{Du(a,o,!0).then(i=>{if(i&&!r){r=!0;let s=Date.now();et(v4,s),Je("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function fg(e,t){return m1(qs,$s,e,t)}function m1(e,t,n,a){let u=od(e,t,n,a);if(u==null)return;let r=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=id(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:pg(l,n)},o=()=>{try{u.setStartBefore(u.startContainer),u.setEndAfter(u.startContainer)}catch(l){C.debug("get mouse over word fail",l)}let s=u.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let u={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},r=0,o=Date.now();Zo&&self.removeEventListener("keydown",Zo),Zo=i,self.addEventListener("keydown",Zo);function i(l){if(Va)return;let c=l,m=c.target||c.srcElement,g=m?.tagName;(m?.isContentEditable||g=="INPUT"||g=="SELECT"||g=="TEXTAREA")&&(A1(l,u.triggerKey,u.codePrefixAlias)?s(l):r=0)}function s(l){Date.now()-o=u.triggerTimes&&(h1(e,u),r=0)}}function g1({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],u=n[e]||[];u.includes(e)||u.unshift(e);for(let r of u){let o=t.map(i=>{let s=r+i;return u.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function hg(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Ja;function p1(e){let t=e.parentElement;if(!t)return;Ja=document.createElement("div"),Ja.className=N+"-input",Ja.innerHTML=`
`,t.appendChild(Ja);let n=t,a=!1;do{let u=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(u)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function f1(){Ja&&Ja.remove()}async function h1(e,t){if(!Va)try{let m=function(){o=e.config.inputTargetLanguage;let d=r.split(" ")[0];d&&d[0]&&(d=d[0].toLowerCase()+d.slice(1)),d.trim()&&t.flatAlias.includes(d)?(o=hg(d,t.codeAlias),u=r.slice(d.length+1)):u=r},g=function(){o="";let d=g1(t),f=r.split(d);if(f.length<2)return;if(u=f[f.length-1],a=f[0],f.length>2){let y=r.lastIndexOf(u),p=r.slice(0,y).lastIndexOf(f[f.length-2]);a=r.slice(0,p+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let T=r.slice(a.length+1,r.indexOf(u)).trim();if(o=hg(T,t.codeAlias),!o){C.warn("not found alias",T);return}},n=document.activeElement;Va=!0,p1(n);let a="",u="",r=Bu(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?m():(g(),o||m()),D1(e);let i=b1(u,t),s=await en(e,i);C.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;et(k4,Date.now());let c=await Pa(l,e);S1(n,a+c.text),Va=!1}catch(n){throw Va=!1,n}finally{Va=!1,f1()}}function b1(e,t){let{triggerTimes:n,triggerKey:a}=t,u=0,r=" ";a.length==1?(u=n,r=a):a.toLowerCase()=="space"&&(u=n);let o=e.length;for(let i=e.length-1;i>=e.length-u;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],r].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function E1(e,t){let n=t.innerHTML,a=Bu(t);return{html:n.replace(a,e),text:e}}function bg(e,t,n=!1){let a=Bu(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function Bu(e){return e.value||e.innerText||e.textContent}async function ia(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function y1(e,t,n){await ia(10);let a=new DataTransfer;e.forEach(u=>{u==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await ia(10)}async function T1(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await ia(10))}async function x1(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await ia(20),(t.value||t.value==="")&&(t.value=e.text)}async function C1(e,t){Eg(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await ia(20))}var w1=[y1.bind(null,["plain"])];function v1(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function Eg(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function k1(e){if(Eg(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function S1(e,t){await k1(e),await ia(50);let n=E1(t,e);v1(e),C.debug("clearContnet",Bu(e)),await ia(50);for(let a of[...w1,C1,x1,T1])if(await a(n,e),C.debug("setContent",a.name,bg(n,e),Bu(e),n),bg(n,e))break}function D1(e){Je("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function A1(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let u="";e&&e.key&&(u=e.key.toLowerCase());let r=e.keyCode,o=n[t]||[];return r===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(u)||a===t||u===t)}async function xg(e,t,n){return(await Pa({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}function L1(e,t,n,a){let u=[],r="en";for(let o of n)u.push({text:o.textContent||"",id:u.length,from:r,to:a,url:"https://google.com",fromByClient:r});return new Promise((o,i)=>{on({sentences:u},{...e,translationService:"google"},(s,l,c)=>{if(s)return o([]);let m=l?.id||0,g=n[m];g&&g.className==N+"-search-title-wrapper"&&(g.innerHTML+=Ce.sanitize(`
${l?.text}
`,{ADD_ATTR:["target"]}))})})}function Qo(e,t,n){t&&Je(t.key,[{name:t.key}],{...e,sourceLanguage:t.sourceLanguage||n})}function Vs(e,t,n,a){let u=n.querySelectorAll('[translate="true"]');return L1(e,t,[...u],a),n}async function Js(e,t){let a=(await W({url:F1(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,r=new DOMParser().parseFromString(a,"text/xml"),o=[],i=r.querySelectorAll("item");for(let s=0;s${e.cancelDescription}
`:""} +

\u82F1\u6587\u641C\u7D22 + ${n} \u7684\u76F8\u5173\u65B0\u95FB:
+

+
${o}
+ + `.replaceAll(` +`,""),{ADD_ATTR:["target"]});let l=u.querySelector(`.${N}-search-more`);return l&&(l.onclick=()=>{let c=u.querySelector(`.${N}-expand-items`);c.style.display=="none"?(c.style.display="block",l.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(yg(n))}),u}function Tg(e,t){let n=e.style;return t.map((a,u)=>{let r=a.title||"",o=a.source||"",i=r.split("-");return i.length>1&&(o=i[i.length-1].trim(),i=i.slice(0,i.length-1)),r=i.join("-"),r=r.trim(),`
${o}
+
+ ${a}
${ld(t.pubDate||"")}
+ >${r} +
+
${gd(a.pubDate||"")}
`}).join(` -`)}function bg(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}function D1(e){let n=new URL(e).searchParams.get("q");return n||""}async function A1(e,t,n){return(await Pa({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}async function L1(e,t,n){let a=[],u="en";for(let r of t)a.push({text:r.textContent||"",id:a.length,from:u,to:n,url:"https://google.com",fromByClient:u});return new Promise((r,o)=>{rn({sentences:a},{...e,translationService:"google"},(i,s,l)=>{if(i)return r([]);let c=s?.id||0,m=t[c];m&&m.className==I+"-search-title-wrapper"&&(m.innerHTML+=Ae.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}var ie=null,Qo={},Ya,e0;async function vr(){if(Re()==="Original"){let e={};e0&&(e.translationMode=e0),Ya&&(e.translationTheme=Ya),ie&&(e={...ie.state,...e}),await pt(ze(),e),await Jt(ie)}else(Re()==="Translated"||Re()==="Error")&&Vn()}async function kr(){if(ie=await pt(ze(),{}),ie.rule.isEbookBuilder)return ag(ie);if(ie.rule.isSubtitleBuilder)return tg(ie);_d()}async function Sr(){if(Re()==="Original")ie=await pt(ze(),{}),Ya||(Ya=ie.state.translationTheme),ie=await pt(ze(),{translationTheme:"mask"}),await Jt(ie);else if(Re()==="Translated"){let e=od().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[ie.mainFrame,...e],n=ie?.state.translationTheme;for(let a of t){let u=Ba(a,ga,!0);n==="mask"?u!=="none"?Ye(a,ga,"none",!0):Ye(a,ga,"mask",!0):u!=="mask"?Ye(a,ga,"mask",!0):Ye(a,ga,"none",!0)}}}async function X0(){let e=await pt(ze(),{});return e.rule.isSubtitleBuilder?Os(e):Md(e)}function F1(e){Re()==="Original"?eg(e):Ns()}function P1(e){Re()==="Original"?Do(e):Hn()}async function Vn(){let e=await pt(ze(),{});if(e.rule.isSubtitleBuilder){Ns();return}else e.rule.isEbookBuilder&&ug();Hn()}async function Jt(e){if(Re()!=="Original"&&await Vn(),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Qo[e.translationService]||(Qo[e.translationService]=!0,Qe()||Li(e).catch(t=>{x.warn("init translation engine error",t)})),Ke("translage_page_daily",[{name:"translage_page_daily"}],e),Ke("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:an()}),e.rule.isSubtitleBuilder)return F1(e);if(e.rule.isEbookBuilder)return rg(e);e.rule.isPdf||P1(e)}async function Cc(){Re()==="Original"?await Dr():(Re()==="Translated"||Re()==="Error")&&(ie=await pt(ze(),{}),ie.state.translationArea!=="main"?await Dr():Vn())}async function Dr(){ie=await pt(ze(),{translationArea:"main"}),await Jt(ie)}async function Z0(){ie=await pt(ze(),{translationArea:"body"}),await Jt(ie)}async function Ar(){if(Re()==="Original"){let e=await pt(ze(),{translationMode:"translation"});await Jt(e)}else(Re()==="Translated"||Re()==="Error")&&await Vn()}async function xc(e){if(ie=await pt(ze(),{}),Ke("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...ie,sourceLanguage:"unknown"}),Re()==="Original"){Jt(ie);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function wc(){if(Re()==="Original")await Z0();else if(Re()==="Translated"||Re()==="Error"){let e={};ie&&ie.state&&(e=ie.state),ie=await pt(ze(),e),ie.state.translationArea!=="body"?(ie.state.translationArea="body",ie=await pt(ze(),ie.state),await Jt(ie)):Vn()}}async function vc(){ie=await pt(ze(),{translationStartMode:"immediate"}),await Jt(ie)}async function yg(){let e=await pt(ze(),{});if(!(e.rule.isPdf||e.rule.isSubtitleBuilder||e.rule.isEbookBuilder||e.rule.isEbook)&&e.config.enableInputTranslation){if(!Wt(e.url,e.config.inputStyleBlockUrls)){let n=Ie().IMMERSIVE_TRANSLATE_INPUT_INJECTED_CSS;In(document,n,"immersive-translate-input-injected-css")}$s(e)}}async function Vo(){let e=await pt(ze(),{});if(x.debug("init page ctx",e),e.rule.isSubtitleBuilder){Os(e);return}if(e.rule.isEbookBuilder){ng(e);return}if(e.rule.isPdf){await Zm(e);return}if(Eg(e),e0||(e0=e.state.translationMode),Ya||(Ya=e.state.translationTheme),e.rule.urlChangeDelay&&await eu(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await M1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=Rc(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){x.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Fn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){x.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&md(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await X0():Ut(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(x.debug(`detect page language: ${e.url} ${t}`),Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||qc(t,e.config.translationLanguagePattern)&&(n=!0,x.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&mu()&&Xo(e,window),n)ie.state.isAutoTranslate=!0,Jt(ie);else if(x.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Qo[e.translationService]||(Qo[e.translationService]=!0,Qe()||Li(e).catch(a=>{x.warn("init translation engine error",a)})))}}async function pt(e,t){let n=Object.keys(t);if(ie){let a={url:e,config:ie.config,state:{...ie.state,...t}};ie=await qt(a)}else{let a=await Tt(),u=t;n.length===0&&(u=void 0),ie=await qt({url:e,config:a,state:u})}return ie}async function kc(){let e=await Tt(),t;ie&&ie.state&&(t=ie.state);let n={url:ze(),config:e,state:t},a=await qt(n);ie=a;let u=So(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Mu(a,o),mu()&&Xo(a,o),$s(a)}),a}function M1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}async function Tg(e){if(!e){let n=await Tt();e=await qt({config:n,url:ze()})}e.config.debug?x.setLevel("debug"):x.setLevel("info"),globalThis.top!=globalThis.self||await km().catch(n=>{x.error(`init popup page error: ${n}`)}),e.isTranslateExcludeUrl||(e.rule.isEbook||e.rule.isEbookBuilder||await Vo(),globalThis.top===globalThis.self&&Em()),await yg()}var Ru={capture:!0,once:!0,passive:!0},wg=()=>document.readyState==="interactive"||document.readyState==="complete",_1=e=>document.readyState===e,Ou=(e,t)=>_1(e)||wg()?(t(e),!0):!1,B1=()=>new Promise(e=>{Ou("loading",e)||document.addEventListener("readystatechange",()=>{document.readyState==="loading"&&e("loading")},Ru)}),R1=()=>new Promise(e=>{Ou("interactive",e)||document.addEventListener("readystatechange",()=>{document.readyState==="interactive"&&e("interactive")},Ru)}),O1=()=>new Promise(e=>{Ou("complete",e)||document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e("complete")},Ru)}),Cg=()=>new Promise(e=>{Ou("domready",e)||document.addEventListener("DOMContentLoaded",()=>{e("domready")},Ru)}),xg=()=>new Promise(e=>{Ou("load",e)||window.addEventListener("load",()=>{e("load")},Ru)}),vg={};Object.defineProperties(vg,{state:{get:function(){return document.readyState}},loading:{get:function(){return B1()}},interactive:{get:function(){return R1()}},complete:{get:function(){return O1()}},window:{get:function(){return xg()}},load:{get:function(){return xg()}},domready:{get:function(){return Cg()}},dom:{get:function(){return Cg()}},ready:{get:function(){return wg()}}});var kg=vg;var Sg={NOT_FUNCTION:"Your executor is not a function. functions and promises are valid.",FAILED_TO_WAIT:"Failed to wait"};function N1(e){return async()=>await e()}function I1(e){if(typeof e!="function")throw new Error(Sg.NOT_FUNCTION)}var Gs=class{constructor({interval:t=100,timeout:n=1e3,stopOnFailure:a=!1,verbose:u=!1,backoffFactor:r=1,backoffMaxInterval:o,message:i=""}={}){this._interval=t,this._timeout=n,this._stopOnFailure=a,this._isWaiting=!1,this._isResolved=!1,this._verbose=u,this._userMessage=i,this.originalStacktraceError=new Error,this._Console=console,this._backoffFactor=r,this._backoffMaxInterval=o||n,this.start=+Date.now()}tryEvery(t){return this._interval=t,this}stopAfter(t){return this._timeout=t,this}execute(t){return this._applyPromiseHandlers(),I1(t),this._executeFn=N1(t),this.start=Date.now(),this._isWaiting=!0,this._log("starting to execute"),this._runFunction(),this.promise}getPromise(){return this.promise}isResolved(){return this._isResolved}isWaiting(){return this._isWaiting}stopOnFailure(t){return this._stopOnFailure=t,this}_applyPromiseHandlers(){this.promise=new Promise((t,n)=>{this.resolve=t,this.reject=n})}_timeFromStart(){return Date.now()-this.start}_shouldStopTrying(){return this._timeFromStart()>this._timeout}_executeAgain(){this._log("executing again");let t=this._interval,n=t*this._backoffFactor;this._interval=n>this._backoffMaxInterval?this._backoffMaxInterval:n,setTimeout(this._runFunction.bind(this),t)}_failedToWait(){let t=`${Sg.FAILED_TO_WAIT} after ${this._timeFromStart()}ms`;if(this._userMessage&&(t=`${t}: ${this._userMessage}`),this._lastError){this._lastError.message=`${t} +`)}function Cg(e,t){if(!e.keyword)return;let n=e.keyword.value||"";for(let a=0;anew RegExp(a.urlMatch).test(t))}async function vg(e){if(ha().any)return;if(!e.rule.enableSearchEnhancement){C.debug("enable is false");return}let t=P1(e.rule.searchEnhancementConfig||[],e.url);if(!t){C.debug("not found siteConfig",e.url);return}let n=Cg(t,e.url);if(!n){C.debug("not found keyword",e.url);return}t.id=="google"?_1(e,t,n):M1(e,t,n)}async function M1(e,t,n){let a=await en(e,document.title);t.selector&&setTimeout(async()=>{let u=document.querySelector(t.selector);if(!u){C.debug("selector node not found",t.selector);return}let r=await Js(n,t.showCount);if(r&&r.length<=0){C.debug("list not found");return}let o=await Ys(t,r,n,t.showCount);if(!o){C.debug("getInseredNode none");return}o.style.cssText=t.style.container||"";let i=t.selectorAction||"appendChild";i=="insertBefore"?u.parentElement?.insertBefore(o,u):i=="appendChild"?u.appendChild(o):i=="replace"&&u?.replaceWith(o),Vs(e,t,o,a),Qo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a)},t.delayTime||0)}async function _1(e,t,n){let a=await en(e,n);if(Qo(e,{key:"detect_search_action"},a),!["zh-CN","zh-TW"].includes(a))return;C.debug("use dual search");let u=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")u=!0;else if(!wg(document.body))return;let o=document.querySelector("#rhs");if(!o){let i=document.querySelector("#rcnt");if(!i)return;let s=i.children;if(s&&s.length>1)o=s[1];else{let l=s[0];o=document.createElement("div"),o.id="rhs",o.style.maxWidth="372px",o.style.marginLeft="50px",i.insertBefore(o,l.nextSibling)}}if(u||wg(document.body)){C.debug("find story");let i=await xg(e,n,a);C.debug("enKeyword",i);let s=await Js(i,t.showCount);if(C.debug("news list",s),s&&s.length<=0)return;let l=await Ys(t,s,i,t.showCount);if(!l)return;Qo(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a),Vs(e,t,l,a),o.insertBefore(l,o?.firstChild)}}function wg(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}var ie=null,e0={},Ya,t0;async function vr(){if(Re()==="Original"){let e={};t0&&(e.translationMode=t0),Ya&&(e.translationTheme=Ya),ie&&(e={...ie.state,...e}),await pt(ze(),e),await Jt(ie)}else(Re()==="Translated"||Re()==="Error")&&Vn()}async function kr(){if(ie=await pt(ze(),{}),ie.rule.isEbookBuilder)return ig(ie);if(ie.rule.isSubtitleBuilder)return rg(ie);Nd()}async function Sr(){if(Re()==="Original")ie=await pt(ze(),{}),Ya||(Ya=ie.state.translationTheme),ie=await pt(ze(),{translationTheme:"mask"}),await Jt(ie);else if(Re()==="Translated"){let e=cd().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[ie.mainFrame,...e],n=ie?.state.translationTheme;for(let a of t){let u=Ba(a,ga,!0);n==="mask"?u!=="none"?Ye(a,ga,"none",!0):Ye(a,ga,"mask",!0):u!=="mask"?Ye(a,ga,"mask",!0):Ye(a,ga,"none",!0)}}}async function Z0(){let e=await pt(ze(),{});return e.rule.isSubtitleBuilder?Ns(e):Od(e)}function B1(e){Re()==="Original"?ug(e):Is()}function R1(e){Re()==="Original"?Do(e):Hn()}async function Vn(){let e=await pt(ze(),{});if(e.rule.isSubtitleBuilder){Is();return}else e.rule.isEbookBuilder&&sg();Hn()}async function Jt(e){if(Re()!=="Original"&&await Vn(),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Et,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),e0[e.translationService]||(e0[e.translationService]=!0,Qe()||Fi(e).catch(t=>{C.warn("init translation engine error",t)})),Je("translage_page_daily",[{name:"translage_page_daily"}],e),Je("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:un()}),e.rule.isSubtitleBuilder)return B1(e);if(e.rule.isEbookBuilder)return lg(e);e.rule.isPdf||R1(e)}async function kc(){Re()==="Original"?await Dr():(Re()==="Translated"||Re()==="Error")&&(ie=await pt(ze(),{}),ie.state.translationArea!=="main"?await Dr():Vn())}async function Dr(){ie=await pt(ze(),{translationArea:"main"}),await Jt(ie)}async function Q0(){ie=await pt(ze(),{translationArea:"body"}),await Jt(ie)}async function Ar(){if(Re()==="Original"){let e=await pt(ze(),{translationMode:"translation"});await Jt(e)}else(Re()==="Translated"||Re()==="Error")&&await Vn()}async function Sc(e){if(ie=await pt(ze(),{}),Je("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...ie,sourceLanguage:"unknown"}),Re()==="Original"){Jt(ie);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function Dc(){if(Re()==="Original")await Q0();else if(Re()==="Translated"||Re()==="Error"){let e={};ie&&ie.state&&(e=ie.state),ie=await pt(ze(),e),ie.state.translationArea!=="body"?(ie.state.translationArea="body",ie=await pt(ze(),ie.state),await Jt(ie)):Vn()}}async function Ac(){ie=await pt(ze(),{translationStartMode:"immediate"}),await Jt(ie)}async function kg(){let e=await pt(ze(),{});if(!(e.rule.isPdf||e.rule.isSubtitleBuilder||e.rule.isEbookBuilder||e.rule.isEbook)&&e.config.enableInputTranslation){if(!Wt(e.url,e.config.inputStyleBlockUrls)){let n=Ie().IMMERSIVE_TRANSLATE_INPUT_INJECTED_CSS;In(document,n,"immersive-translate-input-injected-css")}Gs(e)}}async function Vo(){let e=await pt(ze(),{});if(C.debug("init page ctx",e),e.rule.isSubtitleBuilder){Ns(e);return}if(e.rule.isEbookBuilder){og(e);return}if(e.rule.isPdf){await ng(e);return}if(vg(e),t0||(t0=e.state.translationMode),Ya||(Ya=e.state.translationTheme),e.rule.urlChangeDelay&&await eu(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await O1(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=jc(),u=document.createElement("meta");u.name="immersive-translate-options-url",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){C.warn("inject options url failed",r)}}if(e.rule.isInjectVersion){let a=Fn(),u=document.createElement("meta");u.name="immersive-translate-version",u.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(u)}catch(r){C.warn("inject version failed",r)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(u=>{let r=document.createElement("meta");r.name=u,r.content=e.rule.globalMeta[u],document.head.appendChild(r)}),e.rule.initialGlobalAttributes&&hd(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await Z0():Ut(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(C.debug(`detect page language: ${e.url} ${t}`),Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||Vc(t,e.config.translationLanguagePattern)&&(n=!0,C.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&mu()&&Xo(e,window),n)ie.state.isAutoTranslate=!0,Jt(ie);else if(C.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(Ln(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(e0[e.translationService]||(e0[e.translationService]=!0,Qe()||Fi(e).catch(a=>{C.warn("init translation engine error",a)})))}}async function pt(e,t){let n=Object.keys(t);if(ie){let a={url:e,config:ie.config,state:{...ie.state,...t}};ie=await qt(a)}else{let a=await Tt(),u=t;n.length===0&&(u=void 0),ie=await qt({url:e,config:a,state:u})}return ie}async function Lc(){let e=await Tt(),t;ie&&ie.state&&(t=ie.state);let n={url:ze(),config:e,state:t},a=await qt(n);ie=a;let u=So(),r=[];return u?r=u.allInlineWindows||[window]:r=[window],r.forEach(o=>{Mu(a,o),mu()&&Xo(a,o),Gs(a)}),a}function O1(e,t=3e3){return new Promise((n,a)=>{let u=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,r=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(r),u&&clearTimeout(u),n(null))},50)})}async function Sg(e){if(!e){let n=await Tt();e=await qt({config:n,url:ze()})}e.config.debug?C.setLevel("debug"):C.setLevel("info"),globalThis.top!=globalThis.self||await Lm().catch(n=>{C.error(`init popup page error: ${n}`)}),e.isTranslateExcludeUrl||(e.rule.isEbook||e.rule.isEbookBuilder||await Vo(),globalThis.top===globalThis.self&&Cm()),await kg()}var Ru={capture:!0,once:!0,passive:!0},Lg=()=>document.readyState==="interactive"||document.readyState==="complete",N1=e=>document.readyState===e,Ou=(e,t)=>N1(e)||Lg()?(t(e),!0):!1,I1=()=>new Promise(e=>{Ou("loading",e)||document.addEventListener("readystatechange",()=>{document.readyState==="loading"&&e("loading")},Ru)}),j1=()=>new Promise(e=>{Ou("interactive",e)||document.addEventListener("readystatechange",()=>{document.readyState==="interactive"&&e("interactive")},Ru)}),z1=()=>new Promise(e=>{Ou("complete",e)||document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e("complete")},Ru)}),Dg=()=>new Promise(e=>{Ou("domready",e)||document.addEventListener("DOMContentLoaded",()=>{e("domready")},Ru)}),Ag=()=>new Promise(e=>{Ou("load",e)||window.addEventListener("load",()=>{e("load")},Ru)}),Fg={};Object.defineProperties(Fg,{state:{get:function(){return document.readyState}},loading:{get:function(){return I1()}},interactive:{get:function(){return j1()}},complete:{get:function(){return z1()}},window:{get:function(){return Ag()}},load:{get:function(){return Ag()}},domready:{get:function(){return Dg()}},dom:{get:function(){return Dg()}},ready:{get:function(){return Lg()}}});var Pg=Fg;var Mg={NOT_FUNCTION:"Your executor is not a function. functions and promises are valid.",FAILED_TO_WAIT:"Failed to wait"};function H1(e){return async()=>await e()}function U1(e){if(typeof e!="function")throw new Error(Mg.NOT_FUNCTION)}var Xs=class{constructor({interval:t=100,timeout:n=1e3,stopOnFailure:a=!1,verbose:u=!1,backoffFactor:r=1,backoffMaxInterval:o,message:i=""}={}){this._interval=t,this._timeout=n,this._stopOnFailure=a,this._isWaiting=!1,this._isResolved=!1,this._verbose=u,this._userMessage=i,this.originalStacktraceError=new Error,this._Console=console,this._backoffFactor=r,this._backoffMaxInterval=o||n,this.start=+Date.now()}tryEvery(t){return this._interval=t,this}stopAfter(t){return this._timeout=t,this}execute(t){return this._applyPromiseHandlers(),U1(t),this._executeFn=H1(t),this.start=Date.now(),this._isWaiting=!0,this._log("starting to execute"),this._runFunction(),this.promise}getPromise(){return this.promise}isResolved(){return this._isResolved}isWaiting(){return this._isWaiting}stopOnFailure(t){return this._stopOnFailure=t,this}_applyPromiseHandlers(){this.promise=new Promise((t,n)=>{this.resolve=t,this.reject=n})}_timeFromStart(){return Date.now()-this.start}_shouldStopTrying(){return this._timeFromStart()>this._timeout}_executeAgain(){this._log("executing again");let t=this._interval,n=t*this._backoffFactor;this._interval=n>this._backoffMaxInterval?this._backoffMaxInterval:n,setTimeout(this._runFunction.bind(this),t)}_failedToWait(){let t=`${Mg.FAILED_TO_WAIT} after ${this._timeFromStart()}ms`;if(this._userMessage&&(t=`${t}: ${this._userMessage}`),this._lastError){this._lastError.message=`${t} ${this._lastError.message}`;let n=this.originalStacktraceError.stack;n&&(this._lastError.stack+=n.substring(n.indexOf(` -`)+1))}else this._lastError=this.originalStacktraceError,this._lastError.message=t;return this._log(this._lastError),this._lastError}_runFunction(){if(this._shouldStopTrying()){this._isWaiting=!1,this.reject?.(this._failedToWait());return}this._executeFn().then(t=>{if(t===!1){this._log(`then execute again with result: ${t}`),this._executeAgain();return}this.resolve?.(t),this._isWaiting=!1,this._isResolved=!0,this._log(`then done waiting with result: ${t}`)}).catch(t=>this._stopOnFailure?(this._log(`stopped on failure with err: ${t}`),this.reject?.(t)):(this._lastError=t,this._log(`catch with err: ${t}`),this._executeAgain()))}_log(t){this._verbose&&this._Console&&this._Console.log&&this._Console.log(t)}},Dg=(e,t)=>new Gs(t).execute(e);async function Ag(e){try{return await Dg(()=>{let n=e.mainFrame.innerText||"";if(Ma(n,e.rule.mainFrameMinTextCount,e.rule.mainFrameMinWordCount))return!0;throw new Error("there is no main text")},{timeout:5e3}),!0}catch(t){if(Qe())throw t;return x.debug("check dom element ready failed:",t,e),!0}}function Lg(){let e=document.querySelector("meta[name=immersive-translate-options]");return!!(e&&e.getAttribute("content")==="true")}async function Pg(){if(!document.getElementById("immersive-translate-status")){x.error("Could not find status element");return}await Fg("local"),await Fg("sync"),z1();let t=document.getElementById("immersive-translate-page-ready");t&&setTimeout(()=>{t.value="true",t.dispatchEvent(new Event("change"))},100)}async function j1(e,t){let n;try{n=JSON.parse(e.detail)}catch(u){x.error("parse detail failed",u);return}let a=n.id||"default";try{let u=n.data||{},r=await t(u),o={id:a,ok:!0,data:r};document.dispatchEvent(new CustomEvent(nr,{detail:JSON.stringify({...o,type:"answer"})}))}catch(u){let r={ok:!1,errorName:u.name,errorMessage:u.message,errorDetails:u.details||u.detail};document.dispatchEvent(new CustomEvent(nr,{detail:JSON.stringify({...r,id:a,type:"answer"})}))}}function z1(){document.addEventListener(tr,a=>{let u=a;if(x.debug("document message",u),u&&u.detail){let r;try{r=JSON.parse(u.detail)}catch(o){x.error("parse detail failed",o);return}r.type==="ask"?r.method==="request"&&j1(u,W):r.type==="tell"&&r.method==="updateCommands"&&Br(r.data)}});let e=document.getElementById("immersive-translate-manifest");if(!e){x.error("Could not find manifest element");return}let t=U.runtime.getManifest();Rt()&&(t._isSafari=!0),e.value=JSON.stringify(t),e.dispatchEvent(new Event("change")),document.getElementById("immersive-translate-message").addEventListener("change",a=>{try{let u=JSON.parse(a.target.value);u&&u.method==="removeStorageKey"&&u.data&&u.data.area&&u.data.keys&&U.storage[u.data.area].remove(u.data.keys)}catch(u){x.error("parse message error",u)}})}async function Fg(e){let t=document.getElementById("immersive-translate-status"),n=document.getElementById(`immersive-translate-${e}-storage`);if(n){x.debug("init storage");let a=await U.storage[e].get(null);n.value=JSON.stringify(a),n.dispatchEvent(new Event("change")),n.addEventListener("change",u=>{try{let r=JSON.parse(u.target.value);U.storage[e].set(r)}catch(r){x.error("save to storage error",r)}})}else{x.error(`Could not find storage ${e} element`),t.innerText="Could not find storage local input element";return}}async function H1(){let e=await Gn(),t=ze(),n=await qt({config:e,url:t});Ke("init_page_daily",[{name:"init_page_daily"}],n),kg.domready.then(()=>{if(n.isTranslateExcludeUrl&&Lg())x.debug("detect web options page"),Mu(n,window),Pg();else{if(!n.config.enabled||Wt(n.url,n.config.blockUrls))return;Mu(n,window),Ag(n).then(()=>{Tg(n).catch(u=>{u&&x.error("translate page error",u.name,u.message,u.details||"",u)})}).catch(u=>{x.debug("can not detect a valid body: ",u)})}}).catch(a=>{a&&x.error("translate dom ready detect error",a)})}H1().catch(e=>{x.error("init error",e)});})(); +`)+1))}else this._lastError=this.originalStacktraceError,this._lastError.message=t;return this._log(this._lastError),this._lastError}_runFunction(){if(this._shouldStopTrying()){this._isWaiting=!1,this.reject?.(this._failedToWait());return}this._executeFn().then(t=>{if(t===!1){this._log(`then execute again with result: ${t}`),this._executeAgain();return}this.resolve?.(t),this._isWaiting=!1,this._isResolved=!0,this._log(`then done waiting with result: ${t}`)}).catch(t=>this._stopOnFailure?(this._log(`stopped on failure with err: ${t}`),this.reject?.(t)):(this._lastError=t,this._log(`catch with err: ${t}`),this._executeAgain()))}_log(t){this._verbose&&this._Console&&this._Console.log&&this._Console.log(t)}},_g=(e,t)=>new Xs(t).execute(e);async function Bg(e){try{return await _g(()=>{let n=e.mainFrame.innerText||"";if(Ma(n,e.rule.mainFrameMinTextCount,e.rule.mainFrameMinWordCount))return!0;throw new Error("there is no main text")},{timeout:5e3}),!0}catch(t){if(Qe())throw t;return C.debug("check dom element ready failed:",t,e),!0}}function Rg(){let e=document.querySelector("meta[name=immersive-translate-options]");return!!(e&&e.getAttribute("content")==="true")}async function Ng(){if(!document.getElementById("immersive-translate-status")){C.error("Could not find status element");return}await Og("local"),await Og("sync"),q1();let t=document.getElementById("immersive-translate-page-ready");t&&setTimeout(()=>{t.value="true",t.dispatchEvent(new Event("change"))},100)}async function W1(e,t){let n;try{n=JSON.parse(e.detail)}catch(u){C.error("parse detail failed",u);return}let a=n.id||"default";try{let u=n.data||{},r=await t(u),o={id:a,ok:!0,data:r};document.dispatchEvent(new CustomEvent(nr,{detail:JSON.stringify({...o,type:"answer"})}))}catch(u){let r={ok:!1,errorName:u.name,errorMessage:u.message,errorDetails:u.details||u.detail};document.dispatchEvent(new CustomEvent(nr,{detail:JSON.stringify({...r,id:a,type:"answer"})}))}}function q1(){document.addEventListener(tr,a=>{let u=a;if(C.debug("document message",u),u&&u.detail){let r;try{r=JSON.parse(u.detail)}catch(o){C.error("parse detail failed",o);return}r.type==="ask"?r.method==="request"&&W1(u,W):r.type==="tell"&&r.method==="updateCommands"&&Br(r.data)}});let e=document.getElementById("immersive-translate-manifest");if(!e){C.error("Could not find manifest element");return}let t=U.runtime.getManifest();Rt()&&(t._isSafari=!0),e.value=JSON.stringify(t),e.dispatchEvent(new Event("change")),document.getElementById("immersive-translate-message").addEventListener("change",a=>{try{let u=JSON.parse(a.target.value);u&&u.method==="removeStorageKey"&&u.data&&u.data.area&&u.data.keys&&U.storage[u.data.area].remove(u.data.keys)}catch(u){C.error("parse message error",u)}})}async function Og(e){let t=document.getElementById("immersive-translate-status"),n=document.getElementById(`immersive-translate-${e}-storage`);if(n){C.debug("init storage");let a=await U.storage[e].get(null);n.value=JSON.stringify(a),n.dispatchEvent(new Event("change")),n.addEventListener("change",u=>{try{let r=JSON.parse(u.target.value);U.storage[e].set(r)}catch(r){C.error("save to storage error",r)}})}else{C.error(`Could not find storage ${e} element`),t.innerText="Could not find storage local input element";return}}async function $1(){let e=await Gn(),t=ze(),n=await qt({config:e,url:t});Je("init_page_daily",[{name:"init_page_daily"}],n),Pg.domready.then(()=>{if(n.isTranslateExcludeUrl&&Rg())C.debug("detect web options page"),Mu(n,window),Ng();else{if(!n.config.enabled||Wt(n.url,n.config.blockUrls))return;Mu(n,window),Bg(n).then(()=>{Sg(n).catch(u=>{u&&C.error("translate page error",u.name,u.message,u.details||"",u)})}).catch(u=>{C.debug("can not detect a valid body: ",u)})}}).catch(a=>{a&&C.error("translate dom ready detect error",a)})}$1().catch(e=>{C.error("init error",e)});})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/docs/options/index.html b/docs/options/index.html index 97b4741f3..ee2a74d7e 100644 --- a/docs/options/index.html +++ b/docs/options/index.html @@ -48,6 +48,6 @@ value="" />
- + diff --git a/docs/options/options.js b/docs/options/options.js index fc0e2059d..8314d9b27 100644 --- a/docs/options/options.js +++ b/docs/options/options.js @@ -1,4 +1,4 @@ -(()=>{var hh=Object.defineProperty;var bh=(e,t)=>{for(var n in t)hh(e,n,{get:t[n],enumerable:!0})};var a4=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var vs=(e,t,n)=>(a4(e,t,"read from private field"),n?n.call(e):t.get(e)),r4=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},u4=(e,t,n,a)=>(a4(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var y={BUILD_TIME:"2023-07-04T16:25:29.335Z",VERSION:"0.7.1",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { +(()=>{var Ch=Object.defineProperty;var vh=(e,t)=>{for(var n in t)Ch(e,n,{get:t[n],enumerable:!0})};var i4=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)};var ws=(e,t,n)=>(i4(e,t,"read from private field"),n?n.call(e):t.get(e)),s4=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},l4=(e,t,n,a)=>(i4(e,t,"write to private field"),a?a.call(e,n):t.set(e,n),n);var y={BUILD_TIME:"2023-07-04T17:36:31.000Z",VERSION:"0.7.2",PROD:"1",REDIRECT_URL:"https://dash.immersivetranslate.com/auth-done/",IMMERSIVE_TRANSLATE_INJECTED_CSS:`:root { --immersive-translate-theme-underline-borderColor: #72ece9; --immersive-translate-theme-nativeUnderline-borderColor: #72ece9; --immersive-translate-theme-nativeDashed-borderColor: #72ece9; @@ -491,6 +491,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -499,6 +502,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -633,6 +640,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } @@ -4059,12 +4067,12 @@ body {
-`,OPTIONS_URL:"https://dash.immersivetranslate.com/",EBOOK_VIEWER_URL:"https://app.immersivetranslate.com/ebook/",EBOOK_BUILDER_URL:"https://app.immersivetranslate.com/ebook/make/",SUBTITLE_BUILDER_URL:"https://app.immersivetranslate.com/subtitle/",HTML_VIEWER_URL:"https://app.immersivetranslate.com/html/",MOCK:"0",DEBUG:"0",IMMERSIVE_TRANSLATE_USERSCRIPT:"1",INSTALL_FROM:"dev"};(function(){function e(u){let o=document.getElementById(`immersive-translate-${u}-storage`);if(!o)throw new Error("Storage element not found");let i=o.value,s={};if(i)try{s=JSON.parse(i)}catch(l){throw l}return s}function t(u){return{get:i=>{if(i===null)return Promise.resolve(e(u));let s=[],l=e(u);typeof i=="string"?s=[i]:Array.isArray(i)?s=i:s=Object.keys(i);let c={};for(let g of s)c[g]=l[g];return Promise.resolve(c)},set:i=>{let s=n(),l=e(u);for(let m in i)l[m]=i[m];let c=document.getElementById("immersive-translate-sync-storage"),g=document.getElementById("immersive-translate-local-storage");if(!c||!g)throw new Error("Storage element not found");if(u==="sync"||s._isUserscript){c.value=JSON.stringify(l);let m=new Event("change");c.dispatchEvent(m)}return(u==="local"||s._isUserscript)&&(g.value=JSON.stringify(l),g.dispatchEvent(new Event("change"))),Promise.resolve()},remove:i=>{let s=n(),l=document.getElementById("immersive-translate-message");if(!l)throw new Error("Message element not found");let c={method:"removeStorageKey",data:{area:u,keys:i}};return new Promise((g,m)=>{l.value=JSON.stringify(c);let p=new Event("change");l.dispatchEvent(p),s._isUserscript?setTimeout(()=>{l.value=JSON.stringify({...c,data:{...c.data,area:c.data.area==="sync"?"local":"sync"}}),l.dispatchEvent(new Event("change")),g(null)},10):g(null)})}}}function n(){let u=document.getElementById("immersive-translate-manifest");if(!u)throw new Error("Manifest element not found");let o=u.value,i={};if(o){try{i=JSON.parse(o)}catch(s){throw s}return i}else return{}}function a(){return globalThis.navigator.languages||[globalThis.navigator.language||globalThis.navigator.userLanguage]}let r={storage:{local:t("local"),sync:t("sync")},runtime:{getManifest:n,lastError:null,getURL:u=>u},contextMenus:{update:()=>{}},i18n:{getAcceptLanguages:a}};globalThis.immersiveTranslateBrowserAPI=r})();var Gu,we,c4,Th,Gr,o4,d4,qu={},g4=[],Eh=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Yn(e,t){for(var n in t)e[n]=t[n];return e}function m4(e){var t=e.parentNode;t&&t.removeChild(e)}function ks(e,t,n){var a,r,u,o={};for(u in t)u=="key"?a=t[u]:u=="ref"?r=t[u]:o[u]=t[u];if(arguments.length>2&&(o.children=arguments.length>3?Gu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(u in e.defaultProps)o[u]===void 0&&(o[u]=e.defaultProps[u]);return Wu(e,o,a,r,null)}function Wu(e,t,n,a,r){var u={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:r??++c4};return r==null&&we.vnode!=null&&we.vnode(u),u}function ut(e){return e.children}function $u(e,t){this.props=e,this.context=t}function Xa(e,t){if(t==null)return e.__?Xa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Wu(p.type,p.props,p.key,p.ref?p.ref:null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(m=h[c])===null||m&&p.key==m.key&&p.type===m.type)h[c]=void 0;else for(g=0;g=n.__.length&&n.__.push({__V:Yu}),n.__[e]}function H(e){return Jr=1,wh(M4,e)}function wh(e,t,n){var a=Zu(Yr++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):M4(void 0,t),function(u){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,u);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Qe,!Qe.u)){Qe.u=!0;var r=Qe.shouldComponentUpdate;Qe.shouldComponentUpdate=function(u,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!r||r.call(this,u,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var g=c.__[0];c.__=c.__N,c.__N=void 0,g!==c.__[0]&&(l=!0)}}),!!l&&(!r||r.call(this,u,o,i))}}return a.__N||a.__}function ke(e,t){var n=Zu(Yr++,3);!we.__s&&P4(n.__H,t)&&(n.__=e,n.i=t,Qe.__H.__h.push(n))}function wn(e){return Jr=5,L4(function(){return{current:e}},[])}function L4(e,t){var n=Zu(Yr++,7);return P4(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function Xn(e,t){return Jr=8,L4(function(){return e},t)}function Qu(e){var t=Qe.context[e.__c],n=Zu(Yr++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Qe)),t.props.value):e.__}function kh(){for(var e;e=D4.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Xu),e.__H.__h.forEach(Ds),e.__H.__h=[]}catch(t){e.__H.__h=[],we.__e(t,e.__v)}}we.__b=function(e){typeof e.type!="function"||e.o||e.type===ut?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Qe=null,C4&&C4(e)},we.__r=function(e){v4&&v4(e),Yr=0;var t=(Qe=e.__c).__H;t&&(As===Qe?(t.__h=[],Qe.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Yu,n.__N=n.i=void 0})):(t.__h.forEach(Xu),t.__h.forEach(Ds),t.__h=[])),As=Qe},we.diffed=function(e){w4&&w4(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(D4.push(t)!==1&&x4===we.requestAnimationFrame||((x4=we.requestAnimationFrame)||Sh)(kh)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Yu&&(n.__=n.__V),n.i=void 0,n.__V=Yu})),As=Qe=null},we.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Xu),n.__h=n.__h.filter(function(a){return!a.__||Ds(a)})}catch(a){t.some(function(r){r.__h&&(r.__h=[])}),t=[],we.__e(a,n.__v)}}),k4&&k4(e,t)},we.unmount=function(e){S4&&S4(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Xu(a)}catch(r){t=r}}),n.__H=void 0,t&&we.__e(t,n.__v))};var A4=typeof requestAnimationFrame=="function";function Sh(e){var t,n=function(){clearTimeout(a),A4&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);A4&&(t=requestAnimationFrame(n))}function Xu(e){var t=Qe,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Qe=t}function Ds(e){var t=Qe;e.__c=e.__(),Qe=t}function P4(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function M4(e,t){return typeof t=="function"?t(e):t}var Xr;function js(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function z4(e,t=","){return e.map(js).join(t)}var zs=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function Za(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function to(e,t="@media "){return t+Ue(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(a=>`(${a}-width:${n[a]})`).join(" and "))).join(",")}function Ue(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function F4(e){return e}function Qr(){}var ot={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function H4(e){return e.match(/[-=:;]/g)?.length||0}function Bs(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(H4(e),15)<<18}var Ah=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function Hs({n:e,i:t,v:n=[]},a,r,u){e&&(e=js({n:e,i:t,v:n})),u=[...Ue(u)];for(let i of n){let s=a.theme("screens",i);for(let l of Ue(s&&to(s)||a.v(i))){var o;u.push(l),r|=s?67108864|Bs(l):i=="dark"?1073741824:l[0]=="@"?Bs(l):(o=l,1<<~(/:([a-z-]+)/.test(o)&&~Ah.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:r,r:u,i:t}}var Ws=new Map;function Rs(e){if(e.d){let t=[],n=Ls(e.r.reduce((a,r)=>r[0]=="@"?(t.push(r),a):r?Ls(a,u=>Ls(r,o=>{let i=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(i){let s=u.indexOf(i[1]);return~s?u.slice(0,s)+i[0]+u.slice(s+i[1].length):Ps(u,o)}return Ps(o,u)})):a,"&"),a=>Ps(a,e.n?"."+zs(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((a,r)=>r+"{"+a+"}",e.d)}}function Ls(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,a,r)=>t(a)+r)}function Ps(e,t){return e.replace(/&/g,t)}var _4=new Intl.Collator("en",{numeric:!0});function W4(e,t){for(var n=0,a=e.length;n>1;0>=$4(e[r],t)?n=r+1:a=r}return a}function $4(e,t){let n=e.p&ot.o;return n==(t.p&ot.o)&&(n==ot.b||n==ot.o)?0:e.p-t.p||e.o-t.o||_4.compare(B4(e.n),B4(t.n))||_4.compare(R4(e.n),R4(t.n))}function B4(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function R4(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function Ms(e,t){return Math.round(parseInt(e,16)*t)}function Nn(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:a}=t,r=a?`var(${a})`:n;if(e.includes(""))return e.replace("",r);if(e[0]=="#"&&(e.length==4||e.length==7)){let u=(e.length-1)/3,o=[17,1,.062272][u-1];return`rgba(${[Ms(e.substr(1,u),o),Ms(e.substr(1+u,u),o),Ms(e.substr(1+2*u,u),o),r]})`}return r=="1"?e:r=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${r})`)}function $s(e,t,n,a,r=[]){return function u(o,{n:i,p:s,r:l=[],i:c},g){let m=[],p="",f=0,S=0;for(let k in o||{}){var v,h;let F=o[k];if(k[0]=="@"){if(!F)continue;if(k[1]=="a"){m.push(...Vs(i,s,Zr(""+F),g,s,l,c,!0));continue}if(k[1]=="l"){for(let M of Ue(F))m.push(...u(M,{n:i,p:(v=ot[k[7]],s&~ot.o|v),r:k[7]=="d"?[]:l,i:c},g));continue}if(k[1]=="i"){m.push(...Ue(F).map(M=>({p:-1,o:0,r:[],d:k+" "+M})));continue}if(k[1]=="k"){m.push({p:ot.d,o:0,r:[k],d:u(F,{p:ot.d},g).map(Rs).join("")});continue}if(k[1]=="f"){m.push(...Ue(F).map(M=>({p:ot.d,o:0,r:[k],d:u(M,{p:ot.d},g).map(Rs).join("")})));continue}}if(typeof F!="object"||Array.isArray(F))k=="label"&&F?i=F+Za(JSON.stringify([s,c,o])):(F||F===0)&&(k=k.replace(/[A-Z]/g,M=>"-"+M.toLowerCase()),S+=1,f=Math.max(f,(h=k)[0]=="-"?0:H4(h)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(h)?+!!RegExp.$1||-!!RegExp.$2:0)+1),p+=(p?";":"")+Ue(F).map(M=>g.s(k,qs(""+M,g.theme)+(c?" !important":""))).join(";"));else if(k[0]=="@"||k.includes("&")){let M=s;k[0]=="@"&&(k=k.replace(/\bscreen\(([^)]+)\)/g,(A,P)=>{let w=g.theme("screens",P);return w?(M|=67108864,to(w,"")):A}),M|=Bs(k)),m.push(...u(F,{n:i,p:M,r:[...l,k],i:c},g))}else m.push(...u(F,{p:s,r:[...l,k]},g))}return m.unshift({n:i,p:s,o:Math.max(0,15-S)+1.5*Math.min(f||15,15),r:l,d:p}),m.sort($4)}(e,Hs(t,n,a,r),n)}function qs(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,a,r,u,o="")=>{let i=t(r,o);return typeof i=="function"&&/color|fill|stroke/i.test(r)?Nn(i):""+Ue(i).filter(s=>Object(s)!==s)})}function Ks(e,t){let n,a=[];for(let r of e)r.d&&r.n?n?.p==r.p&&""+n.r==""+r.r?(n.c=[n.c,r.c].filter(Boolean).join(" "),n.d=n.d+";"+r.d):a.push(n={...r,n:r.n&&t}):a.push({...r,n:r.n&&t});return a}function eo(e,t,n=ot.u,a,r){let u=[];for(let o of e)for(let i of function(s,l,c,g,m){s={...s,i:s.i||m};let p=function(f,S){let v=Ws.get(f.n);return v?v(f,S):S.r(f.n,f.v[0]=="dark")}(s,l);return p?typeof p=="string"?({r:g,p:c}=Hs(s,l,c,g),Ks(eo(Zr(p),l,c,g,s.i),s.n)):Array.isArray(p)?p.map(f=>{var S,v;return{o:0,...f,r:[...Ue(g),...Ue(f.r)],p:(S=c,v=f.p??c,S&~ot.o|v)}}):$s(p,s,l,c,g):[{c:js(s),p:0,o:0,r:[]}]}(o,t,n,a,r))u.splice(W4(u,i),0,i);return u}function Vs(e,t,n,a,r,u,o,i){return Ks((i?n.flatMap(s=>eo([s],a,r,u,o)):eo(n,a,r,u,o)).map(s=>s.p&ot.o&&(s.n||t==ot.b)?{...s,p:s.p&~ot.o|t,o:0}:s),e)}function Dh(e,t,n,a){var r;return r=(u,o)=>{let{n:i,p:s,r:l,i:c}=Hs(u,o,t);return n&&Vs(i,t,n,o,s,l,c,a)},Ws.set(e,r),e}function Fs(e,t,n){if(e[e.length-1]!="("){let a=[],r=!1,u=!1,o="";for(let i of e)if(!(i=="("||/[~@]$/.test(i))){if(i[0]=="!"&&(i=i.slice(1),r=!r),i.endsWith(":")){a[i=="dark:"?"unshift":"push"](i.slice(0,-1));continue}i[0]=="-"&&(i=i.slice(1),u=!u),i.endsWith("-")&&(i=i.slice(0,-1)),i&&i!="&"&&(o+=(o&&"-")+i)}o&&(u&&(o="-"+o),t[0].push({n:o,v:a.filter(Lh),i:r}))}}function Lh(e,t,n){return n.indexOf(e)==t}var I4=new Map;function Zr(e){let t=I4.get(e);if(!t){let n=[],a=[[]],r=0,u=0,o=null,i=0,s=(l,c=0)=>{r!=i&&(n.push(e.slice(r,i+c)),l&&Fs(n,a)),r=i+1};for(;i1?g.slice(0,-1)+Za(JSON.stringify([g,m])):g+"("+z4(m)+")",ot.a,m,/@$/.test(g))],a)}c=n.lastIndexOf("(",c-1)}n.length=c+1}else/[~@]/.test(l)&&e[i+1]=="("&&a.unshift([])}s(!0),I4.set(e,t=a[0])}return t}function q4(e,t,n){return t.reduce((a,r,u)=>a+n(r)+e[u+1],e[0])}function K4(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?q4(e,t,n=>_s(n).trim()):t.filter(Boolean).reduce((n,a)=>n+_s(a),e?_s(e):"")}function _s(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=K4(e[0],e.slice(1)))&&(n+=" "+t);else for(let a in e)e[a]&&(n+=" "+a);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var qE=V4("@"),KE=V4("~");function V4(e){return new Proxy(function(n,...a){return t("",n,a)},{get(n,a){return a in n?n[a]:function(r,...u){return t(a,r,u)}}});function t(n,a,r){return z4(Zr(n+e+"("+K4(a,r)+")"))}}function Is(e,t){return Array.isArray(e)?O4(q4(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?O4(e):[e]}var Ph=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function O4(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],a=[n[0]],r=[];for(;t=Ph.exec(e);)t[4]&&(n.shift(),r.shift()),t[3]?(r.unshift(t[3]),n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))),n[0][t[1]]=t[2]);return a}function G4(e,...t){var n;let a=Is(e,t),r=(a.find(u=>u.label)?.label||"css")+Za(JSON.stringify(a));return n=(u,o)=>Ks(a.flatMap(i=>$s(i,u,o,ot.o)),r),Ws.set(r,n),r}var VE=new Proxy(function(e,t){return N4("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,a){return N4(t,n,a)}}});function N4(e,t,n){return{toString(){return G4({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function q(e,t,n){return[e,Os(t,n)]}function Os(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,a)=>({[e]:t?t(n,a):Ns(n,1)}):n=>e||{[n[1]]:Ns(n,2)}}function Ns(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function K(e,t,n,a){return[e,Mh(t,n,a)]}function Mh(e,t,n){let a=typeof t=="string"?(r,u)=>({[t]:n?n(r,u):r._}):t||(({1:r,_:u},o,i)=>({[r||i]:u}));return(r,u)=>{let o=J4(e||r[1]),i=u.theme(o,r.$$)??kn(r.$$,o,u);if(i!=null)return r._=Ns(r,0,i),a(r,u,o)}}function dt(e,t={},n){return[e,Fh(t,n)]}function Fh(e={},t){return(n,a)=>{let{section:r=J4(n[0]).replace("-","")+"Color"}=e,[u,o]=_h(n.$$);if(!u)return;let i=a.theme(r,u)||kn(u,r,a);if(!i||typeof i=="object")return;let{opacityVariable:s=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=r.replace("Color","Opacity"),property:c=r,selector:g}=e,m=a.theme(l,o||"DEFAULT")||o&&kn(o,l,a),p=t||(({_:S})=>{let v=eu(c,S);return g?{[g]:v}:v});n._={value:Nn(i,{opacityVariable:s||void 0,opacityValue:m||void 0}),color:S=>Nn(i,S),opacityVariable:s||void 0,opacityValue:m||void 0};let f=p(n,a);if(!n.dark){let S=a.d(r,u,i);S&&S!==i&&(n._={value:Nn(S,{opacityVariable:s||void 0,opacityValue:m||"1"}),color:v=>Nn(S,v),opacityVariable:s||void 0,opacityValue:m||void 0},f={"&":f,[a.v("dark")]:p(n,a)})}return f}}function _h(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function eu(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function kn(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=Qa(qs(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function J4(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function Qa(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",a,r="")=>Qa(n)+a+Qa(r)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var GE=Symbol();function tu({presets:e=[],...t}){let n={darkMode:void 0,darkColor:void 0,preflight:t.preflight!==!1&&[],theme:{},variants:Ue(t.variants),rules:Ue(t.rules),ignorelist:Ue(t.ignorelist),hash:void 0,stringify:(a,r)=>a+":"+r,finalize:[]};for(let a of Ue([...e,{darkMode:t.darkMode,darkColor:t.darkColor,preflight:t.preflight!==!1&&Ue(t.preflight),theme:t.theme,hash:t.hash,stringify:t.stringify,finalize:t.finalize}])){let{preflight:r,darkMode:u=n.darkMode,darkColor:o=n.darkColor,theme:i,variants:s,rules:l,ignorelist:c,hash:g=n.hash,stringify:m=n.stringify,finalize:p}=typeof a=="function"?a(n):a;n={preflight:n.preflight!==!1&&r!==!1&&[...n.preflight,...Ue(r)],darkMode:u,darkColor:o,theme:{...n.theme,...i,extend:{...n.theme.extend,...i?.extend}},variants:[...n.variants,...Ue(s)],rules:[...n.rules,...Ue(l)],ignorelist:[...n.ignorelist,...Ue(c)],hash:g,stringify:m,finalize:[...n.finalize,...Ue(p)]}}return n}function U4(e,t,n,a,r,u){for(let o of t){let i=n.get(o);i||n.set(o,i=a(o));let s=i(e,r,u);if(s)return s}}function Bh(e){var t;return Us(e[0],typeof(t=e[1])=="function"?t:()=>t)}function Rh(e){var t,n;return Array.isArray(e)?Us(e[0],Os(e[1],e[2])):Us(e,Os(t,n))}function Us(e,t){return Y4(e,(n,a,r,u)=>{let o=a.exec(n);if(o)return o.$$=n.slice(o[0].length),o.dark=u,t(o,r)})}function Y4(e,t){let n=Ue(e).map(Ih);return(a,r,u)=>{for(let o of n){let i=t(a,o,r,u);if(i)return i}}}function Ih(e){return typeof e=="string"?RegExp("^"+e+(e.includes("$")||e.slice(-1)=="-"?"":"$")):e}function Oh(e,t){let n=tu(e),a=function({theme:s,darkMode:l,darkColor:c=Qr,variants:g,rules:m,hash:p,stringify:f,ignorelist:S,finalize:v}){let h=new Map,k=new Map,F=new Map,M=new Map,A=Y4(S,(x,b)=>b.test(x));g.push(["dark",Array.isArray(l)||l=="class"?`${Ue(l)[1]||".dark"} &`:typeof l=="string"&&l!="media"?l:"@media (prefers-color-scheme:dark)"]);let P=typeof p=="function"?x=>p(x,Za):p?Za:F4;P!==F4&&v.push(x=>({...x,n:x.n&&P(x.n),d:x.d?.replace(/--(tw(?:-[\w-]+)?)\b/g,(b,E)=>"--"+P(E).replace("#",""))}));let w={theme:function({extend:x={},...b}){let E={},I={get colors(){return D("colors")},theme:D,negative(){return{}},breakpoints(_){let B={};for(let G in _)typeof _[G]=="string"&&(B["screen-"+G]=_[G]);return B}};return D;function D(_,B,G,re){if(_){if({1:_,2:re}=/^(\S+?)(?:\s*\/\s*([^/]+))?$/.exec(_)||[,_],/[.[]/.test(_)){let de=[];_.replace(/\[([^\]]+)\]|([^.[]+)/g,(C,z,Z=z)=>de.push(Z)),_=de.shift(),G=B,B=de.join("-")}let V=E[_]||Object.assign(Object.assign(E[_]={},W(b,_)),W(x,_));if(B==null)return V;B||="DEFAULT";let ge=V[B]??B.split("-").reduce((de,C)=>de?.[C],V)??G;return re?Nn(ge,{opacityValue:qs(re,D)}):ge}let ye={};for(let V of[...Object.keys(b),...Object.keys(x)])ye[V]=D(V);return ye}function W(_,B){let G=_[B];return typeof G=="function"&&(G=G(I)),G&&/color|fill|stroke/i.test(B)?function re(ye,V=[]){let ge={};for(let de in ye){let C=ye[de],z=[...V,de];ge[z.join("-")]=C,de=="DEFAULT"&&(z=V,ge[V.join("-")]=C),typeof C=="object"&&Object.assign(ge,re(C,z))}return ge}(G):G}}(s),e:zs,h:P,s(x,b){return f(x,b,w)},d(x,b,E){return c(x,b,w,E)},v(x){return h.has(x)||h.set(x,U4(x,g,k,Bh,w)||"&:"+x),h.get(x)},r(x,b){let E=JSON.stringify([x,b]);return F.has(E)||F.set(E,!A(x,w)&&U4(x,m,M,Rh,w,b)),F.get(E)},f(x){return v.reduce((b,E)=>E(b,w),x)}};return w}(n),r=new Map,u=[],o=new Set;t.resume(s=>r.set(s,s),(s,l)=>{t.insert(s,u.length,l),u.push(l),o.add(s)});function i(s){let l=a.f(s),c=Rs(l);if(c&&!o.has(c)){o.add(c);let g=W4(u,s);t.insert(c,g,s),u.splice(g,0,s)}return l.n}return Object.defineProperties(function(s){if(!r.size)for(let c of Ue(n.preflight))typeof c=="function"&&(c=c(a)),c&&(typeof c=="string"?Vs("",ot.b,Zr(c),a,ot.b,[],!1,!0):$s(c,{},a,ot.b)).forEach(i);s=""+s;let l=r.get(s);if(!l){let c=new Set;for(let g of eo(Zr(s),a))c.add(g.c).add(i(g));l=[...c].filter(Boolean).join(" "),r.set(s,l).set(l,l)}return l},Object.getOwnPropertyDescriptors({get target(){return t.target},theme:a.theme,config:n,snapshot(){let s=t.snapshot(),l=new Set(o),c=new Map(r),g=[...u];return()=>{s(),o=l,r=c,u=g}},clear(){t.clear(),o=new Set,r=new Map,u=[]},destroy(){this.clear(),t.destroy()}}))}function Nh(e,t){return e!=t&&""+e.split(" ").sort()!=""+t.split(" ").sort()}function Uh(e){let t=new MutationObserver(n);return{observe(r){t.observe(r,{attributeFilter:["class"],subtree:!0,childList:!0}),a(r),n([{target:r,type:""}])},disconnect(){t.disconnect()}};function n(r){for(let{type:u,target:o}of r)if(u[0]=="a")a(o);else for(let i of o.querySelectorAll("[class]"))a(i);t.takeRecords()}function a(r){let u,o=r.getAttribute?.("class");o&&Nh(o,u=e(o))&&r.setAttribute("class",u)}}function jh(e=Gs,t=typeof document<"u"&&document.documentElement){if(t){let n=Uh(e);n.observe(t);let{destroy:a}=e;e.destroy=()=>{n.disconnect(),a.call(e)}}return e}function X4(e){let t=document.querySelector(e||'style[data-twind=""]');return(!t||t.tagName!="STYLE")&&(t=document.createElement("style"),document.head.prepend(t)),t.dataset.twind="claimed",t}function zh(e){let t=e?.cssRules?e:(e&&typeof e!="string"?e:X4(e)).sheet;return{target:t,snapshot(){let n=Array.from(t.cssRules,a=>a.cssText);return()=>{this.clear(),n.forEach(this.insert)}},clear(){for(let n=t.cssRules.length;n--;)t.deleteRule(n)},destroy(){t.ownerNode?.remove()},insert(n,a){try{t.insertRule(n,a)}catch{t.insertRule(":root{}",a)}},resume:Qr}}function Hh(e){let t=e&&typeof e!="string"?e:X4(e);return{target:t,snapshot(){let n=Array.from(t.childNodes,a=>a.textContent);return()=>{this.clear(),n.forEach(this.insert)}},clear(){t.textContent=""},destroy(){t.remove()},insert(n,a){t.insertBefore(document.createTextNode(n),t.childNodes[a]||null)},resume:Qr}}function Wh(e){let t=[];return{target:t,snapshot(){let n=[...t];return()=>{t.splice(0,t.length,...n)}},clear(){t.length=0},destroy(){this.clear()},insert(n,a,r){t.splice(a,0,e?`/*!${r.p.toString(36)},${(2*r.o).toString(36)}${r.n?","+r.n:""}*/${n}`:n)},resume:Qr}}function Z4(e,t){let n=typeof document>"u"?Wh(!t):e?Hh():zh();return t||(n.resume=qh),n}function $h(e){return(e.ownerNode||e).textContent||(e.cssRules?Array.from(e.cssRules,t=>t.cssText):Ue(e)).join("")}function qh(e,t){let n=$h(this.target),a=/\/\*!([\da-z]+),([\da-z]+)(?:,(.+?))?\*\//g;if(a.test(n)){var r;let u;if(a.lastIndex=0,this.clear(),typeof document<"u")for(let o of document.querySelectorAll("[class]"))e(o.getAttribute("class"));for(;r=a.exec(n),u&&t(n.slice(u.index+u[0].length,r?.index),{p:parseInt(u[1],36),o:parseInt(u[2],36)/2,n:u[3]}),u=r;);}}var Gs=new Proxy(Qr,{apply(e,t,n){return Xr(n[0])},get(e,t){let n=Xr[t];return typeof n=="function"?function(){return n.apply(Xr,arguments)}:n}});function Q4(e={},t=Z4,n){return Xr?.destroy(),Xr=jh(Oh(e,typeof t=="function"?t():t),n)}function Js(e,t=!0){let n=tu(e);return Q4({...n,hash:n.hash??t},()=>Z4(!t))}var JE=function e(t){return new Proxy(function(n,...a){return j4(t,"",n,a)},{get(n,a){return a==="bind"?e:a in n?n[a]:function(r,...u){return j4(t,a,r,u)}}})}();function j4(e,t,n,a){return{toString(){let r=Is(n,a),u=zs(t+Za(JSON.stringify([t,r])));return(typeof e=="function"?e:Gs)(G4({[`@keyframes ${u}`]:Is(n,a)})),u}}}var Kh=new Map([["align-self","-ms-grid-row-align"],["color-adjust","-webkit-print-color-adjust"],["column-gap","grid-column-gap"],["forced-color-adjust","-ms-high-contrast-adjust"],["gap","grid-gap"],["grid-template-columns","-ms-grid-columns"],["grid-template-rows","-ms-grid-rows"],["justify-self","-ms-grid-column-align"],["margin-inline-end","-webkit-margin-end"],["margin-inline-start","-webkit-margin-start"],["mask-border","-webkit-mask-box-image"],["mask-border-outset","-webkit-mask-box-image-outset"],["mask-border-slice","-webkit-mask-box-image-slice"],["mask-border-source","-webkit-mask-box-image-source"],["mask-border-repeat","-webkit-mask-box-image-repeat"],["mask-border-width","-webkit-mask-box-image-width"],["overflow-wrap","word-wrap"],["padding-inline-end","-webkit-padding-end"],["padding-inline-start","-webkit-padding-start"],["print-color-adjust","color-adjust"],["row-gap","grid-row-gap"],["scroll-margin-bottom","scroll-snap-margin-bottom"],["scroll-margin-left","scroll-snap-margin-left"],["scroll-margin-right","scroll-snap-margin-right"],["scroll-margin-top","scroll-snap-margin-top"],["scroll-margin","scroll-snap-margin"],["text-combine-upright","-ms-text-combine-horizontal"]]);function ed(e){return Kh.get(e)}function td(e){var t=/^(?:(text-(?:decoration$|e|or|si)|back(?:ground-cl|d|f)|box-d|mask(?:$|-[ispro]|-cl)|pr|hyphena|flex-d)|(tab-|column(?!-s)|text-align-l)|(ap)|u|hy)/i.exec(e);return t?t[1]?1:t[2]?2:t[3]?3:5:0}function nd(e,t){var n=/^(?:(pos)|(cli)|(background-i)|(flex(?:$|-b)|(?:max-|min-)?(?:block-s|inl|he|widt))|dis)/i.exec(e);return n?n[1]?/^sti/i.test(t)?1:0:n[2]?/^pat/i.test(t)?1:0:n[3]?/^image-/i.test(t)?1:0:n[4]?t[3]==="-"?2:0:/^(?:inline-)?grid$/i.test(t)?4:0:0}var Vh=[["-webkit-",1],["-moz-",2],["-ms-",4]];function no(){return({stringify:e})=>({stringify(t,n,a){let r="",u=ed(t);u&&(r+=e(u,n,a)+";");let o=td(t),i=nd(t,n);for(let s of Vh)o&s[1]&&(r+=e(s[0]+t,n,a)+";"),i&s[1]&&(r+=e(t,s[0]+n,a)+";");return r+e(t,n,a)}})}var Xs={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Jt(4,"rem",4,.5,.5),...Jt(12,"rem",4,5),14:"3.5rem",...Jt(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:Me("blur"),backdropBrightness:Me("brightness"),backdropContrast:Me("contrast"),backdropGrayscale:Me("grayscale"),backdropHueRotate:Me("hueRotate"),backdropInvert:Me("invert"),backdropOpacity:Me("opacity"),backdropSaturate:Me("saturate"),backdropSepia:Me("sepia"),backgroundColor:Me("colors"),backgroundImage:{none:"none"},backgroundOpacity:Me("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Jt(200,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:Me("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:Me("spacing"),borderWidth:{DEFAULT:"1px",...en(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:Me("colors"),caretColor:Me("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Jt(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:Me("borderColor"),divideOpacity:Me("borderOpacity"),divideWidth:Me("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...nu(2,6),...nu(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:Me("spacing"),gradientColorStops:Me("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...nu(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...nu(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Jt(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Jt(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:Me("spacing"),placeholderColor:Me("colors"),placeholderOpacity:Me("opacity"),outlineColor:Me("colors"),outlineOffset:en(8,"px"),outlineWidth:en(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:Me("colors"),ringOffsetWidth:en(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...en(8,"px")},rotate:{...en(2,"deg"),...en(12,"deg",3),...en(180,"deg",45)},saturate:Jt(200,"",100,0,50),scale:{...Jt(150,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:Me("spacing"),scrollPadding:Me("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...en(2,"deg"),...en(12,"deg",3)},space:Me("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Jt(2),textColor:Me("colors"),textDecorationColor:Me("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...en(8,"px")},textUnderlineOffset:{auto:"auto",...en(8,"px")},textIndent:Me("spacing"),textOpacity:Me("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:Me("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...nu(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Jt(50,"",1,0,10),auto:"auto"}};function nu(e,t){let n={};do for(var a=1;at(e)}var Gh={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${Xs.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${Xs.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},Jh=[q("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:kn(`[${t}]`,"",n)}}})),q("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),K("aspect-","aspectRatio"),q("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:a,padding:r}=t("container"),u={width:"100%",marginRight:a&&"auto",marginLeft:a&&"auto",...o("xs")};for(let i in n){let s=n[i];typeof s=="string"&&(u[to(s)]={"&":{maxWidth:s,...o(i)}})}return u;function o(i){let s=r&&(typeof r=="string"?r:r[i]||r.DEFAULT);if(s)return{paddingRight:s,paddingLeft:s}}}),K("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),q("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),q("box-(border|content)","boxSizing",({1:e})=>e+"-box"),q("hidden",{display:"none"}),q("table-(auto|fixed)","tableLayout"),q(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",q("isolate","isolation"),q("object-(contain|cover|fill|none|scale-down)","objectFit"),K("object-","objectPosition"),q("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",ao),q("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),q("(static|fixed|absolute|relative|sticky)","position"),K("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),K("-?(top|bottom|left|right)(?:$|-)","inset"),q("(visible|collapse)","visibility"),q("invisible",{visibility:"hidden"}),K("-?z-","zIndex"),q("flex-((row|col)(-reverse)?)","flexDirection",ad),q("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),K("(flex-(?:grow|shrink))(?:$|-)"),K("(flex)-"),K("grow(?:$|-)","flexGrow"),K("shrink(?:$|-)","flexShrink"),K("basis-","flexBasis"),K("-?(order)-"),"-?(order)-(\\d+)",K("grid-cols-","gridTemplateColumns"),q("grid-cols-(\\d+)","gridTemplateColumns",id),K("col-","gridColumn"),q("col-(span)-(\\d+)","gridColumn",od),K("col-start-","gridColumnStart"),q("col-start-(auto|\\d+)","gridColumnStart"),K("col-end-","gridColumnEnd"),q("col-end-(auto|\\d+)","gridColumnEnd"),K("grid-rows-","gridTemplateRows"),q("grid-rows-(\\d+)","gridTemplateRows",id),K("row-","gridRow"),q("row-(span)-(\\d+)","gridRow",od),K("row-start-","gridRowStart"),q("row-start-(auto|\\d+)","gridRowStart"),K("row-end-","gridRowEnd"),q("row-end-(auto|\\d+)","gridRowEnd"),q("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>ao(ad(e))),q("grid-flow-(dense)","gridAutoFlow"),K("auto-cols-","gridAutoColumns"),K("auto-rows-","gridAutoRows"),K("gap-x(?:$|-)","gap","columnGap"),K("gap-y(?:$|-)","gap","rowGap"),K("gap(?:$|-)","gap"),"(justify-(?:items|self))-",q("justify-","justifyContent",rd),q("(content|items|self)-",e=>({["align-"+e[1]]:rd(e)})),q("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),K("p([xytrbl])?(?:$|-)","padding",er("padding")),K("-?m([xytrbl])?(?:$|-)","margin",er("margin")),K("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),q("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),K("w-","width"),K("min-w-","minWidth"),K("max-w-","maxWidth"),K("h-","height"),K("min-h-","minHeight"),K("max-h-","maxHeight"),K("font-","fontWeight"),K("font-","fontFamily",({_:e})=>typeof(e=Ue(e))[1]=="string"?{fontFamily:gn(e)}:{fontFamily:gn(e[0]),...e[1]}),q("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),q("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),q("italic","fontStyle"),q("not-italic",{fontStyle:"normal"}),q("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...Zn({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),K("tracking-","letterSpacing"),K("leading-","lineHeight"),q("list-(inside|outside)","listStylePosition"),K("list-","listStyleType"),q("list-","listStyleType"),K("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),dt("placeholder-",{property:"color",selector:"&::placeholder"}),q("text-(left|center|right|justify|start|end)","textAlign"),q("text-(ellipsis|clip)","textOverflow"),K("text-opacity-","textOpacity","--tw-text-opacity"),dt("text-",{property:"color"}),K("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),K("indent-","textIndent"),q("(overline|underline|line-through)","textDecorationLine"),q("no-underline",{textDecorationLine:"none"}),K("underline-offset-","textUnderlineOffset"),dt("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),K("decoration-","textDecorationThickness"),q("decoration-","textDecorationStyle"),q("(uppercase|lowercase|capitalize)","textTransform"),q("normal-case",{textTransform:"none"}),q("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),q("align-","verticalAlign"),q("whitespace-","whiteSpace"),q("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),q("break-words",{overflowWrap:"break-word"}),q("break-all",{wordBreak:"break-all"}),q("break-keep",{wordBreak:"keep-all"}),dt("caret-",{opacityVariable:!1,opacitySection:"opacity"}),dt("accent-",{opacityVariable:!1,opacitySection:"opacity"}),q("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${Sa(e," ")},var(--tw-gradient-stops))`),dt("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),dt("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),dt("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),q("bg-(fixed|local|scroll)","backgroundAttachment"),q("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),q(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),q("bg-blend-","backgroundBlendMode"),q("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),K("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),dt("bg-",{section:"backgroundColor"}),K("bg-","backgroundImage"),K("bg-","backgroundPosition"),q("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",ao),K("bg-","backgroundSize"),K("rounded(?:$|-)","borderRadius"),K("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${Sa(n[0])}-radius`]:t,[`border-${Sa(n[1])}-radius`]:t}}),q("border-(collapse|separate)","borderCollapse"),K("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),q("border-(solid|dashed|dotted|double|none)","borderStyle"),K("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...Zn({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),dt("border-([xytrbl])-",{section:"borderColor"},er("border","Color")),dt("border-"),K("border-([xytrbl])(?:$|-)","borderWidth",er("border","Width")),K("border(?:$|-)","borderWidth"),K("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),q("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),q("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),K("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${Sa(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${Sa(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),dt("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),K("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),dt("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),K("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),q("ring-inset",{"--tw-ring-inset":"inset"}),dt("ring-",{property:"--tw-ring-color"}),K("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":Nn(t("ringOffsetColor","","#fff")),"--tw-ring-color":Nn(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),dt("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),K("shadow(?:$|-)","boxShadow",({_:e})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":gn(e),"--tw-shadow-colored":gn(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),K("(opacity)-"),q("mix-blend-","mixBlendMode"),...ud(),...ud("backdrop-"),K("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:gn(e),transitionTimingFunction:e._=="none"?void 0:gn(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:gn(t("transitionDuration",""))})),K("duration(?:$|-)","transitionDuration","transitionDuration",gn),K("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",gn),K("delay(?:$|-)","transitionDelay","transitionDelay",gn),K("animate(?:$|-)","animation",(e,{theme:t,h:n,e:a})=>{let r=gn(e),u=r.split(" "),o=t("keyframes",u[0]);return o?{["@keyframes "+(u[0]=a(n(u[0])))]:o,animation:u.join(" ")}:{animation:r}}),"(transform)-(none)",q("transform",Zs),q("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":sd(e=="gpu")})),K("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...Zs()})),K("-?(rotate)-","rotate",Ys),K("-?(translate-[xy])-","translate",Ys),K("-?(skew-[xy])-","skew",Ys),q("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",ao),"(appearance)-",K("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",K("(cursor)-"),"(cursor)-",q("snap-(none)","scroll-snap-type"),q("snap-(x|y|both)",({1:e})=>({...Zn({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),q("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),q("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),q("snap-(normal|always)","scroll-snap-stop"),q("scroll-(auto|smooth)","scroll-behavior"),K("scroll-p([xytrbl])?(?:$|-)","padding",er("scroll-padding")),K("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",er("scroll-margin")),q("touch-(auto|none|manipulation)","touch-action"),q("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...Zn({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),q("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),q("outline",{outlineStyle:"solid"}),q("outline-(dashed|dotted|double)","outlineStyle"),K("-?(outline-offset)-"),dt("outline-",{opacityVariable:!1,opacitySection:"opacity"}),K("outline-","outlineWidth"),"(pointer-events)-",K("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],q("select-(none|text|all|auto)","userSelect"),dt("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),dt("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),K("stroke-","strokeWidth"),q("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),q("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function ao(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function ad(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function Sa(e,t="-"){let n=[];for(let a of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[a]);return n.join(t)}function gn(e){return e&&""+(e._||e)}function rd({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function er(e,t=""){return({1:n,_:a})=>{let r={x:"lr",y:"tb"}[n]||n+n;return r?{...eu(e+"-"+Sa(r[0])+t,a),...eu(e+"-"+Sa(r[1])+t,a)}:eu(e+t,a)}}function ud(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let a of t)n[`--tw-${e}${a}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...Zn(n),[`${e}filter`]:t.map(a=>`var(--tw-${e}${a})`).join(" ")},[`(${e}filter)-(none)`,q(`${e}filter`,n),...t.map(a=>K(`${a[0]=="h"?"-?":""}(${e}${a})(?:$|-)`,a,({1:r,_:u})=>({[`--tw-${r}`]:Ue(u).map(o=>`${a}(${o})`).join(" "),...n})))]}function Ys({1:e,_:t}){return{["--tw-"+e]:t,...Zs()}}function Zs(){return{...Zn({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":sd()}),transform:"var(--tw-transform)"}}function sd(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function od({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function id({1:e}){return`repeat(${e},minmax(0,1fr))`}function Zn(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var Yh=[["sticky","@supports ((position: -webkit-sticky) or (position:sticky))"],["motion-reduce","@media (prefers-reduced-motion:reduce)"],["motion-safe","@media (prefers-reduced-motion:no-preference)"],["print","@media print"],["(portrait|landscape)",({1:e})=>`@media (orientation:${e})`],["contrast-(more|less)",({1:e})=>`@media (prefers-contrast:${e})`],["(first-(letter|line)|placeholder|backdrop|before|after)",({1:e})=>`&::${e}`],["(marker|selection)",({1:e})=>`& *::${e},&::${e}`],["file","&::file-selector-button"],["(first|last|only)",({1:e})=>`&:${e}-child`],["even","&:nth-child(2n)"],["odd","&:nth-child(odd)"],["open","&[open]"],["(aria|data)-",({1:e,$$:t},n)=>t&&`&[${e}-${n.theme(e,t)||kn(t,"",n)||`${t}="true"`}]`],["((group|peer)(~[^-[]+)?)(-\\[(.+)]|[-[].+?)(\\/.+)?",({2:e,3:t="",4:n,5:a="",6:r=t},{e:u,h:o,v:i})=>{let s=Qa(a)||(n[0]=="["?n:i(n.slice(1)));return`${(s.includes("&")?s:"&"+s).replace(/&/g,`:merge(.${u(o(e+r))})`)}${e[0]=="p"?"~":" "}&`}],["(ltr|rtl)",({1:e})=>`[dir="${e}"] &`],["supports-",({$$:e},t)=>{if(e&&=t.theme("supports",e)||kn(e,"",t),e)return e.includes(":")||(e+=":var(--tw)"),/^\w*\s*\(/.test(e)||(e=`(${e})`),`@supports ${e.replace(/\b(and|or|not)\b/g," $1 ").trim()}`}],["max-",({$$:e},t)=>{if(e&&=t.theme("screens",e)||kn(e,"",t),typeof e=="string")return`@media not all and (min-width:${e})`}],["min-",({$$:e},t)=>(e&&=kn(e,"",t))&&`@media (min-width:${e})`],[/^\[(.+)]$/,({1:e})=>/[&@]/.test(e)&&Qa(e).replace(/[}]+$/,"").split("{")]];function Xh({colors:e,disablePreflight:t}={}){return{preflight:t?void 0:Gh,theme:{...Xs,colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",...e}},variants:Yh,rules:Jh,finalize(n){return n.n&&n.d&&n.r.some(a=>/^&::(before|after)$/.test(a))&&!/(^|;)content:/.test(n.d)?{...n,d:"content:var(--tw-content);"+n.d}:n}}}var Zh={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},Qh={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},e2={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},t2={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},n2={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},a2={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},r2={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},u2={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},o2={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},i2={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},s2={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},l2={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},c2={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},d2={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},g2={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},m2={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},p2={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},f2={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},h2={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},b2={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},y2={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},T2={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},E2={__proto__:null,slate:Zh,gray:Qh,zinc:e2,neutral:t2,stone:n2,red:a2,orange:r2,amber:u2,yellow:o2,lime:i2,green:s2,emerald:l2,teal:c2,cyan:d2,sky:g2,blue:m2,indigo:p2,violet:f2,purple:h2,fuchsia:b2,pink:y2,rose:T2};function ro({disablePreflight:e}={}){return Xh({colors:E2,disablePreflight:e})}var uo=globalThis||(typeof window<"u"?window:self),x2=Object.create,e0=Object.defineProperty,C2=Object.getOwnPropertyDescriptor,v2=Object.getOwnPropertyNames,w2=Object.getPrototypeOf,k2=Object.prototype.hasOwnProperty,S2=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),A2=(e,t)=>{for(var n in t)e0(e,n,{get:t[n],enumerable:!0})},Qs=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of v2(t))!k2.call(e,r)&&r!==n&&e0(e,r,{get:()=>t[r],enumerable:!(a=C2(t,r))||a.enumerable});return e},D2=(e,t,n)=>(Qs(e,t,"default"),n&&Qs(n,t,"default")),cd=(e,t,n)=>(n=e!=null?x2(w2(e)):{},Qs(t||!e||!e.__esModule?e0(n,"default",{value:e,enumerable:!0}):n,e)),dd=S2((e,t)=>{(function(n,a){typeof define=="function"&&define.amd?define([],a):typeof e<"u"?a():(a(),n.FileSaver={})})(e,function(){"use strict";function n(l,c){return typeof c>"u"?c={autoBom:!1}:typeof c!="object"&&(c={autoBom:!c}),c.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function a(l,c,g){var m=new XMLHttpRequest;m.open("GET",l),m.responseType="blob",m.onload=function(){s(m.response,c,g)},m.onerror=function(){},m.send()}function r(l){var c=new XMLHttpRequest;c.open("HEAD",l,!1);try{c.send()}catch{}return 200<=c.status&&299>=c.status}function u(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(c)}}var o=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof uo=="object"&&uo.global===uo?uo:void 0,i=o.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=o.saveAs||(typeof window!="object"||window!==o?function(){}:"download"in HTMLAnchorElement.prototype&&!i?function(l,c,g){var m=o.URL||o.webkitURL,p=document.createElement("a");c=c||l.name||"download",p.download=c,p.rel="noopener",typeof l=="string"?(p.href=l,p.origin===location.origin?u(p):r(p.href)?a(l,c,g):u(p,p.target="_blank")):(p.href=m.createObjectURL(l),setTimeout(function(){m.revokeObjectURL(p.href)},4e4),setTimeout(function(){u(p)},0))}:"msSaveOrOpenBlob"in navigator?function(l,c,g){if(c=c||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,g),c);else if(r(l))a(l,c,g);else{var m=document.createElement("a");m.href=l,m.target="_blank",setTimeout(function(){u(m)})}}:function(l,c,g,m){if(m=m||open("","_blank"),m&&(m.document.title=m.document.body.innerText="downloading..."),typeof l=="string")return a(l,c,g);var p=l.type==="application/octet-stream",f=/constructor/i.test(o.HTMLElement)||o.safari,S=/CriOS\/[\d]+/.test(navigator.userAgent);if((S||p&&f||i)&&typeof FileReader<"u"){var v=new FileReader;v.onloadend=function(){var F=v.result;F=S?F:F.replace(/^data:[^;]*;/,"data:attachment/file;"),m?m.location.href=F:location=F,m=null},v.readAsDataURL(l)}else{var h=o.URL||o.webkitURL,k=h.createObjectURL(l);m?m.location=k:location.href=k,m=null,setTimeout(function(){h.revokeObjectURL(k)},4e4)}});o.saveAs=s.saveAs=s,typeof t<"u"&&(t.exports=s)})}),gd={};A2(gd,{default:()=>au});var L2=cd(dd());D2(gd,cd(dd()));var{default:ld,...P2}=L2,au=ld!==void 0?ld:P2;function tr(){let e,t="pending",n=new Promise((a,r)=>{e={async resolve(u){await u,t="fulfilled",a(u)},reject(u){t="rejected",r(u)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var t0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function oo(e,t){let n=tr(),a=setTimeout(()=>n.reject(new t0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Qn(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((r,u)=>{let o=()=>{clearTimeout(s),u(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),r()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var md=class{#e=0;#t=[];#n=[];#a=tr();add(t){++this.#e,this.#r(t[Symbol.asyncIterator]())}async#r(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;ta9,bgBlue:()=>i9,bgBrightBlack:()=>d9,bgBrightBlue:()=>f9,bgBrightCyan:()=>b9,bgBrightGreen:()=>m9,bgBrightMagenta:()=>h9,bgBrightRed:()=>g9,bgBrightWhite:()=>y9,bgBrightYellow:()=>p9,bgCyan:()=>l9,bgGreen:()=>u9,bgMagenta:()=>s9,bgRed:()=>r9,bgRgb24:()=>C9,bgRgb8:()=>E9,bgWhite:()=>c9,bgYellow:()=>o9,black:()=>z2,blue:()=>q2,bold:()=>B2,brightBlack:()=>hd,brightBlue:()=>Q2,brightCyan:()=>t9,brightGreen:()=>X2,brightMagenta:()=>e9,brightRed:()=>Y2,brightWhite:()=>n9,brightYellow:()=>Z2,cyan:()=>V2,dim:()=>R2,getColorEnabled:()=>F2,gray:()=>J2,green:()=>W2,hidden:()=>U2,inverse:()=>N2,italic:()=>I2,magenta:()=>K2,red:()=>H2,reset:()=>_2,rgb24:()=>x9,rgb8:()=>T9,setColorEnabled:()=>M2,strikethrough:()=>j2,stripColor:()=>w9,underline:()=>O2,white:()=>G2,yellow:()=>$2});var{Deno:pd}=globalThis,fd=typeof pd?.noColor=="boolean"?pd.noColor:!0,n0=!fd;function M2(e){fd||(n0=e)}function F2(){return n0}function Te(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function Ee(e,t){return n0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function _2(e){return Ee(e,Te([0],0))}function B2(e){return Ee(e,Te([1],22))}function R2(e){return Ee(e,Te([2],22))}function I2(e){return Ee(e,Te([3],23))}function O2(e){return Ee(e,Te([4],24))}function N2(e){return Ee(e,Te([7],27))}function U2(e){return Ee(e,Te([8],28))}function j2(e){return Ee(e,Te([9],29))}function z2(e){return Ee(e,Te([30],39))}function H2(e){return Ee(e,Te([31],39))}function W2(e){return Ee(e,Te([32],39))}function $2(e){return Ee(e,Te([33],39))}function q2(e){return Ee(e,Te([34],39))}function K2(e){return Ee(e,Te([35],39))}function V2(e){return Ee(e,Te([36],39))}function G2(e){return Ee(e,Te([37],39))}function J2(e){return hd(e)}function hd(e){return Ee(e,Te([90],39))}function Y2(e){return Ee(e,Te([91],39))}function X2(e){return Ee(e,Te([92],39))}function Z2(e){return Ee(e,Te([93],39))}function Q2(e){return Ee(e,Te([94],39))}function e9(e){return Ee(e,Te([95],39))}function t9(e){return Ee(e,Te([96],39))}function n9(e){return Ee(e,Te([97],39))}function a9(e){return Ee(e,Te([40],49))}function r9(e){return Ee(e,Te([41],49))}function u9(e){return Ee(e,Te([42],49))}function o9(e){return Ee(e,Te([43],49))}function i9(e){return Ee(e,Te([44],49))}function s9(e){return Ee(e,Te([45],49))}function l9(e){return Ee(e,Te([46],49))}function c9(e){return Ee(e,Te([47],49))}function d9(e){return Ee(e,Te([100],49))}function g9(e){return Ee(e,Te([101],49))}function m9(e){return Ee(e,Te([102],49))}function p9(e){return Ee(e,Te([103],49))}function f9(e){return Ee(e,Te([104],49))}function h9(e){return Ee(e,Te([105],49))}function b9(e){return Ee(e,Te([106],49))}function y9(e){return Ee(e,Te([107],49))}function ea(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function T9(e,t){return Ee(e,Te([38,5,ea(t)],39))}function E9(e,t){return Ee(e,Te([48,5,ea(t)],49))}function x9(e,t){return typeof t=="number"?Ee(e,Te([38,2,t>>16&255,t>>8&255,t&255],39)):Ee(e,Te([38,2,ea(t.r),ea(t.g),ea(t.b)],39))}function C9(e,t){return typeof t=="number"?Ee(e,Te([48,2,t>>16&255,t>>8&255,t&255],49)):Ee(e,Te([48,2,ea(t.r),ea(t.g),ea(t.b)],49))}var v9=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function w9(e){return e.replace(v9,"")}var a0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},k9={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function r0(e,t){let n={...k9,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,r;for(let u=0;usetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),r=o}throw new a0(r,n.maxAttempts)}var bC=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var io=globalThis||(typeof window<"u"?window:self),A9=Object.create,o0=Object.defineProperty,D9=Object.getOwnPropertyDescriptor,L9=Object.getOwnPropertyNames,P9=Object.getPrototypeOf,M9=Object.prototype.hasOwnProperty,F9=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),_9=(e,t)=>{for(var n in t)o0(e,n,{get:t[n],enumerable:!0})},u0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of L9(t))!M9.call(e,r)&&r!==n&&o0(e,r,{get:()=>t[r],enumerable:!(a=D9(t,r))||a.enumerable});return e},B9=(e,t,n)=>(u0(e,t,"default"),n&&u0(n,t,"default")),yd=(e,t,n)=>(n=e!=null?A9(P9(e)):{},u0(t||!e||!e.__esModule?o0(n,"default",{value:e,enumerable:!0}):n,e)),Td=F9((e,t)=>{var n="Expected a function",a=NaN,r="[object Symbol]",u=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof io=="object"&&io&&io.Object===Object&&io,g=typeof self=="object"&&self&&self.Object===Object&&self,m=c||g||Function("return this")(),p=Object.prototype,f=p.toString,S=Math.max,v=Math.min,h=function(){return m.Date.now()};function k(x,b,E){var I,D,W,_,B,G,re=0,ye=!1,V=!1,ge=!0;if(typeof x!="function")throw new TypeError(n);b=w(b)||0,M(E)&&(ye=!!E.leading,V="maxWait"in E,W=V?S(w(E.maxWait)||0,b):W,ge="trailing"in E?!!E.trailing:ge);function de(ee){var ne=I,te=D;return I=D=void 0,re=ee,_=x.apply(te,ne),_}function C(ee){return re=ee,B=setTimeout(pe,b),ye?de(ee):_}function z(ee){var ne=ee-G,te=ee-re,oe=b-ne;return V?v(oe,W-te):oe}function Z(ee){var ne=ee-G,te=ee-re;return G===void 0||ne>=b||ne<0||V&&te>=W}function pe(){var ee=h();if(Z(ee))return se(ee);B=setTimeout(pe,z(ee))}function se(ee){return B=void 0,ge&&I?de(ee):(I=D=void 0,_)}function R(){B!==void 0&&clearTimeout(B),re=0,I=G=D=B=void 0}function O(){return B===void 0?_:se(h())}function ae(){var ee=h(),ne=Z(ee);if(I=arguments,D=this,G=ee,ne){if(B===void 0)return C(G);if(V)return B=setTimeout(pe,b),de(G)}return B===void 0&&(B=setTimeout(pe,b)),_}return ae.cancel=R,ae.flush=O,ae}function F(x,b,E){var I=!0,D=!0;if(typeof x!="function")throw new TypeError(n);return M(E)&&(I="leading"in E?!!E.leading:I,D="trailing"in E?!!E.trailing:D),k(x,b,{leading:I,maxWait:b,trailing:D})}function M(x){var b=typeof x;return!!x&&(b=="object"||b=="function")}function A(x){return!!x&&typeof x=="object"}function P(x){return typeof x=="symbol"||A(x)&&f.call(x)==r}function w(x){if(typeof x=="number")return x;if(P(x))return a;if(M(x)){var b=typeof x.valueOf=="function"?x.valueOf():x;x=M(b)?b+"":b}if(typeof x!="string")return x===0?x:+x;x=x.replace(u,"");var E=i.test(x);return E||s.test(x)?l(x.slice(2),E?2:8):o.test(x)?a:+x}t.exports=F}),Ed={};_9(Ed,{default:()=>At});var R9=yd(Td());B9(Ed,yd(Td()));var{default:bd,...I9}=R9,At=bd!==void 0?bd:I9;var O9=Object.create,s0=Object.defineProperty,N9=Object.getOwnPropertyDescriptor,U9=Object.getOwnPropertyNames,j9=Object.getPrototypeOf,z9=Object.prototype.hasOwnProperty,H9=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),W9=(e,t)=>{for(var n in t)s0(e,n,{get:t[n],enumerable:!0})},i0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of U9(t))!z9.call(e,r)&&r!==n&&s0(e,r,{get:()=>t[r],enumerable:!(a=N9(t,r))||a.enumerable});return e},$9=(e,t,n)=>(i0(e,t,"default"),n&&i0(n,t,"default")),Cd=(e,t,n)=>(n=e!=null?O9(j9(e)):{},i0(t||!e||!e.__esModule?s0(n,"default",{value:e,enumerable:!0}):n,e)),vd=H9((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(u){if(r[u])return r[u].exports;var o=r[u]={i:u,l:!1,exports:{}};return n[u].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var r={};return a.m=n,a.c=r,a.i=function(u){return u},a.d=function(u,o,i){a.o(u,o)||Object.defineProperty(u,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(u){var o=u&&u.__esModule?function(){return u.default}:function(){return u};return a.d(o,"a",o),o},a.o=function(u,o){return Object.prototype.hasOwnProperty.call(u,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(r){return r.webpackPolyfill||(r.deprecate=function(){},r.paths=[],r.children||(r.children=[]),Object.defineProperty(r,"loaded",{enumerable:!0,get:function(){return r.l}}),Object.defineProperty(r,"id",{enumerable:!0,get:function(){return r.i}}),r.webpackPolyfill=1),r}},function(n,a,r){"use strict";(function(u){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,g){l(a)==="object"&&l(u)==="object"?u.exports=g():(i=[],o=g,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(u.exports=s))})(void 0,function(){return function(c){function g(p){if(m[p])return m[p].exports;var f=m[p]={i:p,l:!1,exports:{}};return c[p].call(f.exports,f,f.exports,g),f.l=!0,f.exports}var m={};return g.m=c,g.c=m,g.i=function(p){return p},g.d=function(p,f,S){g.o(p,f)||Object.defineProperty(p,f,{configurable:!1,enumerable:!0,get:S})},g.n=function(p){var f=p&&p.__esModule?function(){return p.default}:function(){return p};return g.d(f,"a",f),f},g.o=function(p,f){return Object.prototype.hasOwnProperty.call(p,f)},g.p="",g(g.s=0)}([function(c,g,m){function p(C,z){var Z={};for(var pe in C)z.indexOf(pe)>=0||Object.prototype.hasOwnProperty.call(C,pe)&&(Z[pe]=C[pe]);return Z}Object.defineProperty(g,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(C){return typeof C>"u"?"undefined":l(C)}:function(C){return C&&typeof Symbol=="function"&&C.constructor===Symbol&&C!==Symbol.prototype?"symbol":typeof C>"u"?"undefined":l(C)},S=Object.assign||function(C){for(var z=1;z'+pe+"",te.onclick=function(){return D(oe,ne)},te.listener=function(Y){(b(Y)||E(Y))&&B()},I(te,ne),R&&R<1&&(R=1),!ae&&R&&M(R).then(function(){return D(oe,ne)})},re=g.force=function(C,z){var Z=C.type,pe=Z===void 0?5:Z,se=C.text,R=C.buttonText,O=R===void 0?"OK":R,ae=C.callback,ee=C.position,ne=ee===void 0?h.positions.force||ne.top:ee;A(),B();var te=document.createElement("div"),oe=P();te.id=oe;var Y=document.createElement("div");Y.classList.add(h.classes.textbox),Y.classList.add(h.classes.backgroundInfo),Y.innerHTML='
'+se+"
";var ce=document.createElement("div");ce.classList.add(h.classes.button),ce.classList.add(w[pe]),ce.innerHTML=O,ce.onclick=function(){D(oe,ne),_(),ae?ae():z&&z()},te.appendChild(Y),te.appendChild(ce),te.listener=function(Le){b(Le)&&ce.click()},I(te,ne),W()},ye=g.confirm=function(C,z,Z){var pe=C.text,se=C.submitText,R=se===void 0?"Yes":se,O=C.cancelText,ae=O===void 0?"Cancel":O,ee=C.submitCallback,ne=C.cancelCallback,te=C.position,oe=te===void 0?h.positions.confirm||oe.top:te;A(),B();var Y=document.createElement("div"),ce=P();Y.id=ce;var Le=document.createElement("div");Le.classList.add(h.classes.textbox),Le.classList.add(h.classes.backgroundInfo),Le.innerHTML='
'+pe+"
";var Ie=document.createElement("div");Ie.classList.add(h.classes.button),Ie.classList.add(h.classes.elementHalf),Ie.classList.add(h.classes.backgroundSuccess),Ie.innerHTML=R,Ie.onclick=function(){D(ce,oe),_(),ee?ee():z&&z()};var fe=document.createElement("div");fe.classList.add(h.classes.button),fe.classList.add(h.classes.elementHalf),fe.classList.add(h.classes.backgroundError),fe.innerHTML=ae,fe.onclick=function(){D(ce,oe),_(),ne?ne():Z&&Z()},Y.appendChild(Le),Y.appendChild(Ie),Y.appendChild(fe),Y.listener=function(Xe){b(Xe)?Ie.click():E(Xe)&&fe.click()},I(Y,oe),W(Y,oe)},V=function(C,z,Z){var pe=C.text,se=C.submitText,R=se===void 0?"Submit":se,O=C.cancelText,ae=O===void 0?"Cancel":O,ee=C.submitCallback,ne=C.cancelCallback,te=C.position,oe=te===void 0?h.positions.input||oe.top:te,Y=p(C,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);A(),B();var ce=document.createElement("div"),Le=P();ce.id=Le;var Ie=document.createElement("div");Ie.classList.add(h.classes.textbox),Ie.classList.add(h.classes.backgroundInfo),Ie.innerHTML='
'+pe+"
";var fe=document.createElement("input");fe.classList.add(h.classes.inputField),fe.setAttribute("autocapitalize",Y.autocapitalize||"none"),fe.setAttribute("autocomplete",Y.autocomplete||"off"),fe.setAttribute("autocorrect",Y.autocorrect||"off"),fe.setAttribute("autofocus",Y.autofocus||"true"),fe.setAttribute("inputmode",Y.inputmode||"verbatim"),fe.setAttribute("max",Y.max||""),fe.setAttribute("maxlength",Y.maxlength||""),fe.setAttribute("min",Y.min||""),fe.setAttribute("minlength",Y.minlength||""),fe.setAttribute("placeholder",Y.placeholder||""),fe.setAttribute("spellcheck",Y.spellcheck||"default"),fe.setAttribute("step",Y.step||"any"),fe.setAttribute("type",Y.type||"text"),fe.value=Y.value||"",Y.allowed&&(fe.oninput=function(){var We=void 0;if(Array.isArray(Y.allowed)){for(var $e="",qe=Y.allowed,Ht=0;Ht'+Z+"",ne.appendChild(oe),O.forEach(function(ce,Le){var Ie=ce.type,fe=Ie===void 0?1:Ie,Xe=ce.text,pt=ce.handler,We=document.createElement("div");We.classList.add(w[fe]),We.classList.add(h.classes.button),We.classList.add(h.classes.selectChoice);var $e=O[Le+1];$e&&!$e.type&&($e.type=1),$e&&$e.type===fe&&We.classList.add(h.classes.selectChoiceRepeated),We.innerHTML=Xe,We.onclick=function(){D(te,ee),_(),pt()},ne.appendChild(We)});var Y=document.createElement("div");Y.classList.add(h.classes.backgroundNeutral),Y.classList.add(h.classes.button),Y.innerHTML=se,Y.onclick=function(){D(te,ee),_(),R?R():z&&z()},ne.appendChild(Y),ne.listener=function(ce){E(ce)&&Y.click()},I(ne,ee),W(ne,ee)},de=g.date=function(C,z,Z){var pe=C.value,se=pe===void 0?new Date:pe,R=C.submitText,O=R===void 0?"OK":R,ae=C.cancelText,ee=ae===void 0?"Cancel":ae,ne=C.submitCallback,te=C.cancelCallback,oe=C.position,Y=oe===void 0?h.positions.date||Y.top:oe;A(),B();var ce="▾",Le=document.createElement("div"),Ie=document.createElement("div"),fe=document.createElement("div"),Xe=function(Pe){Le.innerHTML=h.dateMonths[Pe.getMonth()],Ie.innerHTML=Pe.getDate(),fe.innerHTML=Pe.getFullYear()},pt=function(Pe){var Be=new Date(se.getFullYear(),se.getMonth()+1,0).getDate(),Gt=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Gt)>Be&&(Gt=Be.toString()),Pe.target.textContent=Gt,Number(Gt)<1&&(Gt="1"),se.setDate(Number(Gt))},We=function(Pe){var Be=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);Pe.target.textContent=Be,se.setFullYear(Number(Be))},$e=function(Pe){Xe(se)},qe=function(Pe){var Be=new Date(se.getFullYear(),se.getMonth()+Pe+1,0).getDate();se.getDate()>Be&&se.setDate(Be),se.setMonth(se.getMonth()+Pe),Xe(se)},Ht=function(Pe){se.setDate(se.getDate()+Pe),Xe(se)},Jn=function(Pe){var Be=se.getFullYear()+Pe;Be<0?se.setFullYear(0):se.setFullYear(se.getFullYear()+Pe),Xe(se)},Ze=document.createElement("div"),vn=P();Ze.id=vn;var dn=document.createElement("div");dn.classList.add(h.classes.backgroundInfo);var ft=document.createElement("div");ft.classList.add(h.classes.dateSelectorInner);var Vt=document.createElement("div");Vt.classList.add(h.classes.button),Vt.classList.add(h.classes.elementThird),Vt.classList.add(h.classes.dateSelectorUp),Vt.innerHTML=ce;var U=document.createElement("div");U.classList.add(h.classes.button),U.classList.add(h.classes.elementThird),U.classList.add(h.classes.dateSelectorUp),U.innerHTML=ce;var me=document.createElement("div");me.classList.add(h.classes.button),me.classList.add(h.classes.elementThird),me.classList.add(h.classes.dateSelectorUp),me.innerHTML=ce,Le.classList.add(h.classes.element),Le.classList.add(h.classes.elementThird),Le.innerHTML=h.dateMonths[se.getMonth()],Ie.classList.add(h.classes.element),Ie.classList.add(h.classes.elementThird),Ie.setAttribute("contentEditable",!0),Ie.addEventListener("input",pt),Ie.addEventListener("blur",$e),Ie.innerHTML=se.getDate(),fe.classList.add(h.classes.element),fe.classList.add(h.classes.elementThird),fe.setAttribute("contentEditable",!0),fe.addEventListener("input",We),fe.addEventListener("blur",$e),fe.innerHTML=se.getFullYear();var _e=document.createElement("div");_e.classList.add(h.classes.button),_e.classList.add(h.classes.elementThird),_e.innerHTML=ce;var Se=document.createElement("div");Se.classList.add(h.classes.button),Se.classList.add(h.classes.elementThird),Se.innerHTML=ce;var De=document.createElement("div");De.classList.add(h.classes.button),De.classList.add(h.classes.elementThird),De.innerHTML=ce,Vt.onclick=function(){return qe(1)},U.onclick=function(){return Ht(1)},me.onclick=function(){return Jn(1)},_e.onclick=function(){return qe(-1)},Se.onclick=function(){return Ht(-1)},De.onclick=function(){return Jn(-1)};var Ge=document.createElement("div");Ge.classList.add(h.classes.button),Ge.classList.add(h.classes.elementHalf),Ge.classList.add(h.classes.backgroundSuccess),Ge.innerHTML=O,Ge.onclick=function(){D(vn,Y),_(),ne?ne(se):z&&z(se)};var Et=document.createElement("div");Et.classList.add(h.classes.button),Et.classList.add(h.classes.elementHalf),Et.classList.add(h.classes.backgroundError),Et.innerHTML=ee,Et.onclick=function(){D(vn,Y),_(),te?te(se):Z&&Z(se)},ft.appendChild(Vt),ft.appendChild(U),ft.appendChild(me),ft.appendChild(Le),ft.appendChild(Ie),ft.appendChild(fe),ft.appendChild(_e),ft.appendChild(Se),ft.appendChild(De),dn.appendChild(ft),Ze.appendChild(dn),Ze.appendChild(Ge),Ze.appendChild(Et),Ze.listener=function(Pe){b(Pe)?Ge.click():E(Pe)&&Et.click()},I(Ze,Y),W(Ze,Y)};g.default={alert:G,force:re,confirm:ye,input:V,select:ge,date:de,setOptions:k,hideAlerts:B}}])})}).call(a,r(0)(n))}])})}),wd={};W9(wd,{default:()=>so});var q9=Cd(vd());$9(wd,Cd(vd()));var{default:xd,...K9}=q9,so=xd!==void 0?xd:K9;var l0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function c0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function Ld(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function V9(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,r=!0,u=0;u=0&&He.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&He.splice(0,He.length),(t===93||t===224)&&(t=91),t in xt){xt[t]=!1;for(var a in Sn)Sn[a]===t&&(Ne[a]=!1)}}function n6(e){if(typeof e>"u")Object.keys(it).forEach(function(o){return delete it[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&d0(o)});else if(typeof e=="object")e.key&&d0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?Ld(Sn,s):[];it[g]=it[g].filter(function(p){var f=a?p.method===a:!0;return!(f&&p.scope===n&&V9(p.mods,m))})}})};function Sd(e,t,n,a){if(t.element===a){var r;if(t.scope===n||t.scope==="all"){r=t.mods.length>0;for(var u in xt)Object.prototype.hasOwnProperty.call(xt,u)&&(!xt[u]&&t.mods.indexOf(+u)>-1||xt[u]&&t.mods.indexOf(+u)===-1)&&(r=!1);(t.mods.length===0&&!xt[16]&&!xt[18]&&!xt[17]&&!xt[91]||r||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Ad(e,t){var n=it["*"],a=e.keyCode||e.which||e.charCode;if(Ne.filter.call(this,e)){if((a===93||a===224)&&(a=91),He.indexOf(a)===-1&&a!==229&&He.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var S=m0[f];e[f]&&He.indexOf(S)===-1?He.push(S):!e[f]&&He.indexOf(S)>-1?He.splice(He.indexOf(S),1):f==="metaKey"&&e[f]&&He.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(He=He.slice(He.indexOf(S))))}),a in xt){xt[a]=!0;for(var r in Sn)Sn[r]===a&&(Ne[r]=!0);if(!n)return}for(var u in xt)Object.prototype.hasOwnProperty.call(xt,u)&&(xt[u]=e[m0[u]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(He.indexOf(17)===-1&&He.push(17),He.indexOf(18)===-1&&He.push(18),xt[17]=!0,xt[18]=!0);var o=ou();if(n)for(var i=0;i-1}function Ne(e,t,n){He=[];var a=Pd(e),r=[],u="all",o=document,i=0,s=!1,l=!0,c="+",g=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(u=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(g=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(u=t);i1&&(r=Ld(Sn,e)),e=e[e.length-1],e=e==="*"?"*":co(e),e in it||(it[e]=[]),it[e].push({keyup:s,keydown:l,scope:u,mods:r,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!a6(o)&&window&&(Fd.push(o),c0(o,"keydown",function(m){Ad(m,o)},g),kd||(kd=!0,c0(window,"focus",function(){He=[]},g)),c0(o,"keyup",function(m){Ad(m,o),t6(m)},g))}function r6(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(it).forEach(function(n){var a=it[n].filter(function(r){return r.scope===t&&r.shortcut===e});a.forEach(function(r){r&&r.method&&r.method()})})}var g0={getPressedKeyString:X9,setScope:_d,getScope:ou,deleteScope:e6,getPressedKeyCodes:Y9,isPressed:Q9,filter:Z9,trigger:r6,unbind:n6,keyMap:uu,modifier:Sn,modifierMap:m0};for(lo in g0)Object.prototype.hasOwnProperty.call(g0,lo)&&(Ne[lo]=g0[lo]);var lo;typeof document<"u"&&(Dd=window.hotkeys,Ne.noConflict=function(e){return e&&window.hotkeys===Ne&&(window.hotkeys=Dd),Ne},window.hotkeys=Ne);var Dd;var u6=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},o6=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new u6:{reset:()=>{},stop:()=>{}}}},p0=new o6,i6="poegempjloogba",s6="ension://",l6="me-";function iu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function Ud(e){return e?e.PROD==="1":!0}function jd(e){return e?e.MOCK==="1":!1}function zd(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var c6="rome-ext";function d6(e,t){return t?e+(t-e%t):e}function g6(e,t){return e.split(t).length-1}function m6(e){let t=Date.now(),n=1;for(let a of e)n+=g6(a,"i");return d6(t,n)}function p6(e,t){return Math.floor(Math.random()*(t-e+1))+e}var f6="extension",h6="chro";function b6(){return p6(1e6,1e8)}var Bd="BrowserExt";function y6(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var Rd="DeepL",Id="ension",T6="ch"+c6+s6+"cofdb"+i6+"gkncekinflcnj";function Hd(e){let{contentType:t,userAgent:n,url:a,authorization:r,clientVersion:u}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),r&&i.append("authorization",`Bearer ${r}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",T6),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${Rd}${Bd}${Id}/${u||"1.1.1"} ${l}`)}else i.append("user-agent",`${Rd}${Bd}${Id}/${u||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function E6(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:r}=e,u={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:r||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:m6(n)},id:b6()},o=Hd({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${h6+l6+f6},${t}`,headers:o,body:y6(u),method:"POST"}}function x6(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Aa={},Da={};async function Od(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u}=n,[o,i]=iu(r);i||(i=iu(u)[1]);let s={refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u||new Date().toISOString()};o||(s=await go(e,t));let[l,c]=iu(s.refreshTokenExpiresAt);i=c,i||(i=iu(s.refreshTokenChecksAt)[1]);let g=s.refreshToken;if(Aa[g])return new Promise((m,p)=>{Aa[g].push((f,S)=>{f?p(f):m(S)})});Aa[g]=[];try{let m=await C6(g,t.onFetch),p={state:{...n,...s,...m},shouldUpdateRefreshToken:i};return Aa[g].forEach(f=>{f(null,p)}),delete Aa[g],p}catch(m){throw Aa[g].forEach(p=>{p(m)}),delete Aa[g],m}}async function go(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Da[e])return new Promise((r,u)=>{Da[e].push((o,i)=>{o?u(o):r(i)})});try{Da[e]=[];let r=new URLSearchParams({grant_type:"auth_key",auth_key:e}),u=new URL("/refresh_token?"+r.toString(),n),o=await a(u.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return Da[e].forEach(g=>{g(null,c)}),delete Da[e],c}catch(r){throw Da[e].forEach(u=>{u(r)}),delete Da[e],r}}async function C6(e,t){if(!e)throw new Error("refreshToken is required");let n=Ud(),a=jd();if(!n&&!a){await zd(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let r="https://w.deepl.com/oidc/token",u=await t(r,{headers:Hd({url:r,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=x6(u.access_token);if(u.expires_in){let i=new Date,s=new Date(i.getTime()+u.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function Nd(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),r=a.getAll("text");if(r.length<1)throw new Error("No text to translate");if(v6(r)>5e3)throw new Error("text too long, the max length is 5000 characters.");let u=a.get("target_lang");if(!u)throw new Error("No target language");let o=a.get("source_lang"),i={...E6({texts:r,authorization:e,target_lang:u,source_lang:o}),responseType:"raw"},s=Ud(),l=jd();if(!s&&!l)return await zd(50),{translations:r.map(p=>({text:"mock: "+p,detected_source_language:"EN"}))};let c=await n(i.url,i),g=JSON.parse(c.body),m=[];if(g.result&&g.result.texts)m=g.result.texts.map(p=>({text:p.text,detected_source_language:g.result.lang}));else throw new Error("No response from deepl api");return{translations:m}}function v6(e){let t=0;for(let n of e)t+=n.length;return t}async function w6(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let r=await k6(t,a);if(r.ok&&r.status>=200&&r.status<400)if(n==="json"){let u=await r.json();return p0.debug("response",JSON.stringify(u,null,2)),u}else{if(n==="text")return await r.text();if(n==="raw"){let u=await r.text(),o=Object.fromEntries([...r.headers.entries()]),i=r.url;return{body:u,headers:o,status:r.status,statusText:r.statusText,url:i}}}else{let u;try{u=await r.text()}catch(o){p0.error("parse response failed",o)}throw new Error(r.status+": "+r.statusText||" "+u||"")}}async function k6(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,r=setTimeout(()=>a.abort(),n),u=await fetch(e,{...t,signal:a.signal});return clearTimeout(r),u}var mo=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>w6({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((u,o)=>{a.append("text",u)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let r=await Nd(this.state.accessToken,a.toString(),this.onFetch);if(r&&r.translations&&r.translations.length>0)return Array.isArray(e)?r.translations.map(u=>({text:u.text,detectedSourceLanguage:u.detected_source_language})):{text:r.translations[0].text,detectedSourceLanguage:r.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await Nd(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw p0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=iu(e);if(t)n&&Od(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:r})=>{this.setState({...this.state,...a}),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:r}=await Od(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})}).catch(u=>{})}catch(a){this.onFetchTokenError(a)}}};var S6={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},$d={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},et={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},Rt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},ta={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},N=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=N.getVersionPrecision(e),r=N.getVersionPrecision(t),u=Math.max(a,r),o=0,i=N.map([e,t],s=>{let l=u-N.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return N.map(c.split("."),g=>new Array(20-g.length).join("0")+g).reverse()});for(n&&(o=u-Math.min(a,r)),u-=1;u>=o;){if(i[0][u]>i[1][u])return 1;if(i[0][u]===i[1][u]){if(u===o)return 0;u-=1}else if(i[0][u]{n[o]=u[o]})}return e}static getBrowserAlias(e){return S6[e]}static getBrowserTypeByAlias(e){return $d[e]||""}},je=/version\/(\d+(\.?_?\d+)+)/i,A6=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=N.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=N.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=N.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=N.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=N.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=N.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=N.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=N.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=N.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=N.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=N.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=N.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=N.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=N.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=N.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=N.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=N.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=N.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=N.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=N.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=N.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=N.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=N.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=N.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=N.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=N.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=N.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:N.getFirstMatch(a,e),version:N.getSecondMatch(a,e)}}}],D6=A6,L6=[{test:[/Roku\/DVP/],describe(e){let t=N.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:Rt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=N.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:Rt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=N.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=N.getWindowsVersionName(t);return{name:Rt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:Rt.iOS},n=N.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=N.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=N.getMacOSVersionName(t),a={name:Rt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=N.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:Rt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=N.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=N.getAndroidVersionName(t),a={name:Rt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=N.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:Rt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=N.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||N.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||N.getFirstMatch(/\bbb(\d+)/i,e);return{name:Rt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=N.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:Rt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=N.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:Rt.Linux}}},{test:[/CrOS/],describe(){return{name:Rt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=N.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.PlayStation4,version:t}}}],P6=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=N.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:et.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:et.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:et.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:et.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:et.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=N.getFirstMatch(/(ipod|iphone)/i,e);return{type:et.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:et.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:et.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:et.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:et.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:et.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:et.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:et.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:et.tv}}}],M6=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:ta.Blink};let t=N.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:ta.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:ta.Trident},n=N.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:ta.Presto},n=N.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:ta.Gecko},n=N.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:ta.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:ta.WebKit},n=N.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],F6=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=N.find(D6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=N.find(L6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=N.find(P6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=N.find(M6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return N.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},r=0;if(Object.keys(e).forEach(u=>{let o=e[u];typeof o=="string"?(a[u]=o,r+=1):typeof o=="object"&&(t[u]=o,n+=1)}),n>0){let u=Object.keys(t),o=N.find(u,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=N.find(u,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(r>0){let u=Object.keys(a),o=N.find(u,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),r=N.getBrowserTypeByAlias(a);return t&&r&&(a=r.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,r=this.getBrowserVersion();if(typeof r=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(N.compareVersions(r,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Wd=F6,_6=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Wd(e,t)}static parse(e){return new Wd(e).getResult()}static get BROWSER_MAP(){return $d}static get ENGINE_MAP(){return ta}static get OS_MAP(){return Rt}static get PLATFORMS_MAP(){return et}},po=_6;var{entries:Zd,setPrototypeOf:qd,isFrozen:B6,getPrototypeOf:R6,getOwnPropertyDescriptor:I6}=Object,{freeze:It,seal:pn,create:O6}=Object,{apply:E0,construct:x0}=typeof Reflect<"u"&&Reflect;E0||(E0=function(e,t,n){return e.apply(t,n)});It||(It=function(e){return e});pn||(pn=function(e){return e});x0||(x0=function(e,t){return new e(...t)});var N6=nn(Array.prototype.forEach),Kd=nn(Array.prototype.pop),su=nn(Array.prototype.push),bo=nn(String.prototype.toLowerCase),f0=nn(String.prototype.toString),U6=nn(String.prototype.match),mn=nn(String.prototype.replace),j6=nn(String.prototype.indexOf),z6=nn(String.prototype.trim),Yt=nn(RegExp.prototype.test),lu=H6(TypeError);function nn(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r/gm),V6=pn(/\${[\w\W]*}/gm),G6=pn(/^data-[\-\w.\u00B7-\uFFFF]/),J6=pn(/^aria-[\-\w]+$/),Qd=pn(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Y6=pn(/^(?:\w+script|data):/i),X6=pn(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),eg=pn(/^html$/i),Xd=Object.freeze({__proto__:null,MUSTACHE_EXPR:q6,ERB_EXPR:K6,TMPLIT_EXPR:V6,DATA_ATTR:G6,ARIA_ATTR:J6,IS_ALLOWED_URI:Qd,IS_SCRIPT_OR_DATA:Y6,ATTR_WHITESPACE:X6,DOCTYPE_NAME:eg}),Z6=()=>typeof window>"u"?null:window,Q6=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let r="dompurify"+(n?"#"+n:"");try{return e.createPolicy(r,{createHTML(u){return u},createScriptURL(u){return u}})}catch{return null}};function tg(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Z6(),t=T=>tg(T);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:r}=e,{DocumentFragment:u,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:g,DOMParser:m,trustedTypes:p}=e,f=s.prototype,S=fo(f,"cloneNode"),v=fo(f,"nextSibling"),h=fo(f,"childNodes"),k=fo(f,"parentNode");if(typeof o=="function"){let T=r.createElement("template");T.content&&T.content.ownerDocument&&(r=T.content.ownerDocument)}let F,M="",{implementation:A,createNodeIterator:P,createDocumentFragment:w,getElementsByTagName:x}=r,{importNode:b}=n,E={};t.isSupported=typeof Zd=="function"&&typeof k=="function"&&A&&A.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:I,ERB_EXPR:D,TMPLIT_EXPR:W,DATA_ATTR:_,ARIA_ATTR:B,IS_SCRIPT_OR_DATA:G,ATTR_WHITESPACE:re}=Xd,{IS_ALLOWED_URI:ye}=Xd,V=null,ge=Ae({},[...Vd,...h0,...b0,...y0,...Gd]),de=null,C=Ae({},[...Jd,...T0,...Yd,...ho]),z=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Z=null,pe=null,se=!0,R=!0,O=!1,ae=!0,ee=!1,ne=!1,te=!1,oe=!1,Y=!1,ce=!1,Le=!1,Ie=!0,fe=!1,Xe="user-content-",pt=!0,We=!1,$e={},qe=null,Ht=Ae({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Jn=null,Ze=Ae({},["audio","video","img","source","image","track"]),vn=null,dn=Ae({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ft="http://www.w3.org/1998/Math/MathML",Vt="http://www.w3.org/2000/svg",U="http://www.w3.org/1999/xhtml",me=U,_e=!1,Se=null,De=Ae({},[ft,Vt,U],f0),Ge,Et=["application/xhtml+xml","text/html"],Pe="text/html",Be,Gt=null,dh=r.createElement("form"),Vc=function(T){return T instanceof RegExp||T instanceof Function},Es=function(T){if(!(Gt&&Gt===T)){if((!T||typeof T!="object")&&(T={}),T=nr(T),Ge=Et.indexOf(T.PARSER_MEDIA_TYPE)===-1?Ge=Pe:Ge=T.PARSER_MEDIA_TYPE,Be=Ge==="application/xhtml+xml"?f0:bo,V="ALLOWED_TAGS"in T?Ae({},T.ALLOWED_TAGS,Be):ge,de="ALLOWED_ATTR"in T?Ae({},T.ALLOWED_ATTR,Be):C,Se="ALLOWED_NAMESPACES"in T?Ae({},T.ALLOWED_NAMESPACES,f0):De,vn="ADD_URI_SAFE_ATTR"in T?Ae(nr(dn),T.ADD_URI_SAFE_ATTR,Be):dn,Jn="ADD_DATA_URI_TAGS"in T?Ae(nr(Ze),T.ADD_DATA_URI_TAGS,Be):Ze,qe="FORBID_CONTENTS"in T?Ae({},T.FORBID_CONTENTS,Be):Ht,Z="FORBID_TAGS"in T?Ae({},T.FORBID_TAGS,Be):{},pe="FORBID_ATTR"in T?Ae({},T.FORBID_ATTR,Be):{},$e="USE_PROFILES"in T?T.USE_PROFILES:!1,se=T.ALLOW_ARIA_ATTR!==!1,R=T.ALLOW_DATA_ATTR!==!1,O=T.ALLOW_UNKNOWN_PROTOCOLS||!1,ae=T.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ee=T.SAFE_FOR_TEMPLATES||!1,ne=T.WHOLE_DOCUMENT||!1,Y=T.RETURN_DOM||!1,ce=T.RETURN_DOM_FRAGMENT||!1,Le=T.RETURN_TRUSTED_TYPE||!1,oe=T.FORCE_BODY||!1,Ie=T.SANITIZE_DOM!==!1,fe=T.SANITIZE_NAMED_PROPS||!1,pt=T.KEEP_CONTENT!==!1,We=T.IN_PLACE||!1,ye=T.ALLOWED_URI_REGEXP||Qd,me=T.NAMESPACE||U,z=T.CUSTOM_ELEMENT_HANDLING||{},T.CUSTOM_ELEMENT_HANDLING&&Vc(T.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(z.tagNameCheck=T.CUSTOM_ELEMENT_HANDLING.tagNameCheck),T.CUSTOM_ELEMENT_HANDLING&&Vc(T.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(z.attributeNameCheck=T.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),T.CUSTOM_ELEMENT_HANDLING&&typeof T.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(z.allowCustomizedBuiltInElements=T.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ee&&(R=!1),ce&&(Y=!0),$e&&(V=Ae({},[...Gd]),de=[],$e.html===!0&&(Ae(V,Vd),Ae(de,Jd)),$e.svg===!0&&(Ae(V,h0),Ae(de,T0),Ae(de,ho)),$e.svgFilters===!0&&(Ae(V,b0),Ae(de,T0),Ae(de,ho)),$e.mathMl===!0&&(Ae(V,y0),Ae(de,Yd),Ae(de,ho))),T.ADD_TAGS&&(V===ge&&(V=nr(V)),Ae(V,T.ADD_TAGS,Be)),T.ADD_ATTR&&(de===C&&(de=nr(de)),Ae(de,T.ADD_ATTR,Be)),T.ADD_URI_SAFE_ATTR&&Ae(vn,T.ADD_URI_SAFE_ATTR,Be),T.FORBID_CONTENTS&&(qe===Ht&&(qe=nr(qe)),Ae(qe,T.FORBID_CONTENTS,Be)),pt&&(V["#text"]=!0),ne&&Ae(V,["html","head","body"]),V.table&&(Ae(V,["tbody"]),delete Z.tbody),T.TRUSTED_TYPES_POLICY){if(typeof T.TRUSTED_TYPES_POLICY.createHTML!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof T.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');F=T.TRUSTED_TYPES_POLICY,M=F.createHTML("")}else F===void 0&&(F=Q6(p,a)),F!==null&&typeof M=="string"&&(M=F.createHTML(""));It&&It(T),Gt=T}},Gc=Ae({},["mi","mo","mn","ms","mtext"]),Jc=Ae({},["foreignobject","desc","title","annotation-xml"]),gh=Ae({},["title","style","font","a","script"]),zu=Ae({},h0);Ae(zu,b0),Ae(zu,W6);let xs=Ae({},y0);Ae(xs,$6);let mh=function(T){let Q=k(T);(!Q||!Q.tagName)&&(Q={namespaceURI:me,tagName:"template"});let $=bo(T.tagName),Re=bo(Q.tagName);return Se[T.namespaceURI]?T.namespaceURI===Vt?Q.namespaceURI===U?$==="svg":Q.namespaceURI===ft?$==="svg"&&(Re==="annotation-xml"||Gc[Re]):!!zu[$]:T.namespaceURI===ft?Q.namespaceURI===U?$==="math":Q.namespaceURI===Vt?$==="math"&&Jc[Re]:!!xs[$]:T.namespaceURI===U?Q.namespaceURI===Vt&&!Jc[Re]||Q.namespaceURI===ft&&!Gc[Re]?!1:!xs[$]&&(gh[$]||!zu[$]):!!(Ge==="application/xhtml+xml"&&Se[T.namespaceURI]):!1},Ja=function(T){su(t.removed,{element:T});try{T.parentNode.removeChild(T)}catch{T.remove()}},Cs=function(T,Q){try{su(t.removed,{attribute:Q.getAttributeNode(T),from:Q})}catch{su(t.removed,{attribute:null,from:Q})}if(Q.removeAttribute(T),T==="is"&&!de[T])if(Y||ce)try{Ja(Q)}catch{}else try{Q.setAttribute(T,"")}catch{}},Yc=function(T){let Q,$;if(oe)T=""+T;else{let Bt=U6(T,/^[\r\n\t ]+/);$=Bt&&Bt[0]}Ge==="application/xhtml+xml"&&me===U&&(T=''+T+"");let Re=F?F.createHTML(T):T;if(me===U)try{Q=new m().parseFromString(Re,Ge)}catch{}if(!Q||!Q.documentElement){Q=A.createDocument(me,"template",null);try{Q.documentElement.innerHTML=_e?M:Re}catch{}}let ct=Q.body||Q.documentElement;return T&&$&&ct.insertBefore(r.createTextNode($),ct.childNodes[0]||null),me===U?x.call(Q,ne?"html":"body")[0]:ne?Q.documentElement:ct},Xc=function(T){return P.call(T.ownerDocument||T,T,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},ph=function(T){return T instanceof g&&(typeof T.nodeName!="string"||typeof T.textContent!="string"||typeof T.removeChild!="function"||!(T.attributes instanceof c)||typeof T.removeAttribute!="function"||typeof T.setAttribute!="function"||typeof T.namespaceURI!="string"||typeof T.insertBefore!="function"||typeof T.hasChildNodes!="function")},Hu=function(T){return typeof i=="object"?T instanceof i:T&&typeof T=="object"&&typeof T.nodeType=="number"&&typeof T.nodeName=="string"},On=function(T,Q,$){E[T]&&N6(E[T],Re=>{Re.call(t,Q,$,Gt)})},Zc=function(T){let Q;if(On("beforeSanitizeElements",T,null),ph(T))return Ja(T),!0;let $=Be(T.nodeName);if(On("uponSanitizeElement",T,{tagName:$,allowedTags:V}),T.hasChildNodes()&&!Hu(T.firstElementChild)&&(!Hu(T.content)||!Hu(T.content.firstElementChild))&&Yt(/<[/\w]/g,T.innerHTML)&&Yt(/<[/\w]/g,T.textContent))return Ja(T),!0;if(!V[$]||Z[$]){if(!Z[$]&&e4($)&&(z.tagNameCheck instanceof RegExp&&Yt(z.tagNameCheck,$)||z.tagNameCheck instanceof Function&&z.tagNameCheck($)))return!1;if(pt&&!qe[$]){let Re=k(T)||T.parentNode,ct=h(T)||T.childNodes;if(ct&&Re){let Bt=ct.length;for(let Wt=Bt-1;Wt>=0;--Wt)Re.insertBefore(S(ct[Wt],!0),v(T))}}return Ja(T),!0}return T instanceof s&&!mh(T)||($==="noscript"||$==="noembed")&&Yt(/<\/no(script|embed)/i,T.innerHTML)?(Ja(T),!0):(ee&&T.nodeType===3&&(Q=T.textContent,Q=mn(Q,I," "),Q=mn(Q,D," "),Q=mn(Q,W," "),T.textContent!==Q&&(su(t.removed,{element:T.cloneNode()}),T.textContent=Q)),On("afterSanitizeElements",T,null),!1)},Qc=function(T,Q,$){if(Ie&&(Q==="id"||Q==="name")&&($ in r||$ in dh))return!1;if(!(R&&!pe[Q]&&Yt(_,Q))&&!(se&&Yt(B,Q))){if(!de[Q]||pe[Q]){if(!(e4(T)&&(z.tagNameCheck instanceof RegExp&&Yt(z.tagNameCheck,T)||z.tagNameCheck instanceof Function&&z.tagNameCheck(T))&&(z.attributeNameCheck instanceof RegExp&&Yt(z.attributeNameCheck,Q)||z.attributeNameCheck instanceof Function&&z.attributeNameCheck(Q))||Q==="is"&&z.allowCustomizedBuiltInElements&&(z.tagNameCheck instanceof RegExp&&Yt(z.tagNameCheck,$)||z.tagNameCheck instanceof Function&&z.tagNameCheck($))))return!1}else if(!vn[Q]&&!Yt(ye,mn($,re,""))&&!((Q==="src"||Q==="xlink:href"||Q==="href")&&T!=="script"&&j6($,"data:")===0&&Jn[T])&&!(O&&!Yt(G,mn($,re,"")))&&$)return!1}return!0},e4=function(T){return T.indexOf("-")>0},t4=function(T){let Q,$,Re,ct;On("beforeSanitizeAttributes",T,null);let{attributes:Bt}=T;if(!Bt)return;let Wt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:de};for(ct=Bt.length;ct--;){Q=Bt[ct];let{name:ht,namespaceURI:Ya}=Q;if($=ht==="value"?Q.value:z6(Q.value),Re=Be(ht),Wt.attrName=Re,Wt.attrValue=$,Wt.keepAttr=!0,Wt.forceKeepAttr=void 0,On("uponSanitizeAttribute",T,Wt),$=Wt.attrValue,Wt.forceKeepAttr||(Cs(ht,T),!Wt.keepAttr))continue;if(!ae&&Yt(/\/>/i,$)){Cs(ht,T);continue}ee&&($=mn($,I," "),$=mn($,D," "),$=mn($,W," "));let n4=Be(T.nodeName);if(Qc(n4,Re,$)){if(fe&&(Re==="id"||Re==="name")&&(Cs(ht,T),$=Xe+$),F&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!Ya)switch(p.getAttributeType(n4,Re)){case"TrustedHTML":{$=F.createHTML($);break}case"TrustedScriptURL":{$=F.createScriptURL($);break}}try{Ya?T.setAttributeNS(Ya,ht,$):T.setAttribute(ht,$),Kd(t.removed)}catch{}}}On("afterSanitizeAttributes",T,null)},fh=function T(Q){let $,Re=Xc(Q);for(On("beforeSanitizeShadowDOM",Q,null);$=Re.nextNode();)On("uponSanitizeShadowNode",$,null),!Zc($)&&($.content instanceof u&&T($.content),t4($));On("afterSanitizeShadowDOM",Q,null)};return t.sanitize=function(T){let Q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},$,Re,ct,Bt;if(_e=!T,_e&&(T=""),typeof T!="string"&&!Hu(T))if(typeof T.toString=="function"){if(T=T.toString(),typeof T!="string")throw lu("dirty is not a string, aborting")}else throw lu("toString is not a function");if(!t.isSupported)return T;if(te||Es(Q),t.removed=[],typeof T=="string"&&(We=!1),We){if(T.nodeName){let Ya=Be(T.nodeName);if(!V[Ya]||Z[Ya])throw lu("root node is forbidden and cannot be sanitized in-place")}}else if(T instanceof i)$=Yc(""),Re=$.ownerDocument.importNode(T,!0),Re.nodeType===1&&Re.nodeName==="BODY"||Re.nodeName==="HTML"?$=Re:$.appendChild(Re);else{if(!Y&&!ee&&!ne&&T.indexOf("<")===-1)return F&&Le?F.createHTML(T):T;if($=Yc(T),!$)return Y?null:Le?M:""}$&&oe&&Ja($.firstChild);let Wt=Xc(We?T:$);for(;ct=Wt.nextNode();)Zc(ct)||(ct.content instanceof u&&fh(ct.content),t4(ct));if(We)return T;if(Y){if(ce)for(Bt=w.call($.ownerDocument);$.firstChild;)Bt.appendChild($.firstChild);else Bt=$;return(de.shadowroot||de.shadowrootmod)&&(Bt=b.call(n,Bt,!0)),Bt}let ht=ne?$.outerHTML:$.innerHTML;return ne&&V["!doctype"]&&$.ownerDocument&&$.ownerDocument.doctype&&$.ownerDocument.doctype.name&&Yt(eg,$.ownerDocument.doctype.name)&&(ht=" -`+ht),ee&&(ht=mn(ht,I," "),ht=mn(ht,D," "),ht=mn(ht,W," ")),F&&Le?F.createHTML(ht):ht},t.setConfig=function(T){Es(T),te=!0},t.clearConfig=function(){Gt=null,te=!1},t.isValidAttribute=function(T,Q,$){Gt||Es({});let Re=Be(T),ct=Be(Q);return Qc(Re,ct,$)},t.addHook=function(T,Q){typeof Q=="function"&&(E[T]=E[T]||[],su(E[T],Q))},t.removeHook=function(T){if(E[T])return Kd(E[T])},t.removeHooks=function(T){E[T]&&(E[T]=[])},t.removeAllHooks=function(){E={}},t}var Oe=tg();var C0=so.alert;var ng={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u641C\u7D22\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u8C37\u6B4C\u7528\u4E2D\u6587\u641C\u7D22\u65F6\uFF0C\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u641C\u7D22\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u5728\u8C37\u6B4C\u641C\u7D22\u91CC\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u641C\u7D22\u7ED3\u679C\u4F1A\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u641C\u7D22\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var ag={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var rg={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var a1=[{code:"zh-CN",messages:ng},{code:"zh-TW",messages:ag},{code:"en",messages:rg}],fn="immersiveTranslateDeeplGlobalState",yo="immersiveTranslateBingGlobalState",an={};for(let e of a1)an[e.code]=e.messages;var La="Immersive Translate",X="immersive-translate";var xe="immersiveTranslate",To="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",An=xe+"GoogleAccessToken",cu=xe+"AuthFlow",Eo="immersive-translate-config-latest.json",v0=xe+"AuthState",xo=xe+"IframeMessage",F5=xe+"WaitForRateLimit",og=xe+"DocumentMessageAsk",Ot=xe+"DocumentMessageTellThirdParty",ig=xe+"DocumentMessageThirdPartyTell",sg=xe+"DocumentMessageHandler",r1=`${xe}Container`,lg=`${xe}SpecifiedContainer`,Un="buildinConfig",ar="localConfig",du="openOptionsPage",w0="openAboutPage",cg="translateLocalPdfFile";var gu="openEbookViewer",mu="openEbookBuilder";var Co=`${xe}PageTranslatedStatus`,_5=`${xe}PageUrlChanged`,na=`${xe}ReceiveCommand`,dg=xe+"LastUseMouseHoverTime",gg=xe+"LastUseInputTime",jn=xe+"LastUseManualTranslatePageTime",B5=`${xe}PopupReceiveMessage`,u1="immersivetranslate.com",o1="config.immersivetranslate.com",R5=`https://${u1}/`,aa=`https://${o1}/default_config.json`,I5=`${xe}Mark`,pu="immersiveTranslateEffect",$t=`${xe}Root`,O5=`data-${X}-effect`,Dn=`data-${X}-translation-element-mark`,mg=`${xe}TranslationElementMark`,N5=`${xe}TranslatedMark`,U5=`${xe}ParagraphId`,pg=`${xe}LoadingId`,k0=`data-${X}-loading-id`,fg=`${xe}ErrorId`,vo=`data-${X}-error-id`,i1=`${xe}AtomicBlockMark`,hg=`${xe}ExcludeMark`,j5=`data-${X}-exclude-mark`,s1=`${xe}StayOriginalMark`,z5=`${xe}PreWhitespaceMark`,wo=`${xe}InlineMark`,bg=`${xe}BlockMark`,H5=`${xe}Left`,W5=`${xe}Right`,$5=`${xe}Width`,q5=`${xe}Height`,K5=`${xe}Top`,V5=`${xe}FontSize`,yg="lastRunTime",G5=`${xe}GlobalStyleMark`,ko=["@","#"],So=" --- ",Tg=` -`,rn=`${X}-target-wrapper`,J5=`${X}-pdf-target-container`,Eg=`${X}-target-inner`,Y5=`${X}-source-wrapper`,S0=`${X}-target-translation-block-wrapper`,X5=`${X}-root-translation-theme`,rr=`${xe}RootTranslationTheme`,xg=`${X}-target-translation-vertical-block-wrapper`,Cg=`${X}-target-translation-pdf-block-wrapper`,vg=`${X}-target-translation-pre-whitespace`,A0=`${X}-target-translation-inline-wrapper`,D0=["none","dashed","underline","dashedBorder","solidBorder","mask","opacity","dotted","dividingLine","highlight","marker","marker2","blockquote","weakening","grey","paper","italic","bold","thinDashed","wavy","nativeDotted","nativeDashed","nativeUnderline"],fu={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Xt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],wg={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},kg={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},Sg={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var Ag=["toggleTranslatePage","toggleTranslateTheWholePage","toggleOnlyTransation","toggleTranslateToThePageEndImmediately","toggleTranslateTheMainPage","toggleTranslationMask"],Dg=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"],Lg="Night gathers, and now my watch begins. It shall not end until my death. I shall take no wife, hold no lands, father no children. I shall wear no crowns and win no glory. I shall live and die at my post.",L0="\u957F\u591C\u5C06\u81F3\uFF0C\u6211\u4ECE\u4ECA\u5F00\u59CB\u5B88\u671B\uFF0C\u81F3\u6B7B\u65B9\u4F11\u3002\u6211\u5C06\u4E0D\u5A36\u59BB\u3001\u4E0D\u5C01\u5730\u3001\u4E0D\u751F\u5B50\u3002\u6211\u5C06\u4E0D\u6234\u5B9D\u51A0\uFF0C\u4E0D\u4E89\u8363\u5BA0\u3002\u6211\u5C06\u5C3D\u5FE0\u804C\u5B88\uFF0C\u751F\u6B7B\u4E8E\u65AF\u3002",Ao="zh-CN",Do="https://immersivetranslate.com/docs/communities/",ug=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],hn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,OPTIONS_URL:"https://dash.immersivetranslate.com/",EBOOK_VIEWER_URL:"https://app.immersivetranslate.com/ebook/",EBOOK_BUILDER_URL:"https://app.immersivetranslate.com/ebook/make/",SUBTITLE_BUILDER_URL:"https://app.immersivetranslate.com/subtitle/",HTML_VIEWER_URL:"https://app.immersivetranslate.com/html/",MOCK:"0",DEBUG:"0",IMMERSIVE_TRANSLATE_USERSCRIPT:"1",INSTALL_FROM:"official_userscript"};(function(){function e(u){let o=document.getElementById(`immersive-translate-${u}-storage`);if(!o)throw new Error("Storage element not found");let i=o.value,s={};if(i)try{s=JSON.parse(i)}catch(l){throw l}return s}function t(u){return{get:i=>{if(i===null)return Promise.resolve(e(u));let s=[],l=e(u);typeof i=="string"?s=[i]:Array.isArray(i)?s=i:s=Object.keys(i);let c={};for(let g of s)c[g]=l[g];return Promise.resolve(c)},set:i=>{let s=n(),l=e(u);for(let m in i)l[m]=i[m];let c=document.getElementById("immersive-translate-sync-storage"),g=document.getElementById("immersive-translate-local-storage");if(!c||!g)throw new Error("Storage element not found");if(u==="sync"||s._isUserscript){c.value=JSON.stringify(l);let m=new Event("change");c.dispatchEvent(m)}return(u==="local"||s._isUserscript)&&(g.value=JSON.stringify(l),g.dispatchEvent(new Event("change"))),Promise.resolve()},remove:i=>{let s=n(),l=document.getElementById("immersive-translate-message");if(!l)throw new Error("Message element not found");let c={method:"removeStorageKey",data:{area:u,keys:i}};return new Promise((g,m)=>{l.value=JSON.stringify(c);let p=new Event("change");l.dispatchEvent(p),s._isUserscript?setTimeout(()=>{l.value=JSON.stringify({...c,data:{...c.data,area:c.data.area==="sync"?"local":"sync"}}),l.dispatchEvent(new Event("change")),g(null)},10):g(null)})}}}function n(){let u=document.getElementById("immersive-translate-manifest");if(!u)throw new Error("Manifest element not found");let o=u.value,i={};if(o){try{i=JSON.parse(o)}catch(s){throw s}return i}else return{}}function a(){return globalThis.navigator.languages||[globalThis.navigator.language||globalThis.navigator.userLanguage]}let r={storage:{local:t("local"),sync:t("sync")},runtime:{getManifest:n,lastError:null,getURL:u=>u},contextMenus:{update:()=>{}},i18n:{getAcceptLanguages:a}};globalThis.immersiveTranslateBrowserAPI=r})();var Gu,we,p4,kh,Gr,c4,f4,qu={},h4=[],Sh=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Yn(e,t){for(var n in t)e[n]=t[n];return e}function b4(e){var t=e.parentNode;t&&t.removeChild(e)}function Ss(e,t,n){var a,r,u,o={};for(u in t)u=="key"?a=t[u]:u=="ref"?r=t[u]:o[u]=t[u];if(arguments.length>2&&(o.children=arguments.length>3?Gu.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(u in e.defaultProps)o[u]===void 0&&(o[u]=e.defaultProps[u]);return Wu(e,o,a,r,null)}function Wu(e,t,n,a,r){var u={type:e,props:t,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:r??++p4};return r==null&&we.vnode!=null&&we.vnode(u),u}function rt(e){return e.children}function $u(e,t){this.props=e,this.context=t}function Xa(e,t){if(t==null)return e.__?Xa(e.__,e.__.__k.indexOf(e)+1):null;for(var n;t0?Wu(p.type,p.props,p.key,p.ref?p.ref:null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(m=h[c])===null||m&&p.key==m.key&&p.type===m.type)h[c]=void 0;else for(g=0;g=n.__.length&&n.__.push({__V:Yu}),n.__[e]}function H(e){return Jr=1,Ph(R4,e)}function Ph(e,t,n){var a=Zu(Yr++,2);if(a.t=e,!a.__c&&(a.__=[n?n(t):R4(void 0,t),function(u){var o=a.__N?a.__N[0]:a.__[0],i=a.t(o,u);o!==i&&(a.__N=[i,a.__[1]],a.__c.setState({}))}],a.__c=Qe,!Qe.u)){Qe.u=!0;var r=Qe.shouldComponentUpdate;Qe.shouldComponentUpdate=function(u,o,i){if(!a.__c.__H)return!0;var s=a.__c.__H.__.filter(function(c){return c.__c});if(s.every(function(c){return!c.__N}))return!r||r.call(this,u,o,i);var l=!1;return s.forEach(function(c){if(c.__N){var g=c.__[0];c.__=c.__N,c.__N=void 0,g!==c.__[0]&&(l=!0)}}),!!l&&(!r||r.call(this,u,o,i))}}return a.__N||a.__}function ke(e,t){var n=Zu(Yr++,3);!we.__s&&B4(n.__H,t)&&(n.__=e,n.i=t,Qe.__H.__h.push(n))}function kn(e){return Jr=5,_4(function(){return{current:e}},[])}function _4(e,t){var n=Zu(Yr++,7);return B4(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function Xn(e,t){return Jr=8,_4(function(){return e},t)}function Qu(e){var t=Qe.context[e.__c],n=Zu(Yr++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(Qe)),t.props.value):e.__}function Mh(){for(var e;e=F4.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Xu),e.__H.__h.forEach(Ls),e.__H.__h=[]}catch(t){e.__H.__h=[],we.__e(t,e.__v)}}we.__b=function(e){typeof e.type!="function"||e.o||e.type===rt?e.o||(e.o=e.__&&e.__.o?e.__.o:""):e.o=(e.__&&e.__.o?e.__.o:"")+(e.__&&e.__.__k?e.__.__k.indexOf(e):0),Qe=null,S4&&S4(e)},we.__r=function(e){A4&&A4(e),Yr=0;var t=(Qe=e.__c).__H;t&&(Ds===Qe?(t.__h=[],Qe.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=Yu,n.__N=n.i=void 0})):(t.__h.forEach(Xu),t.__h.forEach(Ls),t.__h=[])),Ds=Qe},we.diffed=function(e){D4&&D4(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(F4.push(t)!==1&&k4===we.requestAnimationFrame||((k4=we.requestAnimationFrame)||Fh)(Mh)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==Yu&&(n.__=n.__V),n.i=void 0,n.__V=Yu})),Ds=Qe=null},we.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Xu),n.__h=n.__h.filter(function(a){return!a.__||Ls(a)})}catch(a){t.some(function(r){r.__h&&(r.__h=[])}),t=[],we.__e(a,n.__v)}}),L4&&L4(e,t)},we.unmount=function(e){P4&&P4(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(a){try{Xu(a)}catch(r){t=r}}),n.__H=void 0,t&&we.__e(t,n.__v))};var M4=typeof requestAnimationFrame=="function";function Fh(e){var t,n=function(){clearTimeout(a),M4&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(n,100);M4&&(t=requestAnimationFrame(n))}function Xu(e){var t=Qe,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),Qe=t}function Ls(e){var t=Qe;e.__c=e.__(),Qe=t}function B4(e,t){return!e||e.length!==t.length||t.some(function(n,a){return n!==e[a]})}function R4(e,t){return typeof t=="function"?t(e):t}var Xr;function zs(e){return[...e.v,(e.i?"!":"")+e.n].join(":")}function q4(e,t=","){return e.map(zs).join(t)}var Hs=typeof CSS<"u"&&CSS.escape||(e=>e.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function Za(e){for(var t=9,n=e.length;n--;)t=Math.imul(t^e.charCodeAt(n),1597334677);return"#"+((t^t>>>9)>>>0).toString(36)}function to(e,t="@media "){return t+Ue(e).map(n=>(typeof n=="string"&&(n={min:n}),n.raw||Object.keys(n).map(a=>`(${a}-width:${n[a]})`).join(" and "))).join(",")}function Ue(e=[]){return Array.isArray(e)?e:e==null?[]:[e]}function I4(e){return e}function Qr(){}var ut={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function K4(e){return e.match(/[-=:;]/g)?.length||0}function Rs(e){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(e)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(K4(e),15)<<18}var _h=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function Ws({n:e,i:t,v:n=[]},a,r,u){e&&(e=zs({n:e,i:t,v:n})),u=[...Ue(u)];for(let i of n){let s=a.theme("screens",i);for(let l of Ue(s&&to(s)||a.v(i))){var o;u.push(l),r|=s?67108864|Rs(l):i=="dark"?1073741824:l[0]=="@"?Rs(l):(o=l,1<<~(/:([a-z-]+)/.test(o)&&~_h.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:e,p:r,r:u,i:t}}var $s=new Map;function Is(e){if(e.d){let t=[],n=Ps(e.r.reduce((a,r)=>r[0]=="@"?(t.push(r),a):r?Ps(a,u=>Ps(r,o=>{let i=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(i){let s=u.indexOf(i[1]);return~s?u.slice(0,s)+i[0]+u.slice(s+i[1].length):Ms(u,o)}return Ms(o,u)})):a,"&"),a=>Ms(a,e.n?"."+Hs(e.n):""));return n&&t.push(n.replace(/:merge\((.+?)\)/g,"$1")),t.reduceRight((a,r)=>r+"{"+a+"}",e.d)}}function Ps(e,t){return e.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(n,a,r)=>t(a)+r)}function Ms(e,t){return e.replace(/&/g,t)}var O4=new Intl.Collator("en",{numeric:!0});function V4(e,t){for(var n=0,a=e.length;n>1;0>=G4(e[r],t)?n=r+1:a=r}return a}function G4(e,t){let n=e.p&ut.o;return n==(t.p&ut.o)&&(n==ut.b||n==ut.o)?0:e.p-t.p||e.o-t.o||O4.compare(N4(e.n),N4(t.n))||O4.compare(U4(e.n),U4(t.n))}function N4(e){return(e||"").split(/:/).pop().split("/").pop()||"\0"}function U4(e){return(e||"").replace(/\W/g,t=>String.fromCharCode(127+t.charCodeAt(0)))+"\0"}function Fs(e,t){return Math.round(parseInt(e,16)*t)}function Nn(e,t={}){if(typeof e=="function")return e(t);let{opacityValue:n="1",opacityVariable:a}=t,r=a?`var(${a})`:n;if(e.includes(""))return e.replace("",r);if(e[0]=="#"&&(e.length==4||e.length==7)){let u=(e.length-1)/3,o=[17,1,.062272][u-1];return`rgba(${[Fs(e.substr(1,u),o),Fs(e.substr(1+u,u),o),Fs(e.substr(1+2*u,u),o),r]})`}return r=="1"?e:r=="0"?"#0000":e.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${r})`)}function qs(e,t,n,a,r=[]){return function u(o,{n:i,p:s,r:l=[],i:c},g){let m=[],p="",f=0,S=0;for(let k in o||{}){var v,h;let F=o[k];if(k[0]=="@"){if(!F)continue;if(k[1]=="a"){m.push(...Gs(i,s,Zr(""+F),g,s,l,c,!0));continue}if(k[1]=="l"){for(let M of Ue(F))m.push(...u(M,{n:i,p:(v=ut[k[7]],s&~ut.o|v),r:k[7]=="d"?[]:l,i:c},g));continue}if(k[1]=="i"){m.push(...Ue(F).map(M=>({p:-1,o:0,r:[],d:k+" "+M})));continue}if(k[1]=="k"){m.push({p:ut.d,o:0,r:[k],d:u(F,{p:ut.d},g).map(Is).join("")});continue}if(k[1]=="f"){m.push(...Ue(F).map(M=>({p:ut.d,o:0,r:[k],d:u(M,{p:ut.d},g).map(Is).join("")})));continue}}if(typeof F!="object"||Array.isArray(F))k=="label"&&F?i=F+Za(JSON.stringify([s,c,o])):(F||F===0)&&(k=k.replace(/[A-Z]/g,M=>"-"+M.toLowerCase()),S+=1,f=Math.max(f,(h=k)[0]=="-"?0:K4(h)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(h)?+!!RegExp.$1||-!!RegExp.$2:0)+1),p+=(p?";":"")+Ue(F).map(M=>g.s(k,Ks(""+M,g.theme)+(c?" !important":""))).join(";"));else if(k[0]=="@"||k.includes("&")){let M=s;k[0]=="@"&&(k=k.replace(/\bscreen\(([^)]+)\)/g,(D,P)=>{let w=g.theme("screens",P);return w?(M|=67108864,to(w,"")):D}),M|=Rs(k)),m.push(...u(F,{n:i,p:M,r:[...l,k],i:c},g))}else m.push(...u(F,{p:s,r:[...l,k]},g))}return m.unshift({n:i,p:s,o:Math.max(0,15-S)+1.5*Math.min(f||15,15),r:l,d:p}),m.sort(G4)}(e,Ws(t,n,a,r),n)}function Ks(e,t){return e.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(n,a,r,u,o="")=>{let i=t(r,o);return typeof i=="function"&&/color|fill|stroke/i.test(r)?Nn(i):""+Ue(i).filter(s=>Object(s)!==s)})}function Vs(e,t){let n,a=[];for(let r of e)r.d&&r.n?n?.p==r.p&&""+n.r==""+r.r?(n.c=[n.c,r.c].filter(Boolean).join(" "),n.d=n.d+";"+r.d):a.push(n={...r,n:r.n&&t}):a.push({...r,n:r.n&&t});return a}function eo(e,t,n=ut.u,a,r){let u=[];for(let o of e)for(let i of function(s,l,c,g,m){s={...s,i:s.i||m};let p=function(f,S){let v=$s.get(f.n);return v?v(f,S):S.r(f.n,f.v[0]=="dark")}(s,l);return p?typeof p=="string"?({r:g,p:c}=Ws(s,l,c,g),Vs(eo(Zr(p),l,c,g,s.i),s.n)):Array.isArray(p)?p.map(f=>{var S,v;return{o:0,...f,r:[...Ue(g),...Ue(f.r)],p:(S=c,v=f.p??c,S&~ut.o|v)}}):qs(p,s,l,c,g):[{c:zs(s),p:0,o:0,r:[]}]}(o,t,n,a,r))u.splice(V4(u,i),0,i);return u}function Gs(e,t,n,a,r,u,o,i){return Vs((i?n.flatMap(s=>eo([s],a,r,u,o)):eo(n,a,r,u,o)).map(s=>s.p&ut.o&&(s.n||t==ut.b)?{...s,p:s.p&~ut.o|t,o:0}:s),e)}function Bh(e,t,n,a){var r;return r=(u,o)=>{let{n:i,p:s,r:l,i:c}=Ws(u,o,t);return n&&Gs(i,t,n,o,s,l,c,a)},$s.set(e,r),e}function _s(e,t,n){if(e[e.length-1]!="("){let a=[],r=!1,u=!1,o="";for(let i of e)if(!(i=="("||/[~@]$/.test(i))){if(i[0]=="!"&&(i=i.slice(1),r=!r),i.endsWith(":")){a[i=="dark:"?"unshift":"push"](i.slice(0,-1));continue}i[0]=="-"&&(i=i.slice(1),u=!u),i.endsWith("-")&&(i=i.slice(0,-1)),i&&i!="&"&&(o+=(o&&"-")+i)}o&&(u&&(o="-"+o),t[0].push({n:o,v:a.filter(Rh),i:r}))}}function Rh(e,t,n){return n.indexOf(e)==t}var j4=new Map;function Zr(e){let t=j4.get(e);if(!t){let n=[],a=[[]],r=0,u=0,o=null,i=0,s=(l,c=0)=>{r!=i&&(n.push(e.slice(r,i+c)),l&&_s(n,a)),r=i+1};for(;i1?g.slice(0,-1)+Za(JSON.stringify([g,m])):g+"("+q4(m)+")",ut.a,m,/@$/.test(g))],a)}c=n.lastIndexOf("(",c-1)}n.length=c+1}else/[~@]/.test(l)&&e[i+1]=="("&&a.unshift([])}s(!0),j4.set(e,t=a[0])}return t}function J4(e,t,n){return t.reduce((a,r,u)=>a+n(r)+e[u+1],e[0])}function Y4(e,t){return Array.isArray(e)&&Array.isArray(e.raw)?J4(e,t,n=>Bs(n).trim()):t.filter(Boolean).reduce((n,a)=>n+Bs(a),e?Bs(e):"")}function Bs(e){let t,n="";if(e&&typeof e=="object")if(Array.isArray(e))(t=Y4(e[0],e.slice(1)))&&(n+=" "+t);else for(let a in e)e[a]&&(n+=" "+a);else e!=null&&typeof e!="boolean"&&(n+=" "+e);return n}var JE=X4("@"),YE=X4("~");function X4(e){return new Proxy(function(n,...a){return t("",n,a)},{get(n,a){return a in n?n[a]:function(r,...u){return t(a,r,u)}}});function t(n,a,r){return q4(Zr(n+e+"("+Y4(a,r)+")"))}}function Os(e,t){return Array.isArray(e)?z4(J4(e,t,n=>n!=null&&typeof n!="boolean"?n:"")):typeof e=="string"?z4(e):[e]}var Ih=/ *(?:(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}))/g;function z4(e){let t;e=e.replace(/\/\*[^]*?\*\/|\s\s+|\n/gm," ");let n=[{}],a=[n[0]],r=[];for(;t=Ih.exec(e);)t[4]&&(n.shift(),r.shift()),t[3]?(r.unshift(t[3]),n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))):t[4]||(n[0][t[1]]&&(n.unshift({}),a.push(r.reduce((u,o)=>({[o]:u}),n[0]))),n[0][t[1]]=t[2]);return a}function Z4(e,...t){var n;let a=Os(e,t),r=(a.find(u=>u.label)?.label||"css")+Za(JSON.stringify(a));return n=(u,o)=>Vs(a.flatMap(i=>qs(i,u,o,ut.o)),r),$s.set(r,n),r}var XE=new Proxy(function(e,t){return H4("animation",e,t)},{get(e,t){return t in e?e[t]:function(n,a){return H4(t,n,a)}}});function H4(e,t,n){return{toString(){return Z4({label:e,"@layer components":{...typeof t=="object"?t:{animation:t},animationName:""+n}})}}}function q(e,t,n){return[e,Ns(t,n)]}function Ns(e,t){return typeof e=="function"?e:typeof e=="string"&&/^[\w-]+$/.test(e)?(n,a)=>({[e]:t?t(n,a):Us(n,1)}):n=>e||{[n[1]]:Us(n,2)}}function Us(e,t,n=e.slice(t).find(Boolean)||e.$$||e.input){return e.input[0]=="-"?`calc(${n} * -1)`:n}function K(e,t,n,a){return[e,Oh(t,n,a)]}function Oh(e,t,n){let a=typeof t=="string"?(r,u)=>({[t]:n?n(r,u):r._}):t||(({1:r,_:u},o,i)=>({[r||i]:u}));return(r,u)=>{let o=Q4(e||r[1]),i=u.theme(o,r.$$)??Sn(r.$$,o,u);if(i!=null)return r._=Us(r,0,i),a(r,u,o)}}function dt(e,t={},n){return[e,Nh(t,n)]}function Nh(e={},t){return(n,a)=>{let{section:r=Q4(n[0]).replace("-","")+"Color"}=e,[u,o]=Uh(n.$$);if(!u)return;let i=a.theme(r,u)||Sn(u,r,a);if(!i||typeof i=="object")return;let{opacityVariable:s=`--tw-${n[0].replace(/-$/,"")}-opacity`,opacitySection:l=r.replace("Color","Opacity"),property:c=r,selector:g}=e,m=a.theme(l,o||"DEFAULT")||o&&Sn(o,l,a),p=t||(({_:S})=>{let v=eu(c,S);return g?{[g]:v}:v});n._={value:Nn(i,{opacityVariable:s||void 0,opacityValue:m||void 0}),color:S=>Nn(i,S),opacityVariable:s||void 0,opacityValue:m||void 0};let f=p(n,a);if(!n.dark){let S=a.d(r,u,i);S&&S!==i&&(n._={value:Nn(S,{opacityVariable:s||void 0,opacityValue:m||"1"}),color:v=>Nn(S,v),opacityVariable:s||void 0,opacityValue:m||void 0},f={"&":f,[a.v("dark")]:p(n,a)})}return f}}function Uh(e){return(e.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function eu(e,t){let n={};return typeof t=="string"?n[e]=t:(t.opacityVariable&&t.value.includes(t.opacityVariable)&&(n[t.opacityVariable]=t.opacityValue||"1"),n[e]=t.value),n}function Sn(e,t,n){if(e[0]=="["&&e.slice(-1)=="]"){if(e=Qa(Ks(e.slice(1,-1),n.theme)),!t)return e;if(!(/color|fill|stroke/i.test(t)&&!(/^color:/.test(e)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(e))||/image/i.test(t)&&!(/^image:/.test(e)||/^[a-z-]+\(/.test(e))||/weight/i.test(t)&&!(/^(number|any):/.test(e)||/^\d+$/.test(e))||/position/i.test(t)&&/^(length|size):/.test(e)))return e.replace(/^[a-z-]+:/,"")}}function Q4(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function Qa(e){return e.includes("url(")?e.replace(/(.*?)(url\(.*?\))(.*?)/g,(t,n="",a,r="")=>Qa(n)+a+Qa(r)):e.replace(/(^|[^\\])_+/g,(t,n)=>n+" ".repeat(t.length-n.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,t=>t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}var ZE=Symbol();function tu({presets:e=[],...t}){let n={darkMode:void 0,darkColor:void 0,preflight:t.preflight!==!1&&[],theme:{},variants:Ue(t.variants),rules:Ue(t.rules),ignorelist:Ue(t.ignorelist),hash:void 0,stringify:(a,r)=>a+":"+r,finalize:[]};for(let a of Ue([...e,{darkMode:t.darkMode,darkColor:t.darkColor,preflight:t.preflight!==!1&&Ue(t.preflight),theme:t.theme,hash:t.hash,stringify:t.stringify,finalize:t.finalize}])){let{preflight:r,darkMode:u=n.darkMode,darkColor:o=n.darkColor,theme:i,variants:s,rules:l,ignorelist:c,hash:g=n.hash,stringify:m=n.stringify,finalize:p}=typeof a=="function"?a(n):a;n={preflight:n.preflight!==!1&&r!==!1&&[...n.preflight,...Ue(r)],darkMode:u,darkColor:o,theme:{...n.theme,...i,extend:{...n.theme.extend,...i?.extend}},variants:[...n.variants,...Ue(s)],rules:[...n.rules,...Ue(l)],ignorelist:[...n.ignorelist,...Ue(c)],hash:g,stringify:m,finalize:[...n.finalize,...Ue(p)]}}return n}function W4(e,t,n,a,r,u){for(let o of t){let i=n.get(o);i||n.set(o,i=a(o));let s=i(e,r,u);if(s)return s}}function jh(e){var t;return js(e[0],typeof(t=e[1])=="function"?t:()=>t)}function zh(e){var t,n;return Array.isArray(e)?js(e[0],Ns(e[1],e[2])):js(e,Ns(t,n))}function js(e,t){return ed(e,(n,a,r,u)=>{let o=a.exec(n);if(o)return o.$$=n.slice(o[0].length),o.dark=u,t(o,r)})}function ed(e,t){let n=Ue(e).map(Hh);return(a,r,u)=>{for(let o of n){let i=t(a,o,r,u);if(i)return i}}}function Hh(e){return typeof e=="string"?RegExp("^"+e+(e.includes("$")||e.slice(-1)=="-"?"":"$")):e}function Wh(e,t){let n=tu(e),a=function({theme:s,darkMode:l,darkColor:c=Qr,variants:g,rules:m,hash:p,stringify:f,ignorelist:S,finalize:v}){let h=new Map,k=new Map,F=new Map,M=new Map,D=ed(S,(x,b)=>b.test(x));g.push(["dark",Array.isArray(l)||l=="class"?`${Ue(l)[1]||".dark"} &`:typeof l=="string"&&l!="media"?l:"@media (prefers-color-scheme:dark)"]);let P=typeof p=="function"?x=>p(x,Za):p?Za:I4;P!==I4&&v.push(x=>({...x,n:x.n&&P(x.n),d:x.d?.replace(/--(tw(?:-[\w-]+)?)\b/g,(b,E)=>"--"+P(E).replace("#",""))}));let w={theme:function({extend:x={},...b}){let E={},I={get colors(){return L("colors")},theme:L,negative(){return{}},breakpoints(_){let B={};for(let G in _)typeof _[G]=="string"&&(B["screen-"+G]=_[G]);return B}};return L;function L(_,B,G,re){if(_){if({1:_,2:re}=/^(\S+?)(?:\s*\/\s*([^/]+))?$/.exec(_)||[,_],/[.[]/.test(_)){let de=[];_.replace(/\[([^\]]+)\]|([^.[]+)/g,(C,z,Z=z)=>de.push(Z)),_=de.shift(),G=B,B=de.join("-")}let V=E[_]||Object.assign(Object.assign(E[_]={},W(b,_)),W(x,_));if(B==null)return V;B||="DEFAULT";let ge=V[B]??B.split("-").reduce((de,C)=>de?.[C],V)??G;return re?Nn(ge,{opacityValue:Ks(re,L)}):ge}let ye={};for(let V of[...Object.keys(b),...Object.keys(x)])ye[V]=L(V);return ye}function W(_,B){let G=_[B];return typeof G=="function"&&(G=G(I)),G&&/color|fill|stroke/i.test(B)?function re(ye,V=[]){let ge={};for(let de in ye){let C=ye[de],z=[...V,de];ge[z.join("-")]=C,de=="DEFAULT"&&(z=V,ge[V.join("-")]=C),typeof C=="object"&&Object.assign(ge,re(C,z))}return ge}(G):G}}(s),e:Hs,h:P,s(x,b){return f(x,b,w)},d(x,b,E){return c(x,b,w,E)},v(x){return h.has(x)||h.set(x,W4(x,g,k,jh,w)||"&:"+x),h.get(x)},r(x,b){let E=JSON.stringify([x,b]);return F.has(E)||F.set(E,!D(x,w)&&W4(x,m,M,zh,w,b)),F.get(E)},f(x){return v.reduce((b,E)=>E(b,w),x)}};return w}(n),r=new Map,u=[],o=new Set;t.resume(s=>r.set(s,s),(s,l)=>{t.insert(s,u.length,l),u.push(l),o.add(s)});function i(s){let l=a.f(s),c=Is(l);if(c&&!o.has(c)){o.add(c);let g=V4(u,s);t.insert(c,g,s),u.splice(g,0,s)}return l.n}return Object.defineProperties(function(s){if(!r.size)for(let c of Ue(n.preflight))typeof c=="function"&&(c=c(a)),c&&(typeof c=="string"?Gs("",ut.b,Zr(c),a,ut.b,[],!1,!0):qs(c,{},a,ut.b)).forEach(i);s=""+s;let l=r.get(s);if(!l){let c=new Set;for(let g of eo(Zr(s),a))c.add(g.c).add(i(g));l=[...c].filter(Boolean).join(" "),r.set(s,l).set(l,l)}return l},Object.getOwnPropertyDescriptors({get target(){return t.target},theme:a.theme,config:n,snapshot(){let s=t.snapshot(),l=new Set(o),c=new Map(r),g=[...u];return()=>{s(),o=l,r=c,u=g}},clear(){t.clear(),o=new Set,r=new Map,u=[]},destroy(){this.clear(),t.destroy()}}))}function $h(e,t){return e!=t&&""+e.split(" ").sort()!=""+t.split(" ").sort()}function qh(e){let t=new MutationObserver(n);return{observe(r){t.observe(r,{attributeFilter:["class"],subtree:!0,childList:!0}),a(r),n([{target:r,type:""}])},disconnect(){t.disconnect()}};function n(r){for(let{type:u,target:o}of r)if(u[0]=="a")a(o);else for(let i of o.querySelectorAll("[class]"))a(i);t.takeRecords()}function a(r){let u,o=r.getAttribute?.("class");o&&$h(o,u=e(o))&&r.setAttribute("class",u)}}function Kh(e=Js,t=typeof document<"u"&&document.documentElement){if(t){let n=qh(e);n.observe(t);let{destroy:a}=e;e.destroy=()=>{n.disconnect(),a.call(e)}}return e}function td(e){let t=document.querySelector(e||'style[data-twind=""]');return(!t||t.tagName!="STYLE")&&(t=document.createElement("style"),document.head.prepend(t)),t.dataset.twind="claimed",t}function Vh(e){let t=e?.cssRules?e:(e&&typeof e!="string"?e:td(e)).sheet;return{target:t,snapshot(){let n=Array.from(t.cssRules,a=>a.cssText);return()=>{this.clear(),n.forEach(this.insert)}},clear(){for(let n=t.cssRules.length;n--;)t.deleteRule(n)},destroy(){t.ownerNode?.remove()},insert(n,a){try{t.insertRule(n,a)}catch{t.insertRule(":root{}",a)}},resume:Qr}}function Gh(e){let t=e&&typeof e!="string"?e:td(e);return{target:t,snapshot(){let n=Array.from(t.childNodes,a=>a.textContent);return()=>{this.clear(),n.forEach(this.insert)}},clear(){t.textContent=""},destroy(){t.remove()},insert(n,a){t.insertBefore(document.createTextNode(n),t.childNodes[a]||null)},resume:Qr}}function Jh(e){let t=[];return{target:t,snapshot(){let n=[...t];return()=>{t.splice(0,t.length,...n)}},clear(){t.length=0},destroy(){this.clear()},insert(n,a,r){t.splice(a,0,e?`/*!${r.p.toString(36)},${(2*r.o).toString(36)}${r.n?","+r.n:""}*/${n}`:n)},resume:Qr}}function nd(e,t){let n=typeof document>"u"?Jh(!t):e?Gh():Vh();return t||(n.resume=Xh),n}function Yh(e){return(e.ownerNode||e).textContent||(e.cssRules?Array.from(e.cssRules,t=>t.cssText):Ue(e)).join("")}function Xh(e,t){let n=Yh(this.target),a=/\/\*!([\da-z]+),([\da-z]+)(?:,(.+?))?\*\//g;if(a.test(n)){var r;let u;if(a.lastIndex=0,this.clear(),typeof document<"u")for(let o of document.querySelectorAll("[class]"))e(o.getAttribute("class"));for(;r=a.exec(n),u&&t(n.slice(u.index+u[0].length,r?.index),{p:parseInt(u[1],36),o:parseInt(u[2],36)/2,n:u[3]}),u=r;);}}var Js=new Proxy(Qr,{apply(e,t,n){return Xr(n[0])},get(e,t){let n=Xr[t];return typeof n=="function"?function(){return n.apply(Xr,arguments)}:n}});function ad(e={},t=nd,n){return Xr?.destroy(),Xr=Kh(Wh(e,typeof t=="function"?t():t),n)}function Ys(e,t=!0){let n=tu(e);return ad({...n,hash:n.hash??t},()=>nd(!t))}var QE=function e(t){return new Proxy(function(n,...a){return $4(t,"",n,a)},{get(n,a){return a==="bind"?e:a in n?n[a]:function(r,...u){return $4(t,a,r,u)}}})}();function $4(e,t,n,a){return{toString(){let r=Os(n,a),u=Hs(t+Za(JSON.stringify([t,r])));return(typeof e=="function"?e:Js)(Z4({[`@keyframes ${u}`]:Os(n,a)})),u}}}var Zh=new Map([["align-self","-ms-grid-row-align"],["color-adjust","-webkit-print-color-adjust"],["column-gap","grid-column-gap"],["forced-color-adjust","-ms-high-contrast-adjust"],["gap","grid-gap"],["grid-template-columns","-ms-grid-columns"],["grid-template-rows","-ms-grid-rows"],["justify-self","-ms-grid-column-align"],["margin-inline-end","-webkit-margin-end"],["margin-inline-start","-webkit-margin-start"],["mask-border","-webkit-mask-box-image"],["mask-border-outset","-webkit-mask-box-image-outset"],["mask-border-slice","-webkit-mask-box-image-slice"],["mask-border-source","-webkit-mask-box-image-source"],["mask-border-repeat","-webkit-mask-box-image-repeat"],["mask-border-width","-webkit-mask-box-image-width"],["overflow-wrap","word-wrap"],["padding-inline-end","-webkit-padding-end"],["padding-inline-start","-webkit-padding-start"],["print-color-adjust","color-adjust"],["row-gap","grid-row-gap"],["scroll-margin-bottom","scroll-snap-margin-bottom"],["scroll-margin-left","scroll-snap-margin-left"],["scroll-margin-right","scroll-snap-margin-right"],["scroll-margin-top","scroll-snap-margin-top"],["scroll-margin","scroll-snap-margin"],["text-combine-upright","-ms-text-combine-horizontal"]]);function rd(e){return Zh.get(e)}function ud(e){var t=/^(?:(text-(?:decoration$|e|or|si)|back(?:ground-cl|d|f)|box-d|mask(?:$|-[ispro]|-cl)|pr|hyphena|flex-d)|(tab-|column(?!-s)|text-align-l)|(ap)|u|hy)/i.exec(e);return t?t[1]?1:t[2]?2:t[3]?3:5:0}function od(e,t){var n=/^(?:(pos)|(cli)|(background-i)|(flex(?:$|-b)|(?:max-|min-)?(?:block-s|inl|he|widt))|dis)/i.exec(e);return n?n[1]?/^sti/i.test(t)?1:0:n[2]?/^pat/i.test(t)?1:0:n[3]?/^image-/i.test(t)?1:0:n[4]?t[3]==="-"?2:0:/^(?:inline-)?grid$/i.test(t)?4:0:0}var Qh=[["-webkit-",1],["-moz-",2],["-ms-",4]];function no(){return({stringify:e})=>({stringify(t,n,a){let r="",u=rd(t);u&&(r+=e(u,n,a)+";");let o=ud(t),i=od(t,n);for(let s of Qh)o&s[1]&&(r+=e(s[0]+t,n,a)+";"),i&s[1]&&(r+=e(t,s[0]+n,a)+";");return r+e(t,n,a)}})}var Zs={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...Jt(4,"rem",4,.5,.5),...Jt(12,"rem",4,5),14:"3.5rem",...Jt(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:Me("blur"),backdropBrightness:Me("brightness"),backdropContrast:Me("contrast"),backdropGrayscale:Me("grayscale"),backdropHueRotate:Me("hueRotate"),backdropInvert:Me("invert"),backdropOpacity:Me("opacity"),backdropSaturate:Me("saturate"),backdropSepia:Me("sepia"),backgroundColor:Me("colors"),backgroundImage:{none:"none"},backgroundOpacity:Me("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...Jt(200,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:e})=>({DEFAULT:e("colors.gray.200","currentColor"),...e("colors")}),borderOpacity:Me("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:Me("spacing"),borderWidth:{DEFAULT:"1px",...en(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:Me("colors"),caretColor:Me("colors"),accentColor:({theme:e})=>({auto:"auto",...e("colors")}),contrast:{...Jt(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:Me("borderColor"),divideOpacity:Me("borderOpacity"),divideWidth:Me("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:e})=>({...e("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:e})=>({...e("spacing"),...nu(2,6),...nu(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:Me("spacing"),gradientColorStops:Me("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:e})=>({...e("spacing"),...nu(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:e})=>({...e("spacing"),...nu(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...Jt(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:e})=>({auto:"auto",...e("spacing")}),maxHeight:({theme:e})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...e("spacing")}),maxWidth:({theme:e,breakpoints:t})=>({...t(e("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...Jt(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:Me("spacing"),placeholderColor:Me("colors"),placeholderOpacity:Me("opacity"),outlineColor:Me("colors"),outlineOffset:en(8,"px"),outlineWidth:en(8,"px"),ringColor:({theme:e})=>({...e("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:Me("colors"),ringOffsetWidth:en(8,"px"),ringOpacity:({theme:e})=>({...e("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...en(8,"px")},rotate:{...en(2,"deg"),...en(12,"deg",3),...en(180,"deg",45)},saturate:Jt(200,"",100,0,50),scale:{...Jt(150,"",100,0,50),...Jt(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:Me("spacing"),scrollPadding:Me("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...en(2,"deg"),...en(12,"deg",3)},space:Me("spacing"),stroke:({theme:e})=>({...e("colors"),none:"none"}),strokeWidth:Jt(2),textColor:Me("colors"),textDecorationColor:Me("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...en(8,"px")},textUnderlineOffset:{auto:"auto",...en(8,"px")},textIndent:Me("spacing"),textOpacity:Me("opacity"),transitionDuration:({theme:e})=>({...e("durations"),DEFAULT:"150ms"}),transitionDelay:Me("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:e})=>({...e("spacing"),...nu(2,4),full:"100%"}),width:({theme:e})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...e("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...Jt(50,"",1,0,10),auto:"auto"}};function nu(e,t){let n={};do for(var a=1;at(e)}var e2={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${Zs.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${Zs.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}},t2=[q("\\[([-\\w]+):(.+)]",({1:e,2:t},n)=>({"@layer overrides":{"&":{[e]:Sn(`[${t}]`,"",n)}}})),q("(group|peer)([~/][^-[]+)?",({input:e},{h:t})=>[{c:t(e)}]),K("aspect-","aspectRatio"),q("container",(e,{theme:t})=>{let{screens:n=t("screens"),center:a,padding:r}=t("container"),u={width:"100%",marginRight:a&&"auto",marginLeft:a&&"auto",...o("xs")};for(let i in n){let s=n[i];typeof s=="string"&&(u[to(s)]={"&":{maxWidth:s,...o(i)}})}return u;function o(i){let s=r&&(typeof r=="string"?r:r[i]||r.DEFAULT);if(s)return{paddingRight:s,paddingLeft:s}}}),K("content-","content",({_:e})=>({"--tw-content":e,content:"var(--tw-content)"})),q("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),q("box-(border|content)","boxSizing",({1:e})=>e+"-box"),q("hidden",{display:"none"}),q("table-(auto|fixed)","tableLayout"),q(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",q("isolate","isolation"),q("object-(contain|cover|fill|none|scale-down)","objectFit"),K("object-","objectPosition"),q("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",ao),q("overscroll(-[xy])?-(auto|contain|none)",({1:e="",2:t})=>({["overscroll-behavior"+e]:t})),q("(static|fixed|absolute|relative|sticky)","position"),K("-?inset(-[xy])?(?:$|-)","inset",({1:e,_:t})=>({top:e!="-x"&&t,right:e!="-y"&&t,bottom:e!="-x"&&t,left:e!="-y"&&t})),K("-?(top|bottom|left|right)(?:$|-)","inset"),q("(visible|collapse)","visibility"),q("invisible",{visibility:"hidden"}),K("-?z-","zIndex"),q("flex-((row|col)(-reverse)?)","flexDirection",id),q("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),K("(flex-(?:grow|shrink))(?:$|-)"),K("(flex)-"),K("grow(?:$|-)","flexGrow"),K("shrink(?:$|-)","flexShrink"),K("basis-","flexBasis"),K("-?(order)-"),"-?(order)-(\\d+)",K("grid-cols-","gridTemplateColumns"),q("grid-cols-(\\d+)","gridTemplateColumns",dd),K("col-","gridColumn"),q("col-(span)-(\\d+)","gridColumn",cd),K("col-start-","gridColumnStart"),q("col-start-(auto|\\d+)","gridColumnStart"),K("col-end-","gridColumnEnd"),q("col-end-(auto|\\d+)","gridColumnEnd"),K("grid-rows-","gridTemplateRows"),q("grid-rows-(\\d+)","gridTemplateRows",dd),K("row-","gridRow"),q("row-(span)-(\\d+)","gridRow",cd),K("row-start-","gridRowStart"),q("row-start-(auto|\\d+)","gridRowStart"),K("row-end-","gridRowEnd"),q("row-end-(auto|\\d+)","gridRowEnd"),q("grid-flow-((row|col)(-dense)?)","gridAutoFlow",e=>ao(id(e))),q("grid-flow-(dense)","gridAutoFlow"),K("auto-cols-","gridAutoColumns"),K("auto-rows-","gridAutoRows"),K("gap-x(?:$|-)","gap","columnGap"),K("gap-y(?:$|-)","gap","rowGap"),K("gap(?:$|-)","gap"),"(justify-(?:items|self))-",q("justify-","justifyContent",sd),q("(content|items|self)-",e=>({["align-"+e[1]]:sd(e)})),q("(place-(content|items|self))-",({1:e,$$:t})=>({[e]:("wun".includes(t[3])?"space-":"")+t})),K("p([xytrbl])?(?:$|-)","padding",er("padding")),K("-?m([xytrbl])?(?:$|-)","margin",er("margin")),K("-?space-(x|y)(?:$|-)","space",({1:e,_:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[e]]:`calc(${t} * calc(1 - var(--tw-space-${e}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[e]]:`calc(${t} * var(--tw-space-${e}-reverse))`}})),q("space-(x|y)-reverse",({1:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${e}-reverse`]:"1"}})),K("w-","width"),K("min-w-","minWidth"),K("max-w-","maxWidth"),K("h-","height"),K("min-h-","minHeight"),K("max-h-","maxHeight"),K("font-","fontWeight"),K("font-","fontFamily",({_:e})=>typeof(e=Ue(e))[1]=="string"?{fontFamily:gn(e)}:{fontFamily:gn(e[0]),...e[1]}),q("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),q("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),q("italic","fontStyle"),q("not-italic",{fontStyle:"normal"}),q("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:e,2:t="",3:n})=>t=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(n?"numeric-fraction":"pt".includes(t[0])?"numeric-spacing":t?"numeric-figure":e)]:e,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...Zn({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),K("tracking-","letterSpacing"),K("leading-","lineHeight"),q("list-(inside|outside)","listStylePosition"),K("list-","listStyleType"),q("list-","listStyleType"),K("placeholder-opacity-","placeholderOpacity",({_:e})=>({"&::placeholder":{"--tw-placeholder-opacity":e}})),dt("placeholder-",{property:"color",selector:"&::placeholder"}),q("text-(left|center|right|justify|start|end)","textAlign"),q("text-(ellipsis|clip)","textOverflow"),K("text-opacity-","textOpacity","--tw-text-opacity"),dt("text-",{property:"color"}),K("text-","fontSize",({_:e})=>typeof e=="string"?{fontSize:e}:{fontSize:e[0],...typeof e[1]=="string"?{lineHeight:e[1]}:e[1]}),K("indent-","textIndent"),q("(overline|underline|line-through)","textDecorationLine"),q("no-underline",{textDecorationLine:"none"}),K("underline-offset-","textUnderlineOffset"),dt("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),K("decoration-","textDecorationThickness"),q("decoration-","textDecorationStyle"),q("(uppercase|lowercase|capitalize)","textTransform"),q("normal-case",{textTransform:"none"}),q("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),q("align-","verticalAlign"),q("whitespace-","whiteSpace"),q("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),q("break-words",{overflowWrap:"break-word"}),q("break-all",{wordBreak:"break-all"}),q("break-keep",{wordBreak:"keep-all"}),dt("caret-",{opacityVariable:!1,opacitySection:"opacity"}),dt("accent-",{opacityVariable:!1,opacitySection:"opacity"}),q("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:e})=>`linear-gradient(to ${Sa(e," ")},var(--tw-gradient-stops))`),dt("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-from":e.value,"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),dt("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-gradient-to":e.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${e.value},var(--tw-gradient-to)`})),dt("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),q("bg-(fixed|local|scroll)","backgroundAttachment"),q("bg-origin-(border|padding|content)","backgroundOrigin",({1:e})=>e+"-box"),q(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),q("bg-blend-","backgroundBlendMode"),q("bg-clip-(border|padding|content|text)","backgroundClip",({1:e})=>e+(e=="text"?"":"-box")),K("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),dt("bg-",{section:"backgroundColor"}),K("bg-","backgroundImage"),K("bg-","backgroundPosition"),q("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",ao),K("bg-","backgroundSize"),K("rounded(?:$|-)","borderRadius"),K("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:e,_:t})=>{let n={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[e]||[e,e];return{[`border-${Sa(n[0])}-radius`]:t,[`border-${Sa(n[1])}-radius`]:t}}),q("border-(collapse|separate)","borderCollapse"),K("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),q("border-(solid|dashed|dotted|double|none)","borderStyle"),K("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:e,_:t})=>({...Zn({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(e||"-x")]:t,["--tw-border-spacing"+(e||"-y")]:t,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),dt("border-([xytrbl])-",{section:"borderColor"},er("border","Color")),dt("border-"),K("border-([xytrbl])(?:$|-)","borderWidth",er("border","Width")),K("border(?:$|-)","borderWidth"),K("divide-opacity(?:$|-)","divideOpacity",({_:e})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":e}})),q("divide-(solid|dashed|dotted|double|none)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:e}})),q("divide-([xy]-reverse)",({1:e})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+e]:"1"}})),K("divide-([xy])(?:$|-)","divideWidth",({1:e,_:t})=>{let n={x:"lr",y:"tb"}[e];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${e}-reverse`]:"0",[`border-${Sa(n[0])}Width`]:`calc(${t} * calc(1 - var(--tw-divide-${e}-reverse)))`,[`border-${Sa(n[1])}Width`]:`calc(${t} * var(--tw-divide-${e}-reverse))`}}}),dt("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),K("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),dt("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),K("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),q("ring-inset",{"--tw-ring-inset":"inset"}),dt("ring-",{property:"--tw-ring-color"}),K("ring(?:$|-)","ringWidth",({_:e},{theme:t})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":t("ringOffsetWidth","","0px"),"--tw-ring-offset-color":Nn(t("ringOffsetColor","","#fff")),"--tw-ring-color":Nn(t("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":t("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${e} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),dt("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:e})=>({"--tw-shadow-color":e.value,"--tw-shadow":"var(--tw-shadow-colored)"})),K("shadow(?:$|-)","boxShadow",({_:e})=>({...Zn({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":gn(e),"--tw-shadow-colored":gn(e).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),K("(opacity)-"),q("mix-blend-","mixBlendMode"),...ld(),...ld("backdrop-"),K("transition(?:$|-)","transitionProperty",(e,{theme:t})=>({transitionProperty:gn(e),transitionTimingFunction:e._=="none"?void 0:gn(t("transitionTimingFunction","")),transitionDuration:e._=="none"?void 0:gn(t("transitionDuration",""))})),K("duration(?:$|-)","transitionDuration","transitionDuration",gn),K("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",gn),K("delay(?:$|-)","transitionDelay","transitionDelay",gn),K("animate(?:$|-)","animation",(e,{theme:t,h:n,e:a})=>{let r=gn(e),u=r.split(" "),o=t("keyframes",u[0]);return o?{["@keyframes "+(u[0]=a(n(u[0])))]:o,animation:u.join(" ")}:{animation:r}}),"(transform)-(none)",q("transform",Qs),q("transform-(cpu|gpu)",({1:e})=>({"--tw-transform":gd(e=="gpu")})),K("scale(-[xy])?-","scale",({1:e,_:t})=>({["--tw-scale"+(e||"-x")]:t,["--tw-scale"+(e||"-y")]:t,...Qs()})),K("-?(rotate)-","rotate",Xs),K("-?(translate-[xy])-","translate",Xs),K("-?(skew-[xy])-","skew",Xs),q("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",ao),"(appearance)-",K("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",K("(cursor)-"),"(cursor)-",q("snap-(none)","scroll-snap-type"),q("snap-(x|y|both)",({1:e})=>({...Zn({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":e+" var(--tw-scroll-snap-strictness)"})),q("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),q("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),q("snap-(normal|always)","scroll-snap-stop"),q("scroll-(auto|smooth)","scroll-behavior"),K("scroll-p([xytrbl])?(?:$|-)","padding",er("scroll-padding")),K("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",er("scroll-margin")),q("touch-(auto|none|manipulation)","touch-action"),q("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:e,2:t,3:n})=>({...Zn({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${t?"pan-x":n?"pan-y":e}`]:e,"touch-action":"var(--tw-touch-action)"})),q("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),q("outline",{outlineStyle:"solid"}),q("outline-(dashed|dotted|double)","outlineStyle"),K("-?(outline-offset)-"),dt("outline-",{opacityVariable:!1,opacitySection:"opacity"}),K("outline-","outlineWidth"),"(pointer-events)-",K("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:e})=>({x:"horizontal",y:"vertical"})[e]||e||"both"],q("select-(none|text|all|auto)","userSelect"),dt("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),dt("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),K("stroke-","strokeWidth"),q("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),q("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function ao(e){return(typeof e=="string"?e:e[1]).replace(/-/g," ").trim()}function id(e){return(typeof e=="string"?e:e[1]).replace("col","column")}function Sa(e,t="-"){let n=[];for(let a of e)n.push({t:"top",r:"right",b:"bottom",l:"left"}[a]);return n.join(t)}function gn(e){return e&&""+(e._||e)}function sd({$$:e}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[e[3]||""]||"")+e}function er(e,t=""){return({1:n,_:a})=>{let r={x:"lr",y:"tb"}[n]||n+n;return r?{...eu(e+"-"+Sa(r[0])+t,a),...eu(e+"-"+Sa(r[1])+t,a)}:eu(e+t,a)}}function ld(e=""){let t=["blur","brightness","contrast","grayscale","hue-rotate","invert",e&&"opacity","saturate","sepia",!e&&"drop-shadow"].filter(Boolean),n={};for(let a of t)n[`--tw-${e}${a}`]="var(--tw-empty,/*!*/ /*!*/)";return n={...Zn(n),[`${e}filter`]:t.map(a=>`var(--tw-${e}${a})`).join(" ")},[`(${e}filter)-(none)`,q(`${e}filter`,n),...t.map(a=>K(`${a[0]=="h"?"-?":""}(${e}${a})(?:$|-)`,a,({1:r,_:u})=>({[`--tw-${r}`]:Ue(u).map(o=>`${a}(${o})`).join(" "),...n})))]}function Xs({1:e,_:t}){return{["--tw-"+e]:t,...Qs()}}function Qs(){return{...Zn({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":gd()}),transform:"var(--tw-transform)"}}function gd(e){return[e?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function cd({1:e,2:t}){return`${e} ${t} / ${e} ${t}`}function dd({1:e}){return`repeat(${e},minmax(0,1fr))`}function Zn(e){return{"@layer defaults":{"*,::before,::after":e,"::backdrop":e}}}var n2=[["sticky","@supports ((position: -webkit-sticky) or (position:sticky))"],["motion-reduce","@media (prefers-reduced-motion:reduce)"],["motion-safe","@media (prefers-reduced-motion:no-preference)"],["print","@media print"],["(portrait|landscape)",({1:e})=>`@media (orientation:${e})`],["contrast-(more|less)",({1:e})=>`@media (prefers-contrast:${e})`],["(first-(letter|line)|placeholder|backdrop|before|after)",({1:e})=>`&::${e}`],["(marker|selection)",({1:e})=>`& *::${e},&::${e}`],["file","&::file-selector-button"],["(first|last|only)",({1:e})=>`&:${e}-child`],["even","&:nth-child(2n)"],["odd","&:nth-child(odd)"],["open","&[open]"],["(aria|data)-",({1:e,$$:t},n)=>t&&`&[${e}-${n.theme(e,t)||Sn(t,"",n)||`${t}="true"`}]`],["((group|peer)(~[^-[]+)?)(-\\[(.+)]|[-[].+?)(\\/.+)?",({2:e,3:t="",4:n,5:a="",6:r=t},{e:u,h:o,v:i})=>{let s=Qa(a)||(n[0]=="["?n:i(n.slice(1)));return`${(s.includes("&")?s:"&"+s).replace(/&/g,`:merge(.${u(o(e+r))})`)}${e[0]=="p"?"~":" "}&`}],["(ltr|rtl)",({1:e})=>`[dir="${e}"] &`],["supports-",({$$:e},t)=>{if(e&&=t.theme("supports",e)||Sn(e,"",t),e)return e.includes(":")||(e+=":var(--tw)"),/^\w*\s*\(/.test(e)||(e=`(${e})`),`@supports ${e.replace(/\b(and|or|not)\b/g," $1 ").trim()}`}],["max-",({$$:e},t)=>{if(e&&=t.theme("screens",e)||Sn(e,"",t),typeof e=="string")return`@media not all and (min-width:${e})`}],["min-",({$$:e},t)=>(e&&=Sn(e,"",t))&&`@media (min-width:${e})`],[/^\[(.+)]$/,({1:e})=>/[&@]/.test(e)&&Qa(e).replace(/[}]+$/,"").split("{")]];function a2({colors:e,disablePreflight:t}={}){return{preflight:t?void 0:e2,theme:{...Zs,colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",...e}},variants:n2,rules:t2,finalize(n){return n.n&&n.d&&n.r.some(a=>/^&::(before|after)$/.test(a))&&!/(^|;)content:/.test(n.d)?{...n,d:"content:var(--tw-content);"+n.d}:n}}}var r2={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},u2={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},o2={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},i2={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},s2={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},l2={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},c2={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},d2={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},g2={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},m2={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},p2={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},f2={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},h2={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},b2={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},y2={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},T2={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},E2={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},x2={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},C2={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},v2={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},w2={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},k2={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},S2={__proto__:null,slate:r2,gray:u2,zinc:o2,neutral:i2,stone:s2,red:l2,orange:c2,amber:d2,yellow:g2,lime:m2,green:p2,emerald:f2,teal:h2,cyan:b2,sky:y2,blue:T2,indigo:E2,violet:x2,purple:C2,fuchsia:v2,pink:w2,rose:k2};function ro({disablePreflight:e}={}){return a2({colors:S2,disablePreflight:e})}var uo=globalThis||(typeof window<"u"?window:self),A2=Object.create,t0=Object.defineProperty,D2=Object.getOwnPropertyDescriptor,L2=Object.getOwnPropertyNames,P2=Object.getPrototypeOf,M2=Object.prototype.hasOwnProperty,F2=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),_2=(e,t)=>{for(var n in t)t0(e,n,{get:t[n],enumerable:!0})},e0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of L2(t))!M2.call(e,r)&&r!==n&&t0(e,r,{get:()=>t[r],enumerable:!(a=D2(t,r))||a.enumerable});return e},B2=(e,t,n)=>(e0(e,t,"default"),n&&e0(n,t,"default")),pd=(e,t,n)=>(n=e!=null?A2(P2(e)):{},e0(t||!e||!e.__esModule?t0(n,"default",{value:e,enumerable:!0}):n,e)),fd=F2((e,t)=>{(function(n,a){typeof define=="function"&&define.amd?define([],a):typeof e<"u"?a():(a(),n.FileSaver={})})(e,function(){"use strict";function n(l,c){return typeof c>"u"?c={autoBom:!1}:typeof c!="object"&&(c={autoBom:!c}),c.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type)?new Blob(["\uFEFF",l],{type:l.type}):l}function a(l,c,g){var m=new XMLHttpRequest;m.open("GET",l),m.responseType="blob",m.onload=function(){s(m.response,c,g)},m.onerror=function(){},m.send()}function r(l){var c=new XMLHttpRequest;c.open("HEAD",l,!1);try{c.send()}catch{}return 200<=c.status&&299>=c.status}function u(l){try{l.dispatchEvent(new MouseEvent("click"))}catch{var c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),l.dispatchEvent(c)}}var o=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof uo=="object"&&uo.global===uo?uo:void 0,i=o.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=o.saveAs||(typeof window!="object"||window!==o?function(){}:"download"in HTMLAnchorElement.prototype&&!i?function(l,c,g){var m=o.URL||o.webkitURL,p=document.createElement("a");c=c||l.name||"download",p.download=c,p.rel="noopener",typeof l=="string"?(p.href=l,p.origin===location.origin?u(p):r(p.href)?a(l,c,g):u(p,p.target="_blank")):(p.href=m.createObjectURL(l),setTimeout(function(){m.revokeObjectURL(p.href)},4e4),setTimeout(function(){u(p)},0))}:"msSaveOrOpenBlob"in navigator?function(l,c,g){if(c=c||l.name||"download",typeof l!="string")navigator.msSaveOrOpenBlob(n(l,g),c);else if(r(l))a(l,c,g);else{var m=document.createElement("a");m.href=l,m.target="_blank",setTimeout(function(){u(m)})}}:function(l,c,g,m){if(m=m||open("","_blank"),m&&(m.document.title=m.document.body.innerText="downloading..."),typeof l=="string")return a(l,c,g);var p=l.type==="application/octet-stream",f=/constructor/i.test(o.HTMLElement)||o.safari,S=/CriOS\/[\d]+/.test(navigator.userAgent);if((S||p&&f||i)&&typeof FileReader<"u"){var v=new FileReader;v.onloadend=function(){var F=v.result;F=S?F:F.replace(/^data:[^;]*;/,"data:attachment/file;"),m?m.location.href=F:location=F,m=null},v.readAsDataURL(l)}else{var h=o.URL||o.webkitURL,k=h.createObjectURL(l);m?m.location=k:location.href=k,m=null,setTimeout(function(){h.revokeObjectURL(k)},4e4)}});o.saveAs=s.saveAs=s,typeof t<"u"&&(t.exports=s)})}),hd={};_2(hd,{default:()=>au});var R2=pd(fd());B2(hd,pd(fd()));var{default:md,...I2}=R2,au=md!==void 0?md:I2;function tr(){let e,t="pending",n=new Promise((a,r)=>{e={async resolve(u){await u,t="fulfilled",a(u)},reject(u){t="rejected",r(u)}}});return Object.defineProperty(n,"state",{get:()=>t}),Object.assign(n,e)}var n0=class extends Error{constructor(){super("Deadline"),this.name="DeadlineError"}};function oo(e,t){let n=tr(),a=setTimeout(()=>n.reject(new n0),t);return Promise.race([e,n]).finally(()=>clearTimeout(a))}function Qn(e,t={}){let{signal:n,persistent:a}=t;return n?.aborted?Promise.reject(new DOMException("Delay was aborted.","AbortError")):new Promise((r,u)=>{let o=()=>{clearTimeout(s),u(new DOMException("Delay was aborted.","AbortError"))},s=setTimeout(()=>{n?.removeEventListener("abort",o),r()},e);if(n?.addEventListener("abort",o,{once:!0}),a===!1)try{Deno.unrefTimer(s)}catch(l){if(!(l instanceof ReferenceError))throw l}})}var bd=class{#e=0;#t=[];#n=[];#a=tr();add(t){++this.#e,this.#r(t[Symbol.asyncIterator]())}async#r(t){try{let{value:n,done:a}=await t.next();a?--this.#e:this.#t.push({iterator:t,value:n})}catch(n){this.#n.push(n)}this.#a.resolve()}async*iterate(){for(;this.#e>0;){await this.#a;for(let t=0;tl9,bgBlue:()=>m9,bgBrightBlack:()=>b9,bgBrightBlue:()=>x9,bgBrightCyan:()=>v9,bgBrightGreen:()=>T9,bgBrightMagenta:()=>C9,bgBrightRed:()=>y9,bgBrightWhite:()=>w9,bgBrightYellow:()=>E9,bgCyan:()=>f9,bgGreen:()=>d9,bgMagenta:()=>p9,bgRed:()=>c9,bgRgb24:()=>D9,bgRgb8:()=>S9,bgWhite:()=>h9,bgYellow:()=>g9,black:()=>V2,blue:()=>X2,bold:()=>j2,brightBlack:()=>Ed,brightBlue:()=>u9,brightCyan:()=>i9,brightGreen:()=>a9,brightMagenta:()=>o9,brightRed:()=>n9,brightWhite:()=>s9,brightYellow:()=>r9,cyan:()=>Q2,dim:()=>z2,getColorEnabled:()=>N2,gray:()=>t9,green:()=>J2,hidden:()=>q2,inverse:()=>$2,italic:()=>H2,magenta:()=>Z2,red:()=>G2,reset:()=>U2,rgb24:()=>A9,rgb8:()=>k9,setColorEnabled:()=>O2,strikethrough:()=>K2,stripColor:()=>P9,underline:()=>W2,white:()=>e9,yellow:()=>Y2});var{Deno:yd}=globalThis,Td=typeof yd?.noColor=="boolean"?yd.noColor:!0,a0=!Td;function O2(e){Td||(a0=e)}function N2(){return a0}function Te(e,t){return{open:`\x1B[${e.join(";")}m`,close:`\x1B[${t}m`,regexp:new RegExp(`\\x1b\\[${t}m`,"g")}}function Ee(e,t){return a0?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function U2(e){return Ee(e,Te([0],0))}function j2(e){return Ee(e,Te([1],22))}function z2(e){return Ee(e,Te([2],22))}function H2(e){return Ee(e,Te([3],23))}function W2(e){return Ee(e,Te([4],24))}function $2(e){return Ee(e,Te([7],27))}function q2(e){return Ee(e,Te([8],28))}function K2(e){return Ee(e,Te([9],29))}function V2(e){return Ee(e,Te([30],39))}function G2(e){return Ee(e,Te([31],39))}function J2(e){return Ee(e,Te([32],39))}function Y2(e){return Ee(e,Te([33],39))}function X2(e){return Ee(e,Te([34],39))}function Z2(e){return Ee(e,Te([35],39))}function Q2(e){return Ee(e,Te([36],39))}function e9(e){return Ee(e,Te([37],39))}function t9(e){return Ed(e)}function Ed(e){return Ee(e,Te([90],39))}function n9(e){return Ee(e,Te([91],39))}function a9(e){return Ee(e,Te([92],39))}function r9(e){return Ee(e,Te([93],39))}function u9(e){return Ee(e,Te([94],39))}function o9(e){return Ee(e,Te([95],39))}function i9(e){return Ee(e,Te([96],39))}function s9(e){return Ee(e,Te([97],39))}function l9(e){return Ee(e,Te([40],49))}function c9(e){return Ee(e,Te([41],49))}function d9(e){return Ee(e,Te([42],49))}function g9(e){return Ee(e,Te([43],49))}function m9(e){return Ee(e,Te([44],49))}function p9(e){return Ee(e,Te([45],49))}function f9(e){return Ee(e,Te([46],49))}function h9(e){return Ee(e,Te([47],49))}function b9(e){return Ee(e,Te([100],49))}function y9(e){return Ee(e,Te([101],49))}function T9(e){return Ee(e,Te([102],49))}function E9(e){return Ee(e,Te([103],49))}function x9(e){return Ee(e,Te([104],49))}function C9(e){return Ee(e,Te([105],49))}function v9(e){return Ee(e,Te([106],49))}function w9(e){return Ee(e,Te([107],49))}function ea(e,t=255,n=0){return Math.trunc(Math.max(Math.min(e,t),n))}function k9(e,t){return Ee(e,Te([38,5,ea(t)],39))}function S9(e,t){return Ee(e,Te([48,5,ea(t)],49))}function A9(e,t){return typeof t=="number"?Ee(e,Te([38,2,t>>16&255,t>>8&255,t&255],39)):Ee(e,Te([38,2,ea(t.r),ea(t.g),ea(t.b)],39))}function D9(e,t){return typeof t=="number"?Ee(e,Te([48,2,t>>16&255,t>>8&255,t&255],49)):Ee(e,Te([48,2,ea(t.r),ea(t.g),ea(t.b)],49))}var L9=new RegExp(["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|"),"g");function P9(e){return e.replace(L9,"")}var r0=class extends Error{constructor(t,n){super(`Exceeded max retry count (${n})`),this.name="RetryError",this.cause=t}},M9={multiplier:2,maxTimeout:6e4,maxAttempts:5,minTimeout:1e3};async function u0(e,t){let n={...M9,...t};if(n.maxTimeout>=0&&n.minTimeout>n.maxTimeout)throw new RangeError("minTimeout is greater than maxTimeout");let a=n.minTimeout,r;for(let u=0;usetTimeout(i,a)),a*=n.multiplier,a=Math.max(a,n.minTimeout),n.maxTimeout>=0&&(a=Math.min(a,n.maxTimeout)),r=o}throw new r0(r,n.maxAttempts)}var xC=Number.isNaN||function(e){return typeof e=="number"&&e!==e};var io=globalThis||(typeof window<"u"?window:self),_9=Object.create,i0=Object.defineProperty,B9=Object.getOwnPropertyDescriptor,R9=Object.getOwnPropertyNames,I9=Object.getPrototypeOf,O9=Object.prototype.hasOwnProperty,N9=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),U9=(e,t)=>{for(var n in t)i0(e,n,{get:t[n],enumerable:!0})},o0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of R9(t))!O9.call(e,r)&&r!==n&&i0(e,r,{get:()=>t[r],enumerable:!(a=B9(t,r))||a.enumerable});return e},j9=(e,t,n)=>(o0(e,t,"default"),n&&o0(n,t,"default")),Cd=(e,t,n)=>(n=e!=null?_9(I9(e)):{},o0(t||!e||!e.__esModule?i0(n,"default",{value:e,enumerable:!0}):n,e)),vd=N9((e,t)=>{var n="Expected a function",a=NaN,r="[object Symbol]",u=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt,c=typeof io=="object"&&io&&io.Object===Object&&io,g=typeof self=="object"&&self&&self.Object===Object&&self,m=c||g||Function("return this")(),p=Object.prototype,f=p.toString,S=Math.max,v=Math.min,h=function(){return m.Date.now()};function k(x,b,E){var I,L,W,_,B,G,re=0,ye=!1,V=!1,ge=!0;if(typeof x!="function")throw new TypeError(n);b=w(b)||0,M(E)&&(ye=!!E.leading,V="maxWait"in E,W=V?S(w(E.maxWait)||0,b):W,ge="trailing"in E?!!E.trailing:ge);function de(ee){var ne=I,te=L;return I=L=void 0,re=ee,_=x.apply(te,ne),_}function C(ee){return re=ee,B=setTimeout(pe,b),ye?de(ee):_}function z(ee){var ne=ee-G,te=ee-re,oe=b-ne;return V?v(oe,W-te):oe}function Z(ee){var ne=ee-G,te=ee-re;return G===void 0||ne>=b||ne<0||V&&te>=W}function pe(){var ee=h();if(Z(ee))return se(ee);B=setTimeout(pe,z(ee))}function se(ee){return B=void 0,ge&&I?de(ee):(I=L=void 0,_)}function R(){B!==void 0&&clearTimeout(B),re=0,I=G=L=B=void 0}function O(){return B===void 0?_:se(h())}function ae(){var ee=h(),ne=Z(ee);if(I=arguments,L=this,G=ee,ne){if(B===void 0)return C(G);if(V)return B=setTimeout(pe,b),de(G)}return B===void 0&&(B=setTimeout(pe,b)),_}return ae.cancel=R,ae.flush=O,ae}function F(x,b,E){var I=!0,L=!0;if(typeof x!="function")throw new TypeError(n);return M(E)&&(I="leading"in E?!!E.leading:I,L="trailing"in E?!!E.trailing:L),k(x,b,{leading:I,maxWait:b,trailing:L})}function M(x){var b=typeof x;return!!x&&(b=="object"||b=="function")}function D(x){return!!x&&typeof x=="object"}function P(x){return typeof x=="symbol"||D(x)&&f.call(x)==r}function w(x){if(typeof x=="number")return x;if(P(x))return a;if(M(x)){var b=typeof x.valueOf=="function"?x.valueOf():x;x=M(b)?b+"":b}if(typeof x!="string")return x===0?x:+x;x=x.replace(u,"");var E=i.test(x);return E||s.test(x)?l(x.slice(2),E?2:8):o.test(x)?a:+x}t.exports=F}),wd={};U9(wd,{default:()=>At});var z9=Cd(vd());j9(wd,Cd(vd()));var{default:xd,...H9}=z9,At=xd!==void 0?xd:H9;var W9=Object.create,l0=Object.defineProperty,$9=Object.getOwnPropertyDescriptor,q9=Object.getOwnPropertyNames,K9=Object.getPrototypeOf,V9=Object.prototype.hasOwnProperty,G9=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),J9=(e,t)=>{for(var n in t)l0(e,n,{get:t[n],enumerable:!0})},s0=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of q9(t))!V9.call(e,r)&&r!==n&&l0(e,r,{get:()=>t[r],enumerable:!(a=$9(t,r))||a.enumerable});return e},Y9=(e,t,n)=>(s0(e,t,"default"),n&&s0(n,t,"default")),Sd=(e,t,n)=>(n=e!=null?W9(K9(e)):{},s0(t||!e||!e.__esModule?l0(n,"default",{value:e,enumerable:!0}):n,e)),Ad=G9((e,t)=>{(function(n,a){typeof e=="object"&&typeof t=="object"?t.exports=a():typeof define=="function"&&define.amd?define([],a):typeof e=="object"?e.notie=a():n.notie=a()})(e,function(){return function(n){function a(u){if(r[u])return r[u].exports;var o=r[u]={i:u,l:!1,exports:{}};return n[u].call(o.exports,o,o.exports,a),o.l=!0,o.exports}var r={};return a.m=n,a.c=r,a.i=function(u){return u},a.d=function(u,o,i){a.o(u,o)||Object.defineProperty(u,o,{configurable:!1,enumerable:!0,get:i})},a.n=function(u){var o=u&&u.__esModule?function(){return u.default}:function(){return u};return a.d(o,"a",o),o},a.o=function(u,o){return Object.prototype.hasOwnProperty.call(u,o)},a.p="",a(a.s=1)}([function(n,a){n.exports=function(r){return r.webpackPolyfill||(r.deprecate=function(){},r.paths=[],r.children||(r.children=[]),Object.defineProperty(r,"loaded",{enumerable:!0,get:function(){return r.l}}),Object.defineProperty(r,"id",{enumerable:!0,get:function(){return r.i}}),r.webpackPolyfill=1),r}},function(n,a,r){"use strict";(function(u){var o,i,s,l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c};(function(c,g){l(a)==="object"&&l(u)==="object"?u.exports=g():(i=[],o=g,s=typeof o=="function"?o.apply(a,i):o,s!==void 0&&(u.exports=s))})(void 0,function(){return function(c){function g(p){if(m[p])return m[p].exports;var f=m[p]={i:p,l:!1,exports:{}};return c[p].call(f.exports,f,f.exports,g),f.l=!0,f.exports}var m={};return g.m=c,g.c=m,g.i=function(p){return p},g.d=function(p,f,S){g.o(p,f)||Object.defineProperty(p,f,{configurable:!1,enumerable:!0,get:S})},g.n=function(p){var f=p&&p.__esModule?function(){return p.default}:function(){return p};return g.d(f,"a",f),f},g.o=function(p,f){return Object.prototype.hasOwnProperty.call(p,f)},g.p="",g(g.s=0)}([function(c,g,m){function p(C,z){var Z={};for(var pe in C)z.indexOf(pe)>=0||Object.prototype.hasOwnProperty.call(C,pe)&&(Z[pe]=C[pe]);return Z}Object.defineProperty(g,"__esModule",{value:!0});var f=typeof Symbol=="function"&&l(Symbol.iterator)==="symbol"?function(C){return typeof C>"u"?"undefined":l(C)}:function(C){return C&&typeof Symbol=="function"&&C.constructor===Symbol&&C!==Symbol.prototype?"symbol":typeof C>"u"?"undefined":l(C)},S=Object.assign||function(C){for(var z=1;z'+pe+"",te.onclick=function(){return L(oe,ne)},te.listener=function(Y){(b(Y)||E(Y))&&B()},I(te,ne),R&&R<1&&(R=1),!ae&&R&&M(R).then(function(){return L(oe,ne)})},re=g.force=function(C,z){var Z=C.type,pe=Z===void 0?5:Z,se=C.text,R=C.buttonText,O=R===void 0?"OK":R,ae=C.callback,ee=C.position,ne=ee===void 0?h.positions.force||ne.top:ee;D(),B();var te=document.createElement("div"),oe=P();te.id=oe;var Y=document.createElement("div");Y.classList.add(h.classes.textbox),Y.classList.add(h.classes.backgroundInfo),Y.innerHTML='
'+se+"
";var ce=document.createElement("div");ce.classList.add(h.classes.button),ce.classList.add(w[pe]),ce.innerHTML=O,ce.onclick=function(){L(oe,ne),_(),ae?ae():z&&z()},te.appendChild(Y),te.appendChild(ce),te.listener=function(Le){b(Le)&&ce.click()},I(te,ne),W()},ye=g.confirm=function(C,z,Z){var pe=C.text,se=C.submitText,R=se===void 0?"Yes":se,O=C.cancelText,ae=O===void 0?"Cancel":O,ee=C.submitCallback,ne=C.cancelCallback,te=C.position,oe=te===void 0?h.positions.confirm||oe.top:te;D(),B();var Y=document.createElement("div"),ce=P();Y.id=ce;var Le=document.createElement("div");Le.classList.add(h.classes.textbox),Le.classList.add(h.classes.backgroundInfo),Le.innerHTML='
'+pe+"
";var Oe=document.createElement("div");Oe.classList.add(h.classes.button),Oe.classList.add(h.classes.elementHalf),Oe.classList.add(h.classes.backgroundSuccess),Oe.innerHTML=R,Oe.onclick=function(){L(ce,oe),_(),ee?ee():z&&z()};var fe=document.createElement("div");fe.classList.add(h.classes.button),fe.classList.add(h.classes.elementHalf),fe.classList.add(h.classes.backgroundError),fe.innerHTML=ae,fe.onclick=function(){L(ce,oe),_(),ne?ne():Z&&Z()},Y.appendChild(Le),Y.appendChild(Oe),Y.appendChild(fe),Y.listener=function(Xe){b(Xe)?Oe.click():E(Xe)&&fe.click()},I(Y,oe),W(Y,oe)},V=function(C,z,Z){var pe=C.text,se=C.submitText,R=se===void 0?"Submit":se,O=C.cancelText,ae=O===void 0?"Cancel":O,ee=C.submitCallback,ne=C.cancelCallback,te=C.position,oe=te===void 0?h.positions.input||oe.top:te,Y=p(C,["text","submitText","cancelText","submitCallback","cancelCallback","position"]);D(),B();var ce=document.createElement("div"),Le=P();ce.id=Le;var Oe=document.createElement("div");Oe.classList.add(h.classes.textbox),Oe.classList.add(h.classes.backgroundInfo),Oe.innerHTML='
'+pe+"
";var fe=document.createElement("input");fe.classList.add(h.classes.inputField),fe.setAttribute("autocapitalize",Y.autocapitalize||"none"),fe.setAttribute("autocomplete",Y.autocomplete||"off"),fe.setAttribute("autocorrect",Y.autocorrect||"off"),fe.setAttribute("autofocus",Y.autofocus||"true"),fe.setAttribute("inputmode",Y.inputmode||"verbatim"),fe.setAttribute("max",Y.max||""),fe.setAttribute("maxlength",Y.maxlength||""),fe.setAttribute("min",Y.min||""),fe.setAttribute("minlength",Y.minlength||""),fe.setAttribute("placeholder",Y.placeholder||""),fe.setAttribute("spellcheck",Y.spellcheck||"default"),fe.setAttribute("step",Y.step||"any"),fe.setAttribute("type",Y.type||"text"),fe.value=Y.value||"",Y.allowed&&(fe.oninput=function(){var We=void 0;if(Array.isArray(Y.allowed)){for(var $e="",qe=Y.allowed,Ht=0;Ht'+Z+"",ne.appendChild(oe),O.forEach(function(ce,Le){var Oe=ce.type,fe=Oe===void 0?1:Oe,Xe=ce.text,pt=ce.handler,We=document.createElement("div");We.classList.add(w[fe]),We.classList.add(h.classes.button),We.classList.add(h.classes.selectChoice);var $e=O[Le+1];$e&&!$e.type&&($e.type=1),$e&&$e.type===fe&&We.classList.add(h.classes.selectChoiceRepeated),We.innerHTML=Xe,We.onclick=function(){L(te,ee),_(),pt()},ne.appendChild(We)});var Y=document.createElement("div");Y.classList.add(h.classes.backgroundNeutral),Y.classList.add(h.classes.button),Y.innerHTML=se,Y.onclick=function(){L(te,ee),_(),R?R():z&&z()},ne.appendChild(Y),ne.listener=function(ce){E(ce)&&Y.click()},I(ne,ee),W(ne,ee)},de=g.date=function(C,z,Z){var pe=C.value,se=pe===void 0?new Date:pe,R=C.submitText,O=R===void 0?"OK":R,ae=C.cancelText,ee=ae===void 0?"Cancel":ae,ne=C.submitCallback,te=C.cancelCallback,oe=C.position,Y=oe===void 0?h.positions.date||Y.top:oe;D(),B();var ce="▾",Le=document.createElement("div"),Oe=document.createElement("div"),fe=document.createElement("div"),Xe=function(Pe){Le.innerHTML=h.dateMonths[Pe.getMonth()],Oe.innerHTML=Pe.getDate(),fe.innerHTML=Pe.getFullYear()},pt=function(Pe){var Re=new Date(se.getFullYear(),se.getMonth()+1,0).getDate(),Gt=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,2);Number(Gt)>Re&&(Gt=Re.toString()),Pe.target.textContent=Gt,Number(Gt)<1&&(Gt="1"),se.setDate(Number(Gt))},We=function(Pe){var Re=Pe.target.textContent.replace(/^0+/,"").replace(/[^\d]/g,"").slice(0,4);Pe.target.textContent=Re,se.setFullYear(Number(Re))},$e=function(Pe){Xe(se)},qe=function(Pe){var Re=new Date(se.getFullYear(),se.getMonth()+Pe+1,0).getDate();se.getDate()>Re&&se.setDate(Re),se.setMonth(se.getMonth()+Pe),Xe(se)},Ht=function(Pe){se.setDate(se.getDate()+Pe),Xe(se)},Jn=function(Pe){var Re=se.getFullYear()+Pe;Re<0?se.setFullYear(0):se.setFullYear(se.getFullYear()+Pe),Xe(se)},Ze=document.createElement("div"),wn=P();Ze.id=wn;var dn=document.createElement("div");dn.classList.add(h.classes.backgroundInfo);var ft=document.createElement("div");ft.classList.add(h.classes.dateSelectorInner);var Vt=document.createElement("div");Vt.classList.add(h.classes.button),Vt.classList.add(h.classes.elementThird),Vt.classList.add(h.classes.dateSelectorUp),Vt.innerHTML=ce;var U=document.createElement("div");U.classList.add(h.classes.button),U.classList.add(h.classes.elementThird),U.classList.add(h.classes.dateSelectorUp),U.innerHTML=ce;var me=document.createElement("div");me.classList.add(h.classes.button),me.classList.add(h.classes.elementThird),me.classList.add(h.classes.dateSelectorUp),me.innerHTML=ce,Le.classList.add(h.classes.element),Le.classList.add(h.classes.elementThird),Le.innerHTML=h.dateMonths[se.getMonth()],Oe.classList.add(h.classes.element),Oe.classList.add(h.classes.elementThird),Oe.setAttribute("contentEditable",!0),Oe.addEventListener("input",pt),Oe.addEventListener("blur",$e),Oe.innerHTML=se.getDate(),fe.classList.add(h.classes.element),fe.classList.add(h.classes.elementThird),fe.setAttribute("contentEditable",!0),fe.addEventListener("input",We),fe.addEventListener("blur",$e),fe.innerHTML=se.getFullYear();var Be=document.createElement("div");Be.classList.add(h.classes.button),Be.classList.add(h.classes.elementThird),Be.innerHTML=ce;var Se=document.createElement("div");Se.classList.add(h.classes.button),Se.classList.add(h.classes.elementThird),Se.innerHTML=ce;var De=document.createElement("div");De.classList.add(h.classes.button),De.classList.add(h.classes.elementThird),De.innerHTML=ce,Vt.onclick=function(){return qe(1)},U.onclick=function(){return Ht(1)},me.onclick=function(){return Jn(1)},Be.onclick=function(){return qe(-1)},Se.onclick=function(){return Ht(-1)},De.onclick=function(){return Jn(-1)};var Ge=document.createElement("div");Ge.classList.add(h.classes.button),Ge.classList.add(h.classes.elementHalf),Ge.classList.add(h.classes.backgroundSuccess),Ge.innerHTML=O,Ge.onclick=function(){L(wn,Y),_(),ne?ne(se):z&&z(se)};var Et=document.createElement("div");Et.classList.add(h.classes.button),Et.classList.add(h.classes.elementHalf),Et.classList.add(h.classes.backgroundError),Et.innerHTML=ee,Et.onclick=function(){L(wn,Y),_(),te?te(se):Z&&Z(se)},ft.appendChild(Vt),ft.appendChild(U),ft.appendChild(me),ft.appendChild(Le),ft.appendChild(Oe),ft.appendChild(fe),ft.appendChild(Be),ft.appendChild(Se),ft.appendChild(De),dn.appendChild(ft),Ze.appendChild(dn),Ze.appendChild(Ge),Ze.appendChild(Et),Ze.listener=function(Pe){b(Pe)?Ge.click():E(Pe)&&Et.click()},I(Ze,Y),W(Ze,Y)};g.default={alert:G,force:re,confirm:ye,input:V,select:ge,date:de,setOptions:k,hideAlerts:B}}])})}).call(a,r(0)(n))}])})}),Dd={};J9(Dd,{default:()=>so});var X9=Sd(Ad());Y9(Dd,Sd(Ad()));var{default:kd,...Z9}=X9,so=kd!==void 0?kd:Z9;var c0=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function d0(e,t,n,a){e.addEventListener?e.addEventListener(t,n,a):e.attachEvent&&e.attachEvent("on".concat(t),function(){n(window.event)})}function _d(e,t){for(var n=t.slice(0,t.length-1),a=0;a=0;)t[n-1]+=",",t.splice(n,1),n=t.lastIndexOf("");return t}function Q9(e,t){for(var n=e.length>=t.length?e:t,a=e.length>=t.length?t:e,r=!0,u=0;u=0&&He.splice(n,1),e.key&&e.key.toLowerCase()==="meta"&&He.splice(0,He.length),(t===93||t===224)&&(t=91),t in xt){xt[t]=!1;for(var a in An)An[a]===t&&(Ne[a]=!1)}}function s6(e){if(typeof e>"u")Object.keys(ot).forEach(function(o){return delete ot[o]});else if(Array.isArray(e))e.forEach(function(o){o.key&&g0(o)});else if(typeof e=="object")e.key&&g0(e);else if(typeof e=="string"){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?_d(An,s):[];ot[g]=ot[g].filter(function(p){var f=a?p.method===a:!0;return!(f&&p.scope===n&&Q9(p.mods,m))})}})};function Pd(e,t,n,a){if(t.element===a){var r;if(t.scope===n||t.scope==="all"){r=t.mods.length>0;for(var u in xt)Object.prototype.hasOwnProperty.call(xt,u)&&(!xt[u]&&t.mods.indexOf(+u)>-1||xt[u]&&t.mods.indexOf(+u)===-1)&&(r=!1);(t.mods.length===0&&!xt[16]&&!xt[18]&&!xt[17]&&!xt[91]||r||t.shortcut==="*")&&t.method(e,t)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}}function Md(e,t){var n=ot["*"],a=e.keyCode||e.which||e.charCode;if(Ne.filter.call(this,e)){if((a===93||a===224)&&(a=91),He.indexOf(a)===-1&&a!==229&&He.push(a),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(f){var S=p0[f];e[f]&&He.indexOf(S)===-1?He.push(S):!e[f]&&He.indexOf(S)>-1?He.splice(He.indexOf(S),1):f==="metaKey"&&e[f]&&He.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(He=He.slice(He.indexOf(S))))}),a in xt){xt[a]=!0;for(var r in An)An[r]===a&&(Ne[r]=!0);if(!n)return}for(var u in xt)Object.prototype.hasOwnProperty.call(xt,u)&&(xt[u]=e[p0[u]]);e.getModifierState&&!(e.altKey&&!e.ctrlKey)&&e.getModifierState("AltGraph")&&(He.indexOf(17)===-1&&He.push(17),He.indexOf(18)===-1&&He.push(18),xt[17]=!0,xt[18]=!0);var o=ou();if(n)for(var i=0;i-1}function Ne(e,t,n){He=[];var a=Bd(e),r=[],u="all",o=document,i=0,s=!1,l=!0,c="+",g=!1;for(n===void 0&&typeof t=="function"&&(n=t),Object.prototype.toString.call(t)==="[object Object]"&&(t.scope&&(u=t.scope),t.element&&(o=t.element),t.keyup&&(s=t.keyup),t.keydown!==void 0&&(l=t.keydown),t.capture!==void 0&&(g=t.capture),typeof t.splitKey=="string"&&(c=t.splitKey)),typeof t=="string"&&(u=t);i1&&(r=_d(An,e)),e=e[e.length-1],e=e==="*"?"*":co(e),e in ot||(ot[e]=[]),ot[e].push({keyup:s,keydown:l,scope:u,mods:r,shortcut:a[i],method:n,key:a[i],splitKey:c,element:o});typeof o<"u"&&!l6(o)&&window&&(Id.push(o),d0(o,"keydown",function(m){Md(m,o)},g),Ld||(Ld=!0,d0(window,"focus",function(){He=[]},g)),d0(o,"keyup",function(m){Md(m,o),i6(m)},g))}function c6(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(ot).forEach(function(n){var a=ot[n].filter(function(r){return r.scope===t&&r.shortcut===e});a.forEach(function(r){r&&r.method&&r.method()})})}var m0={getPressedKeyString:a6,setScope:Od,getScope:ou,deleteScope:o6,getPressedKeyCodes:n6,isPressed:u6,filter:r6,trigger:c6,unbind:s6,keyMap:uu,modifier:An,modifierMap:p0};for(lo in m0)Object.prototype.hasOwnProperty.call(m0,lo)&&(Ne[lo]=m0[lo]);var lo;typeof document<"u"&&(Fd=window.hotkeys,Ne.noConflict=function(e){return e&&window.hotkeys===Ne&&(window.hotkeys=Fd),Ne},window.hotkeys=Ne);var Fd;var d6=class{#e=performance.now();reset(){this.#e=performance.now()}stop(e){let t=performance.now(),n=Math.round(t-this.#e);this.#e=t}},g6=class{#e=1;get level(){return this.#e}setLevel(e){switch(e){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...e){this.#e<=0}v(...e){this.#e<=0}info(...e){this.#e<=1}l(...e){this.#e<=1}warn(...e){this.#e<=2}error(...e){this.#e<=3}fatal(...e){this.#e<=4}timing(){return this.level===0?new d6:{reset:()=>{},stop:()=>{}}}},f0=new g6,m6="poegempjloogba",p6="ension://",f6="me-";function iu(e){if(!e)return[!1,!0];let t=new Date(e).getTime(),n=new Date().getTime(),a=t-n<15e3;return[t-n>3e3,a]}function Wd(e){return e?e.PROD==="1":!0}function $d(e){return e?e.MOCK==="1":!1}function qd(e){return new Promise((t,n)=>{setTimeout(()=>{t()},e)})}var h6="rome-ext";function b6(e,t){return t?e+(t-e%t):e}function y6(e,t){return e.split(t).length-1}function T6(e){let t=Date.now(),n=1;for(let a of e)n+=y6(a,"i");return b6(t,n)}function E6(e,t){return Math.floor(Math.random()*(t-e+1))+e}var x6="extension",C6="chro";function v6(){return E6(1e6,1e8)}var Nd="BrowserExt";function w6(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}var Ud="DeepL",jd="ension",k6="ch"+h6+p6+"cofdb"+m6+"gkncekinflcnj";function Kd(e){let{contentType:t,userAgent:n,url:a,authorization:r,clientVersion:u}=e,o=new URL(a),i=new Headers;if(i.append("authority",o.hostname),i.append("accept","*/*"),i.append("accept-language","ja"),r&&i.append("authorization",`Bearer ${r}`),i.append("cache-control","no-cache"),t?i.append("content-type",t):i.append("content-type","application/json; charset=utf-8"),i.append("origin",k6),i.append("pragma","no-cache"),i.append("referer","https://www.deepl.com/"),i.append("sec-fetch-dest","empty"),i.append("sec-fetch-mode","cors"),i.append("sec-fetch-site","none"),n)i.append("user-agent",n);else if(globalThis&&globalThis.navigator&&globalThis.navigator.userAgent){let l=globalThis.navigator.userAgent;i.append("user-agent",`${Ud}${Nd}${jd}/${u||"1.1.1"} ${l}`)}else i.append("user-agent",`${Ud}${Nd}${jd}/${u||"1.1.1"} Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.78`);let s={};for(let[l,c]of i.entries())s[l]=c;return s}function S6(e){let t="1.1.1",{texts:n,target_lang:a,source_lang:r}=e,u={jsonrpc:"2.0",method:"LMT_handle_texts",params:{texts:n.map(i=>({text:i})),html:"enabled",lang:{target_lang:a,source_lang_user_selected:r||"auto",preference:{weight:{BG:.00119,CS:.04360000000000001,DA:.007090000000000001,DE:.02142,EL:.00287,EN:4.79277,ES:.029710000000000004,ET:.007300000000000001,FI:.013850000000000001,FR:.04227,HU:.019000000000000003,ID:.00423,IT:.03592,JA:.00453,LT:.031700000000000006,LV:.0027,NL:.02375,PL:.044520000000000004,PT:.017320000000000002,RO:.009040000000000001,RU:.00234,SK:.04977,SL:.00691,SV:.0049700000000000005,TR:.01076,UK:.00201,ZH:.004880000000000001}}},timestamp:T6(n)},id:v6()},o=Kd({url:"https://api.deepl.com/jsonrpc",clientVersion:t,authorization:e.authorization});return{url:`https://api.deepl.com/jsonrpc?client=${C6+f6+x6},${t}`,headers:o,body:w6(u),method:"POST"}}function A6(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Aa={},Da={};async function zd(e,t){if(!e)throw new Error("auth key is required");let{state:n}=t,{refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u}=n,[o,i]=iu(r);i||(i=iu(u)[1]);let s={refreshToken:a,refreshTokenExpiresAt:r,refreshTokenChecksAt:u||new Date().toISOString()};o||(s=await go(e,t));let[l,c]=iu(s.refreshTokenExpiresAt);i=c,i||(i=iu(s.refreshTokenChecksAt)[1]);let g=s.refreshToken;if(Aa[g])return new Promise((m,p)=>{Aa[g].push((f,S)=>{f?p(f):m(S)})});Aa[g]=[];try{let m=await D6(g,t.onFetch),p={state:{...n,...s,...m},shouldUpdateRefreshToken:i};return Aa[g].forEach(f=>{f(null,p)}),delete Aa[g],p}catch(m){throw Aa[g].forEach(p=>{p(m)}),delete Aa[g],m}}async function go(e,t){if(!e)throw new Error("auth key is required");let{refreshTokenEndpoint:n,onFetch:a}=t;if(Da[e])return new Promise((r,u)=>{Da[e].push((o,i)=>{o?u(o):r(i)})});try{Da[e]=[];let r=new URLSearchParams({grant_type:"auth_key",auth_key:e}),u=new URL("/refresh_token?"+r.toString(),n),o=await a(u.toString()),i=new Date().getTime(),s=i+o.refresh_token_expires_in*1e3,l=i+o.refresh_token_checks_in*1e3,c={refreshToken:o.refresh_token,refreshTokenExpiresAt:new Date(s).toISOString(),refreshTokenChecksAt:new Date(l).toISOString()};return Da[e].forEach(g=>{g(null,c)}),delete Da[e],c}catch(r){throw Da[e].forEach(u=>{u(r)}),delete Da[e],r}}async function D6(e,t){if(!e)throw new Error("refreshToken is required");let n=Wd(),a=$d();if(!n&&!a){await qd(400);let i=new Date;return{accessToken:"test",accessTokenExpiresAt:new Date(i.getTime()+1e3*5).toISOString()}}let r="https://w.deepl.com/oidc/token",u=await t(r,{headers:Kd({url:r,contentType:"application/x-www-form-urlencoded"}),body:`grant_type=refresh_token&refresh_token=${e}`,method:"POST"}),o=A6(u.access_token);if(u.expires_in){let i=new Date,s=new Date(i.getTime()+u.expires_in*1e3);o.accessTokenExpiresAt=s.toISOString()}return o}async function Hd(e,t,n){if(!t)throw new Error("body is required");let a=new URLSearchParams(t),r=a.getAll("text");if(r.length<1)throw new Error("No text to translate");if(L6(r)>5e3)throw new Error("text too long, the max length is 5000 characters.");let u=a.get("target_lang");if(!u)throw new Error("No target language");let o=a.get("source_lang"),i={...S6({texts:r,authorization:e,target_lang:u,source_lang:o}),responseType:"raw"},s=Wd(),l=$d();if(!s&&!l)return await qd(50),{translations:r.map(p=>({text:"mock: "+p,detected_source_language:"EN"}))};let c=await n(i.url,i),g=JSON.parse(c.body),m=[];if(g.result&&g.result.texts)m=g.result.texts.map(p=>({text:p.text,detected_source_language:g.result.lang}));else throw new Error("No response from deepl api");return{translations:m}}function L6(e){let t=0;for(let n of e)t+=n.length;return t}async function P6(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={redirect:"follow",...a};let r=await M6(t,a);if(r.ok&&r.status>=200&&r.status<400)if(n==="json"){let u=await r.json();return f0.debug("response",JSON.stringify(u,null,2)),u}else{if(n==="text")return await r.text();if(n==="raw"){let u=await r.text(),o=Object.fromEntries([...r.headers.entries()]),i=r.url;return{body:u,headers:o,status:r.status,statusText:r.statusText,url:i}}}else{let u;try{u=await r.text()}catch(o){f0.error("parse response failed",o)}throw new Error(r.status+": "+r.statusText||" "+u||"")}}async function M6(e,t){let n=15e3;t&&t.timeout&&(n=t.timeout);let a=new AbortController,r=setTimeout(()=>a.abort(),n),u=await fetch(e,{...t,signal:a.signal});return clearTimeout(r),u}var mo=class{constructor(e,t){this.state={},this.isStateChanged=!1,this.onFetch=(n,a)=>P6({url:n,...a}),this.refreshTokenEndpoint="https://api.immersivetranslate.com",this.authKey=e,t=t||{},t.state&&(this.state=t.state),t.onFetch&&(this.onFetch=t.onFetch),t.refreshTokenEndpoint&&(this.refreshTokenEndpoint=t.refreshTokenEndpoint),t.onStateChange&&(this.onStateChange=t.onStateChange)}getState(){return this.state}getIsStateChanged(){let e=this.isStateChanged;return this.isStateChanged=!1,e}setState(e){this.state=e,this.isStateChanged=!0,this.onStateChange&&this.onStateChange(e)}async translateText(e,t,n){await this.updateToken();let a=new URLSearchParams;(Array.isArray(e)?e:[e]).forEach((u,o)=>{a.append("text",u)}),t&&a.append("source_lang",t),n&&a.append("target_lang",n);let r=await Hd(this.state.accessToken,a.toString(),this.onFetch);if(r&&r.translations&&r.translations.length>0)return Array.isArray(e)?r.translations.map(u=>({text:u.text,detectedSourceLanguage:u.detected_source_language})):{text:r.translations[0].text,detectedSourceLanguage:r.translations[0].detected_source_language};throw new Error("No translation result")}async translateApi(e){return await this.updateToken(),await Hd(this.state.accessToken,e,this.onFetch)}async forceUpdateRefreshToken(){await go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(e=>{this.setState({...this.state,...e})})}onFetchTokenError(e){throw f0.error("onFetchTokenError",e),e&&e.message&&(e.message.indexOf("401")>-1||e.message.indexOf("400")>-1)&&this.setState({}),e}async updateToken(){let{accessTokenExpiresAt:e}=this.state,[t,n]=iu(e);if(t)n&&zd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(({state:a,shouldUpdateRefreshToken:r})=>{this.setState({...this.state,...a}),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})})}).catch(a=>{this.onFetchTokenError(a)});else try{let{state:a,shouldUpdateRefreshToken:r}=await zd(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint});this.setState(a),r&&go(this.authKey,{state:this.state,onFetch:this.onFetch,refreshTokenEndpoint:this.refreshTokenEndpoint}).then(u=>{this.setState({...this.state,...u})}).catch(u=>{})}catch(a){this.onFetchTokenError(a)}}};var F6={"Amazon Silk":"amazon_silk","Android Browser":"android",Bada:"bada",BlackBerry:"blackberry",Chrome:"chrome",Chromium:"chromium",Electron:"electron",Epiphany:"epiphany",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot","Internet Explorer":"ie","K-Meleon":"k_meleon",Maxthon:"maxthon","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver",Opera:"opera","Opera Coast":"opera_coast",PhantomJS:"phantomjs",Puffin:"puffin",QupZilla:"qupzilla",QQ:"qq",QQLite:"qqlite",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SeaMonkey:"seamonkey",Sleipnir:"sleipnir",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat","Yandex Browser":"yandex",Roku:"roku"},Gd={amazon_silk:"Amazon Silk",android:"Android Browser",bada:"Bada",blackberry:"BlackBerry",chrome:"Chrome",chromium:"Chromium",electron:"Electron",epiphany:"Epiphany",firefox:"Firefox",focus:"Focus",generic:"Generic",googlebot:"Googlebot",google_search:"Google Search",ie:"Internet Explorer",k_meleon:"K-Meleon",maxthon:"Maxthon",edge:"Microsoft Edge",mz:"MZ Browser",naver:"NAVER Whale Browser",opera:"Opera",opera_coast:"Opera Coast",phantomjs:"PhantomJS",puffin:"Puffin",qupzilla:"QupZilla",qq:"QQ Browser",qqlite:"QQ Browser Lite",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",sleipnir:"Sleipnir",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yandex:"Yandex Browser"},et={tablet:"tablet",mobile:"mobile",desktop:"desktop",tv:"tv"},Rt={WindowsPhone:"Windows Phone",Windows:"Windows",MacOS:"macOS",iOS:"iOS",Android:"Android",WebOS:"WebOS",BlackBerry:"BlackBerry",Bada:"Bada",Tizen:"Tizen",Linux:"Linux",ChromeOS:"Chrome OS",PlayStation4:"PlayStation 4",Roku:"Roku"},ta={EdgeHTML:"EdgeHTML",Blink:"Blink",Trident:"Trident",Presto:"Presto",Gecko:"Gecko",WebKit:"WebKit"},N=class{static getFirstMatch(e,t){let n=t.match(e);return n&&n.length>0&&n[1]||""}static getSecondMatch(e,t){let n=t.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,t,n){if(e.test(t))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),t[0]===10)switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){let t=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(t.push(0),!(t[0]===1&&t[1]<5)){if(t[0]===1&&t[1]<6)return"Cupcake";if(t[0]===1&&t[1]>=6)return"Donut";if(t[0]===2&&t[1]<2)return"Eclair";if(t[0]===2&&t[1]===2)return"Froyo";if(t[0]===2&&t[1]>2)return"Gingerbread";if(t[0]===3)return"Honeycomb";if(t[0]===4&&t[1]<1)return"Ice Cream Sandwich";if(t[0]===4&&t[1]<4)return"Jelly Bean";if(t[0]===4&&t[1]>=4)return"KitKat";if(t[0]===5)return"Lollipop";if(t[0]===6)return"Marshmallow";if(t[0]===7)return"Nougat";if(t[0]===8)return"Oreo";if(t[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,t,n=!1){let a=N.getVersionPrecision(e),r=N.getVersionPrecision(t),u=Math.max(a,r),o=0,i=N.map([e,t],s=>{let l=u-N.getVersionPrecision(s),c=s+new Array(l+1).join(".0");return N.map(c.split("."),g=>new Array(20-g.length).join("0")+g).reverse()});for(n&&(o=u-Math.min(a,r)),u-=1;u>=o;){if(i[0][u]>i[1][u])return 1;if(i[0][u]===i[1][u]){if(u===o)return 0;u-=1}else if(i[0][u]{n[o]=u[o]})}return e}static getBrowserAlias(e){return F6[e]}static getBrowserTypeByAlias(e){return Gd[e]||""}},je=/version\/(\d+(\.?_?\d+)+)/i,_6=[{test:[/googlebot/i],describe(e){let t={name:"Googlebot"},n=N.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){let t={name:"Opera"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){let t={name:"Opera"},n=N.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){let t={name:"Samsung Internet for Android"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){let t={name:"NAVER Whale Browser"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){let t={name:"MZ Browser"},n=N.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){let t={name:"Focus"},n=N.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){let t={name:"Swing"},n=N.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){let t={name:"Opera Coast"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){let t={name:"Opera Touch"},n=N.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){let t={name:"Yandex Browser"},n=N.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){let t={name:"UC Browser"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){let t={name:"Maxthon"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){let t={name:"Epiphany"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){let t={name:"Puffin"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){let t={name:"Sleipnir"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){let t={name:"K-Meleon"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){let t={name:"WeChat"},n=N.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){let t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=N.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){let t={name:"Internet Explorer"},n=N.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){let t={name:"Microsoft Edge"},n=N.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){let t={name:"Microsoft Edge"},n=N.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){let t={name:"Vivaldi"},n=N.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){let t={name:"SeaMonkey"},n=N.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){let t={name:"Sailfish"},n=N.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){let t={name:"Amazon Silk"},n=N.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){let t={name:"PhantomJS"},n=N.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){let t={name:"SlimerJS"},n=N.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t={name:"BlackBerry"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){let t={name:"WebOS Browser"},n=N.getFirstMatch(je,e)||N.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){let t={name:"Bada"},n=N.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){let t={name:"Tizen"},n=N.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){let t={name:"QupZilla"},n=N.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){let t={name:"Firefox"},n=N.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){let t={name:"Electron"},n=N.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){let t={name:"Miui"},n=N.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){let t={name:"Chromium"},n=N.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){let t={name:"Chrome"},n=N.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){let t={name:"Google Search"},n=N.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t={name:"Android Browser"},n=N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){let t={name:"PlayStation 4"},n=N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){let t={name:"Safari"},n=N.getFirstMatch(je,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){let t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,a=e.search("\\(")!==-1?n:t;return{name:N.getFirstMatch(a,e),version:N.getSecondMatch(a,e)}}}],B6=_6,R6=[{test:[/Roku\/DVP/],describe(e){let t=N.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:Rt.Roku,version:t}}},{test:[/windows phone/i],describe(e){let t=N.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:Rt.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){let t=N.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=N.getWindowsVersionName(t);return{name:Rt.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){let t={name:Rt.iOS},n=N.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){let t=N.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=N.getMacOSVersionName(t),a={name:Rt.MacOS,version:t};return n&&(a.versionName=n),a}},{test:[/(ipod|iphone|ipad)/i],describe(e){let t=N.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:Rt.iOS,version:t}}},{test(e){let t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){let t=N.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=N.getAndroidVersionName(t),a={name:Rt.Android,version:t};return n&&(a.versionName=n),a}},{test:[/(web|hpw)[o0]s/i],describe(e){let t=N.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:Rt.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){let t=N.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||N.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||N.getFirstMatch(/\bbb(\d+)/i,e);return{name:Rt.BlackBerry,version:t}}},{test:[/bada/i],describe(e){let t=N.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:Rt.Bada,version:t}}},{test:[/tizen/i],describe(e){let t=N.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:Rt.Linux}}},{test:[/CrOS/],describe(){return{name:Rt.ChromeOS}}},{test:[/PlayStation 4/],describe(e){let t=N.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:Rt.PlayStation4,version:t}}}],I6=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){let t=N.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:et.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:et.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:et.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:et.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:et.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:et.tablet}}},{test(e){let t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){let t=N.getFirstMatch(/(ipod|iphone)/i,e);return{type:et.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:et.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:et.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:et.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:et.mobile,vendor:"Microsoft"}}},{test(e){let t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:et.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:et.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:et.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:et.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:et.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:et.tv}}}],O6=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:ta.Blink};let t=N.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:ta.EdgeHTML,version:t}}},{test:[/trident/i],describe(e){let t={name:ta.Trident},n=N.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){let t={name:ta.Presto},n=N.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){let t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){let t={name:ta.Gecko},n=N.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:ta.Blink}}},{test:[/(apple)?webkit/i],describe(e){let t={name:ta.WebKit},n=N.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}],N6=class{constructor(e,t=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},t!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};let e=N.find(B6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};let e=N.find(R6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){let{name:t}=this.getOS();return e?String(t).toLowerCase()||"":t||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){let{type:t}=this.getPlatform();return e?String(t).toLowerCase()||"":t||""}parsePlatform(){this.parsedResult.platform={};let e=N.find(I6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};let e=N.find(O6,t=>{if(typeof t.test=="function")return t.test(this);if(t.test instanceof Array)return t.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return N.assign({},this.parsedResult)}satisfies(e){let t={},n=0,a={},r=0;if(Object.keys(e).forEach(u=>{let o=e[u];typeof o=="string"?(a[u]=o,r+=1):typeof o=="object"&&(t[u]=o,n+=1)}),n>0){let u=Object.keys(t),o=N.find(u,s=>this.isOS(s));if(o){let s=this.satisfies(t[o]);if(s!==void 0)return s}let i=N.find(u,s=>this.isPlatform(s));if(i){let s=this.satisfies(t[i]);if(s!==void 0)return s}}if(r>0){let u=Object.keys(a),o=N.find(u,i=>this.isBrowser(i,!0));if(o!==void 0)return this.compareVersion(a[o])}}isBrowser(e,t=!1){let n=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),r=N.getBrowserTypeByAlias(a);return t&&r&&(a=r.toLowerCase()),a===n}compareVersion(e){let t=[0],n=e,a=!1,r=this.getBrowserVersion();if(typeof r=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(a=!0,n=e.substr(2)):t=[],e[0]===">"?t.push(1):t.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(a=!0,n=e.substr(1)),t.indexOf(N.compareVersions(r,n,a))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,t=!1){return this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(t=>this.is(t))}},Vd=N6,U6=class{static getParser(e,t=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new Vd(e,t)}static parse(e){return new Vd(e).getResult()}static get BROWSER_MAP(){return Gd}static get ENGINE_MAP(){return ta}static get OS_MAP(){return Rt}static get PLATFORMS_MAP(){return et}},po=U6;var{entries:ng,setPrototypeOf:Jd,isFrozen:j6,getPrototypeOf:z6,getOwnPropertyDescriptor:H6}=Object,{freeze:It,seal:pn,create:W6}=Object,{apply:x0,construct:C0}=typeof Reflect<"u"&&Reflect;x0||(x0=function(e,t,n){return e.apply(t,n)});It||(It=function(e){return e});pn||(pn=function(e){return e});C0||(C0=function(e,t){return new e(...t)});var $6=nn(Array.prototype.forEach),Yd=nn(Array.prototype.pop),su=nn(Array.prototype.push),bo=nn(String.prototype.toLowerCase),h0=nn(String.prototype.toString),q6=nn(String.prototype.match),mn=nn(String.prototype.replace),K6=nn(String.prototype.indexOf),V6=nn(String.prototype.trim),Yt=nn(RegExp.prototype.test),lu=G6(TypeError);function nn(e){return function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r/gm),Q6=pn(/\${[\w\W]*}/gm),e1=pn(/^data-[\-\w.\u00B7-\uFFFF]/),t1=pn(/^aria-[\-\w]+$/),ag=pn(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),n1=pn(/^(?:\w+script|data):/i),a1=pn(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),rg=pn(/^html$/i),tg=Object.freeze({__proto__:null,MUSTACHE_EXPR:X6,ERB_EXPR:Z6,TMPLIT_EXPR:Q6,DATA_ATTR:e1,ARIA_ATTR:t1,IS_ALLOWED_URI:ag,IS_SCRIPT_OR_DATA:n1,ATTR_WHITESPACE:a1,DOCTYPE_NAME:rg}),r1=()=>typeof window>"u"?null:window,u1=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,a="data-tt-policy-suffix";t&&t.hasAttribute(a)&&(n=t.getAttribute(a));let r="dompurify"+(n?"#"+n:"");try{return e.createPolicy(r,{createHTML(u){return u},createScriptURL(u){return u}})}catch{return null}};function ug(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:r1(),t=T=>ug(T);if(t.version="3.0.3",t.removed=[],!e||!e.document||e.document.nodeType!==9)return t.isSupported=!1,t;let n=e.document,a=n.currentScript,{document:r}=e,{DocumentFragment:u,HTMLTemplateElement:o,Node:i,Element:s,NodeFilter:l,NamedNodeMap:c=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:g,DOMParser:m,trustedTypes:p}=e,f=s.prototype,S=fo(f,"cloneNode"),v=fo(f,"nextSibling"),h=fo(f,"childNodes"),k=fo(f,"parentNode");if(typeof o=="function"){let T=r.createElement("template");T.content&&T.content.ownerDocument&&(r=T.content.ownerDocument)}let F,M="",{implementation:D,createNodeIterator:P,createDocumentFragment:w,getElementsByTagName:x}=r,{importNode:b}=n,E={};t.isSupported=typeof ng=="function"&&typeof k=="function"&&D&&D.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:I,ERB_EXPR:L,TMPLIT_EXPR:W,DATA_ATTR:_,ARIA_ATTR:B,IS_SCRIPT_OR_DATA:G,ATTR_WHITESPACE:re}=tg,{IS_ALLOWED_URI:ye}=tg,V=null,ge=Ae({},[...Xd,...b0,...y0,...T0,...Zd]),de=null,C=Ae({},[...Qd,...E0,...eg,...ho]),z=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Z=null,pe=null,se=!0,R=!0,O=!1,ae=!0,ee=!1,ne=!1,te=!1,oe=!1,Y=!1,ce=!1,Le=!1,Oe=!0,fe=!1,Xe="user-content-",pt=!0,We=!1,$e={},qe=null,Ht=Ae({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Jn=null,Ze=Ae({},["audio","video","img","source","image","track"]),wn=null,dn=Ae({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ft="http://www.w3.org/1998/Math/MathML",Vt="http://www.w3.org/2000/svg",U="http://www.w3.org/1999/xhtml",me=U,Be=!1,Se=null,De=Ae({},[ft,Vt,U],h0),Ge,Et=["application/xhtml+xml","text/html"],Pe="text/html",Re,Gt=null,bh=r.createElement("form"),Xc=function(T){return T instanceof RegExp||T instanceof Function},xs=function(T){if(!(Gt&&Gt===T)){if((!T||typeof T!="object")&&(T={}),T=nr(T),Ge=Et.indexOf(T.PARSER_MEDIA_TYPE)===-1?Ge=Pe:Ge=T.PARSER_MEDIA_TYPE,Re=Ge==="application/xhtml+xml"?h0:bo,V="ALLOWED_TAGS"in T?Ae({},T.ALLOWED_TAGS,Re):ge,de="ALLOWED_ATTR"in T?Ae({},T.ALLOWED_ATTR,Re):C,Se="ALLOWED_NAMESPACES"in T?Ae({},T.ALLOWED_NAMESPACES,h0):De,wn="ADD_URI_SAFE_ATTR"in T?Ae(nr(dn),T.ADD_URI_SAFE_ATTR,Re):dn,Jn="ADD_DATA_URI_TAGS"in T?Ae(nr(Ze),T.ADD_DATA_URI_TAGS,Re):Ze,qe="FORBID_CONTENTS"in T?Ae({},T.FORBID_CONTENTS,Re):Ht,Z="FORBID_TAGS"in T?Ae({},T.FORBID_TAGS,Re):{},pe="FORBID_ATTR"in T?Ae({},T.FORBID_ATTR,Re):{},$e="USE_PROFILES"in T?T.USE_PROFILES:!1,se=T.ALLOW_ARIA_ATTR!==!1,R=T.ALLOW_DATA_ATTR!==!1,O=T.ALLOW_UNKNOWN_PROTOCOLS||!1,ae=T.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ee=T.SAFE_FOR_TEMPLATES||!1,ne=T.WHOLE_DOCUMENT||!1,Y=T.RETURN_DOM||!1,ce=T.RETURN_DOM_FRAGMENT||!1,Le=T.RETURN_TRUSTED_TYPE||!1,oe=T.FORCE_BODY||!1,Oe=T.SANITIZE_DOM!==!1,fe=T.SANITIZE_NAMED_PROPS||!1,pt=T.KEEP_CONTENT!==!1,We=T.IN_PLACE||!1,ye=T.ALLOWED_URI_REGEXP||ag,me=T.NAMESPACE||U,z=T.CUSTOM_ELEMENT_HANDLING||{},T.CUSTOM_ELEMENT_HANDLING&&Xc(T.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(z.tagNameCheck=T.CUSTOM_ELEMENT_HANDLING.tagNameCheck),T.CUSTOM_ELEMENT_HANDLING&&Xc(T.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(z.attributeNameCheck=T.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),T.CUSTOM_ELEMENT_HANDLING&&typeof T.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(z.allowCustomizedBuiltInElements=T.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ee&&(R=!1),ce&&(Y=!0),$e&&(V=Ae({},[...Zd]),de=[],$e.html===!0&&(Ae(V,Xd),Ae(de,Qd)),$e.svg===!0&&(Ae(V,b0),Ae(de,E0),Ae(de,ho)),$e.svgFilters===!0&&(Ae(V,y0),Ae(de,E0),Ae(de,ho)),$e.mathMl===!0&&(Ae(V,T0),Ae(de,eg),Ae(de,ho))),T.ADD_TAGS&&(V===ge&&(V=nr(V)),Ae(V,T.ADD_TAGS,Re)),T.ADD_ATTR&&(de===C&&(de=nr(de)),Ae(de,T.ADD_ATTR,Re)),T.ADD_URI_SAFE_ATTR&&Ae(wn,T.ADD_URI_SAFE_ATTR,Re),T.FORBID_CONTENTS&&(qe===Ht&&(qe=nr(qe)),Ae(qe,T.FORBID_CONTENTS,Re)),pt&&(V["#text"]=!0),ne&&Ae(V,["html","head","body"]),V.table&&(Ae(V,["tbody"]),delete Z.tbody),T.TRUSTED_TYPES_POLICY){if(typeof T.TRUSTED_TYPES_POLICY.createHTML!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof T.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw lu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');F=T.TRUSTED_TYPES_POLICY,M=F.createHTML("")}else F===void 0&&(F=u1(p,a)),F!==null&&typeof M=="string"&&(M=F.createHTML(""));It&&It(T),Gt=T}},Zc=Ae({},["mi","mo","mn","ms","mtext"]),Qc=Ae({},["foreignobject","desc","title","annotation-xml"]),yh=Ae({},["title","style","font","a","script"]),zu=Ae({},b0);Ae(zu,y0),Ae(zu,J6);let Cs=Ae({},T0);Ae(Cs,Y6);let Th=function(T){let Q=k(T);(!Q||!Q.tagName)&&(Q={namespaceURI:me,tagName:"template"});let $=bo(T.tagName),Ie=bo(Q.tagName);return Se[T.namespaceURI]?T.namespaceURI===Vt?Q.namespaceURI===U?$==="svg":Q.namespaceURI===ft?$==="svg"&&(Ie==="annotation-xml"||Zc[Ie]):!!zu[$]:T.namespaceURI===ft?Q.namespaceURI===U?$==="math":Q.namespaceURI===Vt?$==="math"&&Qc[Ie]:!!Cs[$]:T.namespaceURI===U?Q.namespaceURI===Vt&&!Qc[Ie]||Q.namespaceURI===ft&&!Zc[Ie]?!1:!Cs[$]&&(yh[$]||!zu[$]):!!(Ge==="application/xhtml+xml"&&Se[T.namespaceURI]):!1},Ja=function(T){su(t.removed,{element:T});try{T.parentNode.removeChild(T)}catch{T.remove()}},vs=function(T,Q){try{su(t.removed,{attribute:Q.getAttributeNode(T),from:Q})}catch{su(t.removed,{attribute:null,from:Q})}if(Q.removeAttribute(T),T==="is"&&!de[T])if(Y||ce)try{Ja(Q)}catch{}else try{Q.setAttribute(T,"")}catch{}},e4=function(T){let Q,$;if(oe)T=""+T;else{let Bt=q6(T,/^[\r\n\t ]+/);$=Bt&&Bt[0]}Ge==="application/xhtml+xml"&&me===U&&(T=''+T+"");let Ie=F?F.createHTML(T):T;if(me===U)try{Q=new m().parseFromString(Ie,Ge)}catch{}if(!Q||!Q.documentElement){Q=D.createDocument(me,"template",null);try{Q.documentElement.innerHTML=Be?M:Ie}catch{}}let ct=Q.body||Q.documentElement;return T&&$&&ct.insertBefore(r.createTextNode($),ct.childNodes[0]||null),me===U?x.call(Q,ne?"html":"body")[0]:ne?Q.documentElement:ct},t4=function(T){return P.call(T.ownerDocument||T,T,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Eh=function(T){return T instanceof g&&(typeof T.nodeName!="string"||typeof T.textContent!="string"||typeof T.removeChild!="function"||!(T.attributes instanceof c)||typeof T.removeAttribute!="function"||typeof T.setAttribute!="function"||typeof T.namespaceURI!="string"||typeof T.insertBefore!="function"||typeof T.hasChildNodes!="function")},Hu=function(T){return typeof i=="object"?T instanceof i:T&&typeof T=="object"&&typeof T.nodeType=="number"&&typeof T.nodeName=="string"},On=function(T,Q,$){E[T]&&$6(E[T],Ie=>{Ie.call(t,Q,$,Gt)})},n4=function(T){let Q;if(On("beforeSanitizeElements",T,null),Eh(T))return Ja(T),!0;let $=Re(T.nodeName);if(On("uponSanitizeElement",T,{tagName:$,allowedTags:V}),T.hasChildNodes()&&!Hu(T.firstElementChild)&&(!Hu(T.content)||!Hu(T.content.firstElementChild))&&Yt(/<[/\w]/g,T.innerHTML)&&Yt(/<[/\w]/g,T.textContent))return Ja(T),!0;if(!V[$]||Z[$]){if(!Z[$]&&r4($)&&(z.tagNameCheck instanceof RegExp&&Yt(z.tagNameCheck,$)||z.tagNameCheck instanceof Function&&z.tagNameCheck($)))return!1;if(pt&&!qe[$]){let Ie=k(T)||T.parentNode,ct=h(T)||T.childNodes;if(ct&&Ie){let Bt=ct.length;for(let Wt=Bt-1;Wt>=0;--Wt)Ie.insertBefore(S(ct[Wt],!0),v(T))}}return Ja(T),!0}return T instanceof s&&!Th(T)||($==="noscript"||$==="noembed")&&Yt(/<\/no(script|embed)/i,T.innerHTML)?(Ja(T),!0):(ee&&T.nodeType===3&&(Q=T.textContent,Q=mn(Q,I," "),Q=mn(Q,L," "),Q=mn(Q,W," "),T.textContent!==Q&&(su(t.removed,{element:T.cloneNode()}),T.textContent=Q)),On("afterSanitizeElements",T,null),!1)},a4=function(T,Q,$){if(Oe&&(Q==="id"||Q==="name")&&($ in r||$ in bh))return!1;if(!(R&&!pe[Q]&&Yt(_,Q))&&!(se&&Yt(B,Q))){if(!de[Q]||pe[Q]){if(!(r4(T)&&(z.tagNameCheck instanceof RegExp&&Yt(z.tagNameCheck,T)||z.tagNameCheck instanceof Function&&z.tagNameCheck(T))&&(z.attributeNameCheck instanceof RegExp&&Yt(z.attributeNameCheck,Q)||z.attributeNameCheck instanceof Function&&z.attributeNameCheck(Q))||Q==="is"&&z.allowCustomizedBuiltInElements&&(z.tagNameCheck instanceof RegExp&&Yt(z.tagNameCheck,$)||z.tagNameCheck instanceof Function&&z.tagNameCheck($))))return!1}else if(!wn[Q]&&!Yt(ye,mn($,re,""))&&!((Q==="src"||Q==="xlink:href"||Q==="href")&&T!=="script"&&K6($,"data:")===0&&Jn[T])&&!(O&&!Yt(G,mn($,re,"")))&&$)return!1}return!0},r4=function(T){return T.indexOf("-")>0},u4=function(T){let Q,$,Ie,ct;On("beforeSanitizeAttributes",T,null);let{attributes:Bt}=T;if(!Bt)return;let Wt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:de};for(ct=Bt.length;ct--;){Q=Bt[ct];let{name:ht,namespaceURI:Ya}=Q;if($=ht==="value"?Q.value:V6(Q.value),Ie=Re(ht),Wt.attrName=Ie,Wt.attrValue=$,Wt.keepAttr=!0,Wt.forceKeepAttr=void 0,On("uponSanitizeAttribute",T,Wt),$=Wt.attrValue,Wt.forceKeepAttr||(vs(ht,T),!Wt.keepAttr))continue;if(!ae&&Yt(/\/>/i,$)){vs(ht,T);continue}ee&&($=mn($,I," "),$=mn($,L," "),$=mn($,W," "));let o4=Re(T.nodeName);if(a4(o4,Ie,$)){if(fe&&(Ie==="id"||Ie==="name")&&(vs(ht,T),$=Xe+$),F&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!Ya)switch(p.getAttributeType(o4,Ie)){case"TrustedHTML":{$=F.createHTML($);break}case"TrustedScriptURL":{$=F.createScriptURL($);break}}try{Ya?T.setAttributeNS(Ya,ht,$):T.setAttribute(ht,$),Yd(t.removed)}catch{}}}On("afterSanitizeAttributes",T,null)},xh=function T(Q){let $,Ie=t4(Q);for(On("beforeSanitizeShadowDOM",Q,null);$=Ie.nextNode();)On("uponSanitizeShadowNode",$,null),!n4($)&&($.content instanceof u&&T($.content),u4($));On("afterSanitizeShadowDOM",Q,null)};return t.sanitize=function(T){let Q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},$,Ie,ct,Bt;if(Be=!T,Be&&(T=""),typeof T!="string"&&!Hu(T))if(typeof T.toString=="function"){if(T=T.toString(),typeof T!="string")throw lu("dirty is not a string, aborting")}else throw lu("toString is not a function");if(!t.isSupported)return T;if(te||xs(Q),t.removed=[],typeof T=="string"&&(We=!1),We){if(T.nodeName){let Ya=Re(T.nodeName);if(!V[Ya]||Z[Ya])throw lu("root node is forbidden and cannot be sanitized in-place")}}else if(T instanceof i)$=e4(""),Ie=$.ownerDocument.importNode(T,!0),Ie.nodeType===1&&Ie.nodeName==="BODY"||Ie.nodeName==="HTML"?$=Ie:$.appendChild(Ie);else{if(!Y&&!ee&&!ne&&T.indexOf("<")===-1)return F&&Le?F.createHTML(T):T;if($=e4(T),!$)return Y?null:Le?M:""}$&&oe&&Ja($.firstChild);let Wt=t4(We?T:$);for(;ct=Wt.nextNode();)n4(ct)||(ct.content instanceof u&&xh(ct.content),u4(ct));if(We)return T;if(Y){if(ce)for(Bt=w.call($.ownerDocument);$.firstChild;)Bt.appendChild($.firstChild);else Bt=$;return(de.shadowroot||de.shadowrootmod)&&(Bt=b.call(n,Bt,!0)),Bt}let ht=ne?$.outerHTML:$.innerHTML;return ne&&V["!doctype"]&&$.ownerDocument&&$.ownerDocument.doctype&&$.ownerDocument.doctype.name&&Yt(rg,$.ownerDocument.doctype.name)&&(ht=" +`+ht),ee&&(ht=mn(ht,I," "),ht=mn(ht,L," "),ht=mn(ht,W," ")),F&&Le?F.createHTML(ht):ht},t.setConfig=function(T){xs(T),te=!0},t.clearConfig=function(){Gt=null,te=!1},t.isValidAttribute=function(T,Q,$){Gt||xs({});let Ie=Re(T),ct=Re(Q);return a4(Ie,ct,$)},t.addHook=function(T,Q){typeof Q=="function"&&(E[T]=E[T]||[],su(E[T],Q))},t.removeHook=function(T){if(E[T])return Yd(E[T])},t.removeHooks=function(T){E[T]&&(E[T]=[])},t.removeAllHooks=function(){E={}},t}var _e=ug();var v0=so.alert;var og={lineBreakMaxTextCount:"\u6362\u884C\u540E\uFF0C\u6BCF\u53E5\u8BDD\u5141\u8BB8\u7684\u6700\u5927\u5B57\u7B26\u6570\u91CF","translate-pdf":"\u70B9\u51FB\u7FFB\u8BD1 PDF","noSupportTranslate-pdf":"\u811A\u672C\u4E0D\u652F\u6301\u8BF7\u4F7F\u7528\u63D2\u4EF6","translate-firefox-local-pdf":"\u70B9\u51FB\u53BB\u4E0A\u4F20PDF",enableLineBreak:"\u5F00\u542F\u957F\u6BB5\u843D\u81EA\u52A8\u6362\u884C",sponsorLabel:"$1 \u8D77\u8D5E\u52A9\u5F00\u53D1\u8005",help:"\u5E2E\u52A9",browserShortcutsNoteForFirefox:"Firefox \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762 `about:addons`\uFF0C\u7136\u540E\u70B9\u51FB\u300C\u8BBE\u7F6E\u300D\uFF0C\u518D\u70B9\u51FB\u300C\u7BA1\u7406\u5FEB\u6377\u952E\u300D\u5373\u53EF\u8BBE\u7F6E",browserShortcutsNoteForChrome:"\u7C7BChrome \u6D4F\u89C8\u5668\u4FEE\u6539\u5FEB\u6377\u952E\u9700\u8981\u6253\u5F00\u6269\u5C55\u7BA1\u7406\u9875\u9762\uFF0C\u5728`\u7BA1\u7406\u5FEB\u6377\u952E`\u9762\u677F(`chrome://extensions/shortcuts`)\u8BBE\u7F6E\uFF0C\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u8DF3\u8F6C\u5230\u5FEB\u6377\u952E\u7BA1\u7406\u9875\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E\u683C\u5F0F\u4E3A\uFF1A",enableLineBreakDescription:"\u5F00\u542F\u540E\uFF0C\u5C06\u4F1A\u5728\u957F\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8BDD\u7ED3\u675F\u63D2\u5165\u6362\u884C\u7B26\uFF0C\u4EE5\u4FBF\u4E8E\u9605\u8BFB","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8BD1","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7F51\u9875\u53CC\u8BED\u7FFB\u8BD1\u6269\u5C55\uFF0C\u514D\u8D39\u4F7F\u7528\uFF0C\u652F\u6301 Deepl/Google/\u6709\u9053/\u817E\u8BAF\u7FFB\u8BD1\u7B49\u591A\u4E2A\u7FFB\u8BD1\u670D\u52A1\uFF0C\u652F\u6301 Firefox/Chrome/\u6CB9\u7334\u811A\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8BD1\u5E76\u9690\u85CF\u539F\u6587/\u663E\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8/\u663E\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8BD1\u9875\u9762\u4E3B\u8981\u533A\u57DF/\u663E\u793A\u539F\u6587","browser.openOptionsPage":"\u6253\u5F00\u8BBE\u7F6E\u9875","browser.toggleTranslationMask":"\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8BD1\u672C\u5730 PDF \u6587\u4EF6","browser.openEbookViewer":"\u9605\u8BFB\u672C\u5730\u7535\u5B50\u4E66","browser.openEbookBuilder":"\u5236\u4F5C\u53CC\u8BED Epub \u7535\u5B50\u4E66","browser.translateLocalHtmlFile":"\u7FFB\u8BD1 HTML/txt \u6587\u4EF6","browser.donateContext":"\u4E86\u89E3\u8D5E\u52A9\u798F\u5229","browser.translateLocalSubtitleFile":"\u7FFB\u8BD1\u672C\u5730\u5B57\u5E55\u6587\u4EF6",confirmResetConfig:"\u4F60\u786E\u5B9A\u8981\u91CD\u7F6E\u8BBE\u7F6E\u5417\uFF1F",translationLineBreakSettingTitle:"\u8BD1\u6587\u6362\u884C\u8BBE\u7F6E",smartLineBreak:"\u667A\u80FD\u6362\u884C",alwaysLineBreak:"\u603B\u662F\u6362\u884C",isShowContextMenu:"\u5C06\u7FFB\u8BD1\u7F51\u9875\u52A0\u5165\u53F3\u952E\u83DC\u5355\u9879",toggleBeta:"\u5F00\u542F Beta \u6D4B\u8BD5\u7279\u6027",betaDescription:"\u542F\u7528\u4ECD\u5728\u5B9E\u9A8C\u6027\u7684\u529F\u80FD\uFF0C\u4EE5\u53CA\u6D4B\u8BD5\u4E2D\u7684\u7FFB\u8BD1\u670D\u52A1\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7EC4\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u603B\u662F\u6362\u884C\u9002\u7528\u4E8E\u8F83\u5C11\u5185\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F50\u3002\uFF08\u5728\u5185\u5BB9\u8F83\u591A\u7684\u957F\u6BB5\u843D(\u8D85\u8FC7{count}\u4E2A\u5B57\u7B26) \u4F7F\u7528\u667A\u80FD\u6362\u884C\uFF0C\u66F4\u7701\u7A7A\u95F4\uFF09",tempTranslateDomainTitle:"\u4E34\u65F6\u5F00\u542F\u7F51\u7AD9\u7FFB\u8BD1\u7684\u65F6\u957F",tempTranslateDomainDescription:"\u5F53\u624B\u52A8\u7FFB\u8BD1\u67D0\u4E2A\u7F51\u9875\u7684\u65F6\u5019\uFF0C\u4E34\u65F6\u5F00\u542F\u8BE5\u7F51\u7AD9\u4E3A\u81EA\u52A8\u7FFB\u8BD1\uFF0C\u53EF\u8BBE\u7F6E\u4E34\u65F6\u65F6\u957F",xMinutes:"{count} \u5206\u949F",disabled:"\u7981\u7528",changelog:"\u66F4\u65B0\u65E5\u5FD7",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5219\u663E\u793A/\u9690\u85CF\u8BD1\u6587\u6A21\u7CCA\u6548\u679C",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"\u591A\u6307\u540C\u65F6\u89E6\u6478\u5C4F\u5E55\u5219\u7FFB\u8BD1\u7F51\u9875(\u4EC5\u8BD1\u6587)/\u663E\u793A\u539F\u6587",addUrlDescription:"\u53EF\u4EE5\u4E3A\u57DF\u540D\uFF0C\u540C\u65F6\u652F\u6301\u901A\u914D\u7B26\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8BBE\u7F6E",clickToExpandConfig:"\u5C55\u5F00\u5F53\u524D\u914D\u7F6E",import:"\u4ECE\u6587\u4EF6\u5BFC\u5165",export:"\u5BFC\u51FA\u5230\u6587\u4EF6",toggleDebug:"\u5728\u63A7\u5236\u53F0\u6253\u5370\u8C03\u8BD5\u65E5\u5FD7","fingers.0":"\u5173\u95ED","fingers.2":"\u53CC\u6307\u89E6\u6478","fingers.3":"\u4E09\u6307\u89E6\u6478","fingers.4":"\u56DB\u6307\u89E6\u6478","fingers.5":"\u4E94\u6307\u89E6\u6478",mouseHoldKey:"+ {key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8BD1\u8BE5\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u4E49\u5FEB\u6377\u952E(\u6253\u5F00\u8BBE\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8BD1\u8BE5\u6BB5",mouseHoverHoldKey:"\u9F20\u6807\u60AC\u505C\u540C\u65F6\u6309\u4E0B\u5FEB\u6377\u952E\u7FFB\u8BD1\u6BB5\u843D","mouse-translate":"\u5F53\u9F20\u6807\u60AC\u505C",document:"\u6587\u6863",resetSuccess:"\u91CD\u7F6E\u6240\u6709\u8BBE\u7F6E\u6210\u529F",resetThisSuccess:"\u91CD\u7F6E\u6210\u529F",saved:"\u4FDD\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u5BFC\u5165\u914D\u7F6E",goAdvancedSettings:"\u53BB\u8FDB\u9636\u8BBE\u7F6E\u9875",goAdvancedInterfaceSettings:"\u53BB\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u9875\u9762",advanced:"\u8FDB\u9636\u8BBE\u7F6E",advancedDescription:"\u4E00\u822C\u65E0\u9700\u8BBE\u7F6E\uFF0C\u4FDD\u6301\u9ED8\u8BA4\u5373\u53EF\u3002\u4EC5\u5BF9\u4E8E\u66F4\u4E13\u4E1A\u7684\u7528\u6237\uFF0C\u63D0\u4F9B\u66F4\u4E2A\u6027\u5316\u7684\u8BBE\u7F6E\u9879\u3002",developer:"\u5F00\u53D1\u8005\u8BBE\u7F6E",donateCafe:"\u4EF7\u683C","translate to the bottom of the page":"\u8FDB\u5165\u7F51\u9875\u540E\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8\uFF1F",feedback:"\u95EE\u9898\u53CD\u9988",toggleTranslatePage:"\u7FFB\u8BD1\u7F51\u9875/\u663E\u793A\u539F\u6587",translateToThePageEndImmediatelyDescription:"\u5F00\u542F\u540E\uFF0C\u8FDB\u5165\u7F51\u9875\u5C06\u7ACB\u5373\u7FFB\u8BD1\u4ECE\u9876\u90E8\u5230\u5E95\u90E8\u7684\u5185\u5BB9\u3002\u5173\u95ED\u5219\u8FB9\u770B\u8FB9\u8BD1\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8BD1\u7F51\u9875\u6240\u6709\u533A\u57DF",translationAreaDescription:"\u5F00\u542F\u540E\uFF0C\u6574\u4E2A\u7F51\u9875\u7684\u6240\u6709\u533A\u57DF\u90FD\u4F1A\u88AB\u7FFB\u8BD1\u3002\u5173\u95ED\u5219\u4F7F\u7528\u9ED8\u8BA4\u7684\u667A\u80FD\u8BC6\u522B\uFF0C\u4EC5\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF\u3002\uFF08\u4E0D\u63A8\u8350\u5F00\u542F\uFF09","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8BD1\u9875\u9762\u524D\u591A\u5C11\u4E2A\u5B57\u7B26\uFF0C\u800C\u65E0\u9700\u7B49\u5F85\u6EDA\u52A8\u5230\u53EF\u89C6\u533A\u57DF","interface language":"\u754C\u9762\u8BED\u8A00","display both the original text and the translation":"\u540C\u65F6\u663E\u793A\u539F\u6587\u548C\u8BD1\u6587","keyboard shortcuts":"\u952E\u76D8\u5FEB\u6377\u952E",modify:"\u4FEE\u6539\u5FEB\u6377\u952E",reset:"\u91CD\u7F6E",close:"\u5173\u95ED",homepage:"\u4E3B\u9875",more:"\u66F4\u591A",moreOptions:"\u5C55\u5F00\u66F4\u591A\u81EA\u5B9A\u4E49\u9009\u9879",translateTheWholePage:"\u7FFB\u8BD1\u9875\u9762\u5168\u90E8\u533A\u57DF\uFF08\u533A\u522B\u4E8E\u667A\u80FD\u8BC6\u522B\u4E3B\u8981\u533A\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u6240\u6709\u533A\u57DF",changeToTranslateTheMainPage:"\u5207\u6362\u4E3A\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF",changeToOnlyTranslationMode:"\u5207\u6362\u4E3A\u4EC5\u663E\u793A\u8BD1\u6587",changeToDualTranslationMode:"\u5207\u6362\u4E3A\u53CC\u8BED\u7FFB\u8BD1",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8BD1\u5230\u9875\u9762\u5E95\u90E8",translateTheMainPage:"\u667A\u80FD\u7FFB\u8BD1\u4E3B\u8981\u533A\u57DF","The local rules are up to date":"\u672C\u5730\u9002\u914D\u89C4\u5219\u5DF2\u662F\u6700\u65B0:","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u9002\u914D\u89C4\u5219:","Checking for updates":"\u6B63\u5728\u68C0\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u9002\u914D\u89C4\u5219",localVersionIsTooOld:"\u672C\u5730\u6269\u5C55\u7248\u672C\u8FC7\u65E7\uFF0C\u8BF7\u5347\u7EA7\u6269\u5C55\u5230 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5C1D\u8BD5\u540C\u6B65",badUserscriptBrowser:"\u5F53\u524D\u6D4F\u89C8\u5668\u6CA1\u6709\u6B63\u786E\u5B9E\u73B0\u6CB9\u7334\u6269\u5C55\u7684\u63A5\u53E3\uFF08\u6BD4\u5982\u83B7\u53D6\u6CB9\u7334\u811A\u672C\u81EA\u8EAB\u7684\u7248\u672C\u53F7\u4FE1\u606F\uFF09\uFF0C\u8BF7\u4F7F\u7528\u5176\u4ED6<1>\u652F\u6301\u6CB9\u7334\u6269\u5C55\u7684\u6D4F\u89C8\u5668\u5982 Firefox",foundNewVersion:"\u53D1\u73B0\u65B0\u7248\u672C",theLocalExtensionIsUpToUpdate:"\u5F53\u524D\u6269\u5C55\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u9002\u914D\u89C4\u5219\u5931\u8D25",retry:"\u70B9\u6B64\u91CD\u8BD5",failedReason:"\u5931\u8D25\u539F\u56E0",currentRuleVersion:"\u5F53\u524D\u89C4\u5219\u7248\u672C",calculating:"\u8BA1\u7B97\u4E2D",unknownError:"\u672A\u77E5\u9519\u8BEF",canNotFetchRemoteRule:"\u65E0\u6CD5\u83B7\u53D6\u8FDC\u7A0B\u89C4\u5219",enableAlphaSuccess:"\u5DF2\u5F00\u542FAlpha\u529F\u80FD",disableAlphaSuccess:"\u5DF2\u5173\u95EDAlpha\u529F\u80FD",cacheSize:"\u7F13\u5B58\u5927\u5C0F\uFF1A",cleaning:"\u6E05\u7406\u4E2D",cleanCache:"\u6E05\u9664\u7F13\u5B58",options:"\u8BBE\u7F6E",about:"\u5173\u4E8E",service:"\u7FFB\u8BD1\u670D\u52A1",needAction:"(\u53BB\u8BBE\u7F6E)",goSettings:"\u53BB\u8BBE\u7F6E",needActionForOptions:"(\u9700\u8BBE\u7F6E)",translationEngine:"\u5F15\u64CE\u9009\u9879",sourceLanguage:"\u539F\u6587\u8BED\u8A00",target:"\u76EE\u6807\u8BED\u8A00",popupSourceLanguage:"\u539F\u6587\u8BED\u8A00",popupTarget:"\u76EE\u6807\u8BED\u8A00",popupService:"\u7FFB\u8BD1\u670D\u52A1",forThisSite:"\u9488\u5BF9\u8BE5\u7F51\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u603B\u662F\u7FFB\u8BD1 {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8BD1 {language}",alwaysTranslateSomeSite:"\u603B\u662F\u7FFB\u8BD1 {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8BD1 {hostname}",add:"\u6DFB\u52A0",default:"\u9ED8\u8BA4",forThisLanguage:"\u9488\u5BF9\u8BE5\u8BED\u8A00\uFF1A","add url":"\u8F93\u5165URL",edit:"\u7F16\u8F91","translate other languages into specific language":"\u5C06\u5176\u4ED6\u8BED\u8A00\u7FFB\u8BD1\u4E3A\u4F60\u8BBE\u7F6E\u7684\u8BED\u8A00","select translation service":"\u9009\u62E9\u4E00\u9879\u7FFB\u8BD1\u670D\u52A1",language:"\u8BED\u8A00","show-original":"\u663E\u793A\u539F\u6587",translate:"\u7FFB\u8BD1",Translated:"\u5DF2\u7FFB\u8BD1",Translating:"\u7FFB\u8BD1\u4E2D",Error:"\u9519\u8BEF",allowCacheTranslations:"\u5F00\u542F\u672C\u5730\u7FFB\u8BD1\u7F13\u5B58\uFF08\u51CF\u5C11\u91CD\u590D\u6BB5\u843D\u7684\u7FFB\u8BD1\u8BF7\u6C42\uFF09","translation display":"\u8BD1\u6587\u663E\u793A\u6837\u5F0F","select diplay style":"\u533A\u5206\u8BD1\u6587\u7684\u6837\u5F0F\uFF0C\u5177\u4F53\u53EF\u53C2\u8003\u4E0B\u5217\u793A\u4F8B",interface:"\u754C\u9762\u8BBE\u7F6E",import_export:"\u5BFC\u5165/\u5BFC\u51FA",import_export_title:"\u5BFC\u5165/\u5BFC\u51FA\u914D\u7F6E",syncToGoogleDrive:"\u7ACB\u5373\u4E0E Google Drive \u540C\u6B65",previewAllThemes:"\u9884\u89C8\u5168\u90E8\u6837\u5F0F","translationTheme.none":"\u65E0","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.dotted":"\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.dashedBorder":"\u865A\u7EBF\u8FB9\u6846","translationTheme.solidBorder":"\u5B9E\u7EBF\u8FB9\u6846","translationTheme.underline":"\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B66\u4E60\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7EB8\u9634\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u5272\u7EBF","translationTheme.highlight":"\u9AD8\u4EAE","translationTheme.marker":"\u9A6C\u514B\u7B14","translationTheme.marker2":"\u9A6C\u514B\u7B142","translationTheme.blockquote":"\u5F15\u7528\u6837\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u4F53","translationTheme.bold":"\u52A0\u7C97","translationTheme.thinDashed":"\u7EC6\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDashed":"\u7CFB\u7EDF\u81EA\u5E26\u865A\u7EBF\u4E0B\u5212\u7EBF","translationTheme.nativeDotted":"\u7CFB\u7EDF\u81EA\u5E26\u70B9\u72B6\u4E0B\u5212\u7EBF","translationTheme.nativeUnderline":"\u7CFB\u7EDF\u81EA\u5E26\u76F4\u7EBF\u4E0B\u5212\u7EBF","translationTheme.wavy":"\u6CE2\u6D6A\u7EBF","translationServices.tencent":"\u817E\u8BAF\u7FFB\u8BD1\u541B","translationServices.tenAlpha":"\u817E\u8BAF\u7FFB\u8BD1\u541B(Alpha)","translationServices.google":"\u8C37\u6B4C\u7FFB\u8BD1","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8BD1","translationServices.aliyun":"\u963F\u91CC\u4E91\u7FFB\u8BD1","translationServices.volc":"\u706B\u5C71\u7FFB\u8BD1","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8BD1","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8BD1","translationServices.azure":"Azure \u7FFB\u8BD1","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9A\u9A6C\u900A\u7FFB\u8BD1","translationServices.mock":"\u6A21\u62DF\u7FFB\u8BD1","translationServices.mock2":"\u6A21\u62DF\u7FFB\u8BD12","translationServices.caiyun":"\u5F69\u4E91\u5C0F\u8BD1","translationServices.cai":"\u5F69\u4E91\u5C0F\u8BD1 (Alpha)","translationServices.volcAlpha":"\u706B\u5C71 (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8BD1","translationServices.you":"\u6709\u9053\u7FFB\u8BD1 (Alpha)","translationServices.transmart":"\u817E\u8BAF\u4EA4\u4E92\u7FFB\u8BD1","translationServices.niu":"\u5C0F\u725B\u7FFB\u8BD1","translationServices.papago":"Papago \u7FFB\u8BD1","translationServices.d":"D (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8BD1\u9875\u9762\u6807\u9898","always languages":"\u603B\u662F\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u5F53\u9875\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u5C06\u8DF3\u8FC7\u7FFB\u8BD1",enableUserscriptPagePopup:"\u5728\u9875\u9762\u4E0A\u663E\u793A\u60AC\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u5173\u95ED\u60AC\u6D6E\u7403\u540E\uFF0C\u53EF\u4EE5\u7528\u5FEB\u6377\u952E/{touch}\u5524\u8D77\u3002\u4E3A\u9632\u6B62\u4E0D\u614E\u5173\u95ED\u8BE5\u9009\u9879\u540E\u627E\u4E0D\u5230\u60AC\u6D6E\u7403\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u6536\u85CF\u672C\u8BBE\u7F6E\u9875","always translate the following languages":"\u5F53\u9875\u9762\u8BED\u8A00\u4E3A\u4E0B\u5217\u8BED\u8A00\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","always sites":"\u603B\u662F\u7FFB\u8BD1\u7684\u7F51\u5740","always translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u4F1A\u81EA\u52A8\u7FFB\u8BD1\u4E3A\u76EE\u6807\u8BED\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8BD1\u7684\u7F51\u5740","never translate the following sites":"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u5C06\u4E0D\u4F1A\u8FDB\u884C\u7FFB\u8BD1","please refer to":"\u9700\u8981\u586B\u5199\u5BC6\u94A5\u540E\u624D\u53EF\u7528\uFF0C\u8BE6\u60C5\u53C2\u8003",KeyAndConfigurationTutorial:"\u300A\u5BC6\u94A5\u7533\u8BF7\u548C\u914D\u7F6E\u6559\u7A0B\u300B",useAboveStyleForTheseSites:"\u5F53\u7F51\u7AD9\u4E3A\u4E0B\u5217\u57DF\u540D\u65F6\uFF0C\u603B\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8BD1\u6587\u6837\u5F0F",currentUrl:"\u5F53\u524D\u7F51\u5740",confirm:"\u4FDD\u5B58",cancel:"\u53D6\u6D88",delete:"\u5220\u9664","languages.auto":"\u81EA\u52A8\u68C0\u6D4B",syncToCloud:"\u540C\u6B65\u5230\u4E91\u7AEF",syncToCloudDescription:"\u4E0A\u4F20\u5230\u4E91\u7AEF\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u6D4F\u89C8\u5668/\u6CB9\u7334\u811A\u672C\u4E4B\u95F4\u540C\u6B65\u914D\u7F6E\uFF0C\u4EE5\u6700\u540E\u4FEE\u6539\u65F6\u95F4\u4E3A\u51C6\u3002",authFail:"\u6388\u6743\u5931\u8D25",syncTitle:"\u624B\u52A8\u5907\u4EFD\u7BA1\u7406",import_hint:"\u5BFC\u5165",upload:"\u4E0A\u4F20",revokeAuth:"\u64A4\u9500\u6388\u6743",uploadFail:"\u4E0A\u4F20\u5931\u8D25",download:"\u4E0B\u8F7D",importSuccess:"\u5BFC\u5165\u6210\u529F",importFail:"\u5BFC\u5165\u5931\u8D25",deleteFail:"\u5220\u9664\u5931\u8D25",backupToCloud:"\u624B\u52A8\u7BA1\u7406\u5907\u4EFD\u6587\u4EF6",create_new_backup:"\u65B0\u589E\u5907\u4EFD\u8282\u70B9",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5907\u4EFD{count}\u4E2A\u4E0D\u540C\u7684\u8282\u70B9, \u8BF7\u5220\u9664\u4E0D\u9700\u8981\u7684\u8282\u70B9",backupToCloudDescription:"\u624B\u52A8\u4E0A\u4F20\u6216\u6062\u590D\u5907\u4EFD\u6587\u4EF6\uFF0C\u6700\u591A\u5141\u8BB83\u4E2A\u4E0D\u540C\u7684\u5907\u4EFD",successSyncConfig:"\u6210\u529F\u4E0E\u4E91\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u8D25",updatedAt:"\u66F4\u65B0\u4E8E {date}",lastSyncedAt:"\u4E0A\u6B21\u68C0\u67E5\u4E8E {date}",downloadFail:"\u4E0B\u8F7D\u5931\u8D25",clickToDownload:"\u70B9\u51FB\u4E0B\u8F7D",aboutLabel:"\u5173\u4E8E - \u53CD\u9988","browser.openAboutPage":"\u5173\u4E8E/\u53CD\u9988",aboutLabelWithoutSponsor:"\u5173\u4E8E - \u53CD\u9988",aboutIntro:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F

\u4F60\u53EF\u4EE5\u5173\u6CE8\u6211\u4EEC\u7684<3>\u63A8\u7279\uFF0C<4>Telegram \u9891\u9053\uFF0C\u5FAE\u4FE1\u516C\u4F17\u53F7\uFF0C\u5FAE\u4FE1\u4EA4\u6D41\u7FA4\uFF0C\u6216\u8005\u4E0B\u65B9\u7684<5>\u90AE\u4EF6\u8BA2\u9605\u8FFD\u8E2A\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u8BE5\u6269\u5C55\u514D\u8D39\u4F7F\u7528\uFF0C\u5E0C\u671B\u6211\u4EEC\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u60A6\u5730\u83B7\u53D6\u4E92\u8054\u7F51\u4E0A\u5DE8\u5927\u7684\u5916\u8BED\u4FE1\u606F \u2764\uFE0F ",projectHomepage:"\u9879\u76EE\u4E3B\u9875",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u53C2\u4E0E\u529F\u80FD\u8BA8\u8BBA",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramChannel:"\u5173\u6CE8 Telegram \u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0",feedbackAndJoin:"\u95EE\u9898\u53CD\u9988/\u52A0\u7FA4",autoSync:"\u81EA\u52A8\u5B9A\u65F6\u540C\u6B65",loadingThemeTitle:"Loading \u6837\u5F0F",loadingThemeDescription:"\u8BBE\u7F6E\u7B49\u5F85\u8BD1\u6587\u52A0\u8F7D\u65F6\u7684\u6837\u5F0F","loadingTheme.spinner":"\u8F6C\u5708\u52A8\u753B","loadingTheme.text":"\u9759\u6001\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u663E\u793A",developerDescription:"\u53EF\u4EE5\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u9AD8\u7EA7\u81EA\u5B9A\u4E49\u76F8\u5173\u7684\u6587\u6863","edit border color":"\u4FEE\u6539\u8FB9\u6846\u989C\u8272",successSyncButNoChange:"\u5F53\u524D\u914D\u7F6E\u4E0E\u4E91\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u5B9A\u4E49\u989C\u8272\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u8FB9\u6846\u989C\u8272","customThemeLabel.borderRadius":"\u8FB9\u6846\u5706\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u989C\u8272","customThemeLabel.backgroundColor":"\u80CC\u666F\u989C\u8272","customThemeLabel.zoom":"\u5B57\u4F53\u7F29\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u989C\u8272",resetToDefaultSettings:"\u6062\u590D\u4E3A\u9ED8\u8BA4\u8BBE\u7F6E",isTranslateTitle:"\u5F00\u542F\u7FFB\u8BD1\u7F51\u9875\u6807\u9898",isTranslateTitleDescription:"\u5F00\u542F\u540E\uFF0C\u7F51\u9875\u6807\u9898\u4F1A\u88AB\u7FFB\u8BD1",enableSearchEnhancement:"\u542F\u7528\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A",enableSearchEnhancementDescription:"\u5F00\u542F\u540E\uFF0C\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\u793E\u533A\uFF09\u53F3\u8FB9\u680F\u81EA\u52A8\u663E\u793A\u5BF9\u5E94\u82F1\u6587\u5173\u952E\u8BCD\u7684\u201C\u8C37\u6B4C\u65B0\u95FB\u201D\u641C\u7D22\u7ED3\u679C\u3002",verifyService:"\u70B9\u6B64\u6D4B\u8BD5\u670D\u52A1",verified:"\u9A8C\u8BC1\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8BD1\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u949F\u6700\u5927\u8BF7\u6C42\u6570","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8BF7\u6C42\u6570","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6","field.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570","field.apiUrl":"\u81EA\u5B9A\u4E49 API \u63A5\u53E3\u5730\u5740","description.limitPerMinute":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u5206\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8BF7\u6C42\u6570\u8D85\u8FC7\u8BE5\u9650\u5236\u65F6\u4F1A\u8FDB\u5165\u6392\u961F\u72B6\u6001\uFF0C\u76F4\u5230\u4E0B\u4E00\u79D2\u949F\u5F00\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u6BCF\u6B21\u8BF7\u6C42\u6700\u5927\u5B57\u7B26\u6570\uFF0C\u592A\u5927\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5C1D\u8BD5\u8C03\u6574\u8BE5\u9009\u9879\u6765\u4F18\u5316\u901F\u5EA6","description.systemPrompt":"\u4EE5\u7CFB\u7EDF\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00","description.model":"OpenAI \u7684\u6A21\u578B\uFF0C\u53EF\u4EE5\u4E3A gpt-3.5-turbo, gpt-4 \u7B49","description.maxTextGroupLengthPerRequest":"\u6BCF\u6B21\u53D1\u9001\u7ED9 OpenAI \u7684\u6BB5\u843D\u6570\u91CF\uFF0C\u5982\u679C\u6BB5\u843D\u6570\u91CF\u8FC7\u591A\uFF0C\u53EF\u80FD\u4F1A\u5BFC\u81F4\u63A5\u53E3\u7684\u54CD\u5E94\u53D8\u6162\uFF0C\u8BBE\u7F6E\u4E3A 1 \u4E2A\u6BB5\u843D\u65F6\uFF0C\u4F53\u9A8C\u6700\u597D","description.apiUrl":"\u8BF7\u6DFB\u52A0\u5177\u4F53\u5E26\u6709\u8DEF\u5F84\u7684\u7F51\u5740",enabledExtension:"\u542F\u7528\u6269\u5C55",clickToDisableExtension:"\u70B9\u51FB\u7981\u7528\u6269\u5C55",clickToEnableExtension:"\u70B9\u51FB\u542F\u7528\u6269\u5C55",hasBeenDisabled:"\u5DF2\u7981\u7528","show password":"\u663E\u793A\u5BC6\u7801",customContent:"\u8F93\u5165\u81EA\u5B9A\u4E49\u6A21\u578B\u540D\u79F0",inputOptions:"\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslation:"\u662F\u5426\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",enableInputTranslationDescription:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165 {startingKey}{startingKey} \u4F60\u597D\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A {inputTargetLanguage}",enableInputTranslationDescriptionForNoneKey:"\u542F\u7528\u540E\uFF0C\u5728\u8F93\u5165\u6846\u76F4\u63A5\u8F93\u5165\uFF1A\u4F60\u597D\u4E16\u754C\uFF0C\u7136\u540E\u5FEB\u901F\u8FDE\u51FB{inputTrailingTriggerKeyRepeatTimes}\u6B21{trailingKey}\uFF0C\u5373\u53EF\u7FFB\u8BD1\u4E3A\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguage:"\u8BBE\u7F6E\u8F93\u5165\u6846\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputTargetLanguageDescription:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00\uFF0C\u4E5F\u5C31\u662F {startingKey}{startingKey} \u4F5C\u4E3A\u89E6\u53D1\u8BCD\u7684\u9ED8\u8BA4\u8BED\u8A00",inputTargetLanguageDescriptionForNoneKey:"\u8F93\u5165\u6846\u7FFB\u8BD1\u7684\u9ED8\u8BA4\u76EE\u6807\u8BED\u8A00",inputStartingTriggerKeyTitle:"\u8BBE\u7F6E\u8F93\u5165\u6846\u90E8\u5206\u7FFB\u8BD1\u7684\u5206\u5272\u5B57\u7B26",inputStartingTriggerKeyDescription:"\u5F53\u4F60\u4E0D\u9700\u8981\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u7684\u65F6\u5019\uFF0C\u5206\u5272\u7B26\u5141\u8BB8\u4F60\u53EA\u7FFB\u8BD1 {startingKey}{startingKey} \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206\uFF0C\u4E5F\u53EF\u4EE5\u6307\u5B9A\u8BED\u8A00\u4EE3\u7801\uFF0C\u6BD4\u5982\uFF1A{startingKey}ja \u8868\u793A\u53EA\u7FFB\u8BD1 {startingKey}ja \u5230\u8F93\u5165\u6846\u672B\u5C3E\u7684\u90E8\u5206",inputStartingTriggerKeyDescriptionForNoneKey:"\u5F53\u524D\u8BBE\u7F6E\u4E3A\u65E0\u9700\u524D\u7F00\uFF0C\u6682\u65E0\u6CD5\u4F7F\u7528\u8F93\u5165\u6846\u7684\u90E8\u5206\u6587\u672C\u7FFB\u8BD1\u529F\u80FD",inputTrailingTriggerKeyTitle:"\u9009\u62E9\u4E00\u4E2A\u8F93\u5165\u7ED3\u675F\u7684\u89E6\u53D1\u5B57\u7B26",inputTrailingTriggerKeyDescription:"\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey} \u5C06\u4F1A\u5F00\u59CB\u7FFB\u8BD1",spaceKey:"<\u7A7A\u683C\u952E>",noneKey:"\u65E0\u9700\u524D\u7F00\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u6587\u672C\u6846",inputTranslationBlockUrlsTitle:"\u5207\u52FF\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\u542F\u7528\u8F93\u5165\u6846\u589E\u5F3A",inputTranslationBlockUrlsDescription:"\u5728\u4EE5\u4E0B\u7F51\u5740\u4E2D\uFF0C\u8F93\u5165\u6846\u589E\u5F3A\u5C06\u4E0D\u4F1A\u751F\u6548",clickToSeeQuickDemo:"\u70B9\u51FB\u5C55\u5F00 30 \u79D2\u5FEB\u901F\u6559\u5B66\u89C6\u9891",inputHelperInfo:"\u8BF4\u660E\uFF1A\u6211\u4EEC\u7279\u522B\u9488\u5BF9\u5728\u4E2D\u6587\u8F93\u5165\u6CD5\u4E0B\u90E8\u5206\u89E6\u53D1\u5B57\u7B26\u4F1A\u53D8\u6210\u4E2D\u6587\u6807\u70B9\u7B26\u53F7\u8FD9\u4EF6\u4E8B\u505A\u4E86\u4F18\u5316\uFF0C\u6BD4\u5982\u641C\u72D7\u8F93\u5165\u6CD5\u4E0B / \u4F1A\u53D8\u6210\u987F\u53F7 \u3001\uFF0C\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u652F\u6301\u6240\u6709\u89E6\u53D1\u7B26\u5BF9\u5E94\u7684\u4E2D\u6587\u7B26\u53F7\uFF0C\u4E5F\u5C31\u662F\u8BF4 // \u3001\u3001 \u90FD\u4F1A\u88AB\u8BC6\u522B\u4E3A\u89E6\u53D1\u5B57\u7B26\u3002

\u540C\u65F6\u6211\u4EEC\u4E5F\u652F\u6301\u8BED\u8A00\u4EE3\u7801\u7684\u4E2D\u6587\u522B\u540D\u4F5C\u4E3A\u547D\u4EE4\uFF0C\u6BD4\u5982 /\u65E5\u6587 \u4F60\u597D\u4E16\u754C \u4F1A\u88AB\u7FFB\u8BD1\u4E3A\u65E5\u6587\uFF0C<1>\u70B9\u6B64\u67E5\u770B\u6240\u6709\u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u3002",reloadCurrentPage:"\u8BF7\u5148\u5237\u65B0\u5F53\u524D\u9875\u9762\uFF0C\u518D\u5F00\u59CB\u7FFB\u8BD1",noLocalFilePermissionForPDF:"\u6682\u65E0\u6743\u9650\u8BFB\u53D6\u672C\u5730\u6587\u4EF6\uFF0C\u8BF7\u70B9\u51FB\u4E0A\u65B9\u6309\u94AE\uFF0C\u7136\u540E\u4E0A\u4F20\u672C\u5730\u6587\u4EF6",noPermissionForThisPage:"\u26A0\uFE0F \u6682\u65E0\u6743\u9650\u7FFB\u8BD1\u5F53\u524D\u9875\u9762",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",retryAllButton:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",errorModalTitle:"\u7FFB\u8BD1\u670D\u52A1\u6216\u7F51\u7EDC\u4F3C\u4E4E\u51FA\u4E86\u70B9\u95EE\u9898...",disableConfirm:"\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u8BBE\u7F6E",disableOnce:"\u672C\u6B21\u7981\u7528",disableGlobal:"\u6C38\u4E45\u7981\u7528",disableTint:"* \u4F60\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u542F\u7528\u3002",searchEnhancementNotes:"\u6211\u4EEC\u53D1\u73B0\uFF0C\u4E2D\u6587\u5173\u952E\u8BCD\u548C\u82F1\u6587\u5173\u952E\u8BCD\u7684\u65B0\u95FB\u7ED3\u679C\u6709\u975E\u5E38\u5927\u7684\u4E0D\u540C\uFF0C\u5728\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u53CC\u8BED\u4FE1\u606F\u589E\u5F3A\u529F\u80FD\u540E\uFF0C\u6211\u4EEC\u4F1A\u5728\u652F\u6301\u7684\u7F51\u7AD9\uFF08\u8C37\u6B4C\u65B0\u95FB\uFF0C\u8C37\u6B4C\u641C\u7D22\uFF08\u90E8\u5206\u5173\u952E\u8BCD\uFF09\uFF0C\u96EA\u7403\uFF0C\u4E1C\u65B9\u8D22\u5BCC\u7F51\uFF0C\u5BCC\u9014\uFF0C\u8001\u864E\uFF09\u81EA\u52A8\u7528\u82F1\u6587\u4E3A\u4F60\u641C\u7D22\u540C\u6837\u7684\u5173\u952E\u8BCD\u5E76\u5C55\u793A\u5728\u53F3\u4FA7\u3002\u5982\u679C\u4F60\u4E0D\u9700\u8981\u8BE5\u529F\u80FD\u7684\u8BDD\uFF0C\u53EF\u4EE5\u9009\u62E9\u7981\u7528\u5B83\u3002",option:"\u8BBE\u7F6E",saveSettings:"\u4FDD\u5B58\u8BBE\u7F6E",closeModal:"\u5173\u95ED\u7A97\u53E3",enableInputTranslationWithoutTriggerKeyTitle:"\u542F\u7528\u5FEB\u901F\u8FDE\u51FB 3 \u6B21{trailingKey}\uFF0C\u76F4\u63A5\u7FFB\u8BD1\u6574\u4E2A\u8F93\u5165\u6846\u4E3A{inputTargetLanguage}",enableInputTranslationWithoutTriggerKeyDescription:"\u5982\u9700\u6307\u5B9A\u76EE\u6807\u8BED\u8A00\uFF0C\u8BF7\u5728\u524D\u9762\u52A0\u4E0A\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1Aja \u4F60\u597D\u4E16\u754C"};var ig={lineBreakMaxTextCount:"\u63DB\u884C\u5F8C\uFF0C\u6BCF\u53E5\u8A71\u5141\u8A31\u7684\u6700\u5927\u5B57\u5143\u6578\u91CF","translate-pdf":"\u9EDE\u9078\u7FFB\u8B6F PDF","translate-firefox-local-pdf":"\u9EDE\u9078\u4E0A\u50B3 PDF",enableLineBreak:"\u958B\u555F\u9577\u6BB5\u843D\u81EA\u52D5\u63DB\u884C",sponsorLabel:"$1 \u8D77\u8D0A\u52A9\u958B\u767C\u8005 (\u6708\u4ED8\u6216\u50C5\u8D0A\u52A9\u4E00\u6B21\u5747\u53EF)",help:"\u8AAA\u660E",browserShortcutsNoteForFirefox:"Firefox \u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u9644\u52A0\u5143\u4EF6\u7BA1\u7406\u9801\u9762 \u300Cabout:addons\u300D\uFF0C\u7136\u5F8C\u9EDE\u9078\u300C\u8A2D\u5B9A\u5716\u793A\u300D\uFF0C\u518D\u9EDE\u9078\u300C\u7BA1\u7406\u64F4\u5145\u5957\u4EF6\u5FEB\u901F\u9375\u300D\u5373\u53EF\u8A2D\u5B9A",browserShortcutsNoteForChrome:"Chromium \u6838\u5FC3\u700F\u89BD\u5668\u8B8A\u66F4\u5FEB\u901F\u9375\u9700\u8981\u958B\u555F\u64F4\u5145\u529F\u80FD\u7BA1\u7406\u9801\u9762\uFF0C\u5728\u300C\u9375\u76E4\u5FEB\u901F\u9375\u300D\u9801\u9762(chrome://extensions/shortcuts)\u8A2D\u5B9A\uFF0C\u9EDE\u9078\u4E0B\u65B9\u6309\u9215\u524D\u5F80\u5FEB\u901F\u9375\u7BA1\u7406\u9801\u9762\u3002",browserShortcutsSucks:"\u81EA\u5B9A\u4E49\u5FEB\u901F\u9375\u683C\u5F0F\u70BA\uFF1A",enableLineBreakDescription:"\u555F\u7528\u5F8C\uFF0C\u5C07\u6703\u5728\u9577\u6BB5\u843D\u4E2D\u6BCF\u53E5\u8A71\u7D50\u675F\u63D2\u5165\u63DB\u884C\u5B57\u5143\uFF0C\u4EE5\u4FBF\u65BC\u95B1\u8B80","browser.brandName":"\u6C89\u6D78\u5F0F\u7FFB\u8B6F","browser.brandDescription":"\u6C89\u6D78\u5F0F\u7DB2\u9801\u96D9\u8A9E\u7FFB\u8B6F\u5957\u4EF6\uFF0C\u5B8C\u5168\u514D\u8CBB\u4F7F\u7528\uFF0C\u652F\u63F4 Deepl/Google/\u9A30\u8A0A/\u706B\u5C71\u7FFB\u8B6F\u7B49\u591A\u500B\u7FFB\u8B6F\u670D\u52D9\uFF0C\u652F\u63F4 Firefox/Chrome/\u6CB9\u7334\u8173\u672C\uFF0C\u4EA6\u53EF\u5728 iOS Safari \u4E0A\u4F7F\u7528\u3002","browser.toggleTranslatePage":"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheWholePage":"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.toggleOnlyTransation":"\u7FFB\u8B6F\u4E26\u96B1\u85CF\u539F\u6587/\u986F\u793A\u539F\u6587","browser.toggleTranslateToThePageEndImmediately":"\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8/\u986F\u793A\u539F\u6587","browser.toggleTranslateTheMainPage":"\u7FFB\u8B6F\u9801\u9762\u4E3B\u8981\u5340\u57DF/\u986F\u793A\u539F\u6587","browser.openOptionsPage":"\u958B\u555F\u8A2D\u5B9A\u9801\u9762","browser.toggleTranslationMask":"\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C","browser.translateLocalPdfFile":"\u7FFB\u8B6F\u672C\u6A5F PDF \u6A94\u6848","browser.openEbookViewer":"\u95B1\u8B80\u672C\u6A5F\u96FB\u5B50\u66F8","browser.openEbookBuilder":"\u88FD\u4F5C\u96D9\u8A9E Epub \u96FB\u5B50\u66F8","browser.translateLocalHtmlFile":"\u7FFB\u8B6F HTML/txt \u6A94\u6848","browser.translateLocalSubtitleFile":"\u7FFB\u8B6F\u5B57\u5E55\u6A94\u6848","browser.donateContext":"\u4E86\u89E3\u8D0A\u52A9\u798F\u5229",confirmResetConfig:"\u4F60\u78BA\u5B9A\u8981\u91CD\u8A2D\u8A2D\u5B9A\u55CE\uFF1F",translationLineBreakSettingTitle:"\u8B6F\u6587\u63DB\u884C\u8A2D\u5B9A",smartLineBreak:"\u667A\u6167\u63DB\u884C",alwaysLineBreak:"\u7E3D\u662F\u63DB\u884C",isShowContextMenu:"\u5C07\u7DB2\u9801\u7FFB\u8B6F\u529F\u80FD\u52A0\u5165\u53F3\u9375\u9078\u55AE",toggleBeta:"\u958B\u555F Beta \u6E2C\u8A66\u529F\u80FD",betaDescription:"\u555F\u7528\u4ECD\u5728\u5BE6\u9A57\u7684\u529F\u80FD\u4EE5\u53CA\u6E2C\u8A66\u4E2D\u7684\u7FFB\u8B6F\u670D\u52D9\u3002\u52A0\u5165 <1>Telegram \u7FA4\u7D44\u4E86\u89E3\u66F4\u591A\u3002",translationLineBreakSettingDescription:"\u7E3D\u662F\u63DB\u884C\u9069\u7528\u65BC\u8F03\u5C11\u5167\u5BB9\u7684\u7248\u9762\uFF0C\u66F4\u6574\u9F4A\u3002(\u5728\u5167\u5BB9\u8F03\u591A\u7684\u9577\u6BB5\u843D(\u8D85\u904E {count} \u500B\u5B57\u5143) \u4F7F\u7528\u667A\u6167\u63DB\u884C\u6703\u66F4\u7701\u7A7A\u9593)",tempTranslateDomainTitle:"\u81E8\u6642\u958B\u555F\u7DB2\u7AD9\u7FFB\u8B6F\u7684\u6642\u9577",tempTranslateDomainDescription:"\u7576\u624B\u52D5\u7FFB\u8B6F\u67D0\u500B\u7DB2\u9801\u7684\u6642\u5019\uFF0C\u81E8\u6642\u958B\u555F\u8A72\u7DB2\u7AD9\u70BA\u81EA\u52D5\u7FFB\u8B6F",xMinutes:"{count} \u5206\u9418",disabled:"\u505C\u7528",changelog:"\u66F4\u65B0\u8A18\u9304",toggleTranslatePageWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u87A2\u5E55\u5247\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587",toggleTranslationMaskWhenThreeFingersOnTheScreen:"\u591A\u6307\u540C\u6642\u89F8\u6478\u5247\u986F\u793A/\u96B1\u85CF\u8B6F\u6587\u6A21\u7CCA\u6548\u679C",addUrlDescription:"\u53EF\u4EE5\u70BA\u7DB2\u57DF\u540D\u7A31\uFF0C\u540C\u6642\u652F\u63F4\u842C\u7528\u5B57\u5143\uFF0C\u5982\uFF1A*.google.com, google.com/mail/*, https://www.google.com/*",general:"\u57FA\u672C\u8A2D\u5B9A",clickToExpandConfig:"\u5C55\u958B\u76EE\u524D\u8A2D\u5B9A",import:"\u5F9E\u6A94\u6848\u532F\u5165",export:"\u532F\u51FA\u70BA\u6A94\u6848",toggleDebug:"\u5728\u4E3B\u63A7\u53F0\u986F\u793A\u5075\u932F\u8A18\u9304","fingers.0":"\u95DC\u9589","fingers.2":"\u96D9\u6307\u89F8\u6478","fingers.3":"\u4E09\u6307\u89F8\u6478","fingers.4":"\u56DB\u6307\u89F8\u6478","fingers.5":"\u4E94\u6307\u89F8\u6478",document:"\u8AAA\u660E\u6587\u4EF6",resetSuccess:"\u91CD\u8A2D\u6240\u6709\u8A2D\u5B9A\u6210\u529F",resetThisSuccess:"\u91CD\u8A2D\u6210\u529F",saved:"\u5132\u5B58\u6210\u529F",successImportConfig:"\u6210\u529F\u532F\u5165\u8A2D\u5B9A",goAdvancedSettings:"\u524D\u5F80\u9032\u968E\u8A2D\u5B9A\u9801\u9762",goAdvancedInterfaceSettings:"\u524D\u5F80\u81EA\u8A02\u8A2D\u5B9A\u9801\u9762",advanced:"\u9032\u968E\u8A2D\u5B9A",advancedDescription:"\u6B63\u5E38\u60C5\u6CC1\u7121\u9700\u8A2D\u5B9A\uFF0C\u4FDD\u6301\u9810\u8A2D\u5373\u53EF\u3002\u50C5\u91DD\u5C0D\u66F4\u5C08\u696D\u7684\u4F7F\u7528\u8005\uFF0C\u63D0\u4F9B\u66F4\u500B\u4EBA\u5316\u7684\u8A2D\u5B9A\u9805\u76EE\u3002",developer:"\u958B\u767C\u8005\u8A2D\u5B9A",donateCafe:"\u50F9\u683C","translate to the bottom of the page":"\u9032\u5165\u7DB2\u9801\u5F8C\uFF0C\u662F\u5426\u7ACB\u5373\u7FFB\u8B6F\u5230\u9801\u9762\u5E95\u90E8\uFF1F",feedback:"\u554F\u984C\u56DE\u5831",toggleTranslatePage:"\u7FFB\u8B6F\u7DB2\u9801/\u986F\u793A\u539F\u6587","mouse-translate":"\u7576\u9F20\u6A19\u6ED1\u904E",mouseHoldKey:"+ {key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyAuto:"\u76F4\u63A5\u7FFB\u8B6F\u8A72\u6BB5",mouseHoldKeyOff:"\u4E0D\u505A\u4EFB\u4F55\u4E8B\u60C5",mouseHoldKeyOther:"\u81EA\u5B9A\u7FA9\u5FEB\u6377\u9375(\u6253\u958B\u8A2D\u7F6E)",mouseHoldKeyCustomKey:"{key} \u7FFB\u8B6F\u8A72\u6BB5",mouseHoverHoldKey:"\u9F20\u6A19\u6ED1\u904E\u540C\u6642\u6309\u4E0B X \u9375\u7FFB\u8B6F\u6BB5\u843D",translateToThePageEndImmediatelyDescription:"\u555F\u7528\u5F8C\uFF0C\u9032\u5165\u7DB2\u9801\u5C07\u7ACB\u5373\u7FFB\u8B6F\u5F9E\u9802\u90E8\u5230\u5E95\u90E8\u7684\u5167\u5BB9\u3002\u95DC\u9589\u5247\u908A\u770B\u908A\u8B6F\u3002\uFF08\u4E0D\u63A8\u85A6\u958B\u555F\uFF09","translate all areas of the page":"\u662F\u5426\u7FFB\u8B6F\u7DB2\u9801\u6240\u6709\u5340\u57DF",translationAreaDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6240\u6709\u5340\u57DF\u90FD\u6703\u88AB\u7FFB\u8B6F\u3002\u95DC\u9589\u5247\u4F7F\u7528\u9810\u8A2D\u7684\u667A\u6167\u8FA8\u8B58\uFF0C\u50C5\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\u3002(\u4E0D\u63A8\u85A6\u958B\u555F)","the number of characters to be translated first":"\u76F4\u63A5\u7FFB\u8B6F\u9801\u9762\u524D\u591A\u5C11\u500B\u5B57\u5143\uFF0C\u800C\u7121\u9700\u7B49\u5F85\u6372\u52D5\u81F3\u53EF\u898B\u5340\u57DF","interface language":"\u4ECB\u9762\u8A9E\u8A00","display both the original text and the translation":"\u540C\u6642\u986F\u793A\u539F\u6587\u548C\u8B6F\u6587","keyboard shortcuts":"\u9375\u76E4\u5FEB\u901F\u9375",modify:"\u8B8A\u66F4\u5FEB\u901F\u9375",reset:"\u91CD\u8A2D",close:"\u95DC\u9589",homepage:"\u9996\u9801",more:"\u66F4\u591A",translateTheWholePage:"\u7FFB\u8B6F\u9801\u9762\u5168\u90E8\u5340\u57DF\uFF08\u5340\u5206\u65BC\u53EA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF\uFF09",changeToTranslateTheWholePage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u6240\u6709\u5340\u57DF",changeToTranslateTheMainPage:"\u5207\u63DB\u70BA\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF",changeToOnlyTranslationMode:"\u5207\u63DB\u70BA\u50C5\u986F\u793A\u8B6F\u6587",changeToDualTranslationMode:"\u5207\u63DB\u70BA\u96D9\u8A9E\u7FFB\u8B6F",translateToThePageEndImmediately:"\u7ACB\u5373\u7FFB\u8B6F\u5230\u5E95\u90E8\uFF08\u5340\u5206\u65BC\u770B\u54EA\u8B6F\u54EA\uFF09",translateTheMainPage:"\u667A\u6167\u7FFB\u8B6F\u4E3B\u8981\u5340\u57DF","The local rules are up to date":"\u672C\u6A5F\u898F\u5247\u5DF2\u70BA\u6700\u65B0\uFF1A","Successfully synchronized with the latest official rules:":"\u6210\u529F\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\uFF1A","Checking for updates":"\u6B63\u5728\u6AA2\u67E5\u66F4\u65B0","Rules are being synchronized":"\u6B63\u5728\u540C\u6B65\u5B98\u65B9\u898F\u5247",localVersionIsTooOld:"\u672C\u6A5F\u5957\u4EF6\u7248\u672C\u904E\u820A\uFF0C\u8ACB\u5347\u7D1A\u5957\u4EF6\u81F3 {minVersion} \u6216\u66F4\u65B0\u7684\u7248\u672C\u518D\u5617\u8A66\u540C\u6B65",badUserscriptBrowser:"\u76EE\u524D\u700F\u89BD\u5668\u7121\u6CD5\u6B63\u78BA\u5BE6\u73FE\u6CB9\u7334\u5957\u4EF6\u7684\u4ECB\u9762\uFF0C\u8ACB\u4F7F\u7528\u5176\u4ED6<1>\u652F\u63F4\u6CB9\u7334\u5957\u4EF6\u7684\u700F\u89BD\u5668\u5982(Firefox Nightly \u7248\u672C)",foundNewVersion:"\u6709\u65B0\u7248\u672C\u53EF\u7528",theLocalExtensionIsUpToUpdate:"\u76EE\u524D\u5957\u4EF6\u5DF2\u662F\u6700\u65B0\u7248\u672C",failToSyncRules:"\u540C\u6B65\u6700\u65B0\u5B98\u65B9\u898F\u5247\u5931\u6557",retry:"\u9EDE\u6B64\u91CD\u8A66",failedReason:"\u5931\u6557\u539F\u56E0",currentRuleVersion:"\u76EE\u524D\u898F\u5247\u7248\u672C",calculating:"\u6B63\u5728\u8A08\u7B97",unknownError:"\u672A\u77E5\u7684\u932F\u8AA4",canNotFetchRemoteRule:"\u7121\u6CD5\u53D6\u5F97\u9060\u7AEF\u898F\u5247",enableAlphaSuccess:"\u5DF2\u555F\u7528 Alpha \u529F\u80FD",disableAlphaSuccess:"\u5DF2\u505C\u7528 Alpha \u529F\u80FD",cacheSize:"\u5FEB\u53D6\u5927\u5C0F\uFF1A",cleaning:"\u6B63\u5728\u6E05\u7406",cleanCache:"\u6E05\u9664\u5FEB\u53D6",options:"\u9078\u9805",about:"\u95DC\u65BC",service:"\u7FFB\u8B6F\u670D\u52D9",needAction:"(\u524D\u5F80\u8A2D\u5B9A)",goSettings:"\u524D\u5F80\u8A2D\u5B9A",needActionForOptions:"(\u9700\u8A2D\u5B9A)",translationEngine:"\u5F15\u64CE\u9078\u9805",sourceLanguage:"\u539F\u6587\u8A9E\u8A00",target:"\u76EE\u6A19\u8A9E\u8A00",popupSourceLanguage:"\u539F\u6587\u8A9E\u8A00",popupTarget:"\u76EE\u6A19\u8A9E\u8A00",popupService:"\u7FFB\u8B6F\u670D\u52D9",forThisSite:"\u91DD\u5C0D\u8A72\u7DB2\u7AD9\uFF1A",alwaysTranslateSomeLanguage:"\u7E3D\u662F\u7FFB\u8B6F {language}",neverTranslateSomeLanguage:"\u6C38\u4E0D\u7FFB\u8B6F {language}",alwaysTranslateSomeSite:"\u7E3D\u662F\u7FFB\u8B6F {hostname}",neverTranslateSomeSite:"\u6C38\u4E0D\u7FFB\u8B6F {hostname}",add:"\u65B0\u589E",default:"\u9810\u8A2D",forThisLanguage:"\u91DD\u5C0D\u8A72\u8A9E\u8A00\uFF1A","add url":"\u8F38\u5165 URL",edit:"\u7DE8\u8F2F","translate other languages into specific language":"\u5C07\u5176\u5B83\u8A9E\u8A00\u7FFB\u8B6F\u70BA\u4F60\u8A2D\u5B9A\u7684\u8A9E\u8A00","select translation service":"\u9078\u64C7\u4F60\u60F3\u7528\u7684\u7FFB\u8B6F\u670D\u52D9",language:"\u8A9E\u8A00","show-original":"\u986F\u793A\u539F\u6587",translate:"\u7FFB\u8B6F",Translated:"\u5DF2\u7FFB\u8B6F",Translating:"\u6B63\u5728\u7FFB\u8B6F",Error:"\u932F\u8AA4",allowCacheTranslations:"\u555F\u7528\u672C\u6A5F\u7FFB\u8B6F\u5FEB\u53D6\uFF08\u6E1B\u5C11\u91CD\u8907\u6BB5\u843D\u7684\u7FFB\u8B6F\u8981\u6C42\uFF09","translation display":"\u8B6F\u6587\u986F\u793A\u6A23\u5F0F","select diplay style":"\u5340\u5206\u8B6F\u6587\u7684\u6A23\u5F0F\uFF0C\u5177\u9AD4\u53EF\u53C3\u8003\u4E0B\u5217\u7BC4\u4F8B",interface:"\u4ECB\u9762\u8A2D\u5B9A",import_export:"\u532F\u5165/\u532F\u51FA",import_export_title:"\u532F\u5165/\u532F\u51FA\u8A2D\u5B9A",syncToGoogleDrive:"\u7ACB\u5373\u8207 Google Drive \u540C\u6B65",previewAllThemes:"\u9810\u89BD\u5168\u90E8\u6A23\u5F0F","translationTheme.none":"\u7121","translationTheme.grey":"\u9ED1\u7070\u8272","translationTheme.dashed":"\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.dotted":"\u9EDE\u72C0\u5E95\u7DDA","translationTheme.dashedBorder":"\u865B\u7DDA\u6846\u7DDA","translationTheme.solidBorder":"\u5BE6\u7DDA\u6846\u7DDA","translationTheme.underline":"\u76F4\u7DDA\u5E95\u7DDA","translationTheme.mask":"\u6A21\u7CCA\u6548\u679C\uFF08\u5B78\u7FD2\u6A21\u5F0F\uFF09","translationTheme.opacity":"\u900F\u660E\u6548\u679C","translationTheme.paper":"\u767D\u7D19\u9670\u5F71\u6548\u679C","translationTheme.dividingLine":"\u5206\u9694\u7DDA","translationTheme.highlight":"\u9192\u76EE\u63D0\u793A","translationTheme.marker":"\u99AC\u514B\u7B46","translationTheme.marker2":"\u99AC\u514B\u7B462","translationTheme.blockquote":"\u5F15\u7528\u6A23\u5F0F","translationTheme.weakening":"\u5F31\u5316","translationTheme.italic":"\u659C\u9AD4","translationTheme.bold":"\u7C97\u9AD4","translationTheme.thinDashed":"\u7D30\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDashed":"\u7CFB\u7D71\u5167\u5EFA\u7834\u6298\u865F\u5E95\u7DDA","translationTheme.nativeDotted":"\u7CFB\u7D71\u5167\u5EFA\u9EDE\u72C0\u5E95\u7DDA","translationTheme.nativeUnderline":"\u7CFB\u7D71\u5167\u5EFA\u76F4\u7DDA\u5E95\u7DDA","translationTheme.wavy":"\u6CE2\u5F62\u66F2\u7DDA","translationServices.tencent":"\u9A30\u8A0A\u7FFB\u8B6F\u541B","translationServices.tenAlpha":"\u9A30\u8A0A\u7FFB\u8B6F\u541B(Alpha)","translationServices.google":"Google \u7FFB\u8B6F","translationServices.bai":"\u767E\u5EA6(Alpha)","translationServices.baidu":"\u767E\u5EA6\u7FFB\u8B6F","translationServices.aliyun":"\u963F\u91CC\u96F2\u7FFB\u8B6F","translationServices.volc":"\u706B\u5C71\u7FFB\u8B6F","translationServices.deeplx":"DeeplX(Beta)","translationServices.bing":"\u5FAE\u8F6F\u7FFB\u8B6F","translationServices.deepl":"Deepl","translationServices.wechat":"\u5FAE\u4FE1\u7FFB\u8B6F","translationServices.azure":"Azure \u7FFB\u8B6F","translationServices.ibm":"IBM Watson","translationServices.aws":"\u4E9E\u99AC\u905C\u7FFB\u8B6F","translationServices.mock":"\u6A21\u64EC\u7FFB\u8B6F","translationServices.mock2":"\u6A21\u64EC\u7FFB\u8B6F2","translationServices.caiyun":"\u5F69\u96F2\u5C0F\u8B6F","translationServices.cai":"\u5F69\u96F2\u5C0F\u8B6F (Alpha)","translationServices.volcAlpha":"\u706B\u5C71\u7FFB\u8B6F(Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"\u6709\u9053\u7FFB\u8B6F","translationServices.you":"\u6709\u9053\u7FFB\u8B6F (Alpha)","translationServices.transmart":"\u9A30\u8A0A\u4EA4\u4E92\u7FFB\u8B6F","translationServices.niu":"\u5C0F\u725B\u7FFB\u8B6F","translationServices.papago":"Papago \u7FFB\u8B6F","translationServices.d":"Deepl(Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"\u7FFB\u8B6F\u9801\u9762\u6A19\u984C","always languages":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateLanguagesLabel:"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",neverTranslateTheFollowingLanguagesDescription:"\u7576\u9801\u9762\u4E2D\u67D0\u4E00\u6BB5\u843D\u7684\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u5C07\u8DF3\u904E\u7FFB\u8B6F",enableUserscriptPagePopup:"\u5728\u9801\u9762\u4E0A\u986F\u793A\u61F8\u6D6E\u7403",enableUserscriptPagePopupDescription:"\u95DC\u9589\u61F8\u6D6E\u7403\u5F8C\uFF0C\u53EF\u4EE5\u7528\u5FEB\u901F\u9375/{touch}\u518D\u6B21\u986F\u793A\u3002\u70BA\u9632\u6B62\u4E0D\u614E\u95DC\u9589\u8A72\u9078\u9805\u5F8C\u627E\u4E0D\u5230\u61F8\u6D6E\u7403\uFF0C\u5EFA\u8B70\u5C07\u672C\u8A2D\u5B9A\u9801\u9762\u52A0\u5165\u81F3\u6211\u7684\u6700\u611B","always translate the following languages":"\u7576\u9801\u9762\u8A9E\u8A00\u70BA\u4E0B\u5217\u8A9E\u8A00\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","always sites":"\u7E3D\u662F\u7FFB\u8B6F\u7684\u7DB2\u5740","always translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u6703\u81EA\u52D5\u7FFB\u8B6F\u70BA\u76EE\u6A19\u8A9E\u8A00","never sites":"\u6C38\u4E0D\u7FFB\u8B6F\u7684\u7DB2\u5740","never translate the following sites":"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u5C07\u4E0D\u6703\u9032\u884C\u7FFB\u8B6F","please refer to":"\u9700\u8981\u586B\u5BEB\u91D1\u9470\u5F8C\u624D\u53EF\u4F7F\u7528\uFF0C\u8A73\u7D30\u8CC7\u8A0A\u8ACB\u53C3\u8003",KeyAndConfigurationTutorial:"\u300A\u91D1\u9470\u7533\u8ACB\u548C\u8A2D\u5B9A\u6559\u5B78\u300B",useAboveStyleForTheseSites:"\u7576\u7DB2\u7AD9\u70BA\u4E0B\u5217\u7DB2\u57DF\u540D\u7A31\u6642\uFF0C\u7E3D\u662F\u4F7F\u7528 \u2308{theme}\u230B \u8B6F\u6587\u6A23\u5F0F",currentUrl:"\u76EE\u524D\u7DB2\u5740",confirm:"\u5132\u5B58",cancel:"\u53D6\u6D88",delete:"\u522A\u9664","languages.auto":"\u81EA\u52D5\u5075\u6E2C",syncToCloud:"\u540C\u6B65\u81F3\u96F2\u7AEF",syncToCloudDescription:"\u4E0A\u50B3\u81F3\u96F2\u7AEF\u5F8C\uFF0C\u53EF\u4EE5\u5728\u4E0D\u540C\u7684\u700F\u89BD\u5668/\u6CB9\u7334\u8173\u672C\u4E4B\u9593\u540C\u6B65\u8A2D\u5B9A\uFF0C\u4EE5\u6700\u5F8C\u8B8A\u66F4\u6642\u9593\u70BA\u6E96\u3002",authFail:"\u6388\u6B0A\u5931\u6557",syncTitle:"\u624B\u52D5\u5099\u4EFD\u7BA1\u7406",import_hint:"\u532F\u5165",upload:"\u4E0A\u50B3",revokeAuth:"\u64A4\u92B7\u6388\u6B0A",uploadFail:"\u4E0A\u50B3\u5931\u6557",download:"\u4E0B\u8F09",importSuccess:"\u532F\u5165\u6210\u529F",importFail:"\u532F\u5165\u5931\u6557",deleteFail:"\u522A\u9664\u5931\u6557",backupToCloud:"\u624B\u52D5\u7BA1\u7406\u5099\u4EFD\u6A94\u6848",create_new_backup:"\u65B0\u589E\u5099\u4EFD\u7BC0\u9EDE",maxBackupFiles:"\u6700\u591A\u53EF\u4EE5\u5099\u4EFD{count}\u500B\u4E0D\u540C\u7684\u7BC0\u9EDE\uFF0C\u8ACB\u522A\u9664\u4E0D\u9700\u8981\u7684\u7BC0\u9EDE",backupToCloudDescription:"\u624B\u52D5\u4E0A\u50B3\u6216\u9084\u539F\u5099\u4EFD\u6A94\u6848\uFF0C\u6700\u591A\u5141\u8A31 3 \u500B\u4E0D\u540C\u7684\u5099\u4EFD",successSyncConfig:"\u6210\u529F\u8207\u96F2\u7AEF\u4FDD\u6301\u540C\u6B65",syncFail:"\u540C\u6B65\u5931\u6557",updatedAt:"\u66F4\u65B0\u65BC {date}",lastSyncedAt:"\u4E0A\u6B21\u6AA2\u67E5\u65BC {date}",downloadFail:"\u4E0B\u8F09\u5931\u6557",clickToDownload:"\u9EDE\u9078\u4E0B\u8F09",aboutLabel:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831",aboutLabelWithoutSponsor:"\u95DC\u65BC - \u554F\u984C\u56DE\u5831","browser.openAboutPage":"\u95DC\u65BC/\u554F\u984C\u56DE\u5831/\u8D0A\u52A9",aboutIntro:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F \u4F60\u53EF\u4EE5\u95DC\u6CE8\u6211\u4EEC\u7684<3>Twitter\uFF0C<4>Telegram \u983B\u9053\u4EE5\u53CA\u4E0B\u65B9\u7684<5>\u90F5\u4EF6\u8A02\u95B1\u8FFD\u8E64\u66F4\u65B0\u3002",aboutIntroWithoutSponsor:"\u672C\u5957\u4EF6\u70BA\u514D\u8CBB\u5957\u4EF6\uFF0C\u5E0C\u671B\u6211\u5011\u90FD\u80FD\u66F4\u52A0\u5BB9\u6613\u4E14\u6109\u6085\u5730\u7372\u53D6\u7DB2\u969B\u7DB2\u8DEF\u4E0A\u66F4\u591A\u7684\u5916\u8A9E\u8CC7\u8A0A \u2764\uFE0F ",projectHomepage:"\u5C08\u6848\u9996\u9801",wechatPublicAccount:"\u5FAE\u4FE1\u516C\u4F17\u53F7",wechatCommunities:"\u5FAE\u4FE1\u4EA4\u6D41\u7FA4",qqCommunities:"QQ \u4EA4\u6D41\u9891\u9053",joinTelegramGroup:"\u52A0\u5165\u7528\u6237\u4EA4\u6D41\u7FA4\u7D44\u53C3\u8207\u529F\u80FD\u8A0E\u8AD6",joinTelegramChannel:"\u95DC\u6CE8 Telegram \u983B\u9053\u77AD\u89E3\u66F4\u65B0\u8CC7\u8A0A",feedbackAndJoin:"\u554F\u984C\u56DE\u5831/\u52A0\u5165\u7FA4\u7D44",autoSync:"\u81EA\u52D5\u5B9A\u6642\u540C\u6B65",loadingThemeTitle:"Loading \u6A23\u5F0F",loadingThemeDescription:"\u8A2D\u5B9A\u7B49\u5F85\u8B6F\u6587\u8F09\u5165\u6642\u7684\u6A23\u5F0F","loadingTheme.spinner":"\u8F49\u5708\u52D5\u756B","loadingTheme.text":"\u975C\u614B\u6587\u5B57 ... ","loadingTheme.none":"\u4E0D\u986F\u793A",developerDescription:"\u53EF\u4EE5\u9EDE\u9078<1>\u6B64\u8655\u6AA2\u8996\u9032\u968E\u81EA\u8A02\u529F\u80FD\u76F8\u95DC\u7684\u8AAA\u660E\u6587\u4EF6","edit border color":"\u8B8A\u66F4\u908A\u6846\u8272\u5F69",successSyncButNoChange:"\u76EE\u524D\u8A2D\u5B9A\u8207\u96F2\u7AEF\u4E00\u81F4",customTheme:"\u81EA\u8A02\u8272\u5F69\u548C\u5927\u5C0F","customThemeLabel.borderColor":"\u908A\u6846\u8272\u5F69","customThemeLabel.borderRadius":"\u908A\u6846\u5713\u89D2","customThemeLabel.textColor":"\u6587\u5B57\u8272\u5F69","customThemeLabel.backgroundColor":"\u80CC\u666F\u8272\u5F69","customThemeLabel.zoom":"\u5B57\u578B\u7E2E\u653E\u6BD4\u4F8B (%)",resetToDefaultColor:"\u9084\u539F\u70BA\u9810\u8A2D\u8272\u5F69",isTranslateTitle:"\u555F\u7528\u7DB2\u9801\u6A19\u984C\u7FFB\u8B6F",isTranslateTitleDescription:"\u555F\u7528\u5F8C\uFF0C\u7DB2\u9801\u7684\u6A19\u984C\u6703\u88AB\u7FFB\u8B6F",enableSearchEnhancement:"\u958B\u555F\u641C\u7D22\u589E\u5F37",enableSearchEnhancementDescription:"\u4E2D\u6587\u641C\u7D22\u8C37\u6B4C\u6703\u5728\u53F3\u908A\u51FA\u73FE\u82F1\u6587\u7248\u8C37\u6B4C\u65B0\u805E",verifyService:"\u9EDE\u6B64\u6E2C\u8A66\u670D\u52D9",verified:"\u9A57\u8B49\u6210\u529F","field.model":"\u6A21\u578B","field.translationEngine":"\u7FFB\u8B6F\u5F15\u64CE","field.limitPerMinute":"\u6BCF\u5206\u9418\u6700\u5927\u8981\u6C42\u6578","field.limitPerSecond":"\u6BCF\u79D2\u6700\u5927\u8981\u6C42\u6578","field.maxTextLengthPerRequest":"\u6BCF\u6B21\u8981\u6C42\u7684\u6700\u5927\u6587\u5B57\u9577\u5EA6","field.apiUrl":"\u81EA\u8A02 API \u4F4D\u5740","description.limitPerMinute":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u5206\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.limitPerSecond":"\u8981\u6C42\u6578\u8D85\u904E\u8A72\u9650\u5236\u6642\u6703\u88AB\u66AB\u6642\u505C\u7528\uFF0C\u76F4\u81F3\u4E0B\u4E00\u79D2\u9418\u958B\u59CB\u3002\u7531\u4E8EOpenAI\u76EE\u524D\u670D\u52A1\u7684\u5404\u79CD\u9650\u5236\uFF0C\u8BF7\u70B9\u51FB<1>\u8FD9\u91CC\u67E5\u770B\u6700\u65B0\u5EFA\u8BAE\u7684\u6570\u503C","description.prompt":"\u4EE5\u7528\u6237\u8EAB\u4EFD\u53D1\u9001\u7ED9 OpenAI \u7684\u5BF9\u8BDD\uFF0C\u5176\u4E2D {{text}} \u8868\u793A\u6BB5\u843D\u7684\u6587\u672C\u5185\u5BB9\uFF0C{{from}} \u8868\u793A\u6BB5\u843D\u7684\u8BED\u8A00\uFF0C{{to}} \u8868\u793A\u76EE\u6807\u8BED\u8A00,\u53EF\u4EE5\u7701\u7565 {{text}} \uFF08\u63A8\u8350\uFF09, \u5C06\u4F1A\u5728\u5355\u72EC\u4F5C\u4E3A\u4E00\u6BB5\u53D1\u9001\u7ED9 OpenAI","description.maxTextLengthPerRequest":"\u9810\u8A2D\u6703\u5408\u4F75\u591A\u500B\u6BB5\u843D\uFF0C\u4EE5\u6E1B\u5C11\u8ACB\u8981\u6C42\u6578\uFF0C\u4F46\u662F\u5982\u679C\u6BB5\u843D\u7E3D\u9577\u5EA6\u904E\u9577\uFF0C\u4E5F\u53EF\u80FD\u6703\u5C0E\u81F4 API \u7684\u56DE\u61C9\u6642\u9593\u589E\u52A0\uFF0C\u56E0\u6B64\u53EF\u4EE5\u5617\u8A66\u8ABF\u6574\u8A72\u9078\u9805\u4F86\u63D0\u5347\u901F\u5EA6",enabledExtension:"\u555F\u7528\u5957\u4EF6",clickToDisableExtension:"\u9EDE\u9078\u505C\u7528\u5957\u4EF6",clickToEnableExtension:"\u9EDE\u9078\u555F\u7528\u5957\u4EF6",hasBeenDisabled:"\u5DF2\u505C\u7528","show password":"\u986F\u793A\u5BC6\u78BC",customContent:"\u8F38\u5165\u81EA\u5B9A\u7FA9\u6A21\u578B",inputOptions:"\u8F38\u5165\u6846\u589E\u5F37",retryAllParagraphs:"\u91CD\u8BD5\u5168\u90E8\u9519\u8BEF\u6BB5\u843D",errorTooltipTitle:"\u70B9\u51FB\u67E5\u770B\u9519\u8BEF\u539F\u56E0",disableConfirm:"\u7981\u7528\u78BA\u8A8D",disableOnce:"\u7981\u7528\u4E00\u6B21",disableGlobal:"\u5168\u5C40\u7981\u7528",disableTint:"* \u60A8\u53EF\u4EE5\u5728 {option} \u4E2D\u91CD\u65B0\u555F\u7528\u3002",option:"\u9078\u9805"};var sg={lineBreakMaxTextCount:"Maximum number of characters allowed per sentence after line break","translate-pdf":"Click to translate PDF","translate-firefox-local-pdf":"Click to upload Pdf",enableLineBreak:"Whether to turn on automatic line wrapping for long paragraphs",sponsorLabel:"Sponsoring developers from $1 (monthly or one-time)",help:"Help",browserShortcutsNoteForFirefox:`To modify the shortcut key in Firefox browser, you need to open the extension management page 'about: addons', then click "Settings", and then click "Management shortcut key" to set it`,browserShortcutsNoteForChrome:"To modify the shortcut key in Chrome browser, you need to open the extension management page` chrome://extensions/shortcuts `) Settings, click the button below to jump to the shortcut key management page.",browserShortcutsSucks:"Please enter the shortcut key manually in the format:",enableLineBreakDescription:"After opening, a line break will be inserted at the end of each sentence in a long paragraph for easy reading","browser.brandName":"Immersive Translate","browser.brandDescription":"Web bilingual translation, completely free to use, supports Deepl/Google/Bing/Tencent/Youdao, etc.","browser.toggleTranslatePage":"Toggle Translate Page ","browser.toggleTranslateTheWholePage":"Toggle Translate the Whole Page","browser.toggleOnlyTransation":"Toggle Translate and Hide Original Text","browser.toggleTranslateToThePageEndImmediately":"Toggle Translate to the Bottom of the Page Immediately","browser.toggleTranslateTheMainPage":"Toggle Translate the Main Page","browser.openOptionsPage":"Open Settings Page","browser.toggleTranslationMask":"Toggle translation mask style","browser.translateLocalPdfFile":"Translate local PDF File","browser.openEbookViewer":"Read local e-book","browser.openEbookBuilder":"Make Dual Epub ebook","browser.translateLocalHtmlFile":"Translate HTML/txt File","browser.donateContext":"Sponsor Benefits","browser.translateLocalSubtitleFile":"Translate Subtitle File",confirmResetConfig:"Are you sure you want to reset the settings?",translationLineBreakSettingTitle:"Line break setting",smartLineBreak:"Smart Wrap",alwaysLineBreak:"Always Wrap",isShowContextMenu:"Create right button menu",toggleBeta:"Enable Beta experimental features",betaDescription:"Enable features that are still experimental, and translation services that are in testing. Join the <1>Telegram group to learn more.",translationLineBreakSettingDescription:"The always line break feature is suitable for layouts with less content, making the layout more neat and tidy. (Use smart line breaks for long paragraphs with more content (more than {count} characters) for saving space)",tempTranslateDomainTitle:"Open the translation time temporarily",tempTranslateDomainDescription:"When a page is translated manually, turn it temporarily on as automatic translation",xMinutes:"{count} minutes",disabled:"Disable",changelog:"Change Log",toggleTranslatePageWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide translation display",toggleTranslationMaskWhenThreeFingersOnTheScreen:"Multi-finger touch to show/hide the blur effect of the translation",fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:"Multi-finger touch to show/hide only translation display",addUrlDescription:"The domain name is available and wildcard is supported e.g.: *.google.com, google.com/mail/*, https://www.google.com/*",general:"General",clickToExpandConfig:"Expand current configuration",import:"Import configuration from file",export:"Export to file",toggleDebug:"Print debug logs on the console","fingers.0":"Close","fingers.2":"Two-finger touch","fingers.3":"Three-finger touch","fingers.4":"Four-finger touch","fingers.5":"Five-finger touch",document:"Document",resetSuccess:"All settings reset successful",resetThisSuccess:"Reset successful",saved:"Saved successfully",successImportConfig:"Configuration imported successfully",goAdvancedSettings:"Go to Advanced Settings Page",goAdvancedInterfaceSettings:"Go to Advanced Custom Settings Page",advanced:"Advanced",advancedDescription:"Normally no settings are needed, keep the default. More personalized settings are provided for professional users only.",developer:"Developer settings",donateCafe:"Pricing","translate to the bottom of the page":"Translate to the bottom of the page immediately after opening the page?",feedback:"Feedback",toggleTranslatePage:"Toggle Translate","mouse-translate":"Mouse Hover",mouseHoldKey:"+ {key} translate this paragraph",mouseHoldKeyAuto:"Translate the paragraph directly",mouseHoldKeyOff:"Do nothing",mouseHoldKeyOther:"Custom shortcut key (open settings)",mouseHoldKeyCustomKey:"{key} translate this paragraph",mouseHoverHoldKey:"Mouse over and press X key to translate paragraph",translateToThePageEndImmediatelyDescription:"Enabled will translate from the top to the bottom of the page immediately after opening. Disable will translate while reading. (Not recommended to enable)","translate all areas of the page":"Whether to translate all areas of the web page",translationAreaDescription:"When enabled, all areas of the entire web page will be translated. Disabled will use the default smart recognition and translate only the main areas. (Not recommended to enable)","the number of characters to be translated first":"Directly translate the number of characters in front of the page without waiting to scroll to the visible area","interface language":"Interface language","display both the original text and the translation":"Display both the original text and the translation","keyboard shortcuts":"Keyboard shortcuts",modify:"Edit",reset:"Reset",close:"Close",homepage:"Home Page",more:"More",moreOptions:"Expand more custom settings",translateTheWholePage:"Translate the whole page area (different from only the main area)",changeToTranslateTheWholePage:"Translate the Whole Page",changeToTranslateTheMainPage:"Translate the Main Content",changeToOnlyTranslationMode:"Show Translation only",changeToDualTranslationMode:"Show Dual Translation",translateToThePageEndImmediately:"Immediately translate to the bottom (different from translating the current visible area)",translateTheMainPage:"Main areas of intelligent translation","The local rules are up to date":"Local rules are up to date:","Successfully synchronized with the latest official rules:":"Successfully synced latest official rules:","Checking for updates":"Checking for update","Rules are being synchronized":"Syncing official rules",localVersionIsTooOld:"The local extension version is too old, please upgrade the extension to {minVersion} or a newer version and try to sync again.",badUserscriptBrowser:"The current browser does not correctly implement the interface of the Greasemonkey extension, please use another browser that <1>supports the Greasemonkey extension such as (Firefox Nightly version)",foundNewVersion:"New version available",theLocalExtensionIsUpToUpdate:"The current extension version is up to date.",failToSyncRules:"Failed to sync latest adaptive rules",retry:"Retry",failedReason:"Failure reason",currentRuleVersion:"Current Rule Version",calculating:"Calculating",unknownError:"Unknown Error",canNotFetchRemoteRule:"Unable to fetch remote rule",enableAlphaSuccess:"Alpha enabled successfully",disableAlphaSuccess:"Alpha has been disabled",cacheSize:"Cache size:",cleaning:"Cleaning",cleanCache:"Clear cache",options:"Options",about:"About",service:"Translation Service",needAction:"(to set up)",goSettings:"to set up",needActionForOptions:"(need to set)",translationEngine:"Engine Options",sourceLanguage:"Original language",target:"Target Language",popupSourceLanguage:"Source",popupTarget:"Target",popupService:"Service",forThisSite:"For This Site:",alwaysTranslateSomeLanguage:"Always translate {language}",neverTranslateSomeLanguage:"Never translate {language}",alwaysTranslateSomeSite:"Always translate {hostname}",neverTranslateSomeSite:"Never translate {hostname}",add:"Add",default:"Default",forThisLanguage:"For This Language:","add url":"Add URL",edit:"Edit","translate other languages into specific language":"Translate other languages into the language you set","select translation service":"Select a translation service",language:"Language","show-original":"Show Original",translate:"Translate",Translated:"Translated",Translating:"Translating",Error:"Error",allowCacheTranslations:"Enable local translation caching (reduce translation requests for duplicate paragraphs)","translation display":"Translation display style","select diplay style":"Please refer to the following examples",interface:"Interface Settings",import_export:"Import/Export",import_export_title:"Import/Export Configuration",syncToGoogleDrive:"Sync Now with Google Drive",previewAllThemes:"Preview all themes","translationTheme.none":"None","translationTheme.grey":"Black Gray","translationTheme.dashed":"Dashed underline","translationTheme.dotted":"Dotted Underline","translationTheme.dashedBorder":"Dashed Border","translationTheme.solidBorder":"Dashed Border","translationTheme.underline":"Straight underline","translationTheme.mask":"Blur effect","translationTheme.opacity":"Opacity effect","translationTheme.paper":"White paper shadow effect","translationTheme.dividingLine":"Dividing line","translationTheme.highlight":"Highlight","translationTheme.marker":"Marker","translationTheme.marker2":"Maker2","translationTheme.blockquote":"quote style","translationTheme.weakening":"Weakening","translationTheme.italic":"Italic","translationTheme.bold":"Bold","translationTheme.thinDashed":"Thin dashed underline","translationTheme.nativeDashed":"System Dash Underline","translationTheme.nativeDotted":"System Dotted Underline","translationTheme.nativeUnderline":"System Straight Line Underline","translationTheme.wavy":"Squiggle","translationServices.tencent":"Tencent Translator","translationServices.tenAlpha":"Tencent Translator (Alpha)","translationServices.google":"Google Translate","translationServices.bai":"Baidu (Alpha)","translationServices.baidu":"Baidu translation","translationServices.aliyun":"Aliyun Translator","translationServices.volc":"Volcano Translation","translationServices.deeplx":"DeeplX (Alpha)","translationServices.bing":"Microsoft Translator","translationServices.deepl":"DeepL","translationServices.wechat":"Wechat translation","translationServices.azure":"Azure Translator","translationServices.ibm":"IBM Watson","translationServices.aws":"Amazon Translate","translationServices.mock":"Mock translation","translationServices.mock2":"Mock Translation2","translationServices.caiyun":"Caiyun Translation","translationServices.cai":"Caiyun Translation (Alpha)","translationServices.volcAlpha":"Volcano Translation (Alpha)","translationServices.openl":"OpenL","translationServices.youdao":"Youdao Translation","translationServices.you":"Youdao Translation (Alpha)","translationServices.transmart":"Tencent Smart Translation","translationServices.niu":"Niu Translation","translationServices.papago":"Papago Translation","translationServices.d":"DeeplX (Alpha)","translationServices.dpro":"D Pro (Canary)","translationServices.openai":"OpenAI","translationServices.chatgpt":"ChatGPT Web(3.5 mobile)","translate title":"Translate page title","always languages":"Always translate the following languages",neverTranslateLanguagesLabel:"Never Translated Languages",neverTranslateTheFollowingLanguagesDescription:"When a paragraph on a page is in one of the following languages, the translation will be skipped",enableUserscriptPagePopup:"Always show Popup windows on the page",enableUserscriptPagePopupDescription:"Three-finger touch to show the Popup.","always translate the following languages":"The following languages will always be translated","always sites":"Always translate the following sites","always translate the following sites":"The following sites will always be translated","never sites":"Never translate the following sites","never translate the following sites":"The following sites will never be translated","please refer to":"It can only be used after filling in the key. For details, please refer to",KeyAndConfigurationTutorial:"Key Application and Configuration Tutorial",useAboveStyleForTheseSites:"Sites that always use the {theme} translation style",currentUrl:"Current URL",confirm:"Save",cancel:"Cancel",delete:"Delete","languages.auto":"Detect Language",syncToCloud:"Sync to cloud",syncToCloudDescription:"Upload the configuration to the cloud server, and you can synchronize the configuration between different browsers or Tampermonkey scripts, based on the last modification time.",authFail:"Authorization Failed",syncTitle:"Please select a file operation",import_hint:"Import",upload:"Upload",revokeAuth:"Revoke Authorization",uploadFail:"Upload Failed",download:"Download",importSuccess:"Upload Success",importFail:"Import Failed",deleteFail:"Delete Failed",backupToCloud:"Manage backup files manually",create_new_backup:"Add backup node",maxBackupFiles:"Up to{count}different nodes can be backed up. Please delete unneeded nodes",backupToCloudDescription:"Upload or restore backup files manually, up to 3 different backups",successSyncConfig:"Successfully synced with cloud",syncFail:"Synchronization failed",updatedAt:"Updated at {date}",lastSyncedAt:"Last checked at {date}",downloadFail:"Download failed",clickToDownload:"Click to download",aboutLabel:"About - Feedback ",aboutLabelWithoutSponsor:"About - Feedback","browser.openAboutPage":"About / Feedback",aboutIntro:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F.

You can also follow out <3>Twitter, <4>Telegram Channel, and <5>Email Subscription below to track updates.",aboutIntroWithoutSponsor:"The extension is completely free and we hope that users will all have more accessible and more enjoyable access to the enormous amount of foreign language information available on the Internet \u2764\uFE0F. ",projectHomepage:"Project Homepage",joinTelegramGroup:"Join our communities for feature discussion",joinTelegramChannel:"Subscribe to our Telegram channel to get the latest updates",feedbackAndJoin:"Issue feedback/group",wechatPublicAccount:"Wechat Official Account",wechatCommunities:"Wechat Group",qqCommunities:"QQ Channel",autoSync:"Auto-Time Sync",loadingThemeTitle:"Loading Style",loadingThemeDescription:"Set the style of waiting for the translation to load","loadingTheme.spinner":"Spinning icon","loadingTheme.text":"Static Text... ","loadingTheme.none":"Disabled",developerDescription:"You can click <1>here to see the documentation related to advanced customization","edit border color":"Edit border color",successSyncButNoChange:"The current configuration is consistent with that in the cloud server",customTheme:"Customize colors and sizes","customThemeLabel.borderColor":"Border color","customThemeLabel.borderRadius":"Border Round Corner","customThemeLabel.textColor":"Text color","customThemeLabel.backgroundColor":"Background color","customThemeLabel.zoom":"Font scale (%)",resetToDefaultColor:"Reset to default colors",isTranslateTitle:"Enable translate page title",isTranslateTitleDescription:"When enabled, the page title will be translated",verifyService:"Click on this test service",verified:"Successful","field.model":"Model","field.translationEngine":"Translation engine","field.limitPerMinute":"Max requests per minute","field.limitPerSecond":"Max requests per second","field.maxTextLengthPerRequest":"Maximum text length per request","field.apiUrl":"Custom API interface address","description.limitPerMinute":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next minute. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.limitPerSecond":"When the number of requests exceeds this limit, it will be temporarily suspended until the beginning of the next second. Due to various limitations of OpenAI's current services, please click <1>here to view the latest suggested values","description.prompt":"Send as a user to OpenAI conversation, where {{text}} indicates the text of the paragraph,{{from}} indicates the language of the paragraph,{{to}} indicates the target language, you can omit {{text}}, if so, it'll be sent as a separated message","description.maxTextLengthPerRequest":"By default multiple paragraphs will be merged to reduce the number of requests, but if the total length of the paragraphs is too long, it may also cause the interface to respond slowly, so you can try to adjust this option to optimize speed",enabledExtension:"Enable extensions",clickToDisableExtension:"Click to disable extension",clickToEnableExtension:"Click to enable the extension",hasBeenDisabled:"Disabled","show password":"Show password",resetToDefaultSettings:"Reset to default settings",customContent:"Enter customization content",inputOptions:"Writing",retryAllParagraphs:"Retry all paragraphs",errorTooltipTitle:"Click to get the error details",retryAllButton:"Retry All",errorModalTitle:"Noops, something went wrong",disableConfirm:"Search Enhancement Settings",disableOnce:"Disable Once",disableGlobal:"Disable Forever",disableTint:"* You can re-enable in {option}.",option:"option",enableSearchEnhancement:"Enable Search Enhancement",saveSettings:"Save",closeModal:"Close"};var l1=[{code:"zh-CN",messages:og},{code:"zh-TW",messages:ig},{code:"en",messages:sg}],fn="immersiveTranslateDeeplGlobalState",yo="immersiveTranslateBingGlobalState",an={};for(let e of l1)an[e.code]=e.messages;var La="Immersive Translate",X="immersive-translate";var xe="immersiveTranslate",To="759003177173-mfm15s5nd77vfmo6e7lanof1emnanf0e.apps.googleusercontent.com",Dn=xe+"GoogleAccessToken",cu=xe+"AuthFlow",Eo="immersive-translate-config-latest.json",w0=xe+"AuthState",xo=xe+"IframeMessage",I5=xe+"WaitForRateLimit",cg=xe+"DocumentMessageAsk",Ot=xe+"DocumentMessageTellThirdParty",dg=xe+"DocumentMessageThirdPartyTell",gg=xe+"DocumentMessageHandler",c1=`${xe}Container`,mg=`${xe}SpecifiedContainer`,Un="buildinConfig",ar="localConfig",du="openOptionsPage",k0="openAboutPage",pg="translateLocalPdfFile";var gu="openEbookViewer",mu="openEbookBuilder";var Co=`${xe}PageTranslatedStatus`,O5=`${xe}PageUrlChanged`,na=`${xe}ReceiveCommand`,fg=xe+"LastUseMouseHoverTime",hg=xe+"LastUseInputTime",jn=xe+"LastUseManualTranslatePageTime",N5=`${xe}PopupReceiveMessage`,d1="immersivetranslate.com",g1="config.immersivetranslate.com",U5=`https://${d1}/`,aa=`https://${g1}/default_config.json`,j5=`${xe}Mark`,pu="immersiveTranslateEffect",$t=`${xe}Root`,z5=`data-${X}-effect`,Ln=`data-${X}-translation-element-mark`,bg=`${xe}TranslationElementMark`,H5=`${xe}TranslatedMark`,W5=`${xe}ParagraphId`,yg=`${xe}LoadingId`,S0=`data-${X}-loading-id`,Tg=`${xe}ErrorId`,vo=`data-${X}-error-id`,m1=`${xe}AtomicBlockMark`,Eg=`${xe}ExcludeMark`,$5=`data-${X}-exclude-mark`,p1=`${xe}StayOriginalMark`,q5=`${xe}PreWhitespaceMark`,wo=`${xe}InlineMark`,xg=`${xe}BlockMark`,K5=`${xe}Left`,V5=`${xe}Right`,G5=`${xe}Width`,J5=`${xe}Height`,Y5=`${xe}Top`,X5=`${xe}FontSize`,Cg="lastRunTime",Z5=`${xe}GlobalStyleMark`,ko=["@","#"],So=" --- ",vg=` +`,rn=`${X}-target-wrapper`,Q5=`${X}-pdf-target-container`,wg=`${X}-target-inner`,ev=`${X}-source-wrapper`,A0=`${X}-target-translation-block-wrapper`,tv=`${X}-root-translation-theme`,rr=`${xe}RootTranslationTheme`,kg=`${X}-target-translation-vertical-block-wrapper`,Sg=`${X}-target-translation-pdf-block-wrapper`,Ag=`${X}-target-translation-pre-whitespace`,D0=`${X}-target-translation-inline-wrapper`,L0=["none","dashed","underline","dashedBorder","solidBorder","mask","opacity","dotted","dividingLine","highlight","marker","marker2","blockquote","weakening","grey","paper","italic","bold","thinDashed","wavy","nativeDotted","nativeDashed","nativeUnderline"],fu={underline:[{name:"borderColor",required:!1,type:"color"}],nativeUnderline:[{name:"borderColor",required:!1,type:"color"}],nativeDashed:[{name:"borderColor",required:!1,type:"color"}],nativeDotted:[{name:"borderColor",required:!1,type:"color"}],dotted:[{name:"borderColor",required:!1,type:"color"}],dividingLine:[{name:"borderColor",required:!1,type:"color"}],highlight:[{name:"backgroundColor",required:!1,type:"color"}],marker:[{name:"backgroundColor",required:!1,type:"color"}],dashed:[{name:"borderColor",required:!1,type:"color"}],blockquote:[{name:"borderColor",required:!1,type:"color"}],thinDashed:[{name:"borderColor",required:!1,type:"color"}],dashedBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],solidBorder:[{name:"borderRadius",required:!1,type:"number",default:"0"},{name:"borderColor",required:!1,type:"color"}],marker2:[{name:"backgroundColor",required:!1,type:"color"}],wavy:[{name:"borderColor",required:!1,type:"color"}]},Xt=["auto","zh-CN","zh-TW","en","ja","ko","es","de","fr","pt","ru","ar","it","ms","id","vi","af","th","ur","yue","bo","wyw","am","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","el","eo","et","eu","fa","fi","fil","fj","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","ig","is","jw","ka","kk","km","kn","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","mt","mww","my","ne","nl","no","ny","otq","pa","pl","ps","ro","sa","sd","si","sk","sl","sm","sn","so","sq","sr","sr-Cyrl","sr-Latn","st","su","sv","sw","ta","te","tg","tlh","tlh-Qaak","to","tr","ty","ug","uk","uz","xh","yi","yo","yua","zu"],Dg={af:"Afrikaans",am:"Amharic",ar:"Arabic",auto:"Detect Language",az:"Azerbaijani",be:"Belarusian",bg:"Bulgarian",tn:"Zana",bn:"Bengali",bs:"Bosnian",bo:"Tibetan",ca:"Catalan",ceb:"Cebuano",co:"Corsican",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",sa:"Sanskrit",fa:"Persian",fi:"Finnish",fil:"Filipino",fj:"Fijian",fr:"French",fy:"Frisian",ga:"Irish",gd:"Scottish Gaelic",gl:"Galician",gu:"Gujarati",ha:"Hausa",haw:"Hawaiian",he:"Hebrew",hi:"Hindi",hmn:"Hmong",hr:"Croatian",ht:"Haitian Creole",hu:"Hungarian",hy:"Armenian",id:"Indonesian",ig:"Igbo",is:"Icelandic",it:"Italian",ja:"Japanese",jw:"Javanese",ka:"Georgian",kk:"Kazakh",km:"Khmer",kn:"Kannada",ko:"Korean",ku:"Kurdish",ky:"Kyrgyz",la:"Latin",lb:"Luxembourgish",lo:"Lao",lt:"Lithuanian",lv:"Latvian",mg:"Malagasy",mi:"Maori",mk:"Macedonian",ml:"Malayalam",mn:"Mongolian",mr:"Marathi",ms:"Malay",mt:"Maltese",mww:"Hmong Daw",my:"Burmese",ne:"Nepali",nl:"Dutch",no:"Norwegian",ny:"Chichewa",otq:"Quer\xE9taro Otomi",pa:"Punjabi",pl:"Polish",ps:"Pashto",pt:"Portuguese",ro:"Romanian",ru:"Russian",sd:"Sindhi",si:"Sinhala",sk:"Slovak",sl:"Slovenian",sm:"Samoan",sn:"Shona",so:"Somali",sq:"Albanian",sr:"Serbian","sr-Cyrl":"Serbian (Cyrillic)","sr-Latn":"Serbian (Latin)",st:"Sesotho",su:"Sundanese",sv:"Swedish",sw:"Swahili",ta:"Tamil",te:"Telugu",tg:"Tajik",th:"Thai",tlh:"Klingon","tlh-Qaak":"Klingon (piqaD)",to:"Tongan",tr:"Turkish",ty:"Tahitian",ug:"Uyghur",uk:"Ukrainian",ur:"Urdu",uz:"Uzbek",vi:"Vietnamese",wyw:"Classical Chinese",xh:"Xhosa",placeholder:"Please Select",yi:"Yiddish",yo:"Yoruba",yua:"Yucatec Maya",yue:"Cantonese (Traditional)","zh-CN":"Simplified Chinese","zh-TW":"Traditional Chinese",zu:"Zulu","":"All Languages"},Lg={placeholder:"\u8BF7\u9009\u62E9",af:"\u5357\u975E\u8377\u5170\u8BED",am:"\u963F\u59C6\u54C8\u62C9\u8BED",ar:"\u963F\u62C9\u4F2F\u8BED",auto:"\u81EA\u52A8\u68C0\u6D4B\u8BED\u8A00",az:"\u963F\u585E\u62DC\u7586\u8BED",be:"\u767D\u4FC4\u7F57\u65AF\u8BED",bg:"\u4FDD\u52A0\u5229\u4E9A\u8BED",tn:"\u8D5E\u7EB3\u8BED",bn:"\u5B5F\u52A0\u62C9\u8BED",bs:"\u6CE2\u65AF\u5C3C\u4E9A\u8BED",bo:"\u85CF\u8BED",ca:"\u52A0\u6CF0\u7F57\u5C3C\u4E9A\u8BED",ceb:"\u5BBF\u52A1\u8BED",co:"\u79D1\u897F\u5609\u8BED",cs:"\u6377\u514B\u8BED",cy:"\u5A01\u5C14\u58EB\u8BED",da:"\u4E39\u9EA6\u8BED",de:"\u5FB7\u8BED",el:"\u5E0C\u814A\u8BED",en:"\u82F1\u8BED",eo:"\u4E16\u754C\u8BED",es:"\u897F\u73ED\u7259\u8BED",et:"\u7231\u6C99\u5C3C\u4E9A\u8BED",eu:"\u5DF4\u65AF\u514B\u8BED",sa:"\u68B5\u8BED",fa:"\u6CE2\u65AF\u8BED",fi:"\u82AC\u5170\u8BED",fil:"\u83F2\u5F8B\u5BBE\u8BED",fj:"\u6590\u6D4E\u8BED",fr:"\u6CD5\u8BED",fy:"\u5F17\u91CC\u65AF\u5170\u8BED",ga:"\u7231\u5C14\u5170\u8BED",gd:"\u82CF\u683C\u5170\u76D6\u5C14\u8BED",gl:"\u52A0\u5229\u897F\u4E9A\u8BED",gu:"\u53E4\u5409\u62C9\u7279\u8BED",ha:"\u8C6A\u8428\u8BED",haw:"\u590F\u5A01\u5937\u8BED",he:"\u5E0C\u4F2F\u6765\u8BED",hi:"\u5370\u5730\u8BED",hmn:"\u82D7\u8BED",hr:"\u514B\u7F57\u5730\u4E9A\u8BED",ht:"\u6D77\u5730\u514B\u91CC\u5965\u5C14\u8BED",hu:"\u5308\u7259\u5229\u8BED",hy:"\u4E9A\u7F8E\u5C3C\u4E9A\u8BED",id:"\u5370\u5EA6\u5C3C\u897F\u4E9A\u8BED",ig:"\u4F0A\u535A\u8BED",is:"\u51B0\u5C9B\u8BED",it:"\u610F\u5927\u5229\u8BED",ja:"\u65E5\u672C\u8BED",jw:"\u722A\u54C7\u8BED",ka:"\u683C\u9C81\u5409\u4E9A\u8BED",kk:"\u54C8\u8428\u514B\u8BED",km:"\u9AD8\u68C9\u8BED",kn:"\u5361\u7EB3\u8FBE\u8BED",ko:"\u97E9\u8BED",ku:"\u5E93\u5C14\u5FB7\u8BED",ky:"\u5409\u5C14\u5409\u65AF\u8BED",la:"\u62C9\u4E01\u8BED",lb:"\u5362\u68EE\u5821\u8BED",lo:"\u8001\u631D\u8BED",lt:"\u7ACB\u9676\u5B9B\u8BED",lv:"\u62C9\u8131\u7EF4\u4E9A\u8BED",mg:"\u9A6C\u62C9\u52A0\u65AF\u8BED",mi:"\u6BDB\u5229\u8BED",mk:"\u9A6C\u5176\u987F\u8BED",ml:"\u9A6C\u62C9\u96C5\u62C9\u59C6\u8BED",mn:"\u8499\u53E4\u8BED",mr:"\u9A6C\u62C9\u5730\u8BED",ms:"\u9A6C\u6765\u8BED",mt:"\u9A6C\u8033\u4ED6\u8BED",mww:"\u767D\u82D7\u8BED",my:"\u7F05\u7538\u8BED",ne:"\u5C3C\u6CCA\u5C14\u8BED",nl:"\u8377\u5170\u8BED",no:"\u632A\u5A01\u8BED",ny:"\u9F50\u5207\u74E6\u8BED\uFF08\u5C3C\u626C\u8D3E\u8BED\uFF09",otq:"\u514B\u96F7\u5854\u7F57\u5965\u6258\u7C73\u8BED",pa:"\u65C1\u906E\u666E\u8BED",pl:"\u6CE2\u5170\u8BED",ps:"\u666E\u4EC0\u56FE\u8BED",pt:"\u8461\u8404\u7259\u8BED",ro:"\u7F57\u9A6C\u5C3C\u4E9A\u8BED",ru:"\u4FC4\u8BED",sd:"\u4FE1\u5FB7\u8BED",si:"\u50E7\u4F3D\u7F57\u8BED",sk:"\u65AF\u6D1B\u4F10\u514B\u8BED",sl:"\u65AF\u6D1B\u6587\u5C3C\u4E9A\u8BED",sm:"\u8428\u6469\u4E9A\u8BED",sn:"\u4FEE\u7EB3\u8BED",so:"\u7D22\u9A6C\u91CC\u8BED",sq:"\u963F\u5C14\u5DF4\u5C3C\u4E9A\u8BED",sr:"\u585E\u5C14\u7EF4\u4E9A\u8BED","sr-Cyrl":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u897F\u91CC\u5C14\u6587\uFF09","sr-Latn":"\u585E\u5C14\u7EF4\u4E9A\u8BED\uFF08\u62C9\u4E01\u6587\uFF09",st:"\u585E\u7D22\u6258\u8BED",su:"\u5DFD\u4ED6\u8BED",sv:"\u745E\u5178\u8BED",sw:"\u65AF\u74E6\u5E0C\u91CC\u8BED",ta:"\u6CF0\u7C73\u5C14\u8BED",te:"\u6CF0\u5362\u56FA\u8BED",tg:"\u5854\u5409\u514B\u8BED",th:"\u6CF0\u8BED",tlh:"\u514B\u6797\u8D21\u8BED","tlh-Qaak":"\u514B\u6797\u8D21\u8BED\uFF08piqaD\uFF09",to:"\u6C64\u52A0\u8BED",tr:"\u571F\u8033\u5176\u8BED",ty:"\u5854\u5E0C\u63D0\u8BED",ug:"\u7EF4\u543E\u5C14\u8BED",uk:"\u4E4C\u514B\u5170\u8BED",ur:"\u4E4C\u5C14\u90FD\u8BED",uz:"\u4E4C\u5179\u522B\u514B\u8BED",vi:"\u8D8A\u5357\u8BED",wyw:"\u6587\u8A00\u6587",xh:"\u73ED\u56FE\u8BED",yi:"\u610F\u7B2C\u7EEA\u8BED",yo:"\u7EA6\u9C81\u5DF4\u8BED",yua:"\u5C24\u5361\u5766\u739B\u96C5\u8BED",yue:"\u7CA4\u8BED","zh-CN":"\u7B80\u4F53\u4E2D\u6587","zh-TW":"\u7E41\u4F53\u4E2D\u6587",zu:"\u7956\u9C81\u8BED","":"\u6240\u6709\u8BED\u8A00"},Pg={placeholder:"\u8ACB\u9078\u64C7",af:"\u963F\u975E\u5229\u5361\u8A9E",am:"\u963F\u59C6\u54C8\u62C9\u8A9E",ar:"\u963F\u62C9\u4F2F\u8A9E",auto:"\u81EA\u52D5\u6AA2\u6E2C\u8A9E\u8A00",az:"\u963F\u585E\u62DC\u7586\u8A9E",be:"\u767D\u4FC4\u7F85\u65AF\u8A9E",bg:"\u4FDD\u52A0\u5229\u4E9E\u8A9E",tn:"\u8D0A\u7D0D\u8A9E",bn:"\u5B5F\u52A0\u62C9\u8A9E",bs:"\u6CE2\u65AF\u5C3C\u4E9E\u8A9E",bo:"\u85CF\u8A9E",ca:"\u52A0\u6CF0\u862D\u8A9E",ceb:"\u5BBF\u9727\u8A9E",co:"\u79D1\u897F\u5609\u8A9E",cs:"\u6377\u514B\u8A9E",cy:"\u5A01\u723E\u65AF\u8A9E",da:"\u4E39\u9EA5\u8A9E",de:"\u5FB7\u8A9E",el:"\u5E0C\u81D8\u8A9E",en:"\u82F1\u8A9E",eo:"\u4E16\u754C\u8A9E",es:"\u897F\u73ED\u7259\u8A9E",et:"\u611B\u6C99\u5C3C\u4E9E\u8A9E",eu:"\u5DF4\u65AF\u514B\u8A9E",sa:"\u68B5\u8A9E",fa:"\u6CE2\u65AF\u8A9E",fi:"\u82AC\u862D\u8A9E",fil:"\u83F2\u5F8B\u8CD3\u8A9E",fj:"\u6590\u6FDF\u8A9E",fr:"\u6CD5\u8A9E",fy:"\u5F17\u91CC\u897F\u8A9E",ga:"\u611B\u723E\u862D\u8A9E",gd:"\u8607\u683C\u862D\u84CB\u723E\u8A9E",gl:"\u52A0\u5229\u897F\u4E9E\u8A9E",gu:"\u53E4\u5409\u62C9\u7279\u8A9E",ha:"\u8C6A\u6492\u8A9E",haw:"\u590F\u5A01\u5937\u8A9E",he:"\u5E0C\u4F2F\u4F86\u8A9E",hi:"\u5370\u5730\u8A9E",hmn:"\u82D7\u8A9E",hr:"\u514B\u7F85\u5730\u4E9E\u8A9E",ht:"\u6D77\u5730\u514B\u91CC\u5967\u723E\u8A9E",hu:"\u5308\u7259\u5229\u8A9E",hy:"\u4E9E\u7F8E\u5C3C\u4E9E\u8A9E",id:"\u5370\u5C3C\u8A9E",ig:"\u4F0A\u535A\u8A9E",is:"\u51B0\u5CF6\u8A9E",it:"\u610F\u5927\u5229\u8A9E",ja:"\u65E5\u8A9E",jw:"\u722A\u54C7\u8A9E",ka:"\u55AC\u6CBB\u4E9E\u8A9E",kk:"\u54C8\u85A9\u514B\u8A9E",km:"\u9AD8\u68C9\u8A9E",kn:"\u574E\u7D0D\u9054\u8A9E",ko:"\u97D3\u8A9E",ku:"\u5EAB\u723E\u5FB7\u8A9E",ky:"\u5409\u723E\u5409\u65AF\u8A9E",la:"\u62C9\u4E01\u8A9E",lb:"\u76E7\u68EE\u5821\u8A9E",lo:"\u8001\u64BE\u8A9E",lt:"\u7ACB\u9676\u5B9B\u8A9E",lv:"\u62C9\u812B\u7DAD\u4E9E\u8A9E",mg:"\u99AC\u62C9\u52A0\u65AF\u8A9E",mi:"\u6BDB\u5229\u8A9E",mk:"\u99AC\u5176\u9813\u8A9E",ml:"\u99AC\u62C9\u96C5\u62C9\u59C6\u8A9E",mn:"\u8499\u53E4\u8A9E",mr:"\u99AC\u62C9\u5730\u8A9E",ms:"\u99AC\u4F86\u8A9E",mt:"\u99AC\u723E\u4ED6\u8A9E",mww:"\u767D\u82D7\u8A9E",my:"\u7DEC\u7538\u8A9E",ne:"\u5C3C\u6CCA\u723E\u8A9E",nl:"\u8377\u862D\u8A9E",no:"\u632A\u5A01\u8A9E",ny:"\u9F4A\u5207\u74E6\u8A9E",otq:"\u594E\u96F7\u5854\u7F85\u5967\u6258\u7C73\u8A9E",pa:"\u65C1\u906E\u666E\u8A9E",pl:"\u6CE2\u862D\u8A9E",ps:"\u666E\u4EC0\u5716\u8A9E",pt:"\u8461\u8404\u7259\u8A9E",ro:"\u7F85\u99AC\u5C3C\u4E9E\u8A9E",ru:"\u4FC4\u8A9E",sd:"\u4FE1\u5FB7\u8A9E",si:"\u50E7\u4F3D\u7F85\u8A9E",sk:"\u65AF\u6D1B\u4F10\u514B\u8A9E",sl:"\u65AF\u6D1B\u7DAD\u5C3C\u4E9E\u8A9E",sm:"\u85A9\u6469\u4E9E\u8A9E",sn:"\u7D39\u7D0D\u8A9E",so:"\u7D22\u99AC\u91CC\u8A9E",sq:"\u963F\u723E\u5DF4\u5C3C\u4E9E\u8A9E",sr:"\u585E\u723E\u7DAD\u4E9E\u8A9E","sr-Cyrl":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u897F\u91CC\u723E\u6587)","sr-Latn":"\u585E\u723E\u7DAD\u4E9E\u8A9E (\u62C9\u4E01\u6587)",st:"\u585E\u7D22\u6258\u8A9E",su:"\u5DFD\u4ED6\u8A9E",sv:"\u745E\u5178\u8A9E",sw:"\u65AF\u74E6\u5E0C\u91CC\u8A9E",ta:"\u6CF0\u7C73\u723E\u8A9E",te:"\u6CF0\u76E7\u56FA\u8A9E",tg:"\u5854\u5409\u514B\u8A9E",th:"\u6CF0\u8A9E",tlh:"\u514B\u6797\u8CA2\u8A9E","tlh-Qaak":"\u514B\u6797\u8CA2\u8A9E (piqaD)",to:"\u6771\u52A0\u8A9E",tr:"\u571F\u8033\u5176\u8A9E",ty:"\u5854\u5E0C\u63D0\u8A9E",ug:"\u7DAD\u543E\u723E\u8A9E",uk:"\u70CF\u514B\u862D\u8A9E",ur:"\u70CF\u723E\u90FD\u8A9E",uz:"\u70CF\u8332\u5225\u514B\u8A9E",vi:"\u8D8A\u5357\u8A9E",wyw:"\u6587\u8A00\u6587",xh:"\u79D1\u85A9\u8A9E",yi:"\u610F\u7B2C\u7DD2\u8A9E",yo:"\u7D04\u9B6F\u5DF4\u8A9E",yua:"\u5C24\u52A0\u6566\u99AC\u96C5\u8A9E",yue:"\u5EE3\u6771\u8A71 (\u50B3\u7D71)","zh-CN":"\u7C21\u9AD4\u4E2D\u6587","zh-TW":"\u7E41\u9AD4\u4E2D\u6587",zu:"\u7956\u9B6F\u8A9E","":"\u6240\u6709\u8A9E\u8A00"};var Mg=["toggleTranslatePage","toggleTranslateTheWholePage","toggleOnlyTransation","toggleTranslateToThePageEndImmediately","toggleTranslateTheMainPage","toggleTranslationMask"],Fg=["https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","http://192.168.31.51:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","http://192.168.31.51:8000/options/"],_g="Night gathers, and now my watch begins. It shall not end until my death. I shall take no wife, hold no lands, father no children. I shall wear no crowns and win no glory. I shall live and die at my post.",P0="\u957F\u591C\u5C06\u81F3\uFF0C\u6211\u4ECE\u4ECA\u5F00\u59CB\u5B88\u671B\uFF0C\u81F3\u6B7B\u65B9\u4F11\u3002\u6211\u5C06\u4E0D\u5A36\u59BB\u3001\u4E0D\u5C01\u5730\u3001\u4E0D\u751F\u5B50\u3002\u6211\u5C06\u4E0D\u6234\u5B9D\u51A0\uFF0C\u4E0D\u4E89\u8363\u5BA0\u3002\u6211\u5C06\u5C3D\u5FE0\u804C\u5B88\uFF0C\u751F\u6B7B\u4E8E\u65AF\u3002",Ao="zh-CN",Do="https://immersivetranslate.com/docs/communities/",lg=[{type:"select",name:"codename",labelKey:"field.translationEngine",default:"youdao",required:!1,options:[{label:"translationServices.google",value:"google"},{label:"translationServices.deepl",value:"deepl"},{label:"translationServices.youdao",value:"youdao"},{label:"translationServices.tencent",value:"tencent"},{label:"translationServices.aliyun",value:"aliyun"},{label:"translationServices.baidu",value:"baidu"},{label:"translationServices.caiyun",value:"caiyun"},{label:"translationServices.wechat",value:"wechat"},{label:"translationServices.ibm",value:"ibm"},{label:"translationServices.azure",value:"azure"},{label:"translationServices.aws",value:"aws"}]}],hn={bing:{name:"\u5FAE\u8F6F\u7FFB\u8BD1",homepage:"https://www.bing.com/translator"},google:{name:"Google",homepage:"https://translate.google.com/"},deepl:{name:"DeepL",homepage:"https://www.deepl.com/translator",docUrl:"https://immersivetranslate.com/docs/services/deepL/",allProps:[{name:"authKey",label:"Auth Key",required:!0,type:"password"}]},transmart:{name:"Transmart",homepage:"https://transmart.qq.com/"},openai:{name:"Open AI",homepage:"https://openai.com/api/",docUrl:"https://immersivetranslate.com/docs/services/openai/",allProps:[{name:"APIKEY",required:!0,type:"password"},{name:"model",labelKey:"field.model",descriptionKey:"description.model",required:!1,type:"select",default:"gpt-3.5-turbo-0613",options:[{label:"gpt-3.5-turbo",value:"gpt-3.5-turbo"},{label:"gpt-3.5-turbo-0613",value:"gpt-3.5-turbo-0613"},{label:"gpt-4",value:"gpt-4"}]},{name:"limit",required:!1,labelKey:"field.limitPerSecond",descriptionKey:"description.limitPerSecond",descriptionLink1:"https://immersivetranslate.com/docs/services/openai/",type:"number",default:10},{name:"maxTextLengthPerRequest",required:!1,labelKey:"field.maxTextLengthPerRequest",descriptionKey:"description.maxTextLengthPerRequest",type:"number",default:1200,optional:!0},{name:"maxTextGroupLengthPerRequest",required:!1,labelKey:"field.maxTextGroupLengthPerRequest",descriptionKey:"description.maxTextGroupLengthPerRequest",type:"number",default:1,optional:!0},{name:"apiUrl",labelKey:"field.apiUrl",required:!1,type:"text",default:"https://api.openai.com/v1/chat/completions",descriptionKey:"description.apiUrl",optional:!0},{name:"systemPrompt",label:"System Prompt",required:!1,descriptionKey:"description.systemPrompt",type:"text",optional:!0,default:"You are a translation engine, you can only translate text and cannot interpret it, and do not explain."},{name:"prompt",label:"Prompt",required:!1,descriptionKey:"description.prompt",type:"textarea",default:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...ug,{type:"password",name:"apikey",required:!0}],props:ug},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},P0={type:xe+"ChildFrameToRootFrameIdentifier"},Lo=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"],Po=[{key:"/"},{key:"="},{key:";"},{key:","},{key:"."},{key:":"},{key:"space",labelKey:"spaceKey",skipForStarting:!0},{key:"none",labelKey:"noneKey",skipForTrailing:!0}],Pg='';var ur=console,M0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),r=tn.green;a>1e4?r=tn.red:a>1e3&&(r=tn.yellow),ur.debug(tn.dim(La+" TIMING:"),t,"in",r(a+"ms")),this.#e=n}},hu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&ur.log(tn.dim(La+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&ur.log(tn.green(La+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&ur.warn(tn.yellow(La+" WARN:"),...t)}error(...t){this.#e<=3&&ur.error(tn.red(La+" ERROR:"),...t)}fatal(...t){this.#e<=4&&ur.error(tn.red(La+" FATAL:"),...t)}timing(){return this.level===0?new M0:{reset:()=>{},stop:()=>{}}}},L=new hu;function tt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():y}var ve=tt();function le(){return ve.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function Mg(){return ve.HAS_CSP_ERROR=="1"}function Dt(){if(ve.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function Fg(){return typeof Deno<"u"}var iv=tt().PROD==="1",or=tt().PROD!=="1";function _g(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function bu(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}function Ct(){try{return globalThis.self!==globalThis.top}catch{return!0}}var Mo=!1,l1=le();function Bg(e,t){let n=[];for(let a of t){let r=e.querySelectorAll(a);for(let u of r)n.push(u)}return n}function c1(e,t){let n=function(u){return u.nodeType===Node.ELEMENT_NODE||u.nodeType===Node.TEXT_NODE?u.nodeType===Node.ELEMENT_NODE&&Rg(u,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),r=!0;for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.ELEMENT_NODE){if(ra(u,wo)){if(r===!0)return!0;continue}if(yu(u.nodeName,t.inlineTags))return!0;if(!F0(u,t))return!1}}return!0}function _0(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(yu(e.nodeName,n)||F0(e,t)){if(ra(e,bg)||yu(e.nodeName,["BR"]))return!1;if(ra(e,wo))return!0;if(F0(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return c1(e,t)}else return ra(e,wo);return!1}function Rg(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&ra(e,hg,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&ra(e,lg))return!1;let{stayOriginalTags:a,excludeTags:r}=t,u=[];return n&&r&&r.length>0?u=r||[]:u=r.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||yu(e.nodeName,u))}function Fo(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!Og(a)&&a.length>=n}function Ig(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(Og(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function Og(e){for(let t=0;t127)return!1;return!0}function Ng(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function Ug(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function jg(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function zg(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function ra(e,t,n=!1){return B0(e,t,"1",n)}function B0(e,t,n,a=!1){return Mo&&!a?e[$t]?!!(e[$t]&&e[$t][t]===n):!1:e.dataset[t]===n}function ir(e){return(e.innerText||e.textContent||"").trim()}function R0(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function _o(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function st(e,t,n,a=!1){e.isContentEditable||(Mo&&!a?(e.dataset[pu]||(e.dataset[pu]="1"),e[$t]||(e[$t]={}),e[$t][t]||(e[$t][t]=n)):(e.dataset[pu]||(e.dataset[pu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Bo(e,t,n=!1){if(Mo&&!n){if(!e[$t]||!e[$t][t])return;delete e[$t][t]}else delete e.dataset[t]}function sr(e,t,n=!1){return Mo&&!n?!e[$t]||!e[$t][t]?void 0:e[$t][t]:e.dataset[t]}function F0(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!yu(e.nodeName,n)}function lr(e){let{config:t}=e,n=ko;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function vt(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Ct())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Pa(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){L.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let r=e.querySelector(`style[data-id="${n}"]`);r&&r.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else L.warn("injectCSS failed, rootDocument does not have head node",e)}function cr(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(l1){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function yu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Hg(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),r=parseInt(t.substring(4,6),16);return{r:n,g:a,b:r}}function Wg(e,t,n,a){if(a.document.caretPositionFromPoint){let r=a.document.caretPositionFromPoint(e,t);if(r){let u=a.document.createRange(),o=r.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||Rg(o,n,!0))return null;try{u.setStart(o,r.offset),u.setEnd(o,r.offset)}catch(i){return L.warn("getRangeFromPoint error",i),null}return u}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function $g(e,t,n){let a=0,r=(u,o,i,s)=>{if(++a>100||s===u)return u;let l=u.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return u;let c=l.elementFromPoint(o,i);return c?r(c,o,i,u):u};return r(e,t,n)}function dr(e,t,n,a){let r=t,u=fu[r]||[],o="";e&&u&&u.length>0&&u.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let g=n[c];if(["borderRadius"].includes(c)&&(g+="px"),o+=`--immersive-translate-theme-${r}-${c}: ${g}; -`,t==="marker"&&c==="backgroundColor"&&typeof g=="string"){let{r:m,g:p,b:f}=Hg(g);o+=`--immersive-translate-theme-${r}-${c}-rgb: ${m}, ${p}, ${f}; +{{text}}`,optional:!0}]},chatgpt:{name:"ChatGPT Web(3.5 mobile)",homepage:"https://chat.openai.com",beta:!0},youdao:{name:"Youdao",homepage:"https://youdao.com/",docUrl:"https://immersivetranslate.com/docs/services/youdao/",allProps:[{name:"appId",required:!0,type:"text"},{name:"appSecret",required:!0,type:"password"}]},tencent:{name:"Tencent",homepage:"https://fanyi.qq.com/",docUrl:"https://immersivetranslate.com/docs/services/tencent/",allProps:[{name:"secretId",required:!0,type:"text"},{name:"secretKey",required:!0,type:"password"}]},azure:{name:"azure",homepage:"https://learn.microsoft.com/en-us/azure/cognitive-services/translator/text-translation-overview",docUrl:"https://immersivetranslate.com/docs/services/azure/",allProps:[{name:"region",required:!0,default:"eastasia",type:"text"},{name:"APIKEY",required:!0,type:"password"}]},papago:{name:"Papago",homepage:"https://translate.google.com/",canary:!0},baidu:{name:"Baidu",homepage:"https://fanyi.baidu.com/",docUrl:"https://immersivetranslate.com/docs/services/baidu/",allProps:[{name:"appid",required:!0,type:"text"},{name:"key",required:!0,type:"password"}]},volc:{name:"Volc",homepage:"https://www.volcengine.com/",docUrl:"https://immersivetranslate.com/docs/services/volcano/",allProps:[{name:"accessKeyId",required:!0,type:"text"},{name:"secretAccessKey",required:!0,type:"password"}]},caiyun:{name:"Caiyun",homepage:"https://fanyi.caiyunapp.com/",docUrl:"https://immersivetranslate.com/docs/services/caiyun/",allProps:[{name:"token",required:!0,type:"password"}]},cai:{name:"Cai",homepage:"https://fanyi.caiyunapp.com/",alpha:!0},mock:{name:"Mock",homepage:"https://www.google.com"},mock2:{name:"Mock2",homepage:"https://www.google.com"},tenAlpha:{name:"TenAlpha",homepage:"https://fanyi.qq.com/",alpha:!0},you:{name:"You",alpha:!0,homepage:"https://youdao.com/"},openl:{name:"Openl",homepage:"https://openl.club/",docUrl:"https://immersivetranslate.com/docs/services/openL/",allProps:[...lg,{type:"password",name:"apikey",required:!0}],props:lg},volcAlpha:{name:"Volc Alpha",alpha:!0,homepage:"https://www.volcengine.com/"},d:{name:"D () ",alpha:!0,homepage:"https://www.deepl.com/translator"},dpro:{name:"DPro (Canary) ",canary:!0,homepage:"https://www.deepl.com/translator"},deeplx:{name:"DeepLX (Beta)",beta:!0,homepage:"https://www.deepl.com/translator",allProps:[{name:"url",label:"API URL",required:!0,type:"text"}]},niu:{name:"niutrans",homepage:"https://niutrans.com/",docUrl:"https://immersivetranslate.com/docs/services/niu",allProps:[{name:"APIKEY",required:!0,type:"password"}]}},M0={type:xe+"ChildFrameToRootFrameIdentifier"},Lo=["Alt","Ctrl","Shift","Auto","Off","OtherCustom","Other"],Po=[{key:"/"},{key:"="},{key:";"},{key:","},{key:"."},{key:":"},{key:"space",labelKey:"spaceKey",skipForStarting:!0},{key:"none",labelKey:"noneKey",skipForTrailing:!0}],Bg='';var ur=console,F0=class{#e=performance.now();reset(){this.#e=performance.now()}stop(t){let n=performance.now(),a=Math.round(n-this.#e),r=tn.green;a>1e4?r=tn.red:a>1e3&&(r=tn.yellow),ur.debug(tn.dim(La+" TIMING:"),t,"in",r(a+"ms")),this.#e=n}},hu=class{#e=1;get level(){return this.#e}setLevel(t){switch(t){case"debug":this.#e=0;break;case"info":this.#e=1;break;case"warn":this.#e=2;break;case"error":this.#e=3;break;case"fatal":this.#e=4;break}}debug(...t){this.#e<=0&&ur.log(tn.dim(La+" DEBUG:"),...t)}v(...t){this.#e<=0}info(...t){this.#e<=1&&ur.log(tn.green(La+" INFO:"),...t)}l(...t){this.#e<=1}warn(...t){this.#e<=2&&ur.warn(tn.yellow(La+" WARN:"),...t)}error(...t){this.#e<=3&&ur.error(tn.red(La+" ERROR:"),...t)}fatal(...t){this.#e<=4&&ur.error(tn.red(La+" FATAL:"),...t)}timing(){return this.level===0?new F0:{reset:()=>{},stop:()=>{}}}},A=new hu;function tt(){return typeof process>"u"&&typeof Deno<"u"?Deno.env.toObject():y}var ve=tt();function le(){return ve.IMMERSIVE_TRANSLATE_USERSCRIPT==="1"}function Rg(){return ve.HAS_CSP_ERROR=="1"}function Dt(){if(ve.IMMERSIVE_TRANSLATE_SAFARI==="1")return!0;if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let t=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(t&&t._isSafari)}else return!1}function Ig(){return typeof Deno<"u"}var dv=tt().PROD==="1",or=tt().PROD!=="1";function Og(){return typeof globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__<"u"}function bu(){if(typeof globalThis.immersiveTranslateBrowserAPI<"u"&&globalThis.immersiveTranslateBrowserAPI.runtime&&globalThis.immersiveTranslateBrowserAPI.runtime.getManifest){let e=globalThis.immersiveTranslateBrowserAPI.runtime.getManifest();return!!(e&&(e._isUserscript||e._isSafari))}else return!1}function Ct(){try{return globalThis.self!==globalThis.top}catch{return!0}}var Mo=!1,f1=le();function Ng(e,t){let n=[];for(let a of t){let r=e.querySelectorAll(a);for(let u of r)n.push(u)}return n}function h1(e,t){let n=function(u){return u.nodeType===Node.ELEMENT_NODE||u.nodeType===Node.TEXT_NODE?u.nodeType===Node.ELEMENT_NODE&&Ug(u,t,!0)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,n),r=!0;for(;a.nextNode();){let u=a.currentNode;if(u.nodeType===Node.ELEMENT_NODE){if(ra(u,wo)){if(r===!0)return!0;continue}if(yu(u.nodeName,t.inlineTags))return!0;if(!_0(u,t))return!1}}return!0}function B0(e,t){let n=t.inlineTags;if(e.nodeType===Node.ELEMENT_NODE)if(yu(e.nodeName,n)||_0(e,t)){if(ra(e,xg)||yu(e.nodeName,["BR"]))return!1;if(ra(e,wo))return!0;if(_0(e,t)){let a=globalThis.getComputedStyle(e);if(a.display==="block"||a.display==="flex")return!1}return h1(e,t)}else return ra(e,wo);return!1}function Ug(e,t,n){if(!(e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE)||e.nodeType===Node.ELEMENT_NODE&&ra(e,Eg,!0))return!0;if(e.nodeType===Node.ELEMENT_NODE&&ra(e,mg))return!1;let{stayOriginalTags:a,excludeTags:r}=t,u=[];return n&&r&&r.length>0?u=r||[]:u=r.filter(o=>!a.includes(o)),!!(e.nodeType===Node.ELEMENT_NODE&&e.isContentEditable||e.nodeType===Node.ELEMENT_NODE&&(e.getAttribute("translate")==="no"||e.classList.contains("notranslate"))||yu(e.nodeName,u))}function Fo(e,t,n){let a=e.trim();return a.length>=t||a.split(" ").filter(o=>o.trim()!=="").length>=n||!zg(a)&&a.length>=n}function jg(e,t,n){let a=e.trim();if(a.length<=t)return!0;if(zg(a)){if(a.split(" ").length<=n)return!0}else if(a.length<=n)return!0;return!1}function zg(e){for(let t=0;t127)return!1;return!0}function Hg(e){if(e&&e.includes("://"))try{return new URL(e),!0}catch{return!1}else if(e.includes(".")&&!e.includes(" "))try{return new URL("http://"+e),!0}catch{return!1}else return!1}function Wg(e){return e?/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(e):!1}function $g(e){return!!(e&&e.startsWith("#")&&e.indexOf(" ")===-1)}function qg(e){return!!(e&&e.startsWith("@")&&e.indexOf(" ")===-1)}function ra(e,t,n=!1){return R0(e,t,"1",n)}function R0(e,t,n,a=!1){return Mo&&!a?e[$t]?!!(e[$t]&&e[$t][t]===n):!1:e.dataset[t]===n}function ir(e){return(e.innerText||e.textContent||"").trim()}function I0(e){let t=e.querySelectorAll("iframe"),n="";for(let a=0;a2e3))break}return n}function _o(e){return e?typeof e=="string"?document.querySelector(e)!==null:e.some(t=>document.querySelector(t)):!1}function it(e,t,n,a=!1){e.isContentEditable||(Mo&&!a?(e.dataset[pu]||(e.dataset[pu]="1"),e[$t]||(e[$t]={}),e[$t][t]||(e[$t][t]=n)):(e.dataset[pu]||(e.dataset[pu]="1"),e.dataset[t]!==n&&(e.dataset[t]=n)))}function Bo(e,t,n=!1){if(Mo&&!n){if(!e[$t]||!e[$t][t])return;delete e[$t][t]}else delete e.dataset[t]}function sr(e,t,n=!1){return Mo&&!n?!e[$t]||!e[$t][t]?void 0:e[$t][t]:e.dataset[t]}function _0(e,t){let n=t.allBlockTags.concat(t.inlineTags).concat(t.excludeTags);return!yu(e.nodeName,n)}function lr(e){let{config:t}=e,n=ko;return t.translationServices[e.translationService]&&t.translationServices[e.translationService].placeholderDelimiters&&(n=t.translationServices[e.translationService].placeholderDelimiters),n}function vt(){if(!globalThis||!globalThis.location)return"https://example.com";if(!Ct())return globalThis.location.href;try{let t=globalThis.location.href,n=new URL(t);if(n.protocol==="about:"||n.protocol==="blob:"){if(globalThis.location.ancestorOrigins&&globalThis.location.ancestorOrigins.length>0)return globalThis.location.ancestorOrigins[0];let a="";try{a=globalThis.parent.location.href}catch{}return a||(globalThis.location!=globalThis.parent.location?document.referrer:document.location.href)}else return t}catch{}return globalThis.location.href}function Pa(e,t,n){if(e instanceof ShadowRoot){try{e.appendChild(document.createElement("style")).textContent=t}catch(a){A.warn("injectCSS failed, rootDocument"+a?.message,e)}return}if(e&&e.head&&e.head.appendChild){let a=e.createElement("style");if(n){let r=e.querySelector(`style[data-id="${n}"]`);r&&r.remove(),a.dataset.id=n}a.textContent=t,e.head.appendChild(a)}else A.warn("injectCSS failed, rootDocument does not have head node",e)}function cr(e){let t=e.getAttribute("src");if(t){if(t==="about:blank")return!0;if(f1){if(t.startsWith("blob:"))return!0}else if(t.startsWith("blob:")&&!t.startsWith("blob:http"))return!0;return!1}try{if(e.contentDocument&&e.contentDocument.body)return!0}catch{}return!1}function yu(e,t){if(!e||!t)return!1;Array.isArray(t)||(t=[t]),e=e.toUpperCase();for(let n of t)if(e===n)return!0;return!1}function Kg(e){let t=e.replace("#",""),n=parseInt(t.substring(0,2),16),a=parseInt(t.substring(2,4),16),r=parseInt(t.substring(4,6),16);return{r:n,g:a,b:r}}function Vg(e,t,n,a){if(a.document.caretPositionFromPoint){let r=a.document.caretPositionFromPoint(e,t);if(r){let u=a.document.createRange(),o=r.offsetNode;if(!o||o.nodeType!==Node.TEXT_NODE||Ug(o,n,!0))return null;try{u.setStart(o,r.offset),u.setEnd(o,r.offset)}catch(i){return A.warn("getRangeFromPoint error",i),null}return u}return null}else return a.document.caretRangeFromPoint?a.document.caretRangeFromPoint(e,t):null}function Gg(e,t,n){let a=0,r=(u,o,i,s)=>{if(++a>100||s===u)return u;let l=u.shadowRoot;if(!l||typeof l.elementFromPoint!="function")return u;let c=l.elementFromPoint(o,i);return c?r(c,o,i,u):u};return r(e,t,n)}function dr(e,t,n,a){let r=t,u=fu[r]||[],o="";e&&u&&u.length>0&&u.forEach(l=>{let{name:c}=l;if(e&&n&&n[c]){let g=n[c];if(["borderRadius"].includes(c)&&(g+="px"),o+=`--immersive-translate-theme-${r}-${c}: ${g}; +`,t==="marker"&&c==="backgroundColor"&&typeof g=="string"){let{r:m,g:p,b:f}=Kg(g);o+=`--immersive-translate-theme-${r}-${c}-rgb: ${m}, ${p}, ${f}; `}}});let i="";if(n&&n.textColor){let l=n.textColor;i+=` .immersive-translate-target-translation-theme-${r}-inner{color: ${l};} `}if(n&&n.zoom){let l=n.zoom;i+=` @@ -4074,7 +4082,7 @@ ${o}} `),i&&(s+=i),s?Pa(e,s,"immersive-translate-user-custom-style"):a&&Pa(e,"","immersive-translate-user-custom-style")}function ua(e,t){let a=tt().IMMERSIVE_TRANSLATE_INJECTED_CSS;Pa(e,a,"immersive-translate-default-injected-css");let r=t.config.translationThemePatterns||{},u=t.state.translationTheme,o=r[u]||{};dr(e,u,o);let i="";(t.rule.injectedCss||t.rule.additionalInjectedCss)&&(t.rule.injectedCss&&t.rule.injectedCss.length>0&&(i+=t.rule.injectedCss.join(` `)),t.rule.additionalInjectedCss&&t.rule.additionalInjectedCss.length>0&&(i+=` `+t.rule.additionalInjectedCss.join(` -`))),i&&Pa(e,i,"immersive-translate-dynamic-injected-css")}var d1=0;function d(e,t,n,a,r){var u,o,i={};for(o in t)o=="ref"?u=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:u,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--d1,__source:r,__self:a};if(typeof e=="function"&&(u=e.defaultProps))for(o in u)i[o]===void 0&&(i[o]=u[o]);return we.vnode&&we.vnode(s),s}function I0({value:e,defaultCase:t=null,cases:n}){return e==null?null:d(ut,{children:n[e]!=null?n[e]:t})}function O0(){let[e,t]=H(location.hash);return ke(()=>{let n=()=>t(location.hash);return globalThis.addEventListener("hashchange",n,!1),()=>{globalThis.removeEventListener("hashchange",n)}},[]),e}function Je(e){C0({type:"success",text:e})}function Lt(e){C0({type:"error",text:e})}var N0=/iPhone/i,qg=/iPod/i,Kg=/iPad/i,Vg=/\biOS-universal(?:.+)Mac\b/i,U0=/\bAndroid(?:.+)Mobile\b/i,Gg=/Android/i,gr=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ro=/Silk/i,zn=/Windows Phone/i,Jg=/\bWindows(?:.+)ARM\b/i,Yg=/BlackBerry/i,Xg=/BB10/i,Zg=/Opera Mini/i,Qg=/\b(CriOS|Chrome)(?:.+)Mobile/i,em=/Mobile(?:.+)Firefox\b/i,tm=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function g1(e){return t=>t.test(e)}function Ma(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let r=g1(n),u={apple:{phone:r(N0)&&!r(zn),ipod:r(qg),tablet:!r(N0)&&(r(Kg)||tm(t))&&!r(zn),universal:r(Vg),device:(r(N0)||r(qg)||r(Kg)||r(Vg)||tm(t))&&!r(zn)},amazon:{phone:r(gr),tablet:!r(gr)&&r(Ro),device:r(gr)||r(Ro)},android:{phone:!r(zn)&&r(gr)||!r(zn)&&r(U0),tablet:!r(zn)&&!r(gr)&&!r(U0)&&(r(Ro)||r(Gg)),device:!r(zn)&&(r(gr)||r(Ro)||r(U0)||r(Gg))||r(/\bokhttp\b/i)},windows:{phone:r(zn),tablet:r(Jg),device:r(zn)||r(Jg)},other:{blackberry:r(Yg),blackberry10:r(Xg),opera:r(Zg),firefox:r(em),chrome:r(Qg),device:r(Yg)||r(Xg)||r(Zg)||r(em)||r(Qg)},any:!1,phone:!1,tablet:!1};return u.any=u.apple.device||u.android.device||u.windows.device||u.other.device,u.phone=u.apple.phone||u.android.phone||u.windows.phone,u.tablet=u.apple.tablet||u.android.tablet||u.windows.tablet,u}var j0="DENO",Io="CHROME",Oo="FIREFOX";function nm(e){let t=Io;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Oo:/deno/i.test(n)&&(t=j0)}catch{}return e===Io&&t===Io||e===Oo&&t===Oo||e===j0&&t===j0}function No(){return nm(Io)}function am(){return typeof Deno<"u"}function Fa(){return nm(Oo)}function mr(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function _a(){return!!globalThis.matchMedia("(pointer:fine)").matches}var rm={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},um={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:rm,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:rm,query:()=>{},sendMessage:()=>{}}};var j;am()?j=um:j=globalThis.immersiveTranslateBrowserAPI;var z0={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return j.storage[n].get(a)},set:(e,t,n)=>j.storage[n].set({[e]:t})};function Uo(e,t,n){let[a]=H(()=>typeof t=="function"?t():t),[r]=H(n),[u,o]=H(a),[i,s]=H(!1),[l,c]=H("");ke(()=>{z0.get(e,a,r).then(m=>{m[e]&&o(m[e]),s(!0),c("")}).catch(m=>{s(!1),c(m)})},[e,a,r]);let g=Xn(m=>{let p=typeof m=="function"?m(u):m;L.debug("new settings",p),z0.set(e,p,r).then(()=>{o(p),s(!0),c("")}).catch(f=>{o(p),s(!1),c(f)})},[r,e,u]);return[u,g,i,l]}function jo(e,t,n){let a=[];return function(){let[u,o,i,s]=Uo(e,t,n),l=Xn(c=>{for(let g of a)g(c)},[]);return ke(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[u,l,i,s]}}function om(e,t){return jo(e,t,"local")}function im(e,t){return jo(e,t,"sync")}var m1="userConfig",p1={},f1=im(m1,p1);function bt(e){let[t,n,a,r]=f1(),u=Xn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,u,a,r,n]}function oa(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Xt.map(r=>r.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let r=n.indexOf(t);return r===-1?"auto":Xt[r]}else return"auto";else return Xt[a]}var zo={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`))),i&&Pa(e,i,"immersive-translate-dynamic-injected-css")}var b1=0;function d(e,t,n,a,r){var u,o,i={};for(o in t)o=="ref"?u=t[o]:i[o]=t[o];var s={type:e,props:i,key:n,ref:u,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--b1,__source:r,__self:a};if(typeof e=="function"&&(u=e.defaultProps))for(o in u)i[o]===void 0&&(i[o]=u[o]);return we.vnode&&we.vnode(s),s}function O0({value:e,defaultCase:t=null,cases:n}){return e==null?null:d(rt,{children:n[e]!=null?n[e]:t})}function N0(){let[e,t]=H(location.hash);return ke(()=>{let n=()=>t(location.hash);return globalThis.addEventListener("hashchange",n,!1),()=>{globalThis.removeEventListener("hashchange",n)}},[]),e}function Je(e){v0({type:"success",text:e})}function Lt(e){v0({type:"error",text:e})}var U0=/iPhone/i,Jg=/iPod/i,Yg=/iPad/i,Xg=/\biOS-universal(?:.+)Mac\b/i,j0=/\bAndroid(?:.+)Mobile\b/i,Zg=/Android/i,gr=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,Ro=/Silk/i,zn=/Windows Phone/i,Qg=/\bWindows(?:.+)ARM\b/i,em=/BlackBerry/i,tm=/BB10/i,nm=/Opera Mini/i,am=/\b(CriOS|Chrome)(?:.+)Mobile/i,rm=/Mobile(?:.+)Firefox\b/i,um=e=>typeof e<"u"&&e.platform==="MacIntel"&&typeof e.maxTouchPoints=="number"&&e.maxTouchPoints>1&&typeof globalThis.MSStream>"u";function y1(e){return t=>t.test(e)}function Ma(e){let t={userAgent:"",platform:"",maxTouchPoints:0};!e&&typeof navigator<"u"?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e=="string"?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});let n=t.userAgent,a=n.split("[FBAN");typeof a[1]<"u"&&(n=a[0]),a=n.split("Twitter"),typeof a[1]<"u"&&(n=a[0]);let r=y1(n),u={apple:{phone:r(U0)&&!r(zn),ipod:r(Jg),tablet:!r(U0)&&(r(Yg)||um(t))&&!r(zn),universal:r(Xg),device:(r(U0)||r(Jg)||r(Yg)||r(Xg)||um(t))&&!r(zn)},amazon:{phone:r(gr),tablet:!r(gr)&&r(Ro),device:r(gr)||r(Ro)},android:{phone:!r(zn)&&r(gr)||!r(zn)&&r(j0),tablet:!r(zn)&&!r(gr)&&!r(j0)&&(r(Ro)||r(Zg)),device:!r(zn)&&(r(gr)||r(Ro)||r(j0)||r(Zg))||r(/\bokhttp\b/i)},windows:{phone:r(zn),tablet:r(Qg),device:r(zn)||r(Qg)},other:{blackberry:r(em),blackberry10:r(tm),opera:r(nm),firefox:r(rm),chrome:r(am),device:r(em)||r(tm)||r(nm)||r(rm)||r(am)},any:!1,phone:!1,tablet:!1};return u.any=u.apple.device||u.android.device||u.windows.device||u.other.device,u.phone=u.apple.phone||u.android.phone||u.windows.phone,u.tablet=u.apple.tablet||u.android.tablet||u.windows.tablet,u}var z0="DENO",Io="CHROME",Oo="FIREFOX";function om(e){let t=Io;try{let n=navigator?.userAgent||"";/firefox/i.test(n)||typeof InstallTrigger<"u"?t=Oo:/deno/i.test(n)&&(t=z0)}catch{}return e===Io&&t===Io||e===Oo&&t===Oo||e===z0&&t===z0}function No(){return om(Io)}function im(){return typeof Deno<"u"}function Fa(){return om(Oo)}function mr(){return!!navigator.maxTouchPoints||"ontouchstart"in document.documentElement}function _a(){return!!globalThis.matchMedia("(pointer:fine)").matches}var sm={addListener:()=>{},removeListener:()=>{},hasListener:()=>{}},lm={permissions:{contains:()=>{},request:()=>{}},runtime:{onMessage:sm,openOptionsPage:()=>{},lastError:{message:""}},storage:{sync:{get:()=>{},set:()=>{}}},tabs:{onUpdated:sm,query:()=>{},sendMessage:()=>{}}};var j;im()?j=lm:j=globalThis.immersiveTranslateBrowserAPI;var H0={get:(e,t,n)=>{let a=t===void 0?e:{[e]:t};return j.storage[n].get(a)},set:(e,t,n)=>j.storage[n].set({[e]:t})};function Uo(e,t,n){let[a]=H(()=>typeof t=="function"?t():t),[r]=H(n),[u,o]=H(a),[i,s]=H(!1),[l,c]=H("");ke(()=>{H0.get(e,a,r).then(m=>{m[e]&&o(m[e]),s(!0),c("")}).catch(m=>{s(!1),c(m)})},[e,a,r]);let g=Xn(m=>{let p=typeof m=="function"?m(u):m;A.debug("new settings",p),H0.set(e,p,r).then(()=>{o(p),s(!0),c("")}).catch(f=>{o(p),s(!1),c(f)})},[r,e,u]);return[u,g,i,l]}function jo(e,t,n){let a=[];return function(){let[u,o,i,s]=Uo(e,t,n),l=Xn(c=>{for(let g of a)g(c)},[]);return ke(()=>(a.push(o),()=>{a.splice(a.indexOf(o),1)}),[o]),[u,l,i,s]}}function cm(e,t){return jo(e,t,"local")}function dm(e,t){return jo(e,t,"sync")}var T1="userConfig",E1={},x1=dm(T1,E1);function bt(e){let[t,n,a,r]=x1(),u=Xn(o=>{let i=typeof o=="function"?o(t):o;i&&(i.updatedAt=new Date().toISOString()),n(i),e&&e(i)},[t]);return[t,u,a,r,n]}function oa(e){if(typeof e!="string")return"auto";let t=e.toLowerCase();if(t==="zh"||t==="zh-hans")return"zh-CN";if(t==="zh-hant"||t==="zh-hk")return"zh-TW";if(t==="iw")return"he";if(t==="jv")return"jw";let n=Xt.map(r=>r.toLowerCase()),a=n.indexOf(t);if(a===-1)if(t.indexOf("-")>=0){t=t.split("-")[0];let r=n.indexOf(t);return r===-1?"auto":Xt[r]}else return"auto";else return Xt[a]}var zo={immediateTranslationTextCount:5e3,interval:36e5,beta:!1,cache:!0,translationMode:"dual",enabled:!0,minVersion:"0.6.2",donateUrl:"https://immersivetranslate.com/docs/donate/",uninstallUrl:"https://wj.qq.com/s2/12328372/04e0/",feedbackUrl:"https://github.com/immersive-translate/immersive-translate/issues",isShowContextMenu:!0,enableInputTranslation:!0,enableInputTranslationWithoutTriggerKey:!0,inputTranslationUrlPattern:{matches:[],excludeMatches:[]},inputTranslationBlockUrls:["www.feishu.cn","www.notion.so","www.figma.com/file/*"],inputStyleBlockUrls:[],inputTargetLanguage:"en",inputStartingTriggerKey:"/",inputTrailingTriggerKey:"space",inputTrailingTriggerKeyRepeatTimes:3,inputTrailingTriggerKeyTimeout:500,mutationBlockUrls:["www.feishu.cn"],inputLanguageCodeAlias:{en:["\u82F1\u6587","\u82F1\u8BED"],"zh-CN":["zh","zh-Hant","\u4E2D\u6587"],"zh-TW":["zht","zh-Hant","\u7E41\u4E2D"],ja:["\u65E5\u8BED","\u65E5\u6587"],ko:["\u97E9\u8BED","\u97E9\u6587"],fr:["\u6CD5\u8BED","\u53D1\u6587"],es:["\u897F\u73ED\u7259\u8BED","\u897F\u8BED"],ru:["\u4FC4\u8BED","\u4FC4\u6587"],bo:["\u85CF\u8BED"]},inputStartingTriggerKeyAlias:{"/":["\u3001"],".":["\u3002"],",":["\uFF0C"],space:[" "],";":["\uFF1B"],":":["\uFF1A"]},blockUrls:["https://dash.immersivetranslate.com/*","https://immersive-translate.owenyoung.com/options/","https://immersive-translate.owenyoung.com/auth-done/","https://dash.immersivetranslate.com/","https://dash.immersivetranslate.com/auth-done/","http://localhost:8000/dist/userscript/options/","http://localhost:8000/auth-done/","http://192.168.50.9:8000/dist/userscript/options/","https://www.deepl.com/translator","translate.google.com","http://localhost:8000/options/","http://192.168.50.9:8000/options/","googleads.g.doubleclick.net","s1.hdslb.com","oapi.dingtalk.com","login.dingtalk.com","imasdk.googleapis.com","acdn.adnxs.com","pos.baidu.com","js-sec.indexww.com","g.alicdn.com","ads.pubmatic.com","challenges.cloudflare.com","accounts.google.com","images-na.ssl-images-amazon.com","tpc.googlesyndication.com","js.stripe.com","acdn.adnxs-simple.com","s.union.360.cn","s.amazon-adsystem.com","www.recaptcha.net","s7.addthis.com","z.moatads.com","https://www.marketwatch.com/static_html/daa-min.html","tr.snapchat.com","ct.pinterest.com","*.moatads.com","secure-us.imrworldwide.com","static.noeyeon.click","widgets.outbrain.com","www.dianomi.com/smartads.epl","secure-assets.rubiconproject.com","eus.rubiconproject.com","eus.rubiconproject.com","i.liadm.com","eb2.3lift.com"],telemetry:!0,loadingTheme:"spinner",canary:!1,translationThemePatterns:{},translationLanguagePattern:{matches:[],excludeMatches:[]},translationServices:{volcAlpha:{placeholderDelimiters:["{","}","b"]},volc:{placeholderDelimiters:["{","}","b"]},tencent:{placeholderDelimiters:["{","}","b"]},google:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}","b"]},transmart:{placeholderDelimiters:["#","#","b"]},baidu:{placeholderDelimiters:["#","#"]},caiyun:{placeholderDelimiters:["{","}"]},youdao:{placeholderDelimiters:["\u{1F6A0}","\u{1F6A0}"]},deepl:{immediateTranslationTextCountForImmersiveDeepl:5e4,placeholderDelimiters:["{{","}}","b"],limit:25},bing:{maxTextLengthPerRequest:1800,placeholderDelimiters:["","","b"]},deeplx:{limit:3},d:{immediateTranslationTextCount:0},papago:{placeholderDelimiters:["{","}"]},dpro:{apiUrl:"https://api.deepl.com/jsonrpc"},openai:{placeholderDelimiters:["{{","}}","b"],immediateTranslationTextCount:3e3,translationDebounce:300,interval:1350,prompt:`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: {{text}}`,maxTextGroupLengthPerRequest:1,newlinePlaceholderDelimiters:[` @@ -4094,68 +4102,79 @@ ${o}} ? ?-\\|\\d+\\|- ? -?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` -`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` +?`]}},shortcuts:{toggleTranslatePage:"Alt+A",toggleTranslateTheWholePage:"Alt+W",toggleOnlyTransation:"",toggleTranslateToThePageEndImmediately:"",toggleTranslationMask:""},tempTranslateDomainMinutes:0,immediateTranslationPattern:{matches:["www.tumblr.com","twitter.com","*.twitter.com","medium.com","*.medium.com","www.facebook.com","www.youtube.com","m.youtube.com","mail.google.com","discord.com","google.com","facebook.com","*.facebook.com","web.telegram.org","github.com","*.instagram.com","instagram.com","*.slack.com","https://old.reddit.com/","https://www.reddit.com/r/popular/","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/","https://www.reddit.com/.compact"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},translationParagraphLanguagePattern:{matches:["www.reddit.com","old.reddit.com","twitter.com","www.tumblr.com","*.twitter.com","medium.com","*.medium.com","github.com","gist.github.com","www.facebook.com","www.youtube.com","m.youtube.com","read.readwise.io","www.inoreader.com","mail.google.com","google.com","discord.com","*.instagram.com","instagram.com","web.telegram.org","*.slack.com"],excludeMatches:[],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],selectorExcludeMatches:[]},sourceLanguageUrlPattern:{},generalRule:{_comment:"",normalizeBody:"",useIframePostMessage:!0,searchEnhancementConfig:[],injectedCss:[],isEbook:!1,isEbookBuilder:!1,ignoreZhCNandZhTW:!1,showSponsorOnSafari:!1,noTranslateRegexp:["^\\d+.+ago$","^\\d+\\s+MIN\\s+READ$"],waitForSelectors:[],isInjectOptionsUrl:!1,isInjectVersion:!1,waitForSelectorsTimeout:3e3,pairs:{},aiRule:{},isSubtitleBuilder:!1,minZIndex:0,initTranslationServiceAsSoonAsPossible:!0,targetWrapperTag:"font",additionalInjectedCss:[],isTranslateTitle:!0,enableSearchEnhancement:!0,searchEnhancementSelector:"#rhs",languageDetectMinTextCount:50,wrapperPrefix:"smart",wrapperSuffix:"smart",isPdf:!1,isTransformPreTagNewLine:!1,urlChangeDelay:50,mutationChangeDelay:10,mainFrameMinTextCount:50,mainFrameMinWordCount:5,visibleDelay:0,additionalStayOriginalSelectors:["span.katex","span.notranslate",".MathJax_Preview",".MathJax",".mwe-math-element","span[translate=no]","em[translate=no]","code[translate=no]","span.math.inline","span.math.display",".ltx_Math",".mathjax-block",".MathJax_CHTML"],translationBlockStyle:"",isShowUserscriptPagePopup:!0,observeUrlChange:!1,paragraphMinTextCount:4,paragraphMinWordCount:2,shadowRootSelectors:[],blockMinTextCount:24,blockMinWordCount:4,asideMaxTextCount:1e3,asideMaxWordCount:200,asideMaxTextCountPerParagraph:67,asideMaxWordCountPerParagraph:12,lineBreakMaxTextCount:0,globalAttributes:{},globalMeta:{},globalStyles:{".sr-only":"display:none"},initialGlobalAttributes:{},initialSelectorGlobalAttributes:{header:{translate:"no"},"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},selectors:[],preWhitespaceDetectedTags:["DIV","SPAN"],stayOriginalSelectors:[],additionalSelectors:["h1","section h2","section h3","section h4","main h2","main h3","main h4",".article-title",".article-subtitle",".article_title",".article_subtitle",".article__title",".articleTitle",".Article__content",".titleLink",".summary",".headline",".page-content","aside.note","aside.article-comments","aside.onebox"],atomicBlockTags:[],excludeSelectors:[],additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons","i.fa","i[class^=fa-]",".notranslate","[translate=no]",".navmenu-container"],translationClasses:[],atomicBlockSelectors:[],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],bodyTranslateTags:["FOOTER","ASIDE","BUTTON","NAV"],forceTranslateTags:[],metaTags:["META","SCRIPT","STYLE","NOSCRIPT"],additionalExcludeTags:[],stayOriginalTags:["CODE","TT","IMG","SUP","SUB"],additionalStayOriginalTags:[],inlineTags:["A","ABBR","FONT","ACRONYM","B","INS","DEL","RUBY","RP","RB","BDO","MARK","BIG","RT","NOBR","CITE","DFN","EM","I","LABEL","Q","S","SMALL","SPAN","STRONG","SUB","SUP","U","KBD","TT","VAR","IMG","CODE","SCRIPT","STYLE","LINK","TIME","META","WBR","RELIN-HC","RELIN-HIGHLIGHT","RELIN-ORIGIN","RELIN-TARGET","XQDD_HIGHLIGHT_NEW_WORD","NOBR"],additionalInlineTags:[],extraInlineSelectors:[],additionalInlineSelectors:[".MathJax_Preview",".MathJax"],extraBlockSelectors:["turbo-frame","readme-toc","#hs_cos_wrapper_post_body","#hs_cos_wrapper_post_body"],allBlockTags:["BODY","HGROUP","CONTENT","ADDRESS","ARTICLE","ASIDE","DETAILS","BLOCKQUOTE","CANVAS","DD","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","HEADER","FORM","HR","MAIN","SUMMARY","NAV","NOSCRIPT","PRE","SECTION","TABLE","TFOOT","UL","VIDEO","P","DIV","H1","H2","H3","H4","H5","H6","UL","LI","OL","BR","PICTURE","TBODY","TR","TD","TH","SOURCE","C-WIZ","BUTTON","TURBO-FRAME","README-TOC"],mutationObserverContainerSelectors:[],pdfNewParagraphLineHeight:2.4,pdfNewParagraphIndent:1.2,pdfNewParagraphIndentRightIndentPx:130,fingerCountToToggleTranslagePageWhenTouching:4,fingerCountToToggleTranslationMaskWhenTouching:0,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:0,mouseHoverHoldKey:"Off"},rules:[{selectorMatches:"div.simpread-read-root.simpread-read-root-show > sr-read",mainFrameSelector:"div.simpread-read-root.simpread-read-root-show > sr-read"},{matches:["moz-extension://*/pdf/index.html*"],isPdf:!0,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:"",urlChangeDelay:0,selectors:[".textLayer"],excludeSelectors:[".annotationLayer"],globalStyles:{"div.page":"width: 98%;",".textLayer":"overflow:visible;opacity: 1;"}},{matches:["*://*/*.txt","file://*/*.txt"],selectorMatches:["body > pre"],isTransformPreTagNewLine:!0,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE"]},{matches:["arad.hange.jp","arad.nexon.co.jp","oapi.dingtalk.com","login.dingtalk.com"],useIframePostMessage:!1},{matches:["googleads.g.doubleclick.net","https://www.google.com/recaptcha/*","ad.doubanio.com"],useIframePostMessage:!1,selectors:"#notexistforimmersivetranslate"},{matches:["mail.jabber.org","antirez.com"],excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.wikipedia.org",paragraphMinWordCount:2,paragraphMinTextCount:4,excludeSelectors:[".mw-editsection",".mw-cite-backlink","#p-lang-btn","#right-navigation","#p-associated-pages",".vector-header"],stayOriginalSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"],extraInlineSelectors:[".chemf",".mwe-math-element","[role=math]",".nowrap"]},{matches:["twitter.com","mobile.twitter.com","tweetdeck.twitter.com","https://platform.twitter.com/embed*"],ignoreZhCNandZhTW:!0,isTranslateTitle:!1,selectors:['[data-testid="tweetText"]',".tweet-text",".js-quoted-tweet-text","[data-testid='card.layoutSmall.detail'] > div:nth-child(2)","[data-testid='developerBuiltCardContainer'] > div:nth-child(2)","[data-testid='card.layoutLarge.detail'] > div:nth-child(2)","[data-testid='cellInnerDiv'] div[data-testid='UserCell'] > div> div:nth-child(2)","[data-testid='UserDescription']","[data-testid='HoverCard'] div[dir=auto]"],excludeSelectors:["[aria-describedby][role=button]","header"],paragraphMinTextCount:4,paragraphMinWordCount:2,additionalStayOriginalSelectors:['[data-testid="tweetText"] a'],observeUrlChange:!1,extraBlockSelectors:['[data-testid="tweetText"] div.r-6koalj'],extraInlineSelectors:['[data-testid="tweetText"] div.r-xoduu5','[data-testid="tweetText"] span','[data-testid="UserDescription"] div',"[data-testid='HoverCard'] div[dir=auto] div"]},{matches:["stackoverflow.com","*.stackexchange.com","superuser.com","askubuntu.com","serverfault.com"],extraBlockSelectors:["span.comment-copy"],excludeSelectors:["a.comment-user","span.comment-date","div.s-prose.js-post-body + div",".bottom-notice","div[data-campaign-name=stk]"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"developer.apple.com/documentation/*",selectors:[".container","h3.title","div.content"]},{matches:"news.ycombinator.com",selectors:[".titleline > a",".comment > .commtext",".toptext","a.hn-item-title",".hn-comment-text",".hn-story-title"],excludeSelectors:[".reply"]},{matches:["*.quora.com","quora.com"],additionalSelectors:[".puppeteer_test_question_title","p.q-text"],globalStyles:{".qu-truncateLines--3":"-webkit-line-clamp: unset;"}},{matches:["old.reddit.com/*/.compact","old.reddit.com/.compact","www.reddit.com/*/.compact","www.reddit.com/.compact"],selectors:[".title > a",".usertext-body"],detectParagraphLanguage:!0},{matches:"old.reddit.com",selectors:["p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0},{matches:["https://www.reddit.com/r/*/comments/*/*","https://www.reddit.com/","https://www.reddit.com/hot/","https://www.reddit.com/new/","https://www.reddit.com/top/"],excludeMatches:["https://www.reddit.com/r/*/wiki/*"],observeUrlChange:!0,selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md",".RichTextJSON-root","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"},waitForSelectors:["[data-testid=post_author_link]"]},{matches:"www.reddit.com",selectors:["h1",".PostHeader__post-title-line","[data-click-id=body] h3","[data-click-id=background] h3","[data-testid=comment]","[data-adclicklocation='title'] h3","[data-adclicklocation=media]",".PostContent",".post-content",".Comment__body","faceplate-batch .md","div[slot=title]","div[slot=text-body]","p.title > a","[role=main] .md-container"],paragraphMinTextCount:5,paragraphMinWordCount:2,excludeMatches:["https://www.reddit.com/r/*/wiki/*","https://www.reddit.com/settings/*"],detectParagraphLanguage:!0,globalStyles:{"div.XPromoBottomBar":"display:none"}},{matches:"www.reuters.com",excludeSelectors:["[promotext]","[data-testid=Leaderboard]"]},{matches:"https://www.npmjs.com/package/*",selectors:["#tabpanel-readme > div:first-child"]},{matches:"github.com",observeUrlChange:!0,excludeMatches:["https://github.com/*/*/settings","https://github.com/settings/*","https://github.com/sponsors/*","https://github.com/readme/*","https://github.com/readme/"],selectors:["h1","[aria-label=Issues] .markdown-title","[aria-labelledby=discussions-list] .markdown-title",".markdown-body",".Layout-sidebar p","div > span.search-match","li.repo-list-item p","#responsive-meta-container p","article p","div.repo-description p","[itemprop=description]"],atomicBlockSelectors:["[itemprop=description]"],excludeSelectors:[".css-truncate","[data-test-selector='commit-tease-commit-message']","[data-test-selector='create-branch.developmentForm']","div.Box-header.position-relative","div.blob-wrapper-embedded","div.Box.Box--condensed.my-2","div.jp-CodeCell",'[aria-label="Account"] .markdown-title',".js-repos-container .markdown-title","[data-view-component=true] .markdown-title","a.anchor","div.file-navigation + div.Box"],extraBlockSelectors:[],extraInlineSelectors:["g-emoji","a.anchor"],stayOriginalTags:["CODE","TT","G-EMOJI","IMG","SUP","SUB"],detectParagraphLanguage:!0},{matches:"notebooks.githubusercontent.com",excludeSelectors:["div.jp-CodeCell"]},{matches:"www.facebook.com",excludeMatches:"https://www.facebook.com/business/*",selectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],atomicBlockSelectors:["div[dir=auto][style]","div[dir=auto][class]","span[lang]"],insertPosition:"afterend",preWhitespaceDetectedTags:["DIV","SPAN"],extraBlockSelectors:["span.x1vvkbs"],excludeSelectors:["[role=button]"],translationClasses:["immersive-translate-text"],detectParagraphLanguage:!0},{matches:"m.youtube.com",selectors:[".comment-text",".media-item-headline",".slim-video-information-title",".caption-window",".caption-visual-line"],wrapperPrefix:"",wrapperSuffix:"",observeUrlChange:!0,atomicBlockSelectors:[".comment-text"],globalStyles:{".comment-text":"max-height:unset;",".media-item-headline":"max-height:unset;-webkit-line-clamp:unset;"},injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }"],extraBlockSelectors:[".caption-visual-line"]},{matches:"www.youtube.com",observeUrlChange:!0,selectors:["yt-formatted-string[slot=content].ytd-comment-renderer","yt-formatted-string.ytd-video-renderer","yt-formatted-string#content-text","h1","yt-formatted-string#video-title","span#video-title","a#video-title","yt-formatted-string.ytd-transcript-segment-renderer","#description-inline-expander > yt-attributed-string > span","ytd-notification-renderer .message",".caption-window",".caption-visual-line"],wrapperPrefix:"
",wrapperSuffix:"",globalStyles:{"ytd-expander.ytd-comment-renderer":"--ytd-expander-max-lines: 1000;","h1.ytd-watch-metadata":"-webkit-line-clamp: unset;max-height: unset;","yt-formatted-string#video-title":"-webkit-line-clamp: unset;max-height: unset;","#video-title":"-webkit-line-clamp: unset;max-height: unset;"},urlChangeDelay:2e3,atomicBlockSelectors:["yt-formatted-string[slot=content].ytd-comment-renderer","h1 > yt-formatted-string.ytd-watch-metadata","yt-formatted-string#video-title","span#video-title","#description-inline-expander > yt-attributed-string > span"],excludeSelectors:["[class^='lln-']"],extraBlockSelectors:["yt-formatted-string.ytd-transcript-segment-renderer",".caption-visual-line"],detectParagraphLanguage:!0,injectedCss:[".immersive-translate-target-wrapper img { width: 16px; height: 16px }",".metadata-snippet-container {max-height: unset !important;}"]},{matches:"https://www.instagram.com/p/*",selectors:["h1","h3 + div"],wrapperPrefix:"
",paragraphMinTextCount:2,blockMinTextCount:2},{matches:"https://www.instagram.com/*",wrapperPrefix:"",wrapperSuffix:"",selectors:["h1"],paragraphMinTextCount:2,blockMinTextCount:2},{matches:"1paragraph.app",selectors:"#book"},{matches:"https://poeditor.com/projects/*",selectors:[".comment-body",".reference_language .source-string"]},{matches:["*.substack.com","newsletter.rootsofprogress.org"],selectorMatches:["link[href^='https://substackcdn.com/bundle/'][rel=preload]"],excludeSelectors:["[style^=top]",".publication-footer",".subscribe-footer",".main-menu",".navbar-title-link","[data-testid='navbar']",".navbar-title",".captioned-button-wrap",".subscription-widget-wrap",".tweet-header",".tweet-link-bottom",".expanded-link",".meta-subheader"],globalStyles:{".reader2-clamp-lines":"max-height: unset; -webkit-line-clamp: unset;"},extraBlockSelectors:[".reader2-post-title",".tweet-link-top",".tweet-link-bottom",".expanded-link"]},{matches:["seekingalpha.com/article/*","seekingalpha.com/news/*"],selectors:["[data-test-id=card-container]","[data-test-id=comments-section]"],excludeSelectors:["[data-test-id=post-page-meta]","header > div:first-child"]},{matches:"hn.algolia.com",selectors:[".Story_title > a:first-child",".Story_comment > span"]},{matches:"read.readwise.io",selectors:["div[class^='_titleRow_']","div[class^='_description_']","#document-text-content"],detectParagraphLanguage:!0},{matches:["www.inoreader.com","*.inoreader.com"],selectors:[".article_header_title",".article_title_link",".article_content",".article_magazine_title_link"],excludeMatches:["https://www.inoreader.com/features/"],observeUrlChange:!1,globalStyles:{".article_title_link":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"*.ideas.aha.io",excludeSelectors:[".comment-header",".vote-status",".idea-meta",".filters-title",".ideas-showing-count",".my-ideas-filters-wrapper",".statuses-filters-wrapper",".categories-filters-wrapper","[class^='attachment']","span[class^='attachment-name']"]},{matches:["scholar.google.*/*","scholar.google.com.*/*","scholar.google.co.*/*"],wrapperPrefix:` +`,selectors:["h3 a[data-clk]","div.gs_rs","td a.gsc_a_at","td div.gs_gray:last-of-type","div.gsc_oci_value","#gs_opinion"],extraInlineSelectors:["br"],atomicBlockSelectors:["h3 a[data-clk]"]},{matches:"mail.google.com",detectParagraphLanguage:!0,selectors:["h2[data-thread-perm-id]","span[data-thread-id]","div[data-message-id] div[class='']"]},{matches:"news.google.com",globalStyles:{".To2ZZb.DbQnIe":"height:unset;",".cp7Yvc > h2":"display:block;",h4:"-webkit-line-clamp:unset;"},excludeSelectors:[".EyERq"]},{matches:"outlook.live.com",excludeSelectors:[".jHAG3.XG5Jd",".OZZZK",".lDdSm"],selectors:["[role=region]"]},{matches:"www.producthunt.com",excludeMatches:"https://www.producthunt.com/stories/*",selectors:["h2","div[class^='styles_htmlText__']","[class^='styles_tagline']","a[href^='/discussions/'].fontWeight-600","button[class^='styles_textButton'] > div > span","h5 + p","div[data-test=product-item-name] + div",".noOfLines-1,.noOfLines-2,.noOfLines-3",".fontWeight-600","[class*='styles_dropdown']","[class*='styles_aboutText']"],globalStyles:{"h5 + p":"height:unset;",".noOfLines-1,.noOfLines-2,.noOfLines-3":"-webkit-line-clamp:unset;"},excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","INPUT","LABEL","IMG","SUB","SUP","BR","CODE","KBD","WBR","TT"]},{matches:"*.gitbook.io",additionalSelectors:["main"],_comment:"https://midjourney.gitbook.io/docs/user-manual"},{matches:"https://codeforces.com/*",stayOriginalTags:["[class^='MathJax']"]},{matches:"arxiv.org",additionalSelectors:["h1","blockquote.abstract"]},{matches:"*.labs.arxiv.org/*",stayOriginalTags:["math","semantics","mrow","mo","mfrac","msup","mi","mn","msqrt"],atomicBlockSelectors:[".ltx_abstract",".ltx_note_content",".ltx_p",".ltx_title"]},{matches:"https://discord.com/channels/*",isTranslateTitle:!1,selectors:["li[id^=chat-messages] div[id^=message-content]","div[class^=headerText]","section[aria-label='Search Results'] div[id^=message-content]"],extraBlockSelectors:["[class^='embedFieldValue']","li[class^='card'] div[class^='message']","[data-list-item-id^='forum-channel-list'] div[class^='headerText']"],globalStyles:{"div[class^=headerText]":"max-height: unset;","div[class^=message]":"max-height: unset;","div[class^=text]":"max-height: unset;","h3[data-text-variant='heading-lg/semibold']":"-webkit-line-clamp: none;"},detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:"",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:["web.telegram.org/z/*","web.telegram.org/a/*"],isTranslateTitle:!1,selectors:[".text-content",".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:["web.telegram.org/k/*","web.telegram.org/k/"],selectors:[".message",".reply-markup-button-text",".bot-commands-list-element-description"],detectParagraphLanguage:!0},{matches:"gist.github.com",selectors:[".markdown-body",".readme"],detectParagraphLanguage:!0},{matches:"lobste.rs",excludeMatches:["https://lobste.rs/about","https://lobste.rs/chat"],selectors:[".u-repost-of",".comment_text"]},{matches:"*.slack.com",selectors:[".p-rich_text_block",".p-message_pane__foreword",".c-alert__message","[data-qa=message_attachment_text]"],additionalStayOriginalSelectors:["[data-qa=emoji]"],detectParagraphLanguage:!0},{matches:"1paragraph.app",additionalSelectors:["#book"]},{matches:"www.artstation.com/artwork/*",excludeSelectors:".project-description a",selectors:[".project-description","div.project-comment-text"],atomicBlockSelectors:"div.project-comment-text",detectParagraphLanguage:!0},{matches:"www.artstation.com/learning/courses/*",additionalSelectors:["footer.learning-course-description.ng-star-inserted > span"],excludeSelectors:".learning-card-meta"},{matches:["https://www.artstation.com/blogs","https://www.artstation.com/blogs/*"],detectParagraphLanguage:!0,additionalSelectors:[".comment-item-body"],atomicBlockSelectors:[".author-headline",".author-location"],excludeSelectors:["blog-card-thumbnail","blog-card-header",".blog-card-author",".blog-card-meta",".blog-view-header",".blog-grid-title",".post-meta-header"]},{matches:"www.figma.com/community/*",normalizeBody:"div.ql-editor[contenteditable='false']",excludeSelectors:["div[class*='metadataRight']","div[class*='commentMetaAndOptions']"],globalStyles:{"div[class*='mini_cardBottomRowSizing']":"height: 3em;"},additionalSelectors:"div[class*='mini_cardBottomRow_Metadata']",atomicBlockSelectors:"div[class*='mini_cardBottomRow_Metadata']",stayOriginalSelectors:"[data-tooltip='tooltip-user-info']"},{matches:["https://www.google.com/"],excludeSelectors:["#gb","#SIvCob"]},{matches:"www.google.*/search*",detectParagraphLanguage:!0,isTranslateTitle:!1,excludeSelectors:["#gb","a h3 + div","div#sfooter","a[role=presentation] > div > div:first-child",".b5ZQcf",".CEMjEf",".MgUUmf.NUnG9d","#result-stats","[role=navigation]","div.sCuL3","div.eFM0qc.BCF2pd","div.WZ8Tjf","div.adDDi"],wrapperSuffix:"",globalStyles:{"div[data-content-feature='1'] > div":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:2']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:3']":"-webkit-line-clamp: unset;max-height: unset;","div[style='-webkit-line-clamp:4']":"-webkit-line-clamp: unset;max-height: unset;",".V82bz":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".uAKcGb":"-webkit-line-clamp: unset;max-height: unset;margin-bottom:30px",".Pw4Ldf.RsCEN":"height:unset;"},extraBlockSelectors:[".MUFPAc"],searchEnhancementConfig:[{id:"google",urlMatch:"https://www\\.google\\..+/search",style:{source:"font-size:12px; margin-bottom: 6px;",enTitle:"margin-top:6px;font-size:14px;",searchTitle:"margin-top:6px;position:relative;padding-right:24px;",more:"color:#1a0dab;margin-top:8px;",enTitleClassName:"immersive-translate-search-enhancement-en-title"},keyword:{value:"[0]$1",matches:[{source:"url",matchRegex:"q=(.+?)&"}]},showCount:5}]},{matches:"lowendtalk.com",selectors:["[role=heading]","h1",".userContent"]},{matches:"www.linkedin.com/jobs/*",selectors:["#job-details > span"]},{matches:"https://linkedin.com/feed/*",selectors:["h1",".feed-shared-update-v2__description-wrapper"]},{matches:"www.linkedin.com",additionalSelectors:["span.break-words > span > span[dir=ltr]"]},{matches:"www.indiehackers.com",selectors:[".content","h1","h3.story__title",".feed-item__title-link"]},{matches:"libreddit.de",selectors:["h2.post_title",".comment_body > .md"]},{matches:["notion.site","*.notion.site"],normalizeBody:"body",selectors:["div[data-block-id]"]},{matches:"www.newyorker.com",additionalSelectors:["h1","[data-testid=SummaryItemHed]"],excludeSelectors:["[data-testid=PersistentTop]","[data-testid=StackedNavigationHeader]"],urlChangeDelay:2e3},{matches:"start.me",selectors:[".rss-article__title",".rss-articles-list__article-link",".rss-showcase__title",".rss-showcase__text"]},{matches:"www.scmp.com",additionalSelectors:[".info__subHeadline",".section-content h2"],globalStyles:{".topic__article-list":"height: unset;",".adverisers__adveriser":"height: unset;",".advertiser__content":"height: unset;",".content-title__link":"display:unset;overflow:unset;-webkit-line-clamp:unset;",".title__text":"max-height:unset; -webkit-line-clamp:unset;",".news-list-item__news-title":"max-height:unset; -webkit-line-clamp:unset;","a[class*='link'] > .link__headline":"max-height:unset; -webkit-line-clamp:unset;"}},{matches:"www.lesswrong.com",extraBlockSelectors:["span.commentOnSelection"]},{matches:["mastodon.social","mastodon.online","kolektiva.social","indieweb.social","mastodon.world","infosec.exchange"],isTranslateTitle:!1,selectorMatches:["div#mastodon"],selectors:["div.status__content__text",".about__section__body",".content",".form-container",".account__header__extra"],globalAttributes:{"[class='notranslate app-holder']":{class:"app-holder"}},detectLanguage:!0},{matches:"www.cnbc.com",additionalSelectors:["div.RenderKeyPoints-list"],urlChangeDelay:1e3,globalStyles:{"div.Card-titleContainer > div":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"app.daily.dev",selectors:["h1",".typo-body","article h3","[class^=markdown_markdown]"],globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset"}},{matches:"www.aljazeera.com",additionalSelectors:["h1",".article__subhead"]},{matches:["*.pornhub.com","pornhub.com"],excludeMatches:["*.pornhub.com/insights/*","pornhub.com/insights/*"],extraBlockSelectors:[".trendingNow",".searchItem",".tagcloud > a"],detectParagraphLanguage:!0,wrapperPrefix:"
",wrapperSuffix:` `,globalStyles:{"span.title":"height:unset; max-height:unset;",".detailedInfo":"max-height:unset;",".pcVideoListItem":"max-height:unset;",".wrap":"height:unset;",".entry-header":"height:unset;",".entry-title > a":"height:unset;-webkit-line-clamp:unset;"}},{matches:"https://www.youporn.com/*",extraBlockSelectors:[".button"],globalStyles:{".video-box":"max-height:unset;",".video-box-title":"white-space:unset;"}},{matches:"https://www.modelhub.com/*",globalStyles:{".videoTitle":"height:unset;",a:"height:unset;"}},{matches:"https://www.xvideos.com/*",globalStyles:{".title":"-webkit-line-clamp:unset;max-height:unset;",".mozaique":"display:flex; flex-wrap:wrap;"},excludeSelectors:[".video-hd-mark"]},{matches:"https://missav.com/*",globalStyles:{".truncate":"white-space:unset;",".overflow-y-hidden":"max-height:unset;overflow-y:unset;"}},{matches:"https://www.javbus.com/*",globalStyles:{"#waterfall[class='masonry']":"height: unset;","#waterfall[class='masonry'] > div":"display: flex;flex-direction: row;flex-wrap: wrap;","#waterfall[class='masonry'] > div > div":"position:relative;",".photo-info":"height:unset;"},excludeSelectors:[".item-tag","date"]},{matches:"https://spankbang.com/*",globalStyles:{".video-item > a":"white-space:unset;"},excludeSelectors:[".stats",".thumb"],extraBlockSelectors:[".searches > a",".tag > a",".extra > a",".positions > li"]},{matches:"https://javdb*.com/*",globalStyles:{".video-title":"white-space:unset;"},excludeSelectors:[".video-number",".score",".has-addons"]},{matches:"https://jable.tv/*",globalStyles:{".title":"white-space:unset;max-height:unset;",".img-box > a":"position:relative;"}},{matches:"https://netflav*.com/*",globalStyles:{".grid_title":"max-height:unset;"},extraBlockSelectors:[".genre_filter_item","button"]},{matches:"https://czechvideo.co/*",globalStyles:{".short-story":"height:unset;",".short-title":"height:unset;"},globalAttributes:{header:{translate:"unset;"}}},{matches:["weibo.com"],selectors:["div[class^='detail_wbtext']"]},{matches:["medium.com","*.medium.com"],selectorMatches:["meta[property='al:ios:url'][content^='medium://']"],urlChangeDelay:20,additionalExcludeSelectors:[".social-share",".breadcrumbs",".post__footer",".btn",".reference-citations",".share-nav",".o-share","[data-toolbar=share]","rp","rt",".prism-code","[role=code]","#omni-extension",".omni-item","div[data-paste-markdown-skip]","table.highlight","div[class^=codeBlockContent]","div[class^=codeBlockLines]","div[class^=token-line]","#liuchan-window > .liuchan-container > *",".material-icons",".notranslate","[translate=no]"],selectors:["h1","h2","article section","[aria-hidden='false'] pre","article p"],excludeSelectors:["[aria-label='Post Preview Reading Time']"],globalStyles:{h2:"-webkit-line-clamp: unset;max-height:unset;","article p":"-webkit-line-clamp: unset;max-height:unset;"}},{selectorMatches:["meta[property='og:site_name'][content='Nitter']"],selectors:[".tweet-content",".quote-text"]},{matches:"*.fandom.com",additionalSelectors:[".mcf-card-article__title"]},{matches:["www.washingtonpost.com"],additionalSelectors:["[data-qa='article-body']"]},{matches:"www.economist.com",extraInlineSelectors:"span[data-caps='initial']"},{matches:"www.healthline.com",excludeSelectors:".icon-hl-trusted-source-after"},{matches:"www.ebay.com",excludeSelectors:["headers","[itemprop=offers]",".dne-itemtile-original-price"],paragraphMinTextCount:4,paragraphMinWordCount:2,globalStyles:{"[itemprop=name]":"-webkit-line-clamp: unset;max-height: unset;",".merch-item-title":"-webkit-line-clamp: unset;max-height: unset;"}},{matches:"www.skinstore.com",excludeSelectors:[".responsiveFlyoutMenu_levelOneLink"],paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.tripadvisor.com",paragraphMinTextCount:4,paragraphMinWordCount:2},{matches:"www.amazon.com",paragraphMinTextCount:4,paragraphMinWordCount:2,extraBlockSelectors:[".a-size-small.a-link-normal.page-banner-link.a-nowrap"],globalStyles:{".a-carousel-viewport":"height:unset;",".s-line-clamp-2":"-webkit-line-clamp: unset;max-height: unset;",".s-line-clamp-4":"-webkit-line-clamp: unset;max-height: unset;","[data-rows]":"max-height: unset;-webkit-line-clamp: unset;","[data-a-expander-name='review_text_read_more']":" max-height: unset;"},excludeSelectors:["#navFooter","#navbar-main",".s-price-instructions-style","[class*='star']","[data-hook='acr-average-stars-rating-text']",".a-color-price"]},{matches:"marketplace.visualstudio.com",additionalExcludeSelectors:[".core-info-second-row",".core-info-third-row",".meta-data-list",".item-title",".breadcrumb",".itemDetails-right",".ux-user-name",".ux-updated-date",".ux-item-second-row-wrapper",".stats-and-offer",".header-container"],atomicBlockSelectors:[".core-info-cell > div.name"],globalStyles:{".item-details-control-root.ux-item-shortdesc":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.bloomberg.com",urlChangeDelay:2e3,excludeSelectors:[".ticker-bar","nav","[aria-label=Banner]","aside"]},{matches:"xueshu.baidu.com",globalStyles:{".abstract_wr":"height: unset; overflow: visible; max-height:unset;"}},{matches:"www.sciencedirect.com",urlChangeDelay:2e3,stayOriginalSelectors:["span.display"],extraBlockSelectors:["span.captions","span[id^=cap]"]},{matches:"www.thehighestofthemountains.com",extraBlockSelectors:"div"},{matches:"te.legra.ph",normalizeBody:"div.ql-editor[contenteditable='false']",urlChangeDelay:500},{matches:["telegra.ph"],normalizeBody:"div.ql-editor[contenteditable='false']",wrapperPrefix:` `},{matches:["*.annas-archive.org","annas-archive.org"],selectors:[],globalStyles:{"div[id^='link-index-']":"height: unset; max-height: unset;","main > div > div[class*='h-[125]']":"height:auto"},normalizeBody:"body",extraBlockSelectors:["a.custom-a"]},{matches:["explainshell.com"],selectors:["[class='help-box']"]},{matches:["apnews.com"],urlChangeDelay:2e3},{matches:"play.google.com",additionalSelectors:["header[data-review-id] + div"],excludeSelectors:[".vlGucd",".ubGTjb"],globalStyles:{".Epkrse":"-webkit-line-clamp:unset;"}},{matches:["www.tumblr.com"],selectors:["article h1","article > header + div","[data-testid=notes-root] p","div.k31gt","p","article ul","article h2","article h3","article h4","article h5","article h6","article blockquote","article ol"],excludeSelectors:["div.fAAi8","div.wvu3V"],preWhitespaceDetectedTags:["DIV","SPAN","P"]},{matches:["mail.qq.com/cgi-bin/frame_html"],selectors:["#thisiddoesnotexists"]},{matches:"https://www.tinytask.net",globalStyles:{"table > tbody > tr > td > center > table > tbody > tr > td > ul > li":"height: 100%"}},{matches:"www.foxnews.com",shadowRootSelectors:["[data-spot-im-module-default-area='conversation'] > div"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","TEXT","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","MATH","TTS-SENTENCE","AIO-CODE"],excludeSelectors:[".site-footer",".components-MessageDetails-index__message-details-wrapper","div[class^=SlideDown__container]",".components-MessageActions-index__messageActionsWrapper","span[data-openweb-allow-amp]","div.spcv_typing-users"]},{matches:"www.afreecatv.com",globalStyles:{"a.title":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"opennet.ru",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","LABEL","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META"]},{matches:["www.construct.net"],excludeMatches:["preview.construct.net","editor.construct.net"],additionalSelectors:["aside","div.manualContent"],atomicBlockSelectors:[],stayOriginalSelectors:["a.usernameReference"],additionalInlineSelectors:["a.forumLink"],additionalExcludeSelectors:["div.topNav","div.usernameLink","ul.authorDetails","ul.tagViewer","ul.breadCrumbNav","ul.subForumForums","ul.postTools","li.comment ul.controls","div.forumTopNavWrap","div.downloadWrap","div.articleLeftMenu","div.usernameTextWrap","div.favouriteWrap","div.bannerWrapper","div.viewAddonRightMenu","div.extendedMenu.addonsSubMenu","#BottomLinks.bottomLinks","div#LeftSide.leftSide","div#BottomWrap.bottomWrap","div.courseListWrap div.overview","div.conversationControls","div.contentWrapper h1","div.conversationControls","td.location a#LocationLink","#TopLevelComments .topBar","#TopLevelComments .controls",".tagViewWrap",".changeCount",".otherStats",".FilterMenu",".mobileTopicStats",".forumControlsWrapper",".forumsBottomNavWrap",".breadCrumbNav",".favouriteWrap",".usernameLink",".followWrapper",".blogPostStats",".manualContent dl dt"],globalStyles:{"td.location a#LocationLink":"padding-top: 4px;","div.articleMain .tutCourseWrap":"align-items: flex-start;"}},{matches:"getpocket.com",selectors:["h2","div.excerpt p","article","h1"],globalStyles:{"h2.title":"max-height:unset;-webkit-line-clamp:unset;","div.excerpt p":"max-height:unset;-webkit-line-clamp:unset;"}},{matches:"*.fandom.com",urlChangeDelay:800,normalizeBody:"#mw-content-text",globalStyles:{"#mw-content-text > div > div:nth-child(1)":"height:100%;"},additionalExcludeSelectors:["header.fandom-community-header","div.ph-registration-buttons"]},{matches:"huggingface.co",globalStyles:{".line-clamp-2":"-webkit-line-clamp:unset;max-height:unset;"}},{matches:"www.statista.com",globalStyles:{".itemContent__text":"height:unset;max-height:unset;",".itemContent__subline":"height:unset;max-height:unset;"}},{matches:"epub-reader.online",globalStyles:{"span.slide-contents-item-label":"overflow:visible;max-height:unset;white-space:normal;"},atomicBlockSelectors:"div.slide-contents-item"},{matches:"https://you.com/search",globalStyles:{h3:"max-height:unset;-webkit-line-clamp:unset;",".caKYaC":"max-height:unset;-webkit-line-clamp:unset;",".dDwDsu":"max-height:unset;-webkit-line-clamp:unset;"},excludeSelectors:"div.hpIWZO"},{matches:"auth0.openai.com",excludeSelectors:["form","header > h1"]},{matches:"chat.openai.com",excludeSelectors:["div.absolute.bottom-0.left-0.w-full","h1","div#headlessui-portal-root","nav","div[data-radix-popper-content-wrapper]","ul[aria-multiselectable]",".markdown *","div[class='flex flex-col items-start']","div[class='flex items-center justify-center gap-1 border-b border-black/10 bg-gray-50 p-3 text-gray-500 dark:border-gray-900/50 dark:bg-gray-700 dark:text-gray-300']"],isTranslateTitle:!1,wrapperPrefix:"",aiRule:{streamingSelector:".result-streaming.markdown",messageWrapperSelector:".markdown",streamingChange:!0}},{matches:["chat.newstop.asia","chat.waixingyun.cn"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".n-button.n-button--warning-type.n-button--medium-type",messageWrapperSelector:".markdown-body",streamingChange:!1}},{matches:["askgpt.cn","chatcat.zhaoyoung.me"],excludeSelectors:[".markdown-body *"],aiRule:{streamingSelector:".home_chat-message-status__EsVNi",messageWrapperSelector:".markdown-body",streamingChange:!0}},{matches:["https://poe.com/*"],excludeSelectors:[".Markdown_markdownContainer__UyYrv *",".MarkdownLink_linkifiedLink__KxC9G"],aiRule:{streamingSelector:".ChatStopMessageButton_stopButton__LWNj6",messageWrapperSelector:".Markdown_markdownContainer__UyYrv",streamingChange:!1}},{matches:"glasp.co",excludeSelectors:[".home_overview_list_content_wrapper"]},{matches:"developer.chrome.com",excludeSelectors:["web-tabs","ul.code-sections--summary"]},{matches:["developer.android.google.cn","developer.android.com"],observeUrlChange:!0,additionalSelectors:["aside","google-codelab-step"]},{matches:"www.ft.com",excludeSelectors:["headers","[aria-labelledby=cookie-banner-aria-label]","footer"]},{matches:"https://apps.microsoft.com/store/detail/*",additionalSelectors:["pre"],globalStyles:{".line-clamp":"-webkit-line-clamp:unset;max-height:unset;"},isTransformPreTagNewLine:!0},{matches:"gitlab.com",excludeSelectors:[".tree-content-holder","nav",".home-panel-metadata","div[data-testid=project_topic_list]",".commit"]},{matches:"www.newthingsunderthesun.com",additionalSelectors:["[translate=no]"]},{matches:"https://www.tiktok.com/*/video/*",selectors:["[data-e2e^=comment-level]","[data-e2e=browse-video-desc] > span"]},{matches:"www.rfc-editor.org",isTransformPreTagNewLine:!0,excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH"]},{matches:"https://steamcommunity.com/app/*",globalStyles:{".forum_topic":"height:auto;",".forum_topic_name":"white-space:normal;"},excludeSelectors:[".forum_paging",".forum_topic_reply_count",".forum_topic_lastpost",".forum_topic_award_count",".discussion_search_pagingcontrols"],observeUrlChange:!0},{matches:"store.steampowered.com/app/*",selectors:[".game_description_snippet",".game_area_description","#earlyAccessHeader","[id^='ReviewContent'] .content"],excludeSelectors:["#global_actions","#store_controls","#foryou_tab","[class*=persona]","[class*=game_title_area]","a.btn_medium",".persona_name",".hours.ellipsis",".checkcol",".postedDate",".dev_row .summary",".already_in_library",".game_header_image_ctn .grid_content",".ds_flag.ds_wishlist_flag",".early_access_review.tooltip",".communitylink_achievement_images",".user_reviews_summary_row.summary",".review_award_ctn",".add_to_wishlist_area",".next_in_queue_content",".glance_tags.popular_tags",".game_purchase_action",".vote_button_ctn","#VoteUpDownBtnCtn","#footer","#ViewAllReviewssummary"],atomicBlockSelectors:[".game_area_sys_req_leftCol",".game_area_sys_req_rightCol"],extraInlineSelectors:[".pulldown"],additionalSelectors:[".game_page_autocollapse_ctn iframe"],globalStyles:{".game_description_snippet":"max-height:unset; overflow: scroll;",".game_purchase_area_friends_want":"height: auto; padding-bottom: 6px;",".div.early_access_banner":"height: 84px",".franchise_notice > *":"height: 84px"},detectParagraphLanguage:!0},{matches:"https://www.nature.com/articles/*",excludeSelectors:[".c-header",".c-recommendations-header",".c-recommendations-list-container",".c-article-references__links",".c-article-identifiers",".c-article-author-list",".c-article-metrics-bar__wrapper",".c-article__pill-button","#author-information-content","#article-info-section"]},{matches:"https://www.webofscience.com/*",globalStyles:{".abstract":"height:auto !important;",".show-more-lines":"height:unset !important;"},excludeSelectors:[".summary-left-panel",".authors","app-full-record-keywords mark"],mutationObserverContainerSelectors:["[data-ta='summary-record-title-link']","#FullRTa-fullRecordtitle-0"],extraBlockSelectors:["app-summary-authors + div","app-full-record-keywords span span"],observeUrlChange:!0,urlChangeDelay:600,mutationChangeDelay:600},{matches:["appleinsider.com"],excludeSelectors:["#topic-nav"]},{matches:"https://www.jetbrains.com/help/*",extraBlockSelectors:["[data-test=prompt]"]},{matches:["https://crates.io/search*"],selectors:["div[class^=_description-box] div[class^=_description]"]},{matches:"www.theverge.com",shadowRootSelectors:["div#coral_thread > div"]},{matches:"https://beta.simp.red/trans*",mainFrameSelector:".simpread-read-root"},{matches:"https://www.lookintobitcoin.com/charts/*",excludeSelectors:["svg"]},{matches:"https://platform.openai.com/account/api-keys*",urlChangeDelay:1500},{matches:"https://pkg.go.dev/std",selectors:["td.UnitDirectories-desktopSynopsis"]},{matches:"https://pkg.go.dev/*",selectors:["div.UnitDetails p"]},{isEbook:!0,isTranslateTitle:!1,urlChangeDelay:200,selectorMatches:["meta[name='immersive-translate-ebook-viewer'][content='true']"],excludeSelectors:["#drop-target","#drop-target h1","#side-bar","h1#side-bar-title"],extraInlineSelectors:["span.dropcaps"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
",targetWrapperTag:"span"},{isEbookBuilder:!0,isTranslateTitle:!1,targetWrapperTag:"span",selectorMatches:["meta[name='immersive-translate-ebook-builder'][content='true']"],globalMeta:{},excludeSelectors:["h1.notranslate","#drop-target","#drop-target h1","#side-bar","h1#side-bar-title","#tool",".Code"],paragraphMinTextCount:4,paragraphMinWordCount:2,blockMinTextCount:1,blockMinWordCount:1,containerMinTextCount:1,wrapperPrefix:"
"},{matches:["https://www.explainpaper.com/reader*"],isTranslateTitle:!1,selectors:[".leading-relaxed",".chat-messages p",".text-sm"]},{matches:"https://colab.research.google.com/*",excludeSelectors:["code","view-line"]},{matches:"www.gatesnotes.com",minZIndex:-1},{matches:"page.kakao.com",shadowRootSelectors:["div[style^='visibility: visible'"]},{matches:"coinmarketcap.com",extraBlockSelectors:["div[class='sc-3502f6cd-0 JxHqg']"]},{matches:"wandb.ai",additionalSelectors:[".report-page-top"],additionalStayOriginalSelectors:["span[data-slate-inline=true]"],extraInlineSelectors:[]},{matches:"paulgraham.com",additionalSelectors:["font[face=verdana]"],extraBlockSelectors:"font[face=verdana]"},{matches:"https://*.zendesk.com/agent/*",selectors:["[data-test-id*=subject]",".zd-comment",".title"]},{matches:"webmail.migadu.com",selectors:[".bodyText"]},{matches:"thehackernews.com",excludeSelectors:["span#blog-pager-older-link","span.h-datetime"],additionalSelectors:[".pop-title"]},{isSubtitleBuilder:!0,selectorMatches:["meta[name='immersive-translate-subtitle-builder'][content='true']"],pairs:{".source-text":".target-text"},paragraphMinTextCount:4,paragraphMinWordCount:2,isTranslateTitle:!1,wrapperPrefix:"",wrapperSuffix:""},{matches:"cs.brown.edu",excludeSelectors:[".SCodeFlow"]},{matches:"tass.ru",globalStyles:{"#__next":"font-size: 19px;line-height:28px;"}},{matches:"chat.google.com",selectors:["[jsname=bgckF]"]},{matches:"https://www.fiverr.com/inbox/*",selectors:[".message-body"]},{matches:["jira.*.com/browse/*","jira.*.com/projects/*"],selectors:["[id=descriptionmodule]","[id=summary-val]","div.action-body","td.stsummary"]},{matches:["*.aha.io"],selectors:["[tabindex='0']","div.user-content","div.comments__body","span.name"]},{matches:"thehill.com",injectedCss:[".most-popular-item { max-height: unset !important; }",".most-popular-item__link { -webkit-line-clamp: unset !important; }"],excludeSelectors:["div.featured-cards__byline","div.list-item__meta",".tags__item","div.extended-scroll__header",".submitted-by",".site-header--has-alert-banner",".homepage__container__opinion__item__byline",".homepage__container__header",".archive__item__meta"]},{matches:"manpages.ubuntu.com",selectors:["pre"],atomicBlockTags:["pre"]},{matches:"www.spiedigitallibrary.org",excludeTags:["TITLE","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","IMG","SUB","SUP","HR","PRE","CODE","KBD","WBR","TT","RT","RP","META","ASIDE","FOOTER","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"www.promptingguide.ai",selectors:["article","li"]},{matches:"ground.news",globalStyles:{".line-clamp-3":"-webkit-line-clamp: unset !important;"}},{matches:"*.ietf.org/doc/html/*",additionalSelectors:["pre"],isTransformPreTagNewLine:!0,preWhitespaceDetectedTags:["DIV","SPAN","PRE"]},{matches:"https://www.newsminimalist.com/",extraBlockSelectors:[".inline-flex"],excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"https://player.vimeo.com/video/*",extraBlockSelectors:["span.vp-captions-line","span[class^=CaptionsRenderer_]"]},{matches:"https://yandex.com/",selectors:[".tabs__item-text"]},{matches:"https://yandex.com/search/*",excludeSelectors:[".KeyValue-Row",".EntityFeedbackFooter",".Organic-Subtitle",".SerpFooter-Content",".serp-user",".Pager"],globalStyles:{".ExtendedText-Toggle":"white-space:normal;"}},{matches:"https://yandex.com/video/*",selectors:[".serp-item__title",".serp-item__text",".Keypoints-ItemTitle",".bes-epmjnzm-idtktyj",".OrganicTitle-LinkText","h1.VideoTitle"],globalStyles:{".serp-item__title":"-webkit-line-clamp: unset;max-height:unset;",".serp-item__text":"-webkit-line-clamp: unset;max-height:unset;",".OrganicTitle-LinkText":"-webkit-line-clamp: unset;max-height:unset;","h1.VideoTitle":"-webkit-line-clamp: unset;max-height:unset;",".link .serp-item__keypoints":"bottom:2px;",".OrganicTitle":"max-height:unset;"}},{matches:"https://www.perplexity.ai/search/*",extraBlockSelectors:[".prose > span"],additionalStayOriginalSelectors:["a.citation"],insertPosition:"afterend"},{matches:"https://www.perplexity.ai",globalStyles:{".line-clamp-1":"-webkit-line-clamp: unset !important;",".line-clamp-2":"-webkit-line-clamp: unset !important;"}},{matches:"https://allmyfaves.com/",selectors:["p"],paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:"man7.org",isTransformPreTagNewLine:!0,globalStyles:{pre:"white-space: inherit;"}},{matches:"https://www.kadaza.com/",selectors:[".header span.title",".custom-content-footer"],containerMinTextCount:2,containerMinWordCount:1,paragraphMinTextCount:2,paragraphMinWordCount:1},{matches:["https://babelnovel.com/books/*","https://www.webnovel.com/book/*"],urlChangeDelay:0},{matches:"blog.genuine.com",excludeSelectors:["div.enlighter"]},{matches:"www.chinadaily.com.cn",injectedCss:["a { height: unset !important; }","li { height: unset !important; }","div { height: unset !important; }",".immersive-translate-target-inner {color:black;}"],excludeSelectors:[".topNav",".topNav2_art > span",".topNav_art2 > .dropdown",".dibu-three",".topBar"]},{matches:"www.braynzarsoft.net",selectors:["div#view-question-desc"]},{selectorMatches:["meta[name=immersiveTranslateIosOnBoarding]"],initialGlobalAttributes:{"input#immersiveTranslateDetectedSlot":{value:"true"}},isInjectOptionsUrl:!0,isInjectVersion:!0},{globalAttributes:{"#stimulus":{translate:"off",class:"stimulus"},"#stem":{translate:"off",class:"stem"}},matches:"https://lawhub.lsac.org/question/*"},{matches:"https://www.yuque.com/*",excludeSelectors:[".lark-virtual-tree"]},{matches:"https://bearblog.dev/discover/*",excludeTags:["small"]},{matches:"www.researchgate.net",excludeSelectors:[".nova-legacy-v-publication-item__meta-data",".nova-legacy-v-publication-item__person-list",".js-authors-list"]},{matches:["www.theatlantic.com","https://mashable.com/*"],initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}}},{matches:"youtrack.jetbrains.com/articles/*",selectors:["[role=presentation]","[data-test=article-content]"],excludeSelectors:[".toolbar__ee8"]},{matches:"www.bbc.com",excludeSelectors:["section.module--languages",".drop-capped"]},{matches:"www.dw.com",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},"nav:last-of-type":{translate:"no"},nav:{translate:"no"}},excludeSelectors:[".focus-menu-shown"]},{matches:"docs.sentry.io",initialSelectorGlobalAttributes:{"footer:last-of-type":{translate:"no"},".navbar":{translate:"no"}}},{matches:"https://platform.openai.com/docs/*",urlChangeDelay:0},{selectorMatches:["meta[name='generator'][content^='Discourse']"],urlChangeDelay:0,_comment:"\u89E3\u51B3url\u53D8\u5316\u4F46\u662F\u9875\u9762\u4E0D\u53D8\u7684\u95EE\u9898"},{matches:"feedly.com",globalStyles:{".TitleOnlyLayout":"height:unset !important;",".EntrySummary--u4":"-webkit-line-clamp: unset;max-height:unset;",".EntrySummary--u5":"-webkit-line-clamp: unset;max-height:unset;"},excludeSelectors:[".Leftnav"]},{matches:"bard.google.com",excludeSelectors:["mat-sidenav","div.capabilities-disclaimer"],isTranslateTitle:!1,excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","svg","G","NOSCRIPT","INPUT","BASE","SELECT","OPTION","HR","PRE","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"]},{matches:"web.whatsapp.com",selectors:[".copyable-text"],wrapperPrefix:` -`,wrapperSuffix:"
"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]}]};function H0(e){return Array.isArray(e)?e:e?[e]:[]}function un(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Ye(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function Ho(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let r={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))r[o]=i;else if(o.startsWith("additional")){let s=H0(i);r[o]=Array.from(new Set([...r[o],...s]))}else r[o]=H0(i)}),r}function Ba(){if(ve.PROD==="1")return{};let e={};if(ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:ve.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:ve.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:ve.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(ve.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=ve.DEEPL_PROXY_ENDPOINT),ve.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=ve.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),ve.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:ve.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return ve.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),ve.MOCK==="1"&&(e.translationService="mock"),ve.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=ve.IMMERSIVE_TRANSLATE_SERVICE),e}async function Hn(){let e=await j.storage.local.get(ar);if(e[ar]){let t=e[ar],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),r=!1;a.length!==n.length&&(n=a,r=!0);let u={...t,tempTranslationUrlMatches:[...n]};return r&&await Wn(u),u}else return{}}async function Wn(e){await j.storage.local.set({[ar]:e})}async function sm(e){await j.storage.local.set({[Un]:e})}async function pr(){await j.storage.local.set({[Un]:{}})}async function ia(){await j.storage.local.set({[ar]:{}})}async function lm(){let e=await j.storage.local.get(Un),n={...fr(),...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};if(e[Un]){let a=e[Un];if(a&&a.buildinConfigUpdatedAt){let r=new Date(a.buildinConfigUpdatedAt),u=new Date(n.buildinConfigUpdatedAt);r>u&&(n=a)}}return n}async function ze(){let e=await j.storage.local.get(Un),t={...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};if(e[Un]){let h=e[Un];if(h&&h.buildinConfigUpdatedAt){let k=new Date(h.buildinConfigUpdatedAt),F=new Date(t.buildinConfigUpdatedAt);k>F&&(t=h)}}let n={};if(!le()&&j.commands&&j.commands.getAll){let h=await j.commands.getAll();for(let k of h)k.name&&k.shortcut&&(n[k.name]=k.shortcut)}let a=fr(),r=Ba(),u=await Eu(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Hn(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let h=i.tempTranslationUrlMatches.filter(k=>new Date(k.expiredAt)>s);if(h.length>0){let k=u.translationUrlPattern?u.translationUrlPattern?.matches||[]:[],F=Array.isArray(k)?k:[k],M=Array.from(new Set(F.concat(h.map(A=>A.match))));u.translationUrlPattern={...u.translationUrlPattern,matches:M}}}let l=Object.assign({},o,r,u);if(!l.interfaceLanguage){let h=await b1();l.interfaceLanguage=h}let c=l.interfaceLanguage==="en",g=l.targetLanguage==="en",m=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,p=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!g&&!m&&p?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),S=Object.keys(f),v=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let h of S){let k=h;if(k==="generalRule")typeof l[k]=="object"&&(f[k]=Ho(a[k],l[k]));else if(k==="translationServices"){let F=l[k]||{},M=t[k]||{},A=Object.keys(M),P=Object.keys(F),w=[...new Set([...A,...P])],x={};for(let b of w)x[b]={...M[b],...F[b]};f[k]=x}else if(typeof l[k]!="string"&&typeof l[k]!="boolean"&&typeof l[k]!="number"&&v.includes(k))l[k]&&(f[k]=Object.assign(f[k],l[k])),k==="shortcuts"&&(le()||Dt()?f[k]={...f[k],...n}:f[k]={...n});else if(k==="rules"){if(Array.isArray(l[k])&&(f[k]=[...l[k],...f[k]]),ve.PROD==="0"&&ve.DEV_RULES){let F=JSON.parse(ve.DEV_RULES);f[k]=[...F,...f[k]]}}else l[k]!==void 0&&(f[k]=l[k])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function Eu(){return(await j.storage.sync.get("userConfig")||{}).userConfig||{}}async function Wo(e){await j.storage.sync.set({userConfig:e})}var b1=async()=>{let e=["zh-CN"];try{e=await j.i18n.getAcceptLanguages()}catch(a){L.warn("get browser language error:",a)}let n=e.map(a=>oa(a)).find(a=>an[a]);return n||"en"},fr=()=>{let e={...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};return{...e,targetLanguage:Ao,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function xu(e){if(Math.abs(e)<1024)return e+" Byte";let n=["KB","MB","GB","TB","PB","EB","ZB","YB"],a=-1;do e/=1024,++a;while(Math.abs(e)>=1024&&as+l.text.length,0)+o.text.length>t||u.tempSentences.length>=n)&&(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(u.from!==o.from||u.to!==o.to)&&(u.tempSentences.length>0?(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(u.from=o.from,u.to=o.to)),u.tempSentences.push(o);return u.tempSentences.length>0&&r.push(u),r}function y1(e,t){let n=[],a=[];for(let r=0;r0?f"},{matches:"https://cn.bing.com/search*",extraInlineSelectors:["a","i"]},{matches:"news.yahoo.com",excludeSelectors:["#ybar-inner-wrap"]},{matches:"*.yahoo.com",excludeSelectors:["._ys_jiqava"],globalAttributes:{"#atomic .Mt\\(20px\\)":{style:"margin-top: 100px;"},"[class*='LineClamp']":{style:"-webkit-line-clamp:unset;max-height:unset;"},"a[class*='js-content-viewer']> div[class*='Td\\(n\\)']":{style:"overflow: scroll;"},"[class*='_ys_24482e']":{style:"-webkit-line-clamp:unset;"}}},{matches:"www.wsj.com",excludeSelectors:["header","footer","nav","[aria-label='Markets summary']"]},{matches:"www.businessinsider.com",excludeSelectors:["header","nav","section.live-updates-module "]},{matches:"www.goodreads.com",excludeSelectors:[".badgeYear",".gr-mediaBox__desc",".bookVotedRow",".minirating","div[itemprop='aggregateRating']",".wtrButtonContainer",".RatingsHistogram__labelTitle",".FollowButton",".siteHeader__topLevelLink","#books > thead","td[class*='rating']","td[class*='shelves']","td[class*='date_read']","td[class*='date_added']","td[class*='actions']"]},{matches:"https://feeder.co/*",globalStyles:{".item-summary":"-webkit-line-clamp:unset;"}},{matches:"https://www.elektrotechnik.rwth-aachen.de/*",globalAttributes:{"[class='notranslate']":{class:""}}},{matches:"www.nytimes.com",excludeSelectors:["header"]},{matches:"bugs.kde.org",excludeTags:["TITLE","LINK","SCRIPT","STYLE","TEXTAREA","SVG","G","NOSCRIPT","INPUT","BUTTON","BASE","SELECT","OPTION","HR","KBD","WBR","RT","RP","META","MATH","TTS-SENTENCE","AIO-CODE"],additionalExcludeSelectors:[".bz_first_comment_head",".bz_comment_head",".related_actions"]},{matches:"guba.eastmoney.com",searchEnhancementConfig:[{id:"eastmoney",urlMatch:"guba.eastmoney.com/news,us\\w+,\\w+.html",delayTime:0,selector:".moneyFlowContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"guba.eastmoney.com/news,us(\\w+?),\\S+.html"}]},showCount:8},{id:"eastmoney",urlMatch:"guba.eastmoney.com/list,us\\w+.*.html",delayTime:0,selector:".qualityContentContainer",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#294688",title:"font-size:14px;color:#294688;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin:0px 0 16px;",more:"color:#294688;margin-top:8px;"},keyword:{value:"[0]$1:[0]$2",matches:[{source:{type:"selector",attribute:"href"},matchRegex:"code=(\\w+)_(\\w+)",match:"a[href*='rank/stock?code=']"}]},showCount:8}]},{matches:"xueqiu.com",searchEnhancementConfig:[{id:"xueqiu",urlMatch:"xueqiu.com/S/[a-zA-Z]+/?$",delayTime:0,selector:".container-side-sm.float-right.stock__side",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;padding:0;",source:"font-size:12px; margin-bottom: 0px;",keyword:"color:#06c",title:"font-size:14px;color:#06c;",enTitle:"margin-top:4px;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;font-weight: bold;",time:"margin:0px 0 16px;",more:"color:#06c;margin-top:8px;"},showCount:8,keyword:{value:"[0]$1",matches:[{source:{type:"selector",attribute:"text"},matchRegex:"\\((.+)\\)",match:".stock-name"}]}}]},{matches:"www.laohu8.com",searchEnhancementConfig:[{id:"laohu8",urlMatch:"www.laohu8.com/stock/[a-zA-Z]+/?$",delayTime:0,selector:".hot-stocks-root",selectorAction:"insertBefore",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 0px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 0px 0 16px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)"}]},showCount:8}]},{matches:"www.futunn.com",searchEnhancementConfig:[{id:"futunn",urlMatch:"www.futunn.com/stock/\\w+-US",delayTime:0,selector:".right",selectorAction:"appendChild",style:{container:"background:white;border:none;border-radius: 4px;box-shadow: 0 2px 4px hsla(216,5%,62%,.14);",source:"font-size:12px; margin-bottom: 4px;",title:"font-size:14px;color: #007bff;",enTitle:"margin-top:4px;color: #4d5156;font-size:12px;",searchTitle:"margin:4px 0 16px;position:relative;padding-right:24px;font-size: 16px;",time:"margin: 4px 0 20px;"},keyword:{value:"[0]$1 stock",matches:[{source:"url",matchRegex:"stock/([a-zA-Z]+)-US"}]},showCount:8}]}]};function W0(e){return Array.isArray(e)?e:e?[e]:[]}function un(e,t){return t?(Array.isArray(t)||(t=[t]),Array.from(new Set([...t,e]))):[e]}function Ye(e,t){return t?(Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]),t.filter(n=>!e.includes(n))):[]}function Ho(e,t){let n=[],a=Object.keys(e);for(let o of a){let i=e[o];Array.isArray(i)&&n.push(o)}let r={...e};return Object.keys(t).forEach(o=>{let i=t[o];if(i!==void 0)if(!n.includes(o))r[o]=i;else if(o.startsWith("additional")){let s=W0(i);r[o]=Array.from(new Set([...r[o],...s]))}else r[o]=W0(i)}),r}function Ba(){if(ve.PROD==="1")return{};let e={};if(ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY){let t={secretId:ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_ID,secretKey:ve.IMMERSIVE_TRANSLATE_SECRET_TENCENT_SECRET_KEY};e.translationServices={},e.translationServices.tencent=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID&&ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY){let t={appid:ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_APPID,key:ve.IMMERSIVE_TRANSLATE_SECRET_BAIDU_KEY};e.translationServices||(e.translationServices={}),e.translationServices.baidu=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN){let t={token:ve.IMMERSIVE_TRANSLATE_SECRET_CAIYUN_TOKEN};e.translationServices||(e.translationServices={}),e.translationServices.caiyun=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY){let t={apikey:ve.IMMERSIVE_TRANSLATE_SECRET_OPENL_APIKEY};e.translationServices||(e.translationServices={}),e.translationServices.openl=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET){let t={appId:ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_ID,appSecret:ve.IMMERSIVE_TRANSLATE_SECRET_YOUDAO_APP_SECRET};e.translationServices||(e.translationServices={}),e.translationServices.youdao=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID&&ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY){let t={accessKeyId:ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_ACCESS_KEY_ID,secretAccessKey:ve.IMMERSIVE_TRANSLATE_SECRET_VOLC_SECRET_ACCESS_KEY};e.translationServices||(e.translationServices={}),e.translationServices.volc=t}if(ve.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY){let t={authKey:ve.IMMERSIVE_TRANSLATE_SECRET_DEEPL_AUTH_KEY};e.translationServices||(e.translationServices={}),e.translationServices.deepl=t}if(ve.DEEPL_PROXY_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateApiUrl=ve.DEEPL_PROXY_ENDPOINT),ve.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT&&(e.translationServices||(e.translationServices={}),e.translationServices.deepl||(e.translationServices.deepl={}),e.translationServices.deepl.immersiveTranslateDeeplTokenUrl=ve.IMMERSIVE_TRANSLATE_DEEPL_ENDPOINT),ve.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY){let t={APIKEY:ve.IMMERSIVE_TRANSLATE_SECRET_OPENAI_API_KEY};e.translationServices||(e.translationServices={}),e.translationServices.openai=t}return ve.DEBUG==="1"&&(e.debug=!0,e.cache=!1,e.alpha=!0),ve.MOCK==="1"&&(e.translationService="mock"),ve.IMMERSIVE_TRANSLATE_SERVICE&&(e.translationService=ve.IMMERSIVE_TRANSLATE_SERVICE),e}async function Hn(){let e=await j.storage.local.get(ar);if(e[ar]){let t=e[ar],n=t.tempTranslationUrlMatches||[],a=n.filter(o=>o.expiredAt>Date.now()),r=!1;a.length!==n.length&&(n=a,r=!0);let u={...t,tempTranslationUrlMatches:[...n]};return r&&await Wn(u),u}else return{}}async function Wn(e){await j.storage.local.set({[ar]:e})}async function gm(e){await j.storage.local.set({[Un]:e})}async function pr(){await j.storage.local.set({[Un]:{}})}async function ia(){await j.storage.local.set({[ar]:{}})}async function mm(){let e=await j.storage.local.get(Un),n={...fr(),...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};if(e[Un]){let a=e[Un];if(a&&a.buildinConfigUpdatedAt){let r=new Date(a.buildinConfigUpdatedAt),u=new Date(n.buildinConfigUpdatedAt);r>u&&(n=a)}}return n}async function ze(){let e=await j.storage.local.get(Un),t={...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};if(e[Un]){let h=e[Un];if(h&&h.buildinConfigUpdatedAt){let k=new Date(h.buildinConfigUpdatedAt),F=new Date(t.buildinConfigUpdatedAt);k>F&&(t=h)}}let n={};if(!le()&&j.commands&&j.commands.getAll){let h=await j.commands.getAll();for(let k of h)k.name&&k.shortcut&&(n[k.name]=k.shortcut)}let a=fr(),r=Ba(),u=await Eu(),o=globalThis.IMMERSIVE_TRANSLATE_CONFIG||{},i=await Hn(),s=new Date;if(i&&i.tempTranslationUrlMatches&&i.tempTranslationUrlMatches.length>0){let h=i.tempTranslationUrlMatches.filter(k=>new Date(k.expiredAt)>s);if(h.length>0){let k=u.translationUrlPattern?u.translationUrlPattern?.matches||[]:[],F=Array.isArray(k)?k:[k],M=Array.from(new Set(F.concat(h.map(D=>D.match))));u.translationUrlPattern={...u.translationUrlPattern,matches:M}}}let l=Object.assign({},o,r,u);if(!l.interfaceLanguage){let h=await v1();l.interfaceLanguage=h}let c=l.interfaceLanguage==="en",g=l.targetLanguage==="en",m=t&&t.translationLanguagePattern&&t.translationLanguagePattern.matches&&t.translationLanguagePattern.matches.length===0,p=["bing","google","transmart","mock"].includes(l.translationService)||!l.translationService;!c&&!g&&!m&&p?t.translationLanguagePattern||(t.translationLanguagePattern={matches:["en"],excludeMatches:[]}):t.translationLanguagePattern={matches:[],excludeMatches:[]};let f=Object.assign(a,t),S=Object.keys(f),v=["translationUrlPattern","translationLanguagePattern","immediateTranslationPattern","translationBodyAreaPattern","translationParagraphLanguagePattern","translationThemePatterns","translationGeneralConfig","shortcuts","inputTranslationUrlPattern","inputLanguageCodeAlias"];for(let h of S){let k=h;if(k==="generalRule")typeof l[k]=="object"&&(f[k]=Ho(a[k],l[k]));else if(k==="translationServices"){let F=l[k]||{},M=t[k]||{},D=Object.keys(M),P=Object.keys(F),w=[...new Set([...D,...P])],x={};for(let b of w)x[b]={...M[b],...F[b]};f[k]=x}else if(typeof l[k]!="string"&&typeof l[k]!="boolean"&&typeof l[k]!="number"&&v.includes(k))l[k]&&(f[k]=Object.assign(f[k],l[k])),k==="shortcuts"&&(le()||Dt()?f[k]={...f[k],...n}:f[k]={...n});else if(k==="rules"){if(Array.isArray(l[k])&&(f[k]=[...l[k],...f[k]]),ve.PROD==="0"&&ve.DEV_RULES){let F=JSON.parse(ve.DEV_RULES);f[k]=[...F,...f[k]]}}else l[k]!==void 0&&(f[k]=l[k])}return f.donateUrl=t.donateUrl,f.minVersion=t.minVersion,f.feedbackUrl=t.feedbackUrl,f}async function Eu(){return(await j.storage.sync.get("userConfig")||{}).userConfig||{}}async function Wo(e){await j.storage.sync.set({userConfig:e})}var v1=async()=>{let e=["zh-CN"];try{e=await j.i18n.getAcceptLanguages()}catch(a){A.warn("get browser language error:",a)}let n=e.map(a=>oa(a)).find(a=>an[a]);return n||"en"},fr=()=>{let e={...zo,buildinConfigUpdatedAt:ve.BUILD_TIME};return{...e,targetLanguage:Ao,interfaceLanguage:"en",translationMode:"dual",debug:!1,alpha:!1,translationUrlPattern:{matches:[],excludeMatches:[]},translationLanguagePattern:{matches:[],excludeMatches:[]},translationThemePatterns:{},translationParagraphLanguagePattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationBodyAreaPattern:{matches:[],excludeMatches:[],selectorMatches:[],excludeSelectorMatches:[]},translationTheme:"none",translationService:"bing",translationArea:"main",translationStartMode:"dynamic",translationServices:{},generalRule:{...e.generalRule},translationGeneralConfig:{engine:"bing"},rules:[]}};function xu(e){if(Math.abs(e)<1024)return e+" Byte";let n=["KB","MB","GB","TB","PB","EB","ZB","YB"],a=-1;do e/=1024,++a;while(Math.abs(e)>=1024&&as+l.text.length,0)+o.text.length>t||u.tempSentences.length>=n)&&(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}),(u.from!==o.from||u.to!==o.to)&&(u.tempSentences.length>0?(r.push(u),u={fromByClient:u.fromByClient,from:o.from,to:o.to,tempSentences:[],url:o.url}):(u.from=o.from,u.to=o.to)),u.tempSentences.push(o);return u.tempSentences.length>0&&r.push(u),r}function w1(e,t){let n=[],a=[];for(let r=0;r0?ft){let h=[];W0(S,t,h);for(let k=0;k0&&f{let i=e.lastIndexOf(o,t);return i>u?i:u},-1);if(r===-1){let u=e.slice(0,t);if(u&&!u.trim())return;n.push({text:u,prefix:"",suffix:""}),e.length>t&&W0(e.slice(t),t,n)}else{let u=e.slice(0,r+1);if(u&&u.trim()==="")return;u.startsWith(" ")?n.push({text:u.slice(1),prefix:" ",suffix:""}):n.push({text:u,prefix:"",suffix:""}),r+10){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,optionalProps:i,explicitProps:o}}var $o=e=>{let{config:t}=e,n=t.alpha,a=t.beta,r=t.canary,u=t.debug;return Object.keys(hn).filter(i=>{let s=hn[i];if(i.startsWith("mock"))return u?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,g=!!s.beta;return i===e.translationService||l&&r||c&&(n||r)||g&&(a||n||r)?!0:!c&&!g&&!l}).map(i=>$0(i,e))};function Zt(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var $w=gm(2),dm=gm(3);function gm(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let r=typeof n.slice=="function"?n:String(n),u=r.length-e+1;if(u<1)return a;for(;u--;)a[u]=r.slice(u,u+e);return a}}var T1=/\s+/g,E1=/[\t\n\v\f\r ]+/g;function mm(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?x1:C1;return String(e).replace(t.style==="html"?E1:T1,t.trim?v1(n):n)}function x1(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function C1(){return" "}function v1(e){return t;function t(n,a,r){return a===0||a+n.length===r.length?"":e(n)}}var pm={}.hasOwnProperty;function w1(e){return e==null?"":mm(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function k1(e){return dm(" "+w1(e)+" ")}function S1(e){let t=k1(e),n={},a=-1;for(;++an&&(n=u,a=r)}return[a,n]}function _1(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function B1(e,t,n,a){t=I1(t,n,a);let r=[],u;if(t)for(u in t)qo.call(t,u)&&r.push([u,R1(e,t[u])]);return r.length===0?K0():r.sort(O1)}function R1(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let u=e.length-a;for(let o of V1){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/u>.5?t==="zh-CN"?Cm(e)?"zh-TW":"zh-CN":t:"auto"}var wm=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function km(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Vo(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...wm.keys()]},r=bm(e,a);if(r&&r.length>0){if(r.length>1&&r[0][0]!=="eng"&&r[1][0]==="eng"&&r[1][1]>.6)return"en";let[u]=r[0],o=wm.get(u);if(o)return o}return"auto"}var gt=class extends Error{constructor(n,a,r){super(a);this.name=n,r&&(this.details=r)}};async function hr(e){let t;if(e&&e.retry&&e.retry>0)try{t=await r0(Sm.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await Sm(e);return t}async function Sm(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let r=!0;e.fetchPolyfill&&(r=!1);let u=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),r){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await u(t,a)}catch(s){L.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of G1(i.body)){let g=new TextDecoder().decode(c);s+=g;let m;for(;(m=s.indexOf(` -`))>=0;){let p=s.slice(0,m).trim();if(s=s.slice(m+1),p.startsWith("event:")||p==="")continue;let f="";if(p.startsWith("data:")&&(f=p.slice(5).trim()),f==="[DONE]")break;let S;try{S=JSON.parse(f??"")}catch(v){L.debug("json error",v);continue}l=S}}return l}}else{let s;try{s=await i.text()}catch(g){L.error("parse response failed",g)}s&&L.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new gt("fetchError",c,s)}}async function*G1(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function la(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function J1(e,t){return e<>>32-t}function Jo(e,t,n,a,r,u){return la(J1(la(la(t,e),la(a,u)),r),n)}function Pt(e,t,n,a,r,u,o){return Jo(t&n|~t&a,e,t,r,u,o)}function Mt(e,t,n,a,r,u,o){return Jo(t&a|n&~a,e,t,r,u,o)}function Ft(e,t,n,a,r,u,o){return Jo(t^n^a,e,t,r,u,o)}function _t(e,t,n,a,r,u,o){return Jo(n^(t|~a),e,t,r,u,o)}function Go(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,r,u,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function V0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Go(a,e.length*8)),n=0;n<16;n+=1)r[n]=a[n]^909522486,u[n]=a[n]^1549556828;return o=Go(r.concat(V0(t)),512+t.length*8),Am(Go(u.concat(o),512+128))}function Dm(e){var t="0123456789abcdef",n="",a,r;for(r=0;r>>4&15)+t.charAt(a&15);return n}function G0(e){return unescape(encodeURIComponent(e))}function Lm(e){return Y1(G0(e))}function Z1(e){return Dm(Lm(e))}function Pm(e,t){return X1(G0(e),G0(t))}function Q1(e,t){return Dm(Pm(e,t))}function ca(e,t,n){return t?n?Pm(t,e):Q1(t,e):n?Lm(e):Z1(e)}var br=[];async function vu(e,t){return await new Promise((n,a)=>{let r=e,u=1,o=indexedDB.open(r,u);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function J0(e){let t=`${X}-${e.service}@${e.from}->${e.to}`;return await tb(t,e)}async function Y0(e){let t=ca(e.originalText),n=`${X}-${e.service}@${e.from}->${e.to}`;return await eb(n,t)}async function eb(e,t){let n=await vu(e);return await new Promise((a,r)=>{if(!n)return r();let u="cache",i=n.transaction([u],"readonly").objectStore(u).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),r()}})}async function tb(e,t){let n=await vu(e);return(await X0()).includes(e)||await nb(e),await new Promise(r=>{if(!n)return r(!1);let u="cache",i=n.transaction([u],"readwrite").objectStore(u).put(t);i.onsuccess=s=>{n.close(),r(!0)},i.onerror=s=>{n.close(),r(!1)}})}async function nb(e){let t="cache_list",n=await vu(X+"-cacheList",t),r=n.transaction([t],"readwrite").objectStore(t).put({key:e});r.onsuccess=u=>{n.close(),br.push(e)},r.onerror=u=>{n.close()}}async function X0(){if(br&&br.length>0)return br;let e=await vu(X+"-cacheList","cache_list");return br=await new Promise(t=>{let n="cache_list",r=e.transaction([n],"readonly").objectStore(n).getAllKeys();r.onsuccess=u=>{e.close(),t(r.result)},r.onerror=u=>{e.close(),t([])}}),br}async function Z0(){try{let e=[];(await X0()).forEach(a=>{e.push(ab(a))});let n=await Promise.all(e);return xu(n.reduce((a,r)=>a+r,0))}catch{return xu(0)}}async function ab(e){let t=await vu(e),a=[...t.objectStoreNames].reduce((o,i)=>{let s=rb(t,i);return o.push(s),o},[]),r=await Promise.all(a);return t.close(),r.reduce((o,i)=>o+i,0)}async function rb(e,t){return await new Promise((n,a)=>{if(e==null)return a();let r=0,u=e.transaction([t]).objectStore(t).openCursor();u.onsuccess=o=>{let i=u.result;if(i){let s=i.value,l=JSON.stringify(s);r+=l.length,i.continue()}else n(r)},u.onerror=o=>a("error in "+t+": "+o)})}async function Mm(){try{let t=(await X0()).map(a=>ub(a));return!!(await Promise.all(t)).every(a=>a)}catch{return!1}}async function ub(e){return await new Promise(t=>{let n=indexedDB.deleteDatabase(e);n.onsuccess=()=>{t(!0)},n.onerror=a=>{t(!1)}})}var Fm=xe+"StoreKey_";function Yo(e,t){let n=Fm+e;return j.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function _m(e,t){let n=Fm+e;return j.storage.local.set({[n]:t})}var Bm=xe+"SyncStoreKey_";function Q0(e,t){let n=Bm+e;return j.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function mt(e,t){let n=Bm+e;return j.storage.sync.set({[n]:t})}var Xo={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.1",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function da(){return Xo.version}function Zo(){return j.runtime.getManifest().version}var Rm="G-MKMD9LWFTR";async function nt(e,t,n){try{let a=tt();if(a.INSTALL_FROM==="firefox_store")return;let u=le(),o=Ct(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let x=await Yo(s,0),b=Qo(new Date(x)),E=Date.now(),I=Qo(new Date(E));if(b===I)return;await _m(s,E)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",g=await Q0("fakeUserId","");g||(g=await Yo("fakeUserId",""),g&&await mt("fakeUserId",g));let m=da(),p=new Date,f=await Q0("installedAt","");f||(f=await Yo("installedAt",""),f&&await mt("installedAt",f)),g?f||(f=new Date(0).toISOString(),await mt("installedAt",f)):(g=ib(32),await mt("fakeUserId",g)),f||(f=p.toISOString(),await mt("installedAt",f));let S=new Date(f),v=Qo(S),h=Qo(p),k=v===h,F=p.getTime()-S.getTime()<7*24*60*60*1e3,M=`https://www.google-analytics.com/mp/collect?measurement_id=${Rm}&api_secret=${c}`;i||(M=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${Rm}&api_secret=${c}`);let A=po.parse(window.navigator.userAgent),P=t.map(x=>{let b=x.params||{};A.os&&(b.os_name=A.os.name||"unknown",b.os_version=A.os.version||"unknown",b.os_version_name=A.os.versionName||"unknown"),A.browser&&(b.browser_name=A.browser.name||"unknown",b.browser_version=A.browser.version||"unknown"),A.platform&&(b.platform_type=A.platform.type||"unknown"),A.engine&&(b.engine_name=A.engine.name||"unknown",b.engine_version=A.engine.version||"unknown"),n.translationService&&(b.translation_service=n.translationService),n.targetLanguage&&(b.target_language=n.targetLanguage),n.config.interfaceLanguage&&(b.interface_language=n.config.interfaceLanguage),m&&(b.version=m),n.config.translationTheme&&(b.translation_theme=n.config.translationTheme),n.config.alpha&&(b.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?b.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):b.always_translate_languages="none",a.INSTALL_FROM&&(b.install_from=a.INSTALL_FROM),n.config.beta&&(b.beta=n.config.alpha.toString()),n.config.translationArea&&(b.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(b.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),v&&(b.install_day=sb(S)),n.config.translationMode&&(b.translation_mode=n.config.translationMode),b.userscript=u.toString(),k?b.is_new_user_today="1":b.is_new_user_today="0",F?b.is_new_user_this_week="1":b.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?b.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():b.temp_translate_domain_minutes="0";let E="html";if(n.rule.isEbook?E="ebookReader":n.rule.isPdf?E="pdfReader":n.rule.isEbookBuilder?E="ebookBuilder":n.rule.isSubtitleBuilder&&(E="subtitleBuilder"),b.page_type=E,o?b.main_frame=0:b.main_frame=1,!l){let I=n.url;try{let D=new URL(I);b.site_host=D.hostname}catch{b.site_host="unknown"}n.sourceLanguage&&(b.source_language=n.sourceLanguage)}return{...x,params:b}}),w=await ue({responseType:"text",url:M,method:"POST",body:JSON.stringify({client_id:g,user_id:g,events:P})})}catch{}}function ib(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r0){if(a.includes(e)||a.includes(""))return!1;for(let r of a)if(r.includes("*")&&new RegExp(r).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let r of n)if(r.includes("*")&&new RegExp(r).test(e))return!0}return!1}var Nm="auto",ei="auto",Om="auto";function ti(e){Nm=e}function sn(e){ei=e}function Ln(){return ei!=="auto"?ei:Om!=="auto"?Om:Nm}function yr(){return ei}var lb=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function $n(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function el(e,t,n){let{blockSelectors:a,extraBlockSelectors:r,extraInlineSelectors:u}=t;if($n(e,u))return!1;if($n(e,r)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!lb.includes(n.display):$n(e,a)}var Qt=$n;function Ra(e){return!!e.shadowRoot}function ga(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function wu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function ni(e){let t=ko;return e&&(t=e),t}async function Pn(e,t="",n=100){let a="auto";return t?await lt({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=yr()),a)}function ai(e,t){return sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function cb(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${X}-loading-${n} notranslate">`}function ku(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",rn),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),st(a,pg,t.toString());let r=cb(e);return a.innerHTML=Oe.sanitize(r),a}function Tr(e,t){return e.querySelector(`[${k0}='${t}']`)}function Um(){document.querySelectorAll(`[${k0}]`).forEach(t=>{t.remove()})}function jm(){document.querySelectorAll(`.${rn}-error`).forEach(t=>{t.remove()})}function zm(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{cr(n)&&t.push(n)}),t}function Hm(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:r,text:u}=e,o=new RegExp(`${r[0]}(\\d+)${r[1]}`,"gi");if(r.length>2){let s=r[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=u.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(u)||i.includes("")||i.includes("< styles>")||zg(i)||Ng(i)||jg(i)||Ug(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Fo(u,n,a)}function Mn(e){return e.nodeType===Node.ELEMENT_NODE}function Wm(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function $m(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var db=1e5;function ma(e){let{onParagraph:t,filterRule:n,id:a}=e;n=gb(n);let{stayOriginalSelectors:r,globalStyles:u,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,g={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},m=!1,p=null;function f(M){let{container:A,onFrame:P,onIgnoreElement:w,id:x}=M,b=document.createTreeWalker(A,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,D=>{let W=I(D);return W==NodeFilter.FILTER_ACCEPT?qt.mark(D,x):W==NodeFilter.FILTER_REJECT,W}),E=A;if(I(E)===NodeFilter.FILTER_REJECT)return;for(qt.mark(E,x);E;){if(o&&o.length>0){let{currentNode:D,isMatchedSelection:W}=S(b,E,o);if(D)E=D;else break;if(!W)continue}if(E.nodeType===Node.ELEMENT_NODE||E.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let D=E;if(D.nodeName==="IFRAME"){P&&P(D);break}D.nodeType===Node.ELEMENT_NODE&&(u&&nl(D,u),l&&rl(D,l));let W=el(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&!W){h(D);let G=null;for(;!(G=b.nextSibling())&&b.parentNode(););E=G;continue}let _=Ra(D);(!qm(g,D)||W)&&(v(),D.childNodes.length>0&&k(g,D,D.immersiveTranslateComputedStyle||null)),_&&D.shadowRoot?.mode==="open"&&(W?P?.(D.shadowRoot):f({...M,container:D.shadowRoot})),D.nodeType===Node.ELEMENT_NODE&&D.nodeName==="PRE"&&i&&hb(D)}else if(E.nodeType===Node.TEXT_NODE)h(E);else throw new Error("should not be here");E=b.nextNode(),g.commonAncestorContainer&&E&&E.parentNode===g.commonAncestorContainer&&(g._currentStacks=[]),g.commonAncestorContainer&&E&&E.nodeType===Node.ELEMENT_NODE&&g._currentStacks.push(E)}function I(D){if(D.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(Mn(D)){if(l){let B=Object.keys(l);if(B.length>0&&Qt(D,B))for(let re of B){let ye=l[re];if(D.matches(re)){let V=l[re],ge=Object.keys(V);for(let de of ge){let C=V[de];D.getAttribute(de)!==C&&(C===null?D.removeAttribute(de):D.setAttribute(de,C))}break}}}if(!M.force&&qt.isMarked(D,x)||Wm(D,x)||ul(D,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:r})||D.nodeName==="IFRAME"&&!cr(D))return NodeFilter.FILTER_REJECT;if(D.nodeType===Node.ELEMENT_NODE){let B=window.getComputedStyle(D);if(D.immersiveTranslateComputedStyle={display:B.display,whiteSpace:B.whiteSpace},al(D.immersiveTranslateComputedStyle))return w&&w(D),NodeFilter.FILTER_REJECT;let G=el(D,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},D.immersiveTranslateComputedStyle||null);if(Qt(D,r)&&G)return NodeFilter.FILTER_REJECT}let{width:W,height:_}=D.getBoundingClientRect();return D.nodeName==="IMG"&&(W>48&&_>48?D.immersiveTranslateComputedStyle={display:"block"}:W>0&&_>0&&c!==!1&&(D.setAttribute("width",W),D.setAttribute("height",_))),!D.childNodes||D.childNodes&&D.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!g.isPreWhitespace&&(W>0&&W<4||_>0&&_<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(D.nodeType===Node.TEXT_NODE){let W=D.textContent?.trim();if(!W)return g.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let _=D.parentNode;if(_.getBoundingClientRect){let{width:B,height:G}=_.getBoundingClientRect();if(B>0&&B<4||G>0&&G<4)return NodeFilter.FILTER_REJECT}return s>0&&W.length>=s&&tl(D,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),g&&g.commonAncestorContainer&&g.flatNodes.length>0&&v();function S(M,A,P){let w=A.immersiveTranslateComputedStyle||null;if(p){if(!p.contains(A))if(m=!1,A&&A.nodeType===Node.ELEMENT_NODE)if(ri(A,P))m=!0,p=A,v(),k(g,p,w);else return m=!1,A=M.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=M.nextNode(),{currentNode:A,isMatchedSelection:m}}else if(A&&A.nodeType===Node.ELEMENT_NODE)if(ri(A,P))m=!0,p=A,v(),k(g,p,w);else return m=!1,A=M.nextNode(),{currentNode:A,isMatchedSelection:m};else return m=!1,A=M.nextNode(),{currentNode:A,isMatchedSelection:m};return{currentNode:A,isMatchedSelection:!0}}function v(){let M=fb(g,a);M&&t&&t(M),Km(g)}function h(M){if(!qm(g,M)){v(),Km(g);let A=M.parentNode;A&&k(g,A,A.computedStyle)}g.flatNodes.push(M)}function k(M,A,P){M.commonAncestorContainer=A;let w=F(P);M.isPreWhitespace=w}function F(M){return M&&M.whiteSpace&&M.whiteSpace.startsWith("pre")||M&&M.whiteSpace==="break-spaces"||!1}}function qm(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=Ra(t));let a=pb(e),r=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?r=!0:e.commonAncestorContainer&&(r=!1,e._currentStacks=[])),r}function gb(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function mb(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function nl(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){e.style.cssText=u;break}}}}function pb(e){return e&&e._currentStacks?e._currentStacks.some(t=>Ra(t)):!1}function fb(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(m=>m.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let u=bb(n,a);u||(u=a);let o=[];for(let m of n){let p=mb(e,u,m);p&&(o.includes(p)||o.push(p))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,g=0;for(;c&&(l.push(c),c!==s);){if(g++,g>db){L.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:u,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function Km(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function al(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,r=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(r)&&(r=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||r<-1e3}var qt={_marked_key:"immersive_translate_walked",isMarked(e,t){return B0(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return Bo(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return st(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=sr(e,"markWalk")||"";return st(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||Ra(e)):!1}};function hb(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=Oe.sanitize(n)}function bb(e,t){if(!e.length)return null;let n=e.map(a=>{let r=new Set;for(;(a=a.parentNode)&&(r.add(a),a!==t););return r});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(r=>r.has(a)))return a;return null}function tl(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let u=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(u>1){let o=n[u-1]||"",i=n[u-2]||"",s=n[u+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?u=-1:isNaN(Number(o))||(u=-1)}if(u===-1)n.length>t+20&&tl(e,t+20);else{let o=n.slice(u+1);u++,o.startsWith(" ")&&u++;let i=e.splitText(u),s=document.createElement("br");i.parentNode?.insertBefore(s,i),u+10)for(let a of n){let r=t[a],u=Object.keys(r),o=Bg(e,[a]);for(let i of o)for(let s of u){let l=r[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function Gm(e,t,n,a,r,u){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let g of l){let m=s[g];if(g==="translate"&&m==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||yb(c,r,u)||!Ig(f,n,a))continue}c.getAttribute(g)!==m&&(m===null?c.removeAttribute(g):c.setAttribute(g,m))}}}function rl(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){let o=t[r],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function ul(e,t){return Qt(e,t.excludeSelectors||[])?Qt(e,t.selectors||[])?!1:!Qt(e,t.stayOriginalSelectors||[]):!1}function ri(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Qt(e,t.concat(n))}function yb(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,r=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.TEXT_NODE&&parent){let u=r.textContent||"";if(u.includes("Copyright"))continue;if(Fo(u,t,n))return!0}}return!1}var Jm=["*://*/*","*","*://*"],Xm="immersive-translate-wildcard-placeholder.com";function ol(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>Jm.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let r=a.href,u=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===u)return!0;if(Jm.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===u:Eb(r,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let v=i.split("://");l=v[0],l==="*"&&v.length>1&&(l="*",i="https://"+v[1])}else l="*",i="https://"+i;let g=i.replace(/\*/g,Xm),m;try{m=new URL(g)}catch{return L.debug("invalid match pattern",g,"raw match value:",c),!1}let p=m.hostname,f=m.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let S=Tb(l+":",Ym(p),Ym(f));if(S){let v=new URL(r);return v.port="",S.test(v.href)}else return!1}});if(o)return o}return null}function Ym(e){return e.replaceAll(Xm,"*")}function Tb(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Fn(e,t){return ol(e,t)!==null}function Eb(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}var Er="input is invalid type",il=typeof window=="object",pa=il?window:{};pa.JS_SHA256_NO_WINDOW&&(il=!1);var xb=!il&&typeof self=="object",Cb=!pa.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Cb?pa=global:xb&&(pa=self);var x7=!pa.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,C7=typeof define=="function"&&define.amd,Su=!pa.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",ie="0123456789abcdef".split(""),vb=[-2147483648,8388608,32768,128],bn=[24,16,8,0],ui=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],oi=["hex","array","digest","arrayBuffer"],yt=[];(pa.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});Su&&(pa.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var Zm=function(e,t){return function(n){return new Tt(t,!0).update(n)[e]()}},e3=function(e){var t=Zm("hex",e);t.create=function(){return new Tt(e)},t.update=function(r){return t.create().update(r)};for(var n=0;n>2]|=e[r]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[u>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=u-64,this.hash(),this.hashed=!0):this.start=u}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};Tt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=vb[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};Tt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,g,m,p,f,S,v,h,k,F;for(l=16;l<64;++l)p=s[l-15],c=(p>>>7|p<<25)^(p>>>18|p<<14)^p>>>3,p=s[l-2],g=(p>>>17|p<<15)^(p>>>19|p<<13)^p>>>10,s[l]=s[l-16]+c+s[l-7]+g<<0;for(F=t&n,l=0;l<64;l+=4)this.first?(this.is224?(v=300032,p=s[0]-1413257819,i=p-150054599<<0,a=p+24177077<<0):(v=704751109,p=s[0]-210244248,i=p-1521486534<<0,a=p+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),g=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),v=e&t,m=v^e&n^F,S=r&u^~r&o,p=i+g+S+ui[l]+s[l],f=c+m,i=a+p<<0,a=p+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),g=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),h=a&e,m=h^a&t^v,S=i&r^~i&u,p=o+g+S+ui[l+1]+s[l+1],f=c+m,o=n+p<<0,n=p+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),g=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),k=n&a,m=k^n&e^h,S=o&i^~o&r,p=u+g+S+ui[l+2]+s[l+2],f=c+m,u=t+p<<0,t=p+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),g=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),F=t&n,m=F^t&a^k,S=u&o^~u&i,p=r+g+S+ui[l+3]+s[l+3],f=c+m,r=e+p<<0,e=p+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+r<<0,this.h5=this.h5+u<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};Tt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=ie[e>>28&15]+ie[e>>24&15]+ie[e>>20&15]+ie[e>>16&15]+ie[e>>12&15]+ie[e>>8&15]+ie[e>>4&15]+ie[e&15]+ie[t>>28&15]+ie[t>>24&15]+ie[t>>20&15]+ie[t>>16&15]+ie[t>>12&15]+ie[t>>8&15]+ie[t>>4&15]+ie[t&15]+ie[n>>28&15]+ie[n>>24&15]+ie[n>>20&15]+ie[n>>16&15]+ie[n>>12&15]+ie[n>>8&15]+ie[n>>4&15]+ie[n&15]+ie[a>>28&15]+ie[a>>24&15]+ie[a>>20&15]+ie[a>>16&15]+ie[a>>12&15]+ie[a>>8&15]+ie[a>>4&15]+ie[a&15]+ie[r>>28&15]+ie[r>>24&15]+ie[r>>20&15]+ie[r>>16&15]+ie[r>>12&15]+ie[r>>8&15]+ie[r>>4&15]+ie[r&15]+ie[u>>28&15]+ie[u>>24&15]+ie[u>>20&15]+ie[u>>16&15]+ie[u>>12&15]+ie[u>>8&15]+ie[u>>4&15]+ie[u&15]+ie[o>>28&15]+ie[o>>24&15]+ie[o>>20&15]+ie[o>>16&15]+ie[o>>12&15]+ie[o>>8&15]+ie[o>>4&15]+ie[o&15];return this.is224||(s+=ie[i>>28&15]+ie[i>>24&15]+ie[i>>20&15]+ie[i>>16&15]+ie[i>>12&15]+ie[i>>8&15]+ie[i>>4&15]+ie[i&15]),s};Tt.prototype.toString=Tt.prototype.hex;Tt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,r>>24&255,r>>16&255,r>>8&255,r&255,u>>24&255,u>>16&255,u>>8&255,u&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};Tt.prototype.array=Tt.prototype.digest;Tt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function ii(e,t,n){var a,r=typeof e;if(r==="string"){var u=[],o=e.length,i=0,s;for(a=0;a>6,u[i++]=128|s&63):s<55296||s>=57344?(u[i++]=224|s>>12,u[i++]=128|s>>6&63,u[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),u[i++]=240|s>>18,u[i++]=128|s>>12&63,u[i++]=128|s>>6&63,u[i++]=128|s&63);e=u}else if(r==="object"){if(e===null)throw new Error(Er);if(Su&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!Su||!ArrayBuffer.isView(e)))throw new Error(Er)}else throw new Error(Er);e.length>64&&(e=new Tt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var g=e[a]||0;l[a]=92^g,c[a]=54^g}Tt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}ii.prototype=new Tt;ii.prototype.finalize=function(){if(Tt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();Tt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),Tt.prototype.finalize.call(this)}};var xr=e3();xr.sha256=xr;xr.sha224=e3(!0);xr.sha256.hmac=t3();xr.sha224.hmac=t3(!0);var n3=xr;var a3=n3.sha256;function yn(e){return Promise.resolve(a3(e))}function si(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function fa(e,t){let n=a3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function r3(e,t){let n=await fa(e,t);return si(n)}async function li(e,t){let n=wb(t),a=await fa(e,n);return si(a)}function wb(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}async function wt(e){let{url:t,config:n,state:a}=e,r=new URL(t),u="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:g,targetLanguage:m,sourceLanguageUrlPattern:p,immediateTranslationPattern:f}=n,S=Cr(t,o),v=Cr(t,f),h=i,k=Object.keys(s);for(let O of k){let ae=s[O];if(Cr(t,ae)){h=O;break}}let F=l,M=Object.keys(c);for(let O of M){let ae=c[O];if(ae&&Cr(t,ae)){F=O;break}}let A=Cr(t,g),P=u3(t,g);P||(P=Fn(t,Dg)),P||(P=Fn(t,n.blockUrls));let w=u3(t,n.inputTranslationUrlPattern);w||(w=Fn(t,n.inputTranslationBlockUrls));let x=Fn(t,n.mutationBlockUrls),b=Object.keys(p),E={};for(let O of b){let ae=p[O];if(ae&&ae.matches)for(let ee of ae.matches)E[ee]=O}let I=Object.keys(E),D=ol(t,I);D&&(u=E[D]??"auto",E[D]&&E[D]!=="auto"&&sn(E[D]));let W=m||"zh-CN",_=r.hostname,B=await yn(_),G=r.pathname+r.search+r.hash,re=await yn(G),ye=`https://${B}.com/${re}`,V=await Hn(),ge=await lm(),de=n.translationStartMode;de==="dynamic"&&v&&(de="immediate");let C={targetLanguage:W,config:n,translationService:h,isTranslateUrl:A,sourceLanguage:u,mainFrame:document.body,isTranslateExcludeUrl:P,isMutationTranslationExcludeUrl:x,isInputTranslationExcludeUrl:w,rule:n.generalRule,url:t,encryptedUrl:ye,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:de,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:S,cache:n.cache,translationTheme:F},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:de,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:S,cache:n.cache,translationTheme:F},localConfig:V};C.state.translationArea==="body"&&(C.config.generalRule.excludeTags=C.config.generalRule.excludeTags.filter(O=>!C.config.generalRule.bodyTranslateTags.includes(O)),C.config.generalRule.additionalExcludeSelectors=C.config.generalRule.additionalExcludeSelectors.filter(O=>O!==".btn"));let z=n.translationServices[C.translationService]||{};z.immediateTranslationTextCount!==void 0&&kb(z.immediateTranslationTextCount)&&z.immediateTranslationTextCount>=0&&(C.state.immediateTranslationTextCount=z.immediateTranslationTextCount),C.translationService==="deepl"&&z&&z.authKey&&z.authKey.startsWith("immersive_")&&z.immediateTranslationTextCountForImmersiveDeepl!==void 0&&z.immediateTranslationTextCountForImmersiveDeepl>=0&&(C.state.immediateTranslationTextCount=z.immediateTranslationTextCountForImmersiveDeepl),z&&z.translationDebounce&&typeof z.translationDebounce=="number"&&(C.state.translationDebounce=z.translationDebounce);let Z=ge.immediateTranslationTextCount;n.immediateTranslationTextCount!==Z&&(C.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let pe=n.rules,se;globalThis.PDFViewerApplication?se=pe.find(O=>O.isPdf):globalThis.immersiveTranslateEbookViewer?se=pe.find(O=>O.isEbook):globalThis.immersiveTranslateEbookBuilder?se=pe.find(O=>O.isEbookBuilder):se=pe.find(O=>Cr(t,O)),C.rule.isPdf&&(C.state.translationArea="main"),C.state.translationArea==="body"&&(C.rule.paragraphMinTextCount=1,C.rule.paragraphMinWordCount=1),se&&se.isEbookBuilder&&(C.state.translationStartMode="immediate");let R=n.generalRule;if(se&&(C.rule=Ho(R,se)),C.rule.selectors.length>0&&(C.rule.paragraphMinTextCount=2,C.rule.paragraphMinWordCount=1),C.state.translationArea==="body"&&C.rule.excludeTags&&(C.rule.excludeTags=C.rule.excludeTags.filter(O=>!C.rule.bodyTranslateTags.includes(O)&&!C.rule.forceTranslateTags.includes(O))),C.rule.mainFrameSelector){let O=document.querySelector(C.rule.mainFrameSelector);O&&(C.mainFrame=O)}return C}function Cr(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:r,excludeSelectorMatches:u}=t;return a&&a.length>0&&Fn(e,a)?!1:n&&n.length>0&&Fn(e,n)?!0:u&&u.length>0&&_o(u)?!1:!!(r&&r.length>0&&_o(r))}function u3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Fn(e,n)||a&&a.length>0&&_o(a))}function kb(e){return typeof e=="number"}async function o3(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await lt({text:ir(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=oa(document.documentElement.lang)),e}function i3(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function sl(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let r=t[a],u=Sb(a);if(typeof r=="object"||u){let o=r;u&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let g=n.substring(s+i.length,c),m=Object.keys(o).filter(p=>p!=="tag").map(p=>`${p}="${o[p]}"`).join(" ");n=n.replace(`${i}${g}`,`<${l} ${m}>${g}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,r.toString())}}),n}function Au(e,t,n){let a=e[t];if(!a)return n;let r=n.split("."),u="";do{u+=r.shift();let o=a[u];o!==void 0&&(typeof o=="object"||!r.length)?(a=o,u=""):r.length?u+=".":a=n}while(r.length);return a}function Ia(e,t,n,a,r){if(!e.hasOwnProperty(n))return t;let u=Au(e,n,t);return u===t&&n!==a&&(u=Au(e,a,t)),sl(u,r)}function Sb(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function ci(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function vr(e,t,n=[],a,r){let u=["notranslate"];return a&&u.push(vg),e&&(u.push(`${X}-target-translation-theme-${e}`),t?u.push(`${A0}-theme-${e}`):u.push(`${S0}-theme-${e}`)),n.length>0&&u.push(...n),t?u.push(A0):(u.push(S0),r&&u.push(Cg)),u}function wr(e){let t=["notranslate",Eg];return e&&t.push(`${X}-target-translation-theme-${e}-inner`),t}function s3(e,t,n){let{rule:a,state:r}=n,{translationTheme:u}=r,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,g=lr(n),m="afterend",p=g[0].replace(/\//g,"/");p=p.replace(/"/g,'\\"'),p=p.replace(//g,">");let f=g[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let S=`${p}(\\d+)${f}`,v=new RegExp(S,"g"),h=ci(s);h=Oe.sanitize(h),o.length>0&&(h=h.replace(v,A=>{let P=h.indexOf(A),w=h[P-1]===" ",x=h[P+A.length]===" ",b=A.slice(g[0].length,-g[1].length),E=Number(b);if(isNaN(E))return A;let I=o[Number(E)];if(I&&I.type==="element"){let D=I.value.outerHTML;return w||(D=" "+D),x||(D=D+" "),D}else L.error("variable type not supported",I,A);return A}));let k=vr(u,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&k.push(xg);let F=wr(u),M="";return a.translationBlockStyle&&(M=`style="${a.translationBlockStyle}"`),h=`<${n.rule.targetWrapperTag} ${M} class="${k.join(" ")}" ${Dn}="1"><${a.targetWrapperTag} class="${F.join(" ")}" ${Dn}="1">${h}`,e.inline||(l==="smart"?h=`
${h}`:h=`${l}${h}`),e.inline&&(l!=="smart"?h=`${l}${h}`:h=`<${a.targetWrapperTag} class="notranslate" ${Dn}="1"> ${h}`),c==="smart"?h=`${h}`:h=`${h}${c}`,{html:h,position:m}}function di(e,t){let n=null,{stayOriginalSelectors:a,delimiters:r,isPreWhitespace:u}=t,o=[],i={};for(let s=0;s2&&(v=`<${r[2]}${S}>`),i[S]=l,o.push({text:v,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";g&&(f=ga(ll(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Qt(l,a)){let S=Object.keys(i).length,v=`${r[0]}${S}${r[1]}`;r.length>2&&(v=`<${r[2]}${S}>`),i[S]=l;let h=cl(o).endsWith(" ")?" ":"",k=ga(l.innerText||l.textContent),F=ga(l.nextSibling).startsWith(" ")?" ":"",M=wu(h+k+F),A=M[0]+v+M[1];if(h===" ")A=A.trimStart();else if(!A.startsWith(" ")){let P=wu(l.previousSibling)[1];P===""&&(P=" "),A=P+A}o.push({text:A,type:"variable"})}else{let f=cl(o).endsWith(" ")?" ":"",S=ga(l.innerText||l.textContent);g&&(S=ga(ll(l)));let v=ga(l.nextSibling).startsWith(" ")?" ":"",h=wu(f+S+v),k=h[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+h[1];if(f===" ")k=k.trimStart();else{let F=wu(l.previousSibling)[1];F===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(F=" "),k=F+k}o.push({text:k,type:"text"})}else{let f=cl(o).endsWith(" ")?" ":"",S="";l.textContent&&(S=ga(ll(l))),f===" "&&(S=S.trimStart()),o.push({text:S,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(g=o[l-1].text),l2){let c=l[2];return Ab({delimiterTag:c,targetText:e.targetText,inline:r,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=s3(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function ll(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function Ab(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:r,wrapperPrefix:u,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:g}=e;o=o||[];let m=ci(e.targetText);m=Oe.sanitize(m);let p=m,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),S=new RegExp(`<${t}(\\d+)>`);o.length>0&&(p=p.replace(f,F=>{let M=p.indexOf(F),A=p[M-1]===" ",P=p[M+F.length]===" ",w=F.match(S);if(!w)return F;let x=w[1],b=Number(x);if(isNaN(b))return F;let E=o[Number(b)];if(E&&E.type==="element"){let I=E.value.outerHTML;return A||(I=" "+I),P||(I=I+" "),I}else if(E&&E.type==="text"){let I=E.value;return A||(I=" "+I),P||(I=I+" "),I}else L.error("variable type not supported",E,F);return F}));let v=vr(l,n,a||[],i,c),h=wr(l),k="";return g&&(k=`style="${g}"`),p=`<${r} ${k} class="${v.join(" ")}" ${Dn}="1"><${r} class="${h.join(" ")}" ${Dn}="1">${p}`,n||(u==="smart"?p=`
${p}`:p=`${u}${p}`),n&&(u!=="smart"?p=`${u}${p}`:p=`<${r} class="notranslate" ${Dn}="1"> ${p}`),s==="smart"?p=`${p}`:p=`${p}${s}`,{html:p,position:"afterend"}}function cl(e){let t=e[e.length-1];return t?t.text:""}function ln(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var Db={sanitize:e=>e};function mi(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:ln(e.ctx),onParagraph:Du.bind(null,e),onFrame:n=>{gl(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),or&&st(t,"consumeContainer",e.id))}function gl(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!cr(t))return;L.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Sr(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else L.debug("onFrame shadowRoot",t.host),Sr(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Sr(e,t,n=!0){let{globalStyles:a,globalAttributes:r}=ln(t.ctx),u=0;if(s(t,e,n))return;if(Mn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(Mn(c)&&(a&&nl(c,a),r&&rl(c,r)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(qt.mark(l.currentNode,t.id);l.nextNode();){qt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let g=l.currentNode;if(qt.mark(l.currentNode,t.id),i(g)){o(g);continue}else break}if(!l.parentNode())return}}}catch{}if(u==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){qt.clearMark(l),u++,t.immediateTranslateCapacity>=0?mi(t,l):(or&&st(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return gl(t,l.shadowRoot,n),!1;if(c==="iframe")return gl(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let g=t.containerRule;if(g.selectors&&g.selectors?.length>0)return ri(l,g.selectors);if(g.pageHeight){let m=l.scrollHeight;if(m>0&&m0)return!0}return!1}function s(l,c,g){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||g&&qt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let p=ln(l.ctx);return!!ul(c,{excludeSelectors:p.excludeSelectors,selectors:p.selectors,stayOriginalSelectors:p.stayOriginalSelectors})}}function ml(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!qt.isMarked(a,e.ctxId))return;let r=a.contains(e.rootNodes[0]),u=a.contains(e.targetNodes[0]);if(r&&u)n="dual";else if(r)n="original";else if(u)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(gi(e.rootNodes),c3(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=dl(e.rootNodes);gi(e.rootNodes),kr(o,a,e.targetNodes||[]),c3(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];kr(o,a,e.rootNodes||[]),d3(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=dl(e.rootNodes);kr(o,a,e.targetNodes||[]),d3(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=dl(e.targetNodes);gi(e.targetNodes),kr(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&gi(e.targetNodes)}catch(o){L.error(o)}}}function c3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{st(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function d3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let r=sr(a,"immersiveTranslateClassBak");Bo(a,"immersiveTranslateClassBak"),a.className=r});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function dl(e){return e?e[e.length-1].nextSibling:null}function gi(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function kr(e,t,n){let a=e;t&&(a?n.forEach(r=>{a.parentNode?.insertBefore(r,a)}):n.forEach(r=>{t.appendChild(r)}))}var Lb=At(fl,300);async function Du(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||Pb(t.rootNodes)||t.stepState>=2)return;t.stepState=2,or&&st(a,"onParseParagraph",e.id);let{ctx:r}=e,{rule:u}=r,o=lr(r),i=di(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:r.rule.stayOriginalTags.concat(r.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(r.rule.stayOriginalSelectors).concat(r.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await hl(t,{excludeLanguages:r?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:r.state.isDetectParagraphLanguage,targetLanguage:r.targetLanguage,noTranslateRegexp:r.rule.noTranslateRegexp,delimiters:ni(r.config.translationServices[r.translationService]?.placeholderDelimiters),minTextCount:n||r.state.translationArea==="body"?2:u.paragraphMinTextCount,minWordCount:n||r.state.translationArea==="body"?1:u.paragraphMinWordCount,ignoreZhCNandZhTW:r.rule.ignoreZhCNandZhTW});if(s){if(L.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(Mb(e,t.text),pl(e,t)):(or&&st(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function Pb(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?Mn(t)&&t.classList.contains(rn):!1}function Mb(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function pl(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),or&&st(t.commonAncestorContainer,"consumeParagraph",e.id),Lb.call(e,e.ctx)}async function fl(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await _n(a,t,(r,u,o)=>{let i=o.id,s=Fb(e,i.toString());s&&_b.call(null,r,u,o,s,t,n)})}catch(r){L.error("translateCurrentQueue error",r);return}}function Fb(e,t){return e.find(n=>n.id===t)}function _b(e,t,n,a,r,u){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${X}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Tr(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(L.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=r,l=n.id,c=document.createElement(s.targetWrapperTag);st(c,fg,l.toString()),c.classList.add("notranslate",rn,rn+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",r.targetLanguage);let g=a.rootNodes[a.rootNodes.length-1].nextSibling;kr(g,a.commonAncestorContainer,[c]);let m=e.message.replaceAll(` -`,"");if(m=m.replaceAll('"',"""),i&&(i.error=new Error(m)),c){let p=Ia(an,"retryAllParagraphs",r.config.interfaceLanguage,"zh-CN"),f=Ia(an,"errorTooltipTitle",r.config.interfaceLanguage,"zh-CN"),S=`<${s.targetWrapperTag} class="${X}-error notranslate"><${s.targetWrapperTag} class="${X}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=Oe.sanitize(S)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=l3(a,r),l=document.createElement(r.rule.targetWrapperTag);l.classList.add("notranslate",rn),l.setAttribute("lang",r.targetLanguage),l.setAttribute(Dn,"1");let c=Db.sanitize(s);l.innerHTML=c,a.targetNodes=[l],ml(a,u),o=!0}else L.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function hl(e,t){let{text:n}=e,a=await lt({text:n||"",minLength:10}),{targetLanguage:r}=t;if(!Hm({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=yr());let s=Ln(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return sa(c,r,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(p=>sa(c,p,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var Bb=[];function g3(e){Bb.push(e)}function m3(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(So)||bl(e).catch(u=>{L.error("translateTitle error:",u.name,u.message,u.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var fi="";async function bl(e){let t=document.title;if(!t||t.includes(So))return;fi!==t&&(fi=t);let n=await Pn(e,t);if(!ai(e,n))try{let a=await ha({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=fi+So+a.text)}catch(a){throw a}}function p3(e){e.rule.isTranslateTitle&&(document.title=fi)}var yl="Original";function Ke(){return yl}function Nt(e){yl=e,f3(yl)}var Tl;function h3(e){let t=e.ctx.rule.aiRule;if(L.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=ln(e.ctx),r=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(r,1);let u,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{hi(e,l,a)}),Tl=new MutationObserver(l=>{l.forEach(function(c){if(Mn(c.target)){if(o==u&&c.target===u&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=u){c.removedNodes?.forEach(g=>{g===u&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==u){if(o.translated)return;o.translated=!0,L.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),hi(e,o,a);return}t.streamingChange&&u&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(g=>{let m=g.previousSibling;!m||m.translated||(m.translated=!0,setTimeout(()=>{m.childNodes[0]?.translated||(L.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",m),hi(e,m,a))},100))})}})}),Tl.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){$n(l,[t.streamingSelector])&&(u=l,L.debug("streamingNode",u)),$n(l,[t.messageWrapperSelector])&&(o=l,L.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),L.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),hi(e,o,a),u=void 0,o=null}}function hi(e,t,n){ma({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Du(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function b3(){Tl?.disconnect()}var J=null;function yi(){return J||null}function Ti(e){Rb(e),Hb(e),Ub(e),zb(e),ua(document,e),Nt("Translated"),jb(J),Nb(J),g3(ba),Ib(J)}function Rb(e){e.rule.initialSelectorGlobalAttributes&&Gm(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function Ib(e){h3(e)}function Ob(){b3()}function Nb(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Sr(n,e)})}async function Ub(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,r=e.localConfig.tempTranslationUrlMatches||[],u=r.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;u>-1||(r.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Wn({...e.localConfig,tempTranslationUrlMatches:[...r]})}}function jb(e){e.ctx.rule.isTranslateTitle&&(bl(e.ctx),e.titleDynamicObserver=m3(e.ctx))}function zb(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function Hb(e){let t=Zt();J&&(t=J.id),J=J||{},J.ctx=e,J.id=t,J.paragraphQueue=J.paragraphQueue||[],J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.containerRule={pageHeight:screen.availHeight,selectors:J.rule.selectors},J.paragraphEntities=J.paragraphEntities||{},J.autoIncreaseParagraphId=J.autoIncreaseParagraphId||1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.immediateTranslateCapacity=e.state.immediateTranslationTextCount,J.observeContainers=J.observeContainers||[],J.observeParagraphs=J.observeParagraphs||[],J.dynamicContainerObserver=J.dynamicContainerObserver||Vb(J),J.ignoreResizeObserver=J.ignoreResizeObserver||Gb(J),J.containerVisibleObserver=J.containerVisibleObserver||$b(J),J.paragraphVisibleObserver=J.paragraphVisibleObserver||qb(J),J.injectCssToDocument=bi,J.walkContainer=ma,J.translateState=e.state.translationMode||e.config.translationMode||"dual",J.allInlineWindows=[window],window.onerror=Wb(J,e),window.immersiveTranslateSwitchTranslateState=xl.bind(J)}function T3(e,t){t.getRootNode()instanceof ShadowRoot?bi(t.getRootNode(),e):bi(t.ownerDocument,e),El(e)}function El(e){J||(J={},J.ctx=e,J.id=Zt(),J.paragraphQueue=[],J.injectCssToDocument=bi,J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.paragraphEntities={},J.autoIncreaseParagraphId=1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.translateState=e.config.translationMode||"dual",J.observeContainers=[],J.observeParagraphs=[],J.allInlineWindows=[window],window.switchTranslateState=xl.bind(J))}function ba(e=!0){J&&(Nt("Original"),Ob(),J.interruptEffectDOM=!0,J.ignoreResizeObserver?.disconnect(),J.dynamicContainerObserver?.disconnect(),J.containerVisibleObserver?.disconnect(),J.paragraphVisibleObserver?.disconnect(),J.titleDynamicObserver?.disconnect(),p3(J.ctx),Um(),jm(),e&&xl.call(J,"original"),Object.values(J.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),J=null)}function Wb(e,t){e.interruptEffectDOM=!1;let n;return function(a){let r=a.message,u=!1;return r?.indexOf("Minified React error")>=0&&(u=!0),u&&(clearTimeout(n),ba(),n=setTimeout(()=>{Ti(t)},e.urlChangeDelay||2e3)),!0}}function $b(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(mi(e,a.target),n.unobserve(a.target))})})}function qb(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let r=a.target;(r.paragraphs||[]).forEach(o=>{pl(e,o)}),n.unobserve(r)}})})}var y3;function Kb(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(y3),e.translateState=="original"?!1:(ba(e.urlChangeDelay>20),y3=setTimeout(()=>{let r=e.ctx;Ti(r)},e.urlChangeDelay),!0)):!1}function Vb(e){return new MutationObserver(t=>{if(!Kb(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!qt.isSkipMarkEle(n.target)&&!qt.isMarked(n.target,e.id))continue;let r=(n.target?.paragraphs||[]).reduce((u,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...u,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&$n(n.target,e.ctx.rule.mutationObserverContainerSelectors)){qt.clearMark(n.target),n.target.paragraphs=void 0,mi(e,n.target);return}n.addedNodes.forEach((u,o)=>{u.nodeType===Node.ELEMENT_NODE&&(r.includes(u)||Sr(u,e))})}})}function Gb(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let r=a.target,u=globalThis.getComputedStyle(r);al(u)||(n.unobserve(a.target),Sr(r,e))}})}function xl(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{ml(t,e)}),e=="original"&&document.querySelectorAll(`.${rn}`).forEach(t=>t.remove())}function bi(e,t){if(e instanceof HTMLIFrameElement){ua(e.contentDocument,t);return}ua(e,t)}async function E3(e){let t=Ct(),n="auto";if(le()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=R0(e.mainFrame):a=ir(e.mainFrame).slice(0,1e3),n=await lt({text:a})}else if(t)n=await lt({text:ir(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=R0(e.mainFrame),n=await lt({text:a})}else n=await C3();return n==="auto"&&(n=await o3()),ti(n),n}async function x3(){if(!J)return;document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=J.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){J.paragraphQueue.push(n);let u=a.commonAncestorContainer.querySelector(`[${vo}='${n}']`);u&&u.remove()}}fl.call(J,J.ctx)}var v3={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},w3={...an,"zh-CN":{...v3["zh-CN"],...an["zh-CN"]},"zh-TW":{...v3["zh-TW"],...an["zh-TW"]}},Ar=w3;function ya(e,t,n){return Ia(w3,e,t,Ao,n)}var Ei=()=>Xt.filter(e=>e!=="auto"),kt=(e,t,n,a)=>{let r=wg[e]||e,u=kg[e],o=Sg[e],i={"zh-CN":u,"zh-TW":o,en:r};if(n)return i[e]?i[e]:r;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${r})`}else return r};function Dr(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{L.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:xo,payload:e},"*")});let n=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(n)}function Cl(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((u,o)=>(u[t[o]]=o,u),{}),r=Object.keys(a);for(let u of r){let o=u.replace(/MacCtrl/ig,"Ctrl");o&&Ne(o,i=>{i.preventDefault(),Dr({method:a[u]})})}}var St=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,r=Date.now();if(t.length=u?(t.push(r),0):(t.push(u),u-r)}};function Ta(e){return e!=null}function A3(e,t,n){return`${e.type}#${t}#${n}`}function D3(e,t,n,a,r){return{body:r,id:a,type:A3(e,t,n)}}function Jb(e,t,n,a){return{id:n,response:a,type:A3(e,"ask",t)}}function L3(e,t,n,a){if(Ta(a)){let r=a.type;if(Ta(r)&&Ta(a.body)){let[u,o,i]=r.split("#");return u===e.type&&o===t&&i===n}else return!1}else return!1}function Yb(e,t,n){if(Ta(n)){let a=n.type;if(Ta(a)&&Ta(n.response)){let[r,u,o]=a.split("#");return r===e.type&&u==="ask"&&o===t}else return!1}else return!1}function Xb(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function Zb(e,t,n,a){return new Promise(r=>{let u=o=>{let i=o.data;Yb(t,n,i)&&i.id===a&&(e.removeEventListener("message",u),r(i.response))};e.addEventListener("message",u)})}function Qb(e,t,n,a){let r=u=>{let o=u.data;L3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",r),[e,r]}function k3(e,t,n,a,r,u){let o=async i=>{let s=i.data;if(L3(n,"ask",a,s)){let l=await u(s.body);t=i.source,t.postMessage(Jb(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function ey(e,t,n,a,r){let u=Math.random().toString();return e.postMessage(D3(t,"tell",n,u,a),r)}async function S3(e,t,n,a,r,u,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let g=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),m=await Zb(e,n,a,i);clearTimeout(g),l(m)});return t.postMessage(D3(n,"ask",a,i,r),u),s}var Bn=class{constructor(t,n,a=window,r="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=r;this.listeners=[];k3(a,n,this.getSystemProtocol("ping"),"ping",r,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let r=0;r<=n;r++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",r=window){let u=n.contentWindow;if(Ta(u))return new Bn(t,u,r,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:r=window.parent}={}){return new Bn(t,r,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new Bn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await S3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(Qb(this.thisWindow,this.protocol,t,n))}tell(t,n){ey(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(k3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return S3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){Xb(this.listeners)}};var ty;function xi(){return ty}var ny=new St({limit:7,interval:1250}),ay={tencent:new St({limit:3,interval:1350}),baidu:new St({limit:1,interval:1550}),strict:new St({limit:1,interval:1050}),d:new St({limit:1,interval:1050}),youdao:new St({limit:5,interval:1050}),you:new St({limit:5,interval:1050}),cai:new St({limit:5,interval:1050}),google:new St({limit:10,interval:1050}),deepl:new St({limit:10,interval:1050}),transmart:new St({limit:30,interval:1050}),papago:new St({limit:3,interval:1150}),openai:new St({limit:10,interval:1300}),chatgpt:new St({limit:1,interval:1350})};function Lu(e){return ay[e]||ny}async function P3(e){if(Ct()){let n=xi();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return L.error("can not comunicate with root frame, use strict limiter",a),Lu("strict").getDelay()}else return Lu("strict").getDelay()}else return Lu(e).getDelay()}async function M3(e,t){if(!Ct()){let a=Lu(e);t&&a.setOptions(t)}}async function F3(e){let t=e.key;return{value:Lu(t).getDelay()}}var Ci=new Map;async function vl(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=ca(e.body)),Ci.has(t))return Ci.get(t);let n=ue(e);Ci.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Ci.delete(t)},3e4)}}async function _3(e){return vl(e)}async function Pu(e){if(Ct()){let n=xi();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw L.error("can not comunicate with root frame, use strict limiter",a),a}else return vl(e)}else return vl(e)}var Pr={},ry={root:"",lang:"en",fallbackLang:"en"};function wl(e,t){let n=Object.assign({},ry,e);Pr=t||Pr;let[a,r]=H(n.lang),[u,o]=H(Pr),[i,s]=H(!1),l=g=>{if(u.hasOwnProperty(g))return;s(!1);let m=i3(n.root||"",g);n.getUrl&&(m=n.getUrl(n.root||"",g),fetch(m).then(p=>p.json()).then(p=>{Pr[g]=p,o({...Pr}),s(!0)}).catch(p=>{o({...Pr}),s(!0)}))};return ke(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:r,t:(g,m)=>{if(!u.hasOwnProperty(a))return g;let p=Au(u,a,g);return p===g&&a!==n.fallbackLang&&(p=Au(u,n.fallbackLang,g)),sl(p,m)},isReady:i}}var Sl=Ju(null),kl={root:"assets",lang:"en",fallbackLang:"en"},vi=e=>{let{t,setLang:n,lang:a,isReady:r}=wl({root:e.root||kl.root,lang:e.lang||kl.lang,fallbackLang:e.fallbackLang||kl.fallbackLang,getUrl:e.getUrl},e.translations);return d(Sl.Provider,{value:{t,setLang:n,lang:a,isReady:r},children:e.children})};function B3(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let r={},u=Object.keys(n);for(let l of u){let g=n[l].matches;for(let m of g)r[m]||(r[m]=[]),r[m].push(l)}let o=r[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(g=>g!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Mu(e,t=2e3){return n=>{let a,r=0;return u=>{++r==e&&(n(u),r=0),clearTimeout(a),a=setTimeout(()=>r=0,t)}}}function R3(e){let t;try{t=new URL(e)}catch{return!1}let n=I3(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(uy(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function uy(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function O3(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function N3(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function qn(e){let{items:t,maxWidth:n}=e;return n=n||128,d("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let r=a.target.value,u=t.find(o=>o.value===r);u&&u.onSelected(u)},children:t.map((a,r)=>d("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+r))})}function U3(e){let{items:t,maxWidth:n,isInput:a,value:r}=e;return n=n||128,a?d("input",{value:r,onChange:u=>{e.onChange(u.target.value)}}):d("select",{autoComplete:"off",style:{maxWidth:`${n}px`},value:t.find(u=>u.selected)?.value,onChange:u=>{let o=u.target.value,i=t.find(s=>s.value===o);i&&i.onSelected(i)},children:t.map((u,o)=>d("option",{value:u.value,selected:u.selected,children:u.label},"selectlink"+o))})}var wi="DROP_DOWN_DEFAULT_VALUE";function Al(e){let{showArrow:t,onSelected:n,className:a,menus:r,maxWidth:u}=e;a=a||"",t=t??!0,u=u||70;let o=wn(null);return d("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:wi,style:{maxWidth:`${u}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==wi){o.current.value=wi,o.current?.dispatchEvent(new Event("change"));let l=r.find(c=>c.value===s);l&&n(l)}},children:[{value:wi,label:e.label}].concat(r).map((i,s)=>d("option",{value:i.value,children:i.label},"option-"+s))})}function he(){return Qu(Sl)}function Dl(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:r}=he(),u=t.name;return t.label&&(u=t.label),t.labelKey&&(u=r(t.labelKey)),t.type==="select"?d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[u,"\uFF1A"]}),d(qn,{items:t.options.map(o=>({label:`${o.label?r(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Ea(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var oy=({date:e})=>{let{t}=he(),[n,a]=H(!1);return ke(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},iy=({minVersion:e})=>{let{t}=he();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},sy=()=>{let{t:e}=he();return d("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},ly=({message:e,handleSyncing:t,date:n})=>{let{t:a}=he();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Ll(e){let{isShowError:t,request:n}=e,[a,r]=H(null),{t:u}=he(),[o,i]=H(null),[s,l]=H(null),[c,g]=H(""),[m,p]=H(!1),[f,S]=H(!1),[v,h]=H(!1),[k,F]=H(null),[M,A]=H(null),P=da(),w=async()=>{g("");let x=o;if(o===null)try{let b=await n({url:aa});b?(i(b),x=b,p(!0)):(g(u("unknownError")),l(null))}catch(b){l(null),g(b.message);return}x!==null?(e.setStorageBuildinConfig(x),l(!1),r(x.buildinConfigUpdatedAt)):(g(u("canNotFetchRemoteRule")),l(null))};return ke(()=>{ze().then(x=>{let b=x.buildinConfigUpdatedAt;F(x);let E=new Date(b);if(r(b),P==="0.0.0"){h(!0);return}n({url:aa}).then(I=>{let D=I,W=D.minVersion,_=P;i(D);let B=D.latestVersion;if(B&&(Ea(_,B)?A(!0):A(!1)),Ea(_,W)){let G=D.buildinConfigUpdatedAt;new Date(G)>E?(l(!0),w()):l(!1)}else S(!0),l(null)}).catch(I=>{l(null),g(I.message)})})},[]),ke(()=>{ze().then(x=>{F(x)})},[a]),k?d("div",{class:"text-sm mt-2",style:{maxWidth:218},children:v?d(sy,{}):c?t===!1?null:d(ly,{handleSyncing:w,message:c,date:a||""}):f?t===!1?null:d(iy,{minVersion:o.minVersion}):s===null||s===!0?null:m?d(oy,{date:a}):null}):null}function Pl(e){let t=da(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:r,onTranslateLocalHtmlFile:u,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:g,config:m,openAboutPage:p,onTranslateTheWholePage:f,onToggleEnabled:S,openOptionsPage:v,ontranslateToThePageEndImmediately:h,onSetPageLanguage:k,onToggleTranslate:F,onTranslateLocalPdfFile:M,onTranslatePdf:A,onRestorePage:P,ctx:w,currentUrl:x,currentLang:b,onClose:E,onTranslatePage:I,onSetLocalConfig:D,onMouseTriggerChanged:W,errorMsg:_,disabledButton:B,noPermissionPDF:G}=e,re=a,[ye,V]=H(""),[ge,de]=H(_),{t:C,lang:z}=he(),Z=60;z.startsWith("zh")||(Z=65);let pe=null,se=null,R=null,O=null,ae=null,ee=null,ne=null,te=null,oe=null,Y=null,ce=null,Le=null,Ie=!0;if(m){Dt()&&m&&(Ie=m.generalRule.showSponsorOnSafari);let{translationService:U,translationServices:me,translationUrlPattern:_e}=m;hn[U]&&(te=$0(U,w)),me&&me[U]?Le=me[U]||{}:Le={};try{oe=new URL(x||"")}catch{}if(x&&R3(x)){Y=O3(oe.hostname),ce=N3(x);let{matches:Se,excludeMatches:De}=_e;se=Se.includes(Y),pe=Se.includes(oe.hostname),O=De.includes(Y),R=De.includes(oe.hostname),ee=Se.includes(ce),ne=De.includes(ce)}}if(m&&b&&b!=="auto"){let{translationLanguagePattern:U}=m,{matches:me}=U;me.includes(b)?ae=!0:ae=!1}let fe=U=>{U.preventDefault(),v()},Xe=U=>{re(me=>(me.alpha?V("Success disable alpha!"):V("Success enable alpha!"),{...me,alpha:!me.alpha}))},pt=U=>{re(me=>({...me,translationMode:U})),o(U)},We=()=>{re(U=>({...U,translationArea:"body"})),f()},$e=()=>{re(U=>({...U,translationArea:"main"})),n()},qe=(U,me,_e,Se)=>{if(U==="default"){re(Et=>{let Pe={...Et.translationUrlPattern};return{...Et,translationUrlPattern:{...Et.translationUrlPattern,matches:Ye([oe?.hostname,Y,x],Pe.matches),excludeMatches:Ye([oe?.hostname,Y,x],Pe.excludeMatches)}}});return}let De=U,Ge=De==="matches"?"excludeMatches":"matches";oe&&re(Et=>{let Pe={...Et.translationUrlPattern};return Pe[De]=un(me,Pe[De]),Se.length>0&&(Pe[De]=Ye(Se,Pe[De])),Pe[Ge]=Ye(_e,Pe[Ge]),{...Et,translationUrlPattern:{...Et.translationUrlPattern,...Pe}}}),De==="matches"&&l==="Original"?setTimeout(()=>{I(),E()},100):De==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{P(),E()},100)},Ht=U=>{if(!U){re(Se=>{let De={...Se.translationLanguagePattern};return{...Se,translationLanguagePattern:{...Se.translationLanguagePattern,matches:Ye(b,De.matches),excludeMatches:Ye(b,De.excludeMatches)}}});return}let me=U,_e=me==="matches"?"excludeMatches":"matches";b&&re(Se=>{let De={...Se.translationLanguagePattern};return De[me]=un(b,De[me]),De[_e]=Ye(b,De[_e]),{...Se,translationLanguagePattern:{...Se.translationLanguagePattern,...De}}}),me==="matches"&&l==="Original"&&setTimeout(()=>{I(),E()},100)},Jn=oe?.pathname.toLowerCase().endsWith(".pdf"),Ze=C("translate");l==="Translated"||l==="Error"?Ze=C("show-original"):l==="Original"?Jn?Fa()&&oe.protocol==="file:"||G?Ze=C("translate-firefox-local-pdf"):le()?Ze=C("noSupportTranslate-pdf"):Ze=C("translate-pdf"):Ze=C("translate"):Ze=C(l);let vn=C("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(m.shortcuts.toggleTranslatePage&&(mr()&&w.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ze+=` (${C(`fingers.${w.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ze+=` (${m.shortcuts.toggleTranslatePage})`),m.shortcuts.toggleTranslateToThePageEndImmediately&&(vn+=` (${m.shortcuts.toggleTranslateToThePageEndImmediately})`));let dn=[];w&&(dn=$o(w));let ft=U=>{U.preventDefault(),E()},Vt=Mr(w.config.translationService,w.config.targetLanguage);return d("div",{class:"p-3",children:[d("div",{class:"text-sm",children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[C("popupSourceLanguage"),"\uFF1A"]}),d(qn,{items:Xt.map(U=>({label:kt(U,m.interfaceLanguage),value:U,selected:U===w.sourceLanguage,onSelected:me=>{k(me.value)}}))})]}),m&&m.targetLanguage&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[C("popupTarget"),"\uFF1A"]}),d(qn,{items:Vt.filter(U=>U!=="auto").map(U=>({label:kt(U,m.interfaceLanguage),value:U,selected:U===m.targetLanguage,onSelected:me=>{re(_e=>({..._e,targetLanguage:me.value}))}}))})]}),te&&dn.length>0&&d(ut,{children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[C("popupService"),"\uFF1A"]}),d(qn,{items:dn.map(U=>({label:`${C("translationServices."+U.id)}${U.ok?"":" "+C("needAction")}`,value:U.id,selected:U.selected,onSelected:me=>{let _e=dn.find(Se=>Se.id===me.value);_e.ok?(re(Se=>({...Se,translationService:_e.id})),_e.props.length===0?setTimeout(()=>{I()},1):setTimeout(()=>{P()},1)):(re(Se=>({...Se,translationService:_e.id})),setTimeout(()=>{v()},100))}}))})]}),Le&&te.props.length>0&&te.props.map((U,me)=>d("div",{class:"pl-4 text-sm",children:d(Dl,{field:U,value:Le[U.name],onChange:_e=>{re(Se=>{let De=Se.translationServices||{},Ge=De[te.id]||{};return setTimeout(()=>{P()},1),{...Se,translationServices:{...De,[te.id]:{...Ge,[U.name]:_e}}}})}},"field-"+me)},"service"+me))]}),oe&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:C("forThisSite")}),d(qn,{items:[{label:C("default"),value:"default",selected:pe===!1&&R===!1&&!se&&!O&&!ee&&!ne,onSelected:()=>{qe("default",oe.hostname,[],[]);let U=oe.hostname,me=w.localConfig.tempTranslationUrlMatches||[],_e=me.filter(De=>De.match!==U),Se=!1;_e.length!==me.length&&(Se=!0),Se&&D({...w.localConfig,tempTranslationUrlMatches:[..._e]})}},ce&&{label:C("alwaysTranslateSomeSite",{hostname:C("currentUrl")}),value:"matchesUrl",selected:ee,onSelected:()=>{qe("matches",ce,[ce],[])}},{label:C("alwaysTranslateSomeSite",{hostname:oe.hostname}),value:"matches",selected:pe,onSelected:U=>{qe(U.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:C("alwaysTranslateSomeSite",{hostname:Y}),value:"matchesWild",selected:se,onSelected:()=>{qe("matches",Y,[ce,oe.hostname,Y],[oe.hostname])}},ce&&{label:C("neverTranslateSomeSite",{hostname:C("currentUrl")}),value:"excludeMatchesUrl",selected:ne,onSelected:()=>{qe("excludeMatches",ce,[ce],[])}},{label:C("neverTranslateSomeSite",{hostname:oe.hostname}),value:"excludeMatches",selected:R,onSelected:U=>{qe(U.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:C("neverTranslateSomeSite",{hostname:Y}),value:"excludeMatchesWild",selected:O,onSelected:()=>{qe("excludeMatches",Y,[oe.hostname,ce,Y],[oe.hostname])}}].filter(Boolean)})]}),W&&_a()&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[C("mouse-translate"),"\uFF1A"]}),d(qn,{items:Lo.filter(U=>!(Lo.includes(m.generalRule.mouseHoverHoldKey)&&U==="OtherCustom")).map(U=>{let me=C("mouseHoldKey",{key:U}),_e=Lo.includes(m.generalRule.mouseHoverHoldKey),Se=U===m.generalRule.mouseHoverHoldKey;return U==="Auto"?me=C("mouseHoldKeyAuto"):U==="Off"?me=C("mouseHoldKeyOff"):U==="OtherCustom"?me=_e?C("mouseHoldKeyOther"):C("mouseHoldKeyCustomKey",{key:m.generalRule.mouseHoverHoldKey}):U==="Other"&&(me=C("mouseHoldKeyOther")),_e||U==="OtherCustom"&&(Se=!0),{label:me,value:U,selected:Se,onSelected:De=>{De.value==="Other"?v("#interface"):W(De.value)}}})})]})]}),d("div",{class:"",children:d("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Jn?A&&A():F()},"aria-busy":l==="Translating",disabled:B||l==="Translating",children:Ze})}),d("div",{class:"text-sm",children:ye}),d("div",{class:"text-sm",children:ge}),d("div",{class:"flex justify-between flex-wrap",children:[b&&b!=="auto"?d("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[d("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!ae,onChange:U=>{let me=U.target.checked;Ht(me?"matches":void 0)}}),C("alwaysTranslateSomeLanguage",{language:kt(b,m.interfaceLanguage,!1,!0)})]}):d("span",{}),d("div",{class:"flex flex-end flex-grow",children:d(Al,{label:C("more"),showArrow:!0,maxWidth:Z,onSelected:U=>{U.value==="changeToOnlyTranslationMode"?pt("translation"):U.value==="changeToDualTranslationMode"?pt("dual"):U.value==="translateTheWholePage"?f():U.value==="translateToThePageEndImmediately"?h():U.value==="translateTheMainPage"?n():U.value==="showTranslationOnly"||(U.value==="translateLocalPdfFile"?M&&M():U.value==="translateLocalHtmlFile"?u&&u():U.value==="translateLocalSubtitleFile"?i&&i():U.value==="donate"?(globalThis.open(m.donateUrl),E()):U.value==="feedback"?(globalThis.open(m.feedbackUrl),E()):U.value==="options"?(v(),E()):U.value==="changeToTranslateTheWholePage"?We():U.value==="changeToTranslateTheMainPage"?$e():U.value==="about"?p():U.value==="toggleEnabled"?S():U.value==="openEbookViewer"?g():U.value==="openEbookBuilder"&&c())},menus:[m.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+C("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},m.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+C("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},m.translationArea==="main"&&{label:"\u{1F480} "+C("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},m.translationArea==="body"&&{label:"\u{1F4D6} "+C("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+vn,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+C("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+C("browser.openEbookBuilder"),value:"openEbookBuilder"},!le()&&{label:"\u{1F4C1} "+C("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!le()&&{label:"\u{1F310} "+C("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+C("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(m.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(m.enabled?C("clickToDisableExtension"):C("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+C(Ie?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),d("footer",{children:[d(Ll,{isShowError:!1,request:r,setStorageBuildinConfig:s}),d("div",{class:"mt-3 text-sm flex justify-between",children:[d("a",{href:"#",class:"secondary",onClick:fe,children:C("options")}),le()&&d("a",{href:"#",class:"secondary",onClick:ft,children:C("close")}),d("span",{class:"immersive-translate-no-select muted",onClick:Mu(7)(Xe),children:["V",t,m.enabled?null:d("a",{href:"#",onClick:S,children:[" ","(",C("hasBeenDisabled"),")"]})]})]})]})]})}async function j3(e){try{let t=new Date;L.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await j.storage.local.set({[yg]:t.toISOString()}),await cy(),le()||await z3()}catch(t){L.error("run cron task failed",t)}}async function cy(){try{let e=await Tn(),t=await ue({url:aa}),n=e.buildinConfigUpdatedAt,a=new Date(n),r=t.buildinConfigUpdatedAt,u=new Date(r),o=t.minVersion,i=j.runtime.getManifest().version;Ea(i,o)?u>a?(await j.storage.local.set({buildinConfig:t}),L.info(`sync remote rules success, latest: ${new Date(r).toLocaleString()}`)):L.debug(`no need to sync rules, latest: ${a}`):L.info(`local version is too old, please update to ${o} or later`)}catch(e){L.error("sync rules error: ",e)}}function Fl(e){let{onClose:t}=e,[n,a]=H("Original"),[r,u,o,i]=bt(()=>{setTimeout(()=>{F("updateGlobalContext",!1)()},250)}),[s,l]=H(null),[c,g]=H(globalThis.location.href),[m,p]=H("auto"),[f,S]=H(null),v=B=>{a(B.detail)},h=B=>{p(B);let G=B3(c,B,s.sourceLanguageUrlPattern);u(re=>({...re,sourceLanguageUrlPattern:G})),sn(B)},k=()=>{g(globalThis.location.href)};ke(()=>(document.addEventListener(Co,v,!1),Tn().then(B=>{l(B);let G=Ln();p(G);let re=Ke();a(re),j3(B.interval)}),document.addEventListener("urlChange",k),()=>{document.removeEventListener("pageTranslatedStatus",v),document.removeEventListener("urlChange",k)}),[]),ke(()=>{Tn().then(B=>{l(B)})},[r]),ke(()=>{c&&s&&wt({url:c,config:s}).then(B=>{S(B)})},[c,s]);let F=(B,G,re={})=>()=>{Dr({method:B,data:re||{}}),G&&t()},M=()=>{t()},A=()=>{u(B=>({...B,enabled:!B.enabled})),setTimeout(()=>{M()},50)},P=()=>{Ml(),setTimeout(()=>{M()},50)},w=()=>{Ml(),setTimeout(()=>{M()},50)},x=(B="")=>{Si(!0,B),setTimeout(()=>{t()},50)},b=()=>{Ai(),setTimeout(()=>{t()},50)},E=()=>{Di(),setTimeout(()=>{t()},50)},I=()=>{W3(),setTimeout(()=>{t()},50)},D=()=>{Li(),setTimeout(()=>{t()},50)},W=()=>{$3(),setTimeout(()=>{t()},50)},_=B=>{u(G=>({...G,generalRule:{...G.generalRule,mouseHoverHoldKey:B}}))};return!s||!f?null:d(Pl,{openEbookViewerPage:E,openEbookBuilderPage:D,onSwitchTranslationMode:B=>{F("switchTranslationMode",!0,{mode:B})()},onTranslateLocalHtmlFile:I,onTranslateLocalSubtitleFile:W,request:ue,onClose:M,onToggleEnabled:A,onTranslateTheWholePage:F("translateTheWholePage",!0),openOptionsPage:x,onToggleTranslate:F("toggleTranslatePage",!0),onTranslateTheMainPage:F("translateTheMainPage",!0),ontranslateToThePageEndImmediately:F("translateToThePageEndImmediately",!0),onTranslatePage:F("translatePage",!0),onRestorePage:F("restorePage",!1),onTranslatePdf:P,openAboutPage:b,onTranslateLocalPdfFile:w,onSetPageLanguage:h,onUserConfigChange:u,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:m,onSetLocalConfig:ki,onSetBuildinConfig:H3,onMouseTriggerChanged:_})}function dy(e,t){for(let n of t){if(le()&&!Fa()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var _l={position:"right",right:0,top:335},Ut={..._l},Fi=!1,Oa=null,Rn=null,_i=null,Bl=null,Fr=null,Rl=null,q3=6,Pi,Mi,V3=null,G3=null;async function J3(){let e=tt();Rl=await Z3(),Ut=Rl.pagePopupConfig||Ut;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Bl=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` -`);dy(n,[a]);let r=document.createElement("div");r.innerHTML=Oe.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(r),Oa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");Rn=o,_i=n.querySelector("#mount"),Oa.setAttribute("style",Il(Ut)),jl(),o.addEventListener("mousedown",Y3),o.addEventListener("touchstart",py),globalThis.addEventListener("resize",s=>{Oa.setAttribute("style",Il(Ut))})}function gy(){ka(null,_i),_i.style.display="none",Rn.style.display="block",Fr=setTimeout(()=>{jl(!0)},2e3)}function K3(e){let t=e.querySelector("#mount"),n=()=>{gy()},a=r=>{r&&r.target&&r.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let r=await Tn();ka(d(vi,{lang:r.interfaceLanguage,fallbackLang:"zh-CN",translations:Ar,children:d("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:d("div",{class:"immersive-translate-popup-wrapper",style:my(),children:d(Fl,{onClose:n})})})}),t)})().then(()=>{Rn.style.display="none",_i.style.display="block"})}function my(){let e=Ol(),t=e.height,{position:n,top:a,left:r}=Ut,u={position:"fixed"},o=300,i=300,s=100;return Mg()&&(n=_l.position,a=_l.top),n==="right"||n==="left"?(u.top=a-s,u.top+o>=t?(u.bottom=30,delete u.top):u.top<=10&&(u.top=10),n==="right"?u.right=0:n==="left"&&(u.left=0)):(n==="top"||n==="bottom")&&(u.left=r-s,u.left+i>=e.width?(u.right=0,delete u.left):u.left<=10&&(u.left=0),n==="top"?u.top=0:n==="bottom"&&(u.bottom=0)),u}function Ol(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function Y3(e){G3=Oa.getAttribute("style"),Pi=e.pageX,Mi=e.pageY,Fr&&clearTimeout(Fr),Fi=!1,Rn.style.opacity="1",Rn.style.transform="none",V3=Rn.getAttribute("style"),globalThis.addEventListener("mousemove",Nl),globalThis.addEventListener("mouseup",Ul),globalThis.addEventListener("touchmove",X3),globalThis.addEventListener("touchend",Bi),globalThis.addEventListener("touchcancel",Bi)}function py(e){e.preventDefault&&e.preventDefault(),Y3(e.changedTouches[0])}function X3(e){Nl(e.changedTouches[0])}function Bi(e){e.preventDefault&&e.preventDefault(),Ul(e.changedTouches[0])}function Nl(e){e.preventDefault&&e.preventDefault(),Fi=!0,Oa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function Ul(e){e.preventDefault&&e.preventDefault(),hy(),Fr&&clearTimeout(Fr),Pi=Pi||0,Mi=Mi||0;let t=Math.abs(e.pageX-Pi),n=Math.abs(e.pageY-Mi);t{jl(!0)},2e3)}function jl(e=!1){Rn.style.opacity="0.4";let t="";Ut.position==="left"?t="translateX(-40%)":Ut.position==="right"?t="translateX(40%)":Ut.position==="top"?t="translateY(-40%)":Ut.position==="bottom"&&(t="translateY(40%)"),Rn.style.transform=t,e&&(Rn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function hy(){globalThis.removeEventListener("mousemove",Nl),globalThis.removeEventListener("mouseup",Ul),globalThis.removeEventListener("touchmove",X3),globalThis.removeEventListener("touchend",Bi),globalThis.removeEventListener("touchcancel",Bi)}function Il(e){let t=by(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function by(e){let{position:t,...n}=e,a=Ol(),r={};return t==="left"?(r.left=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="right"?(r.right=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="top"?(r.top=0,n.left>a.width?r.left=a.width-100:r.left=n.left):t==="bottom"&&(r.bottom=0,n.left>a.width?r.left=a.width-100:r.left=n.left),r}var Q3=!1;async function ep(){Q3||(Q3=!0,J3().catch(e=>{L.error("init popup error",e)}))}var tp=!1,rp=[()=>{Ne.unbind()}],Hl=[...rp],yy=At(async()=>{await Si()},50),Ty=At(async()=>{await Ai()},50),Ey=At(async()=>{await Li()},50),xy=At(async()=>{await Di()},50),up=At(e=>{Dr({method:e})},50),Cy=At(()=>{Ri();let e=new CustomEvent(na,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),vy=At(()=>{Ni();let e=new CustomEvent(na,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),wy=At(()=>{Oi();let e=new CustomEvent(na,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function ky(e,t){let n=e.document;if(tp)return;if(tp=!0,le()||lp(),n.addEventListener("securitypolicyviolation",Ry),n.addEventListener("immersiveTranslateEbookLoaded",By),n.addEventListener(ig,_y),n.addEventListener("click",r=>{Ly(r,t)}),le()&&(globalThis.top!=globalThis.self?e.addEventListener("message",Ay,!1):n.addEventListener(na,Sy)),globalThis.top===globalThis.self){let r=Bn.rootIframe(P0);r.handleAsk("getRateLimitDelay",F3),r.handleAsk("throttleRequest",_3)}}function op(e,t){Iy(),ky(t,e);let n=t.document,a=Dy.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Hl.push(()=>{n.removeEventListener("touchstart",a)}),le()&&globalThis.top===globalThis.self&&(Cl(e.config),Oy(e.config)),Dt()&&Cl(e.config)}function Sy(e){ep()}function Ay(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===xo&&Lr(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function Dy(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?Cy():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?wy():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&vy()}function Ly(e,t){let n=e.target;if(!n||!n.getAttribute){zl(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&nt(a,[{name:a}],{...t,sourceLanguage:"none"});let r=n.getAttribute(`data-${X}-action`);if(r)if(r==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Ii(),zl(n,!0);return}else if(r=="toast-error"){let u=n.getAttribute(`data-${X}-tooltip-text`);ap(My.bind(null,t,u||""))}else r=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),ap(Py.bind(null,t)));zl(n)}async function np(e=!1){let t=document.querySelector(`.${X}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await dp();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await cp(n)}function ap(e){let t=`${X}-modal`,n=`${X}-modal-title`,a=`${X}-modal-body`,r=`${X}-modal-footer`,u=document.querySelector(`.${t}`);if(u){let o=u.querySelector(`.${n}`),i=u.querySelector(`.${r}`),s=u.querySelector(`.${a}`);e(u,o,s,i)}else{u=document.createElement("div"),u.className=t+" notranslate",u.id=t;let o=document.createElement("div");o.className=X+"-modal-content notranslate",u.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=X+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=r,o.appendChild(c),document.body.appendChild(u),i.onclick=function(){u.style.display="none"},window.onclick=function(g){g.target==u&&(u.style.display="none")},e(u,s,l,c)}setTimeout(()=>{Fy()},100)}function Py(e,t,n,a,r){let u=ip.bind(null,e);n.innerHTML=`
${Pg} ${u("disableConfirm")}
`,a.innerHTML="";let o=document.createElement("p");o.innerHTML=`${u("searchEnhancementNotes")}`,a.appendChild(o);let i=[{id:"enable-search-enhancement",value:"enable",text:u("enableSearchEnhancement")},{id:"disable-once",value:"once",text:u("disableOnce")},{id:"disable-global",value:"global",text:u("disableGlobal")}];for(let m=0;m${u("option")}`})),a.appendChild(s);let l=a.querySelector(`.${X}-open-enhancement`);l&&(l.onclick=function(){gp(!0)});let c=document.createElement("button");c.innerText=u("closeModal"),c.className=`${X}-btn ${X}-cancel-btn`;let g=document.createElement("button");g.className=`${X}-btn`,g.innerText=u("saveSettings"),r.innerHTML="",r.appendChild(c),r.appendChild(g),c.onclick=function(){t.style.display="none"},g.onclick=function(){let m=a.getElementsByTagName("input"),p="";for(let f=0;f{sp()},10)}function Ry(e){ve.HAS_CSP_ERROR="1"}function Iy(){Hl.forEach(e=>{e()}),Hl=rp}function Oy(e){if(le()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Xo.commands,r=[...Object.keys(t).filter(u=>u==="toggleTranslatePage").map(u=>{let o=t[u].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=ya(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:u,title:i}}),{id:gu,title:ya("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:mu,title:ya("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:du,title:ya("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:w0,title:ya("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let u of r)GM.registerMenuCommand(u.title,()=>{u.id===du?yy():u.id===w0?Ty():u.id===mu?Ey():u.id===gu?xy():up(u.id)},u.key)}}function Ny(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{L.error("send content message request failed",e,n)});let t=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(t)}function pp(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let r=a[a.length-1];if(!r)return{};let u=n-r.right,o=t.find(i=>Ve(i.left,u)&&Ve(i.width,r.width));return{prevP:r,curP:o}}function Wl(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function fp(e){return e?e==e[0].repeat(e.length):!0}function Ve(e,t,n=5){return Math.abs(e-t)<=n}var $l=[",","\\.","\uFF0C","\u3002"];function hp(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],r=t[0];return Ve(a.left,r.left,7)&&Ve(a.nextTop,r.top,10)&&Ui(a,r)}function bp({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function xp(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Cp({prevLineP:e,prevP:t},n){return Ve(e.left,n.left,1)&&Ve(e.right,t.right,1)&&t.mergedTimes>=1}function ql(e,t){let{prevLineP:n}=e;return xp(e,t)&&(Ve(n.bottom,t.bottom)||Ve(n.nextTop,t.top)&&Ve(n.left,t.left))}function vp(e,t){let{prevLineP:n,prevP:a,scale:r}=e;return xp(e,t)&&n.width0&&a/r<.1&&n.left!Wl(u.str)).filter(u=>u.translateStatus!="success"&&u.translateStatus!="pending").map(u=>(u.translateStatus="pending",u));if(n.length<=0)return;let a=await lt({text:n.map(u=>u.str).join(` -`).slice(0,1e3)});ti(a);let r=n.map((u,o)=>({text:u.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=n[s];u?(l.translatedStr=u.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),jy(l)})}var Vl={};async function Uy(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Vl).filter(n=>!!n);await ji(Dp,t)}function jy(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Vl[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",Uy)):e.translateStatus=="success"&&(Vl[e.id]=void 0,t.innerHTML=Oe.sanitize(e.translatedStr)))}function Lp(e,t){let n=[],a=Hy(e,t);return Wy(e,a).forEach(u=>{if(!(u.length<=0)){if(u.length==1){Ap(e,n,u[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),u.forEach(o=>{Ap(e,n,o,!1)}),n.push("
")}}),` +`;continue}else if(S.length>t){let h=[];$0(S,t,h);for(let k=0;k0&&f{let i=e.lastIndexOf(o,t);return i>u?i:u},-1);if(r===-1){let u=e.slice(0,t);if(u&&!u.trim())return;n.push({text:u,prefix:"",suffix:""}),e.length>t&&$0(e.slice(t),t,n)}else{let u=e.slice(0,r+1);if(u&&u.trim()==="")return;u.startsWith(" ")?n.push({text:u.slice(1),prefix:" ",suffix:""}):n.push({text:u,prefix:"",suffix:""}),r+10){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]&&!l.default){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,optionalProps:i,explicitProps:o}}var $o=e=>{let{config:t}=e,n=t.alpha,a=t.beta,r=t.canary,u=t.debug;return Object.keys(hn).filter(i=>{let s=hn[i];if(i.startsWith("mock"))return u?!0:i===e.config.translationService;if(i===e.config.translationService)return!0;let l=!!s.canary,c=!!s.alpha,g=!!s.beta;return i===e.translationService||l&&r||c&&(n||r)||g&&(a||n||r)?!0:!c&&!g&&!l}).map(i=>q0(i,e))};function Zt(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16))}var Gw=hm(2),fm=hm(3);function hm(e){if(typeof e!="number"||Number.isNaN(e)||e<1||e===Number.POSITIVE_INFINITY)throw new Error("`"+e+"` is not a valid argument for `n-gram`");return t;function t(n){let a=[];if(n==null)return a;let r=typeof n.slice=="function"?n:String(n),u=r.length-e+1;if(u<1)return a;for(;u--;)a[u]=r.slice(u,u+e);return a}}var k1=/\s+/g,S1=/[\t\n\v\f\r ]+/g;function bm(e,t){t?typeof t=="string"&&(t={style:t}):t={};let n=t.preserveLineEndings?A1:D1;return String(e).replace(t.style==="html"?S1:k1,t.trim?L1(n):n)}function A1(e){let t=/\r?\n|\r/.exec(e);return t?t[0]:" "}function D1(){return" "}function L1(e){return t;function t(n,a,r){return a===0||a+n.length===r.length?"":e(n)}}var ym={}.hasOwnProperty;function P1(e){return e==null?"":bm(String(e).replace(/[\u0021-\u0040]+/g," ")).trim().toLowerCase()}function M1(e){return fm(" "+P1(e)+" ")}function F1(e){let t=M1(e),n={},a=-1;for(;++an&&(n=u,a=r)}return[a,n]}function U1(e,t){let n=e.match(t);return(n?n.length:0)/e.length||0}function j1(e,t,n,a){t=H1(t,n,a);let r=[],u;if(t)for(u in t)qo.call(t,u)&&r.push([u,z1(e,t[u])]);return r.length===0?V0():r.sort(W1)}function z1(e,t){let n=0,a=-1;for(;++at.traditionalCharacters?(t.detectedCharacters="simplified",t.detectionRate=t.simplifiedCharacters/t.traditionalCharacters|1):t.simplifiedCharacterso+i.length,0));let u=e.length-a;for(let o of Q1){let i=o[1],s=o[0],l=e.match(i),c=l?l.length:0;c>n&&(n=c,t=s)}return n*2.5/u>.5?t==="zh-CN"?Sm(e)?"zh-TW":"zh-CN":t:"auto"}var Dm=new Map([["afr","af"],["amh","am"],["arb","ar"],["azj","az"],["bel","be"],["bul","bg"],["ben","bn"],["bos","bs"],["cat","ca"],["ceb","ceb"],["ces","cs"],["dan","da"],["deu","de"],["ell","el"],["eng","en"],["epo","eo"],["spa","es"],["est","et"],["fas","fa"],["fin","fi"],["fra","fr"],["gax","ga"],["glg","gl"],["guj","gu"],["hau","ha"],["heb","he"],["hin","hi"],["hrv","hr"],["hun","hu"],["hye","hy"],["ind","id"],["ibo","ig"],["ita","it"],["jpn","ja"],["jav","jw"],["kat","ka"],["kaz","kk"],["khm","km"],["kan","kn"],["kor","ko"],["ckb","ku"],["lao","lo"],["lit","lt"],["lav","lv"],["min","mi"],["mkd","mk"],["mal","ml"],["mar","mr"],["mya","my"],["nep","ne"],["nld","nl"],["nob","no"],["nya","ny"],["pan","pa"],["pol","pl"],["pbu","ps"],["por","pt"],["ron","ro"],["rus","ru"],["sin","si"],["slk","sk"],["slv","sl"],["sna","sn"],["som","so"],["als","sq"],["srp","sr"],["sun","su"],["swe","sv"],["swh","sw"],["tam","ta"],["tel","te"],["tgk","tg"],["tha","th"],["toi","to"],["tur","tr"],["ukr","uk"],["urd","ur"],["uzn","uz"],["vie","vi"],["xho","xh"],["ydd","yi"],["yor","yo"],["cmn","zh-CN"],["zul","zu"]]);function Lm(e,t){if(!e)return"auto";!t&&t!==0&&(t=50);let n=Vo(e);if(n!=="auto")return n;let a={minLength:t,whitelist:[...Dm.keys()]},r=xm(e,a);if(r&&r.length>0){if(r.length>1&&r[0][0]!=="eng"&&r[1][0]==="eng"&&r[1][1]>.6)return"en";let[u]=r[0],o=Dm.get(u);if(o)return o}return"auto"}var gt=class extends Error{constructor(n,a,r){super(a);this.name=n,r&&(this.details=r)}};async function hr(e){let t;if(e&&e.retry&&e.retry>0)try{t=await u0(Pm.bind(null,e),{multiplier:2,maxAttempts:e.retry})}catch(n){throw n&&n.name==="RetryError"&&n.cause?n.cause:n}else t=await Pm(e);return t}async function Pm(e){e.body;let{url:t,responseType:n,...a}=e;n||(n="json"),a={mode:"cors",...a};let r=!0;e.fetchPolyfill&&(r=!1);let u=e.fetchPolyfill||fetch,o=12e4;if(e.timeout&&(o=e.timeout),r){let s=new AbortController,l=s.signal;setTimeout(()=>{s.abort()},o),a.signal=l}let i;try{i=await u(t,a)}catch(s){A.error("fetch error",s);let l=s.message||"";throw s.message="\u7F51\u7EDC\u95EE\u9898\uFF0C\u65E0\u6CD5\u8FDE\u63A5\u5230\u670D\u52A1\uFF0C\u8BF7\u68C0\u67E5\u4F60\u7684\u4EE3\u7406\u6216\u672C\u5730\u7F51\u7EDC\u8FDE\u63A5\u540E\u91CD\u8BD5\u3002 "+l,s}if(i.ok&&i.status>=200&&i.status<400){if(n==="json")return await i.json();if(n==="text")return await i.text();if(n==="raw"){let s=await i.text(),l=Object.fromEntries([...i.headers.entries()]),c=i.url;return c||(i.headers.get("X-Final-URL")?c=i.headers.get("X-Final-URL"):c=t),{body:s,headers:l,status:i.status,statusText:i.statusText,url:c}}else if(n==="stream"){let s="",l;if(i.body&&i.body instanceof ReadableStream)for await(let c of eb(i.body)){let g=new TextDecoder().decode(c);s+=g;let m;for(;(m=s.indexOf(` +`))>=0;){let p=s.slice(0,m).trim();if(s=s.slice(m+1),p.startsWith("event:")||p==="")continue;let f="";if(p.startsWith("data:")&&(f=p.slice(5).trim()),f==="[DONE]")break;let S;try{S=JSON.parse(f??"")}catch(v){A.debug("json error",v);continue}l=S}}return l}}else{let s;try{s=await i.text()}catch(g){A.error("parse response failed",g)}s&&A.error("fail response",s);let l="";s&&(l=s.slice(0,280));let c="\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF0C\u4EE3\u7801:"+i.status+": "+(i.statusText||"")+l;throw i.status===429?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A429\uFF0C\u8BF4\u660E\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`:i.status===403?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A403\uFF0C \u8BF4\u660E\u6682\u65F6\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u8BE5\u670D\u52A1\u3002 ${l}`:i.status===400?c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A400\uFF0C \u8BF4\u660E\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u76F8\u5E94\u914D\u7F6E\u3002 ${l}`:i.status===502&&(c=`\u670D\u52A1\u8FD4\u56DE\u9519\u8BEF\uFF1A502\uFF0C \u8BF4\u660E\u670D\u52A1\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002 ${l}`),new gt("fetchError",c,s)}}async function*eb(e){let t=e.getReader();try{for(;;){let{done:n,value:a}=await t.read();if(n)return;yield a}}finally{t.releaseLock()}}function la(e,t){var n=(e&65535)+(t&65535),a=(e>>16)+(t>>16)+(n>>16);return a<<16|n&65535}function tb(e,t){return e<>>32-t}function Jo(e,t,n,a,r,u){return la(tb(la(la(t,e),la(a,u)),r),n)}function Pt(e,t,n,a,r,u,o){return Jo(t&n|~t&a,e,t,r,u,o)}function Mt(e,t,n,a,r,u,o){return Jo(t&a|n&~a,e,t,r,u,o)}function Ft(e,t,n,a,r,u,o){return Jo(t^n^a,e,t,r,u,o)}function _t(e,t,n,a,r,u,o){return Jo(n^(t|~a),e,t,r,u,o)}function Go(e,t){e[t>>5]|=128<>>9<<4)+14]=t;var n,a,r,u,o,i=1732584193,s=-271733879,l=-1732584194,c=271733878;for(n=0;n>5]>>>t%32&255);return n}function G0(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t>5]|=(e.charCodeAt(t/8)&255)<16&&(a=Go(a,e.length*8)),n=0;n<16;n+=1)r[n]=a[n]^909522486,u[n]=a[n]^1549556828;return o=Go(r.concat(G0(t)),512+t.length*8),Mm(Go(u.concat(o),512+128))}function Fm(e){var t="0123456789abcdef",n="",a,r;for(r=0;r>>4&15)+t.charAt(a&15);return n}function J0(e){return unescape(encodeURIComponent(e))}function _m(e){return nb(J0(e))}function rb(e){return Fm(_m(e))}function Bm(e,t){return ab(J0(e),J0(t))}function ub(e,t){return Fm(Bm(e,t))}function ca(e,t,n){return t?n?Bm(t,e):ub(t,e):n?_m(e):rb(e)}var br=[];async function vu(e,t){return await new Promise((n,a)=>{let r=e,u=1,o=indexedDB.open(r,u);o.onsuccess=i=>{n(o.result)},o.onerror=i=>{a()},o.onupgradeneeded=i=>{let s=o.result,l=t||"cache";s.createObjectStore(l,{keyPath:"key"})}})}async function Y0(e){let t=`${X}-${e.service}@${e.from}->${e.to}`;return await ib(t,e)}async function X0(e){let t=ca(e.originalText),n=`${X}-${e.service}@${e.from}->${e.to}`;return await ob(n,t)}async function ob(e,t){let n=await vu(e);return await new Promise((a,r)=>{if(!n)return r();let u="cache",i=n.transaction([u],"readonly").objectStore(u).get(t);i.onsuccess=s=>{n.close();let l=i.result;a(l)},i.onerror=s=>{n.close(),r()}})}async function ib(e,t){let n=await vu(e);return(await Z0()).includes(e)||await sb(e),await new Promise(r=>{if(!n)return r(!1);let u="cache",i=n.transaction([u],"readwrite").objectStore(u).put(t);i.onsuccess=s=>{n.close(),r(!0)},i.onerror=s=>{n.close(),r(!1)}})}async function sb(e){let t="cache_list",n=await vu(X+"-cacheList",t),r=n.transaction([t],"readwrite").objectStore(t).put({key:e});r.onsuccess=u=>{n.close(),br.push(e)},r.onerror=u=>{n.close()}}async function Z0(){if(br&&br.length>0)return br;let e=await vu(X+"-cacheList","cache_list");return br=await new Promise(t=>{let n="cache_list",r=e.transaction([n],"readonly").objectStore(n).getAllKeys();r.onsuccess=u=>{e.close(),t(r.result)},r.onerror=u=>{e.close(),t([])}}),br}async function Q0(){try{let e=[];(await Z0()).forEach(a=>{e.push(lb(a))});let n=await Promise.all(e);return xu(n.reduce((a,r)=>a+r,0))}catch{return xu(0)}}async function lb(e){let t=await vu(e),a=[...t.objectStoreNames].reduce((o,i)=>{let s=cb(t,i);return o.push(s),o},[]),r=await Promise.all(a);return t.close(),r.reduce((o,i)=>o+i,0)}async function cb(e,t){return await new Promise((n,a)=>{if(e==null)return a();let r=0,u=e.transaction([t]).objectStore(t).openCursor();u.onsuccess=o=>{let i=u.result;if(i){let s=i.value,l=JSON.stringify(s);r+=l.length,i.continue()}else n(r)},u.onerror=o=>a("error in "+t+": "+o)})}async function Rm(){try{let t=(await Z0()).map(a=>db(a));return!!(await Promise.all(t)).every(a=>a)}catch{return!1}}async function db(e){return await new Promise(t=>{let n=indexedDB.deleteDatabase(e);n.onsuccess=()=>{t(!0)},n.onerror=a=>{t(!1)}})}var Im=xe+"StoreKey_";function Yo(e,t){let n=Im+e;return j.storage.local.get(n).then(a=>a[n]===void 0?t:a[n])}function Om(e,t){let n=Im+e;return j.storage.local.set({[n]:t})}var Nm=xe+"SyncStoreKey_";function el(e,t){let n=Nm+e;return j.storage.sync.get(n).then(a=>a[n]===void 0?t:a[n])}function mt(e,t){let n=Nm+e;return j.storage.sync.set({[n]:t})}var Xo={manifest_version:3,name:"__MSG_brandName__",description:"__MSG_brandDescription__",version:"0.7.2",default_locale:"en",background:{service_worker:"background.js"},web_accessible_resources:["styles/inject.css","pdf/index.html","ebook/index.html","ebook/index.html","ebook/make/index.html"],content_scripts:[{matches:["","file:///*","*://*/*"],js:["content_script.js"],run_at:"document_end",all_frames:!0}],commands:{toggleTranslatePage:{suggested_key:{default:"Alt+A"},description:"__MSG_toggleTranslatePage__"},toggleTranslateTheWholePage:{suggested_key:{default:"Alt+W"},description:"__MSG_toggleTranslateTheWholePage__"},toggleOnlyTransation:{description:"__MSG_toggleOnlyTransation__"},toggleTranslateToThePageEndImmediately:{description:"__MSG_toggleTranslateToThePageEndImmediately__"},toggleTranslateTheMainPage:{description:"__MSG_toggleTranslateTheMainPage__"},toggleTranslationMask:{description:"__MSG_toggleTranslationMask__"}},options_page:"options.html",options_ui:{page:"options.html",open_in_tab:!0,browser_style:!1},permissions:["storage","activeTab","contextMenus","webRequest","webRequestBlocking","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback","declarativeNetRequest"],host_permissions:[""],declarative_net_request:{rule_resources:[{id:"ruleset_1",enabled:!0,path:"rules/request_modifier_rule.json"}]},action:{default_popup:"popup.html",default_icon:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"}},browser_action:{default_icon:"icons/32.png",default_popup:"popup.html",theme_icons:[{dark:"icons/32.png",light:"icons/dark-32.png",size:32},{dark:"icons/48.png",light:"icons/dark-48.png",size:48},{dark:"icons/64.png",light:"icons/dark-64.png",size:64},{dark:"icons/128.png",light:"icons/dark-128.png",size:128},{dark:"icons/256.png",light:"icons/dark-256.png",size:256}]},icons:{"32":"icons/32.png","48":"icons/48.png","64":"icons/64.png","128":"icons/128.png","256":"icons/256.png"},browser_specific_settings:{gecko:{id:"{5efceaa7-f3a2-4e59-a54b-85319448e305}",strict_min_version:"63.0"}},key:"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7JPn78UfqI3xIIOPPLPS74UTzLfJL1gQM8hlk/deKWvFP/WqUBnPJPdhQeF45sFpI1OjO70nFqdATT4/RwYAiZK7G/E6m27MDVnhHjszfzReOuoAEn9J3RnE2xEx5pFhRFcelhnwTTLrrn90aaPcaMtNsgXtZA1Ggz/SnX9I4ZygqpJYjx3Ql2t6SyNK222oRQiKMT93Rrjgyc8RFA7FKXsWglG0TvseRjbmG5Jk5gDx+2/YTcWGqCDotQnWnkPj/dBO23UAX7IpyJK3FGYdkvWFih6OVClHIIWY8mfCjjwSGbXNQNesaa9F2hrzBZ5MRTj4m7yj76mGxuPHPIE8mwIDAQAB"};function da(){return Xo.version}function Zo(){return j.runtime.getManifest().version}var Um="G-MKMD9LWFTR";async function st(e,t,n){try{let a=tt();if(a.INSTALL_FROM==="firefox_store")return;let u=le(),o=Ct(),i=a.PROD==="1",s=`report_${e}`,l=e.endsWith("_daily");if(l){if(o)return;let x=await Yo(s,0),b=Qo(new Date(x)),E=Date.now(),I=Qo(new Date(E));if(b===I)return;await Om(s,E)}else if(!n.config.telemetry)return;let c="sitc4WmvShWYwfU0dANM3Q",g=await el("fakeUserId","");g||(g=await Yo("fakeUserId",""),g&&await mt("fakeUserId",g));let m=da(),p=new Date,f=await el("installedAt","");f||(f=await Yo("installedAt",""),f&&await mt("installedAt",f)),g?f||(f=new Date(0).toISOString(),await mt("installedAt",f)):(g=mb(32),await mt("fakeUserId",g)),f||(f=p.toISOString(),await mt("installedAt",f));let S=new Date(f),v=Qo(S),h=Qo(p),k=v===h,F=p.getTime()-S.getTime()<7*24*60*60*1e3,M=`https://www.google-analytics.com/mp/collect?measurement_id=${Um}&api_secret=${c}`;i||(M=`https://www.google-analytics.com/debug/mp/collect?measurement_id=${Um}&api_secret=${c}`);let D=po.parse(window.navigator.userAgent),P=t.map(x=>{let b=x.params||{};D.os&&(b.os_name=D.os.name||"unknown",b.os_version=D.os.version||"unknown",b.os_version_name=D.os.versionName||"unknown"),D.browser&&(b.browser_name=D.browser.name||"unknown",b.browser_version=D.browser.version||"unknown"),D.platform&&(b.platform_type=D.platform.type||"unknown"),D.engine&&(b.engine_name=D.engine.name||"unknown",b.engine_version=D.engine.version||"unknown"),n.translationService&&(b.translation_service=n.translationService),n.targetLanguage&&(b.target_language=n.targetLanguage),n.config.interfaceLanguage&&(b.interface_language=n.config.interfaceLanguage),m&&(b.version=m),n.config.translationTheme&&(b.translation_theme=n.config.translationTheme),n.config.alpha&&(b.alpha=n.config.alpha.toString()),n.config.translationLanguagePattern&&n.config.translationLanguagePattern.matches?.length>0?b.always_translate_languages=n.config.translationLanguagePattern.matches.join(","):b.always_translate_languages="none",a.INSTALL_FROM&&(b.install_from=a.INSTALL_FROM),n.config.beta&&(b.beta=n.config.alpha.toString()),n.config.translationArea&&(b.translation_area=n.config.translationArea),n.rule&&n.rule.enableSearchEnhancement!==void 0&&(b.enable_search_enhancement=n.rule.enableSearchEnhancement?"1":"0"),v&&(b.install_day=pb(S)),n.config.translationMode&&(b.translation_mode=n.config.translationMode),b.userscript=u.toString(),k?b.is_new_user_today="1":b.is_new_user_today="0",F?b.is_new_user_this_week="1":b.is_new_user_this_week="0",n.config.tempTranslateDomainMinutes?b.temp_translate_domain_minutes=n.config.tempTranslateDomainMinutes.toString():b.temp_translate_domain_minutes="0";let E="html";if(n.rule.isEbook?E="ebookReader":n.rule.isPdf?E="pdfReader":n.rule.isEbookBuilder?E="ebookBuilder":n.rule.isSubtitleBuilder&&(E="subtitleBuilder"),b.page_type=E,o?b.main_frame=0:b.main_frame=1,!l){let I=n.url;try{let L=new URL(I);b.site_host=L.hostname}catch{b.site_host="unknown"}n.sourceLanguage&&(b.source_language=n.sourceLanguage)}return{...x,params:b}}),w=await ue({responseType:"text",url:M,method:"POST",body:JSON.stringify({client_id:g,user_id:g,events:P})})}catch{}}function mb(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r0){if(a.includes(e)||a.includes(""))return!1;for(let r of a)if(r.includes("*")&&new RegExp(r).test(e))return!1}if(n.length===0)return!1;if(n.length>0){if(n.includes(e)||n.includes(""))return!0;for(let r of n)if(r.includes("*")&&new RegExp(r).test(e))return!0}return!1}var Hm="auto",ei="auto",zm="auto";function ti(e){Hm=e}function sn(e){ei=e}function Pn(){return ei!=="auto"?ei:zm!=="auto"?zm:Hm}function yr(){return ei}var fb=["block","grid","flex","table","table-row","table-cell","list-item","-webkit-box","box","contents"];function $n(e,t){if(t.length===0)return!1;let n=t.join(",");return e.matches&&e.matches(n)||!1}function tl(e,t,n){let{blockSelectors:a,extraBlockSelectors:r,extraInlineSelectors:u}=t;if($n(e,u))return!1;if($n(e,r)||e.nodeName.toLowerCase()==="br")return!0;let s=null;return e.parentNode&&e.parentNode.immersiveTranslateComputedStyle&&(s=e.parentNode.immersiveTranslateComputedStyle),s&&s.display&&s.display==="inline-flex"?!1:n&&n.display?!!fb.includes(n.display):$n(e,a)}var Qt=$n;function Ra(e){return!!e.shadowRoot}function ga(e){if(!e||typeof e!="string"&&(e=e.textContent,!e))return"";let t="";return e!==e.trimStart()&&(t+=" "),t+=e.trim(),t===" "||e!==e.trimEnd()&&(t+=" "),t}function wu(e){if(!e)return["",""];if(typeof e!="string"&&(e=e.textContent,!e))return["",""];let t=[];return e!==e.trimStart()?t.push(" "):t.push(""),!e.trim()&&t.length===1?[" ",""]:(e!==e.trimEnd()?t.push(" "):t.push(""),t)}function ni(e){let t=ko;return e&&(t=e),t}async function bn(e,t="",n=100){let a="auto";return t?await lt({text:t,minLength:n}):(e.state.isDetectParagraphLanguage||(a=yr()),a)}function ai(e,t){return sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})}function hb(e){let{rule:t}=e,n=e.config.loadingTheme;return` <${t.targetWrapperTag} class="${X}-loading-${n} notranslate">`}function ku(e,t){let n=e.rule,a=document.createElement(n.targetWrapperTag);a.classList.add("notranslate",rn),a.setAttribute("translate","no"),a.setAttribute("lang",e.targetLanguage),it(a,yg,t.toString());let r=hb(e);return a.innerHTML=_e.sanitize(r),a}function Tr(e,t){return e.querySelector(`[${S0}='${t}']`)}function Wm(){document.querySelectorAll(`[${S0}]`).forEach(t=>{t.remove()})}function $m(){document.querySelectorAll(`.${rn}-error`).forEach(t=>{t.remove()})}function qm(){let e=document.querySelectorAll("iframe"),t=[];return e.forEach(n=>{cr(n)&&t.push(n)}),t}function Km(e){let{noTranslateRegexp:t,minTextCount:n,minWordCount:a,delimiters:r,text:u}=e,o=new RegExp(`${r[0]}(\\d+)${r[1]}`,"gi");if(r.length>2){let s=r[2];o=new RegExp(`<${s}(\\d+)>(.*?)`,"gi")}let i=u.trim();return i=i.replace(o,""),i=i.trim(),i===""||i.length===1&&i.charCodeAt(0)===8203||/^[0-9.,\/#!$%\^&\*;:{}=\-_`~()\s]+$/.test(u)||i.includes("")||i.includes("< styles>")||qg(i)||Hg(i)||$g(i)||Wg(i)||o.test(i)||t&&t.length>0&&new RegExp(t.join("|"),"gi").test(i)?!1:Fo(u,n,a)}function Mn(e){return e.nodeType===Node.ELEMENT_NODE}function Vm(e,t){return e.paragraphs?e.paragraphs[0]?.ctxId!==t?(e.paragraphs=[],!1):!0:!1}function Gm(e){try{let t=Math.floor((new Date-new Date(e))/1e3);return t<60?`${t} \u79D2\u524D`:t<3600?`${Math.floor(t/60)} \u5206\u949F\u524D`:t<86400?`${Math.floor(t/3600)} \u5C0F\u65F6\u524D`:`${Math.floor(t/86400)} \u5929\u524D`}catch{return e}}var bb=1e5;function ma(e){let{onParagraph:t,filterRule:n,id:a}=e;n=yb(n);let{stayOriginalSelectors:r,globalStyles:u,selectors:o,isTransformPreTagNewLine:i,lineBreakMaxTextCount:s,globalAttributes:l,isModifyImage:c}=n,g={commonAncestorContainer:e.container,rootNodes:[],flatNodes:[],_currentStacks:[],isPreWhitespace:!1},m=!1,p=null;function f(M){let{container:D,onFrame:P,onIgnoreElement:w,id:x}=M,b=document.createTreeWalker(D,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,L=>{let W=I(L);return W==NodeFilter.FILTER_ACCEPT?qt.mark(L,x):W==NodeFilter.FILTER_REJECT,W}),E=D;if(I(E)===NodeFilter.FILTER_REJECT)return;for(qt.mark(E,x);E;){if(o&&o.length>0){let{currentNode:L,isMatchedSelection:W}=S(b,E,o);if(L)E=L;else break;if(!W)continue}if(E.nodeType===Node.ELEMENT_NODE||E.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let L=E;if(L.nodeName==="IFRAME"){P&&P(L);break}L.nodeType===Node.ELEMENT_NODE&&(u&&al(L,u),l&&ul(L,l));let W=tl(L,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},L.immersiveTranslateComputedStyle||null);if(Qt(L,r)&&!W){h(L);let G=null;for(;!(G=b.nextSibling())&&b.parentNode(););E=G;continue}let _=Ra(L);(!Jm(g,L)||W)&&(v(),L.childNodes.length>0&&k(g,L,L.immersiveTranslateComputedStyle||null)),_&&L.shadowRoot?.mode==="open"&&(W?P?.(L.shadowRoot):f({...M,container:L.shadowRoot})),L.nodeType===Node.ELEMENT_NODE&&L.nodeName==="PRE"&&i&&Cb(L)}else if(E.nodeType===Node.TEXT_NODE)h(E);else throw new Error("should not be here");E=b.nextNode(),g.commonAncestorContainer&&E&&E.parentNode===g.commonAncestorContainer&&(g._currentStacks=[]),g.commonAncestorContainer&&E&&E.nodeType===Node.ELEMENT_NODE&&g._currentStacks.push(E)}function I(L){if(L.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return NodeFilter.FILTER_ACCEPT;if(Mn(L)){if(l){let B=Object.keys(l);if(B.length>0&&Qt(L,B))for(let re of B){let ye=l[re];if(L.matches(re)){let V=l[re],ge=Object.keys(V);for(let de of ge){let C=V[de];L.getAttribute(de)!==C&&(C===null?L.removeAttribute(de):L.setAttribute(de,C))}break}}}if(!M.force&&qt.isMarked(L,x)||Vm(L,x)||ol(L,{excludeSelectors:n.excludeSelectors,selectors:n.selectors,stayOriginalSelectors:r})||L.nodeName==="IFRAME"&&!cr(L))return NodeFilter.FILTER_REJECT;if(L.nodeType===Node.ELEMENT_NODE){let B=window.getComputedStyle(L);if(L.immersiveTranslateComputedStyle={display:B.display,whiteSpace:B.whiteSpace},rl(L.immersiveTranslateComputedStyle))return w&&w(L),NodeFilter.FILTER_REJECT;let G=tl(L,{blockSelectors:n.blockSelectors,extraInlineSelectors:n.extraInlineSelectors,extraBlockSelectors:n.extraBlockSelectors},L.immersiveTranslateComputedStyle||null);if(Qt(L,r)&&G)return NodeFilter.FILTER_REJECT}let{width:W,height:_}=L.getBoundingClientRect();return L.nodeName==="IMG"&&(W>48&&_>48?L.immersiveTranslateComputedStyle={display:"block"}:W>0&&_>0&&c!==!1&&(L.setAttribute("width",W),L.setAttribute("height",_))),!L.childNodes||L.childNodes&&L.childNodes.length===0?NodeFilter.FILTER_ACCEPT:!g.isPreWhitespace&&(W>0&&W<4||_>0&&_<4)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}else if(L.nodeType===Node.TEXT_NODE){let W=L.textContent?.trim();if(!W)return g.isPreWhitespace?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT;let _=L.parentNode;if(_.getBoundingClientRect){let{width:B,height:G}=_.getBoundingClientRect();if(B>0&&B<4||G>0&&G<4)return NodeFilter.FILTER_REJECT}return s>0&&W.length>=s&&nl(L,s),NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_REJECT}}f(e),g&&g.commonAncestorContainer&&g.flatNodes.length>0&&v();function S(M,D,P){let w=D.immersiveTranslateComputedStyle||null;if(p){if(!p.contains(D))if(m=!1,D&&D.nodeType===Node.ELEMENT_NODE)if(ri(D,P))m=!0,p=D,v(),k(g,p,w);else return m=!1,D=M.nextNode(),{currentNode:D,isMatchedSelection:m};else return m=!1,D=M.nextNode(),{currentNode:D,isMatchedSelection:m}}else if(D&&D.nodeType===Node.ELEMENT_NODE)if(ri(D,P))m=!0,p=D,v(),k(g,p,w);else return m=!1,D=M.nextNode(),{currentNode:D,isMatchedSelection:m};else return m=!1,D=M.nextNode(),{currentNode:D,isMatchedSelection:m};return{currentNode:D,isMatchedSelection:!0}}function v(){let M=xb(g,a);M&&t&&t(M),Ym(g)}function h(M){if(!Jm(g,M)){v(),Ym(g);let D=M.parentNode;D&&k(g,D,D.computedStyle)}g.flatNodes.push(M)}function k(M,D,P){M.commonAncestorContainer=D;let w=F(P);M.isPreWhitespace=w}function F(M){return M&&M.whiteSpace&&M.whiteSpace.startsWith("pre")||M&&M.whiteSpace==="break-spaces"||!1}}function Jm(e,t){let n=!1;(t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&(n=Ra(t));let a=Eb(e),r=!0;return!n&&!a&&(e.commonAncestorContainer&&e.commonAncestorContainer.contains(t)?r=!0:e.commonAncestorContainer&&(r=!1,e._currentStacks=[])),r}function yb(e){let{isTransformPreTagNewLine:t}=e;return e.excludeSelectors=e.excludeSelectors.filter(n=>{let a=n!=="iframe";return t?a&&n!=="pre":a}),e}function Tb(e,t,n){if(t){for(let a of t.childNodes)if(a.contains(n))return a}return e._currentStacks.length>0?(e.commonAncestorContainer||(e.commonAncestorContainer=e._currentStacks[0]),e._currentStacks[0]):null}function al(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){e.style.cssText=u;break}}}}function Eb(e){return e&&e._currentStacks?e._currentStacks.some(t=>Ra(t)):!1}function xb(e,t){let{flatNodes:n,commonAncestorContainer:a}=e;if(a&&n.length>0){if(!n.map(m=>m.textContent?.trim()||"").join(""))return null;if(n.length===1)return{ctxId:t,stepState:1,commonAncestorContainer:n[0].parentNode,rootNodes:[n[0]],flatNodes:n,isPreWhitespace:e.isPreWhitespace,variables:{}};let u=vb(n,a);u||(u=a);let o=[];for(let m of n){let p=Tb(e,u,m);p&&(o.includes(p)||o.push(p))}if(o.length<1)return null;let i=o[0],s=o[o.length-1],l=[],c=i,g=0;for(;c&&(l.push(c),c!==s);){if(g++,g>bb){A.warn("loop too many times for convert root nodes, break");break}c=c.nextSibling}return{ctxId:t,rootNodes:l,stepState:1,flatNodes:n,commonAncestorContainer:u,variables:{},isPreWhitespace:e.isPreWhitespace}}else return null}function Ym(e,t=!1){e.rootNodes=[],e.flatNodes=[],e._currentStacks=[],t&&(e.commonAncestorContainer=null)}function rl(e){let t=e.top?parseInt(e.top):0,n=e.left?parseInt(e.left):0,a=e.right?parseInt(e.right):0,r=e.bottom?parseInt(e.bottom):0;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(a)&&(a=0),isNaN(r)&&(r=0),e.display==="none"||t<-1e3||n<-1e3||a<-1e3||r<-1e3}var qt={_marked_key:"immersive_translate_walked",isMarked(e,t){return R0(e,this._marked_key,t)},clearMark(e){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return Bo(e,this._marked_key)},mark(e,t){if(!(!e||e.nodeType!==Node.ELEMENT_NODE)&&!(e instanceof HTMLIFrameElement||Ra(e)))return it(e,this._marked_key,t)},markWalk(e,t){if(!e||e.nodeType!==Node.ELEMENT_NODE||this.isSkipMarkEle(e))return;let n=sr(e,"markWalk")||"";return it(e,"markWalk",n+","+t)},isSkipMarkEle(e){return e?!!(e instanceof HTMLIFrameElement||Ra(e)):!1}};function Cb(e){let n=e.innerHTML.replace(/\n\n/g,"
");e.innerHTML=_e.sanitize(n)}function vb(e,t){if(!e.length)return null;let n=e.map(a=>{let r=new Set;for(;(a=a.parentNode)&&(r.add(a),a!==t););return r});for(let a of n[0])if((a.nodeType===Node.ELEMENT_NODE||a.nodeType===Node.DOCUMENT_FRAGMENT_NODE)&&n.every(r=>r.has(a)))return a;return null}function nl(e,t){let n=e.textContent||"";if(n.trim().length<=t)return;let u=[". ","? ","! ","\u3002","\uFF1F","\uFF01"].reduce((o,i)=>{let s=n.lastIndexOf(i,t);return s>o?s:o},-1);if(u>1){let o=n[u-1]||"",i=n[u-2]||"",s=n[u+1]||"";o==="."||s==="."||s===")"||i==="."&&o==="S"||i.toUpperCase()==="M"&&(o.toUpperCase()==="R"||o.toUpperCase()==="S")?u=-1:isNaN(Number(o))||(u=-1)}if(u===-1)n.length>t+20&&nl(e,t+20);else{let o=n.slice(u+1);u++,o.startsWith(" ")&&u++;let i=e.splitText(u),s=document.createElement("br");i.parentNode?.insertBefore(s,i),u+10)for(let a of n){let r=t[a],u=Object.keys(r),o=Ng(e,[a]);for(let i of o)for(let s of u){let l=r[s];i.getAttribute(s)!==l&&(l===null?i.removeAttribute(s):i.setAttribute(s,l))}}}function Zm(e,t,n,a,r,u){let o=Object.keys(t);if(o.length>0)for(let i of o){let s=t[i],l=Object.keys(s),c=e.querySelector(i);if(c)for(let g of l){let m=s[g];if(g==="translate"&&m==="no"){let f=c.innerText||c.textContent||"";if(!f.trim()||wb(c,r,u)||!jg(f,n,a))continue}c.getAttribute(g)!==m&&(m===null?c.removeAttribute(g):c.setAttribute(g,m))}}}function ul(e,t){if(t){let n=Object.keys(t);if(n.length>0&&Qt(e,n))for(let r of n){let u=t[r];if(e.matches(r)){let o=t[r],i=Object.keys(o);for(let s of i){let l=o[s];e.getAttribute(s)!==l&&(l===null?e.removeAttribute(s):e.setAttribute(s,l))}break}}}}function ol(e,t){return Qt(e,t.excludeSelectors||[])?Qt(e,t.selectors||[])?!1:!Qt(e,t.stayOriginalSelectors||[]):!1}function ri(e,t){if(t.length===0)return!1;let n=t.filter(a=>!a.endsWith("*")).map(a=>a+" *");return Qt(e,t.concat(n))}function wb(e,t,n){let a=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,r=>NodeFilter.FILTER_ACCEPT);for(;a.nextNode();){let r=a.currentNode;if(r.nodeType===Node.TEXT_NODE&&parent){let u=r.textContent||"";if(u.includes("Copyright"))continue;if(Fo(u,t,n))return!0}}return!1}var Qm=["*://*/*","*","*://*"],t3="immersive-translate-wildcard-placeholder.com";function il(e,t){let n=[];if(!t||(t&&!Array.isArray(t)?n=[t]:n=t,n.length===0))return null;if(n.some(o=>Qm.includes(o)))return e;let a=new URL(e);a.hash="",a.search="";let r=a.href,u=a.hostname;if(n&&n.length>0){let o=n.find(i=>{let s=i;if(i===u)return!0;if(Qm.includes(i))return!0;if(!i.includes("*")&&i.includes("://")){try{let l=new URL(i);return l.pathname==="/"&&!i.endsWith("/")?l.hostname===u:Sb(r,i)}catch{}return!1}else{let l,c=i;if(i.includes("://")){let v=i.split("://");l=v[0],l==="*"&&v.length>1&&(l="*",i="https://"+v[1])}else l="*",i="https://"+i;let g=i.replace(/\*/g,t3),m;try{m=new URL(g)}catch{return A.debug("invalid match pattern",g,"raw match value:",c),!1}let p=m.hostname,f=m.pathname;f==="/"&&(c.replace("://","").includes("/")||(f="/*"));let S=kb(l+":",e3(p),e3(f));if(S){let v=new URL(r);return v.port="",S.test(v.href)}else return!1}});if(o)return o}return null}function e3(e){return e.replaceAll(t3,"*")}function kb(e,t,n){let a="^";return e==="*:"?a+="(http:|https:|file:)":a+=e,a+="//",t&&(e==="file:"||(t==="*"?a+="[^/]+?":(t.match(/^\*\./)&&(a+="[^/]*?",t=t.substring(2)),a+=t.replace(/\./g,"\\.").replace(/\*/g,"[^/]*")))),n?n==="*"||n==="/*"?a+="(/.*)?":n.includes("*")?(a+=n.replace(/\*/g,".*?"),a+="/?"):a+=n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):a+="/?",a+="$",new RegExp(a)}function Fn(e,t){return il(e,t)!==null}function Sb(e,t){let n=new URL(e),a=new URL(t);return n.hostname===a.hostname&&n.pathname===a.pathname&&n.protocol===a.protocol&&n.port===a.port}var Er="input is invalid type",sl=typeof window=="object",pa=sl?window:{};pa.JS_SHA256_NO_WINDOW&&(sl=!1);var Ab=!sl&&typeof self=="object",Db=!pa.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;Db?pa=global:Ab&&(pa=self);var k7=!pa.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,S7=typeof define=="function"&&define.amd,Su=!pa.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",ie="0123456789abcdef".split(""),Lb=[-2147483648,8388608,32768,128],yn=[24,16,8,0],ui=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],oi=["hex","array","digest","arrayBuffer"],yt=[];(pa.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"});Su&&(pa.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var n3=function(e,t){return function(n){return new Tt(t,!0).update(n)[e]()}},r3=function(e){var t=n3("hex",e);t.create=function(){return new Tt(e)},t.update=function(r){return t.create().update(r)};for(var n=0;n>2]|=e[r]<>2]|=a<>2]|=(192|a>>6)<>2]|=(128|a&63)<=57344?(i[u>>2]|=(224|a>>12)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<>2]|=(240|a>>18)<>2]|=(128|a>>12&63)<>2]|=(128|a>>6&63)<>2]|=(128|a&63)<=64?(this.block=i[16],this.start=u-64,this.hash(),this.hashed=!0):this.start=u}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};Tt.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=Lb[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}};Tt.prototype.hash=function(){var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=this.blocks,l,c,g,m,p,f,S,v,h,k,F;for(l=16;l<64;++l)p=s[l-15],c=(p>>>7|p<<25)^(p>>>18|p<<14)^p>>>3,p=s[l-2],g=(p>>>17|p<<15)^(p>>>19|p<<13)^p>>>10,s[l]=s[l-16]+c+s[l-7]+g<<0;for(F=t&n,l=0;l<64;l+=4)this.first?(this.is224?(v=300032,p=s[0]-1413257819,i=p-150054599<<0,a=p+24177077<<0):(v=704751109,p=s[0]-210244248,i=p-1521486534<<0,a=p+143694565<<0),this.first=!1):(c=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),g=(r>>>6|r<<26)^(r>>>11|r<<21)^(r>>>25|r<<7),v=e&t,m=v^e&n^F,S=r&u^~r&o,p=i+g+S+ui[l]+s[l],f=c+m,i=a+p<<0,a=p+f<<0),c=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),g=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),h=a&e,m=h^a&t^v,S=i&r^~i&u,p=o+g+S+ui[l+1]+s[l+1],f=c+m,o=n+p<<0,n=p+f<<0,c=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),g=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),k=n&a,m=k^n&e^h,S=o&i^~o&r,p=u+g+S+ui[l+2]+s[l+2],f=c+m,u=t+p<<0,t=p+f<<0,c=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),g=(u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7),F=t&n,m=F^t&a^k,S=u&o^~u&i,p=r+g+S+ui[l+3]+s[l+3],f=c+m,r=e+p<<0,e=p+f<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+a<<0,this.h4=this.h4+r<<0,this.h5=this.h5+u<<0,this.h6=this.h6+o<<0,this.h7=this.h7+i<<0};Tt.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=ie[e>>28&15]+ie[e>>24&15]+ie[e>>20&15]+ie[e>>16&15]+ie[e>>12&15]+ie[e>>8&15]+ie[e>>4&15]+ie[e&15]+ie[t>>28&15]+ie[t>>24&15]+ie[t>>20&15]+ie[t>>16&15]+ie[t>>12&15]+ie[t>>8&15]+ie[t>>4&15]+ie[t&15]+ie[n>>28&15]+ie[n>>24&15]+ie[n>>20&15]+ie[n>>16&15]+ie[n>>12&15]+ie[n>>8&15]+ie[n>>4&15]+ie[n&15]+ie[a>>28&15]+ie[a>>24&15]+ie[a>>20&15]+ie[a>>16&15]+ie[a>>12&15]+ie[a>>8&15]+ie[a>>4&15]+ie[a&15]+ie[r>>28&15]+ie[r>>24&15]+ie[r>>20&15]+ie[r>>16&15]+ie[r>>12&15]+ie[r>>8&15]+ie[r>>4&15]+ie[r&15]+ie[u>>28&15]+ie[u>>24&15]+ie[u>>20&15]+ie[u>>16&15]+ie[u>>12&15]+ie[u>>8&15]+ie[u>>4&15]+ie[u&15]+ie[o>>28&15]+ie[o>>24&15]+ie[o>>20&15]+ie[o>>16&15]+ie[o>>12&15]+ie[o>>8&15]+ie[o>>4&15]+ie[o&15];return this.is224||(s+=ie[i>>28&15]+ie[i>>24&15]+ie[i>>20&15]+ie[i>>16&15]+ie[i>>12&15]+ie[i>>8&15]+ie[i>>4&15]+ie[i&15]),s};Tt.prototype.toString=Tt.prototype.hex;Tt.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,a=this.h3,r=this.h4,u=this.h5,o=this.h6,i=this.h7,s=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,a>>24&255,a>>16&255,a>>8&255,a&255,r>>24&255,r>>16&255,r>>8&255,r&255,u>>24&255,u>>16&255,u>>8&255,u&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||s.push(i>>24&255,i>>16&255,i>>8&255,i&255),s};Tt.prototype.array=Tt.prototype.digest;Tt.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function ii(e,t,n){var a,r=typeof e;if(r==="string"){var u=[],o=e.length,i=0,s;for(a=0;a>6,u[i++]=128|s&63):s<55296||s>=57344?(u[i++]=224|s>>12,u[i++]=128|s>>6&63,u[i++]=128|s&63):(s=65536+((s&1023)<<10|e.charCodeAt(++a)&1023),u[i++]=240|s>>18,u[i++]=128|s>>12&63,u[i++]=128|s>>6&63,u[i++]=128|s&63);e=u}else if(r==="object"){if(e===null)throw new Error(Er);if(Su&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!Su||!ArrayBuffer.isView(e)))throw new Error(Er)}else throw new Error(Er);e.length>64&&(e=new Tt(t,!0).update(e).array());var l=[],c=[];for(a=0;a<64;++a){var g=e[a]||0;l[a]=92^g,c[a]=54^g}Tt.call(this,t,n),this.update(c),this.oKeyPad=l,this.inner=!0,this.sharedMemory=n}ii.prototype=new Tt;ii.prototype.finalize=function(){if(Tt.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();Tt.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),Tt.prototype.finalize.call(this)}};var xr=r3();xr.sha256=xr;xr.sha224=r3(!0);xr.sha256.hmac=u3();xr.sha224.hmac=u3(!0);var o3=xr;var i3=o3.sha256;function Tn(e){return Promise.resolve(i3(e))}function si(e){return Array.from(new Uint8Array(e)).map(a=>a.toString(16).padStart(2,"0")).join("")}function fa(e,t){let n=i3.hmac.create(t);return n.update(e),Promise.resolve(n.array())}async function s3(e,t){let n=await fa(e,t);return si(n)}async function li(e,t){let n=Pb(t),a=await fa(e,n);return si(a)}function Pb(e){let t=[];return e.replace(/../g,function(n){return t.push(parseInt(n,16)),""}),new Uint8Array(t).buffer}async function wt(e){let{url:t,config:n,state:a}=e,r=new URL(t),u="auto",{translationParagraphLanguagePattern:o,translationService:i,translationServices:s,translationTheme:l,translationThemePatterns:c,translationUrlPattern:g,targetLanguage:m,sourceLanguageUrlPattern:p,immediateTranslationPattern:f}=n,S=Cr(t,o),v=Cr(t,f),h=i,k=Object.keys(s);for(let O of k){let ae=s[O];if(Cr(t,ae)){h=O;break}}let F=l,M=Object.keys(c);for(let O of M){let ae=c[O];if(ae&&Cr(t,ae)){F=O;break}}let D=Cr(t,g),P=l3(t,g);P||(P=Fn(t,Fg)),P||(P=Fn(t,n.blockUrls));let w=l3(t,n.inputTranslationUrlPattern);w||(w=Fn(t,n.inputTranslationBlockUrls));let x=Fn(t,n.mutationBlockUrls),b=Object.keys(p),E={};for(let O of b){let ae=p[O];if(ae&&ae.matches)for(let ee of ae.matches)E[ee]=O}let I=Object.keys(E),L=il(t,I);L&&(u=E[L]??"auto",E[L]&&E[L]!=="auto"&&sn(E[L]));let W=m||"zh-CN",_=r.hostname,B=await Tn(_),G=r.pathname+r.search+r.hash,re=await Tn(G),ye=`https://${B}.com/${re}`,V=await Hn(),ge=await mm(),de=n.translationStartMode;de==="dynamic"&&v&&(de="immediate");let C={targetLanguage:W,config:n,translationService:h,isTranslateUrl:D,sourceLanguage:u,mainFrame:document.body,isTranslateExcludeUrl:P,isMutationTranslationExcludeUrl:x,isInputTranslationExcludeUrl:w,rule:n.generalRule,url:t,encryptedUrl:ye,state:a?Object.assign({translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:de,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:S,cache:n.cache,translationTheme:F},a):{translationMode:n.translationMode,translationArea:n.translationArea,translationStartMode:de,immediateTranslationTextCount:n.immediateTranslationTextCount,isAutoTranslate:!1,translationDebounce:300,isNeedClean:!1,isDetectParagraphLanguage:S,cache:n.cache,translationTheme:F},localConfig:V};C.state.translationArea==="body"&&(C.config.generalRule.excludeTags=C.config.generalRule.excludeTags.filter(O=>!C.config.generalRule.bodyTranslateTags.includes(O)),C.config.generalRule.additionalExcludeSelectors=C.config.generalRule.additionalExcludeSelectors.filter(O=>O!==".btn"));let z=n.translationServices[C.translationService]||{};z.immediateTranslationTextCount!==void 0&&Mb(z.immediateTranslationTextCount)&&z.immediateTranslationTextCount>=0&&(C.state.immediateTranslationTextCount=z.immediateTranslationTextCount),C.translationService==="deepl"&&z&&z.authKey&&z.authKey.startsWith("immersive_")&&z.immediateTranslationTextCountForImmersiveDeepl!==void 0&&z.immediateTranslationTextCountForImmersiveDeepl>=0&&(C.state.immediateTranslationTextCount=z.immediateTranslationTextCountForImmersiveDeepl),z&&z.translationDebounce&&typeof z.translationDebounce=="number"&&(C.state.translationDebounce=z.translationDebounce);let Z=ge.immediateTranslationTextCount;n.immediateTranslationTextCount!==Z&&(C.state.immediateTranslationTextCount=n.immediateTranslationTextCount);let pe=n.rules,se;globalThis.PDFViewerApplication?se=pe.find(O=>O.isPdf):globalThis.immersiveTranslateEbookViewer?se=pe.find(O=>O.isEbook):globalThis.immersiveTranslateEbookBuilder?se=pe.find(O=>O.isEbookBuilder):se=pe.find(O=>Cr(t,O)),C.rule.isPdf&&(C.state.translationArea="main"),C.state.translationArea==="body"&&(C.rule.paragraphMinTextCount=1,C.rule.paragraphMinWordCount=1),se&&se.isEbookBuilder&&(C.state.translationStartMode="immediate");let R=n.generalRule;if(se&&(C.rule=Ho(R,se)),C.rule.selectors.length>0&&(C.rule.paragraphMinTextCount=2,C.rule.paragraphMinWordCount=1),C.state.translationArea==="body"&&C.rule.excludeTags&&(C.rule.excludeTags=C.rule.excludeTags.filter(O=>!C.rule.bodyTranslateTags.includes(O)&&!C.rule.forceTranslateTags.includes(O))),C.rule.mainFrameSelector){let O=document.querySelector(C.rule.mainFrameSelector);O&&(C.mainFrame=O)}return C}function Cr(e,t){if(!t)return!1;let{matches:n,excludeMatches:a,selectorMatches:r,excludeSelectorMatches:u}=t;return a&&a.length>0&&Fn(e,a)?!1:n&&n.length>0&&Fn(e,n)?!0:u&&u.length>0&&_o(u)?!1:!!(r&&r.length>0&&_o(r))}function l3(e,t){if(!t)return!1;let{excludeMatches:n,excludeSelectorMatches:a}=t;return!!(n&&n.length>0&&Fn(e,n)||a&&a.length>0&&_o(a))}function Mb(e){return typeof e=="number"}async function c3(){let e="auto";return document.body&&document.body.textContent&&document.body.textContent.trim()&&(e=await lt({text:ir(document.body)})),e==="auto"&&document.documentElement&&document.documentElement.lang&&(e=oa(document.documentElement.lang)),e}function d3(e,t){return[e,!e||e.endsWith("/")?"":"/",t,".json"].join("")}function ll(e,t){let n=e;return t&&Object.keys(t).forEach(a=>{let r=t[a],u=Fb(a);if(typeof r=="object"||u){let o=r;u&&typeof o=="string"&&(o={tag:"a",href:o,target:"_blank"});let i=`<${a}>`,s=n.indexOf(i);if(s!==-1){let l=o.tag||"a",c=n.indexOf(``);if(c!==-1){let g=n.substring(s+i.length,c),m=Object.keys(o).filter(p=>p!=="tag").map(p=>`${p}="${o[p]}"`).join(" ");n=n.replace(`${i}${g}`,`<${l} ${m}>${g}`)}}}else{let o=new RegExp("{"+a+"}","gm");n=n.replace(o,r.toString())}}),n}function Au(e,t,n){let a=e[t];if(!a)return n;let r=n.split("."),u="";do{u+=r.shift();let o=a[u];o!==void 0&&(typeof o=="object"||!r.length)?(a=o,u=""):r.length?u+=".":a=n}while(r.length);return a}function Ia(e,t,n,a,r){if(!e.hasOwnProperty(n))return t;let u=Au(e,n,t);return u===t&&n!==a&&(u=Au(e,a,t)),ll(u,r)}function Fb(e){if(typeof e=="number")return!0;if(e){let t=parseInt(e);return!isNaN(t)}else return!1}function ci(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function vr(e,t,n=[],a,r){let u=["notranslate"];return a&&u.push(Ag),e&&(u.push(`${X}-target-translation-theme-${e}`),t?u.push(`${D0}-theme-${e}`):u.push(`${A0}-theme-${e}`)),n.length>0&&u.push(...n),t?u.push(D0):(u.push(A0),r&&u.push(Sg)),u}function wr(e){let t=["notranslate",wg];return e&&t.push(`${X}-target-translation-theme-${e}-inner`),t}function g3(e,t,n){let{rule:a,state:r}=n,{translationTheme:u}=r,{variables:o,isVertical:i}=e;o=o||[];let{text:s}=t,{wrapperPrefix:l,wrapperSuffix:c}=a,g=lr(n),m="afterend",p=g[0].replace(/\//g,"/");p=p.replace(/"/g,'\\"'),p=p.replace(//g,">");let f=g[1].replace(/\//g,"/");f=f.replace(/"/g,'\\"'),f=f.replace(//g,">");let S=`${p}(\\d+)${f}`,v=new RegExp(S,"g"),h=ci(s);h=_e.sanitize(h),o.length>0&&(h=h.replace(v,D=>{let P=h.indexOf(D),w=h[P-1]===" ",x=h[P+D.length]===" ",b=D.slice(g[0].length,-g[1].length),E=Number(b);if(isNaN(E))return D;let I=o[Number(E)];if(I&&I.type==="element"){let L=I.value.outerHTML;return w||(L=" "+L),x||(L=L+" "),L}else A.error("variable type not supported",I,D);return D}));let k=vr(u,e.inline,a.translationClasses||[],e.preWhitespace,n.rule.isPdf);i&&k.push(kg);let F=wr(u),M="";return a.translationBlockStyle&&(M=`style="${a.translationBlockStyle}"`),h=`<${n.rule.targetWrapperTag} ${M} class="${k.join(" ")}" ${Ln}="1"><${a.targetWrapperTag} class="${F.join(" ")}" ${Ln}="1">${h}`,e.inline||(l==="smart"?h=`
${h}`:h=`${l}${h}`),e.inline&&(l!=="smart"?h=`${l}${h}`:h=`<${a.targetWrapperTag} class="notranslate" ${Ln}="1"> ${h}`),c==="smart"?h=`${h}`:h=`${h}${c}`,{html:h,position:m}}function di(e,t){let n=null,{stayOriginalSelectors:a,delimiters:r,isPreWhitespace:u}=t,o=[],i={};for(let s=0;s2&&(v=`<${r[2]}${S}>`),i[S]=l,o.push({text:v,type:"variable"})}else o.push({text:l.textContent||"",type:"text"});else{let f=l.textContent||"";g&&(f=ga(cl(l))),o.push({text:f,type:"text"})}else if(l.nodeType===Node.ELEMENT_NODE)if(l&&Qt(l,a)){let S=Object.keys(i).length,v=`${r[0]}${S}${r[1]}`;r.length>2&&(v=`<${r[2]}${S}>`),i[S]=l;let h=dl(o).endsWith(" ")?" ":"",k=ga(l.innerText||l.textContent),F=ga(l.nextSibling).startsWith(" ")?" ":"",M=wu(h+k+F),D=M[0]+v+M[1];if(h===" ")D=D.trimStart();else if(!D.startsWith(" ")){let P=wu(l.previousSibling)[1];P===""&&(P=" "),D=P+D}o.push({text:D,type:"variable"})}else{let f=dl(o).endsWith(" ")?" ":"",S=ga(l.innerText||l.textContent);g&&(S=ga(cl(l)));let v=ga(l.nextSibling).startsWith(" ")?" ":"",h=wu(f+S+v),k=h[0]+(l.innerText?.trim()||l.textContent?.trim()||"")+h[1];if(f===" ")k=k.trimStart();else{let F=wu(l.previousSibling)[1];F===""&&(l.nodeName==="A"||l.nodeName==="CODE")&&(F=" "),k=F+k}o.push({text:k,type:"text"})}else{let f=dl(o).endsWith(" ")?" ":"",S="";l.textContent&&(S=ga(cl(l))),f===" "&&(S=S.trimStart()),o.push({text:S,type:"text"})}}if(o&&o.length>0){let s="";for(let l=0;l0&&(g=o[l-1].text),l2){let c=l[2];return _b({delimiterTag:c,targetText:e.targetText,inline:r,isPdf:t.rule.isPdf,preWhitespace:e.isPreWhitespace||!1,wrapperPrefix:t.rule.wrapperPrefix,wrapperSuffix:t.rule.wrapperSuffix,targetWrapperTag:t.rule.targetWrapperTag,translationTheme:t.state.translationTheme,translationBlockStyle:t.rule.translationBlockStyle,translationClasses:t.rule.translationClasses,variables:a}).html}else{let c=g3(s,{id:Number(e.id),url:"https://google.com",text:e.targetText,from:"auto",to:"auto",fromByClient:"auto"},t);return c.html}}function cl(e){return(e?.innerText||e.textContent||"").replace(/\s+/g," ")||""}function _b(e){let{delimiterTag:t,inline:n,translationClasses:a,targetWrapperTag:r,wrapperPrefix:u,variables:o,preWhitespace:i,wrapperSuffix:s,translationTheme:l,isPdf:c,translationBlockStyle:g}=e;o=o||[];let m=ci(e.targetText);m=_e.sanitize(m);let p=m,f=new RegExp(`<${t}(\\d+)>(.*?)</${t}\\d+>`,"g"),S=new RegExp(`<${t}(\\d+)>`);o.length>0&&(p=p.replace(f,F=>{let M=p.indexOf(F),D=p[M-1]===" ",P=p[M+F.length]===" ",w=F.match(S);if(!w)return F;let x=w[1],b=Number(x);if(isNaN(b))return F;let E=o[Number(b)];if(E&&E.type==="element"){let I=E.value.outerHTML;return D||(I=" "+I),P||(I=I+" "),I}else if(E&&E.type==="text"){let I=E.value;return D||(I=" "+I),P||(I=I+" "),I}else A.error("variable type not supported",E,F);return F}));let v=vr(l,n,a||[],i,c),h=wr(l),k="";return g&&(k=`style="${g}"`),p=`<${r} ${k} class="${v.join(" ")}" ${Ln}="1"><${r} class="${h.join(" ")}" ${Ln}="1">${p}`,n||(u==="smart"?p=`
${p}`:p=`${u}${p}`),n&&(u!=="smart"?p=`${u}${p}`:p=`<${r} class="notranslate" ${Ln}="1"> ${p}`),s==="smart"?p=`${p}`:p=`${p}${s}`,{html:p,position:"afterend"}}function dl(e){let t=e[e.length-1];return t?t.text:""}function ln(e){return{globalStyles:e.rule.globalStyles,globalAttributes:e.rule.globalAttributes,selectors:e.rule.selectors,lineBreakMaxTextCount:e.rule.lineBreakMaxTextCount,isTransformPreTagNewLine:e.rule.isTransformPreTagNewLine,excludeSelectors:e.rule.excludeTags.concat(e.rule.additionalExcludeTags).map(n=>n.toLowerCase()).filter(n=>n!=="code"&&n!=="img").concat(e.rule.excludeSelectors).concat(e.rule.additionalExcludeSelectors),blockSelectors:e.rule.allBlockTags.map(n=>n.toLowerCase()).concat(e.rule.extraBlockSelectors),extraBlockSelectors:e.rule.extraBlockSelectors,extraInlineSelectors:e.rule.extraInlineSelectors.concat(e.rule.additionalInlineSelectors),stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(n=>n.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)}}var Bb={sanitize:e=>e};function mi(e,t){e.interruptEffectDOM||(e.walkContainer({id:e.id,container:t,filterRule:ln(e.ctx),onParagraph:Du.bind(null,e),onFrame:n=>{ml(e,n,!0)},onIgnoreElement:n=>{e.ignoreResizeObserver?.observe(n)}}),or&&it(t,"consumeContainer",e.id))}function ml(e,t,n){try{if(e.injectCssToDocument(t,e.ctx),t instanceof HTMLIFrameElement){if(!cr(t))return;A.debug("onFrame fragment",t);let a=t.contentWindow?.document.body;a&&(Sr(a,e,n),e.dynamicContainerObserver?.observe(a,{childList:!0,subtree:!0}))}else A.debug("onFrame shadowRoot",t.host),Sr(t,e,n),e.dynamicContainerObserver?.observe(t,{childList:!0,subtree:!0})}catch{}}function Sr(e,t,n=!0){let{globalStyles:a,globalAttributes:r}=ln(t.ctx),u=0;if(s(t,e,n))return;if(Mn(e)&&i(e)){o(e);return}try{let l=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,c=>(Mn(c)&&(a&&al(c,a),r&&ul(c,r)),s(t,c,n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT));for(qt.mark(l.currentNode,t.id);l.nextNode();){qt.mark(l.currentNode,t.id);let c=l.currentNode;if(i(c))for(o(c);;){if(l.nextSibling()){let g=l.currentNode;if(qt.mark(l.currentNode,t.id),i(g)){o(g);continue}else break}if(!l.parentNode())return}}}catch{}if(u==0&&e instanceof HTMLElement){o(e);return}return t.observeContainers;function o(l){qt.clearMark(l),u++,t.immediateTranslateCapacity>=0?mi(t,l):(or&&it(l,"observeContainer",t.id),t.containerVisibleObserver?.observe(l))}function i(l){let c=l.nodeName.toLowerCase();if(l.shadowRoot)return ml(t,l.shadowRoot,n),!1;if(c==="iframe")return ml(t,l,n),!1;if(["script","#document-fragment","img"].includes(c))return!1;let g=t.containerRule;if(g.selectors&&g.selectors?.length>0)return ri(l,g.selectors);if(g.pageHeight){let m=l.scrollHeight;if(m>0&&m0)return!0}return!1}function s(l,c,g){if(c.nodeName.toLowerCase()=="script")return c.childNodes.length==0||c.childNodes.length==1&&c.childNodes[0].nodeType==Node.TEXT_NODE;if(c.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!1;if(c.nodeType!==Node.ELEMENT_NODE||g&&qt.isMarked(c,l.id))return!0;if(l.ctx.rule.isTransformPreTagNewLine&&c.nodeName==="PRE")return!1;let p=ln(l.ctx);return!!ol(c,{excludeSelectors:p.excludeSelectors,selectors:p.selectors,stayOriginalSelectors:p.stayOriginalSelectors})}}function pl(e,t){if(!e.targetNodes)return;let n=e.state||"original",a=e.commonAncestorContainer;if(!qt.isMarked(a,e.ctxId))return;let r=a.contains(e.rootNodes[0]),u=a.contains(e.targetNodes[0]);if(r&&u)n="dual";else if(r)n="original";else if(u)n="translation";else return;if(t!=n){e.state=t;try{if(n=="dual"&&t=="translation"&&(gi(e.rootNodes),p3(e.commonAncestorContainer)),n=="original"&&t=="translation"){let o=gl(e.rootNodes);gi(e.rootNodes),kr(o,a,e.targetNodes||[]),p3(e.commonAncestorContainer)}if(n=="translation"&&t=="dual"){let o=e.targetNodes[0];kr(o,a,e.rootNodes||[]),f3(e.commonAncestorContainer)}if(n=="original"&&t=="dual"){let o=gl(e.rootNodes);kr(o,a,e.targetNodes||[]),f3(e.commonAncestorContainer)}if(n=="translation"&&t=="original"){let o=gl(e.targetNodes);gi(e.targetNodes),kr(o,a,e.rootNodes||[])}n=="dual"&&t=="original"&&gi(e.targetNodes)}catch(o){A.error(o)}}}function p3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-translation]").forEach(a=>{it(a,"immersiveTranslateClassBak",a.className),a.className="notranslate immersive-translate-target-dual"});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.add("immersive-translate-state-dual")}function f3(e){if(!Mn(e))return;e.querySelectorAll("font[class*=immersive-translate-target-dual]").forEach(a=>{let r=sr(a,"immersiveTranslateClassBak");Bo(a,"immersiveTranslateClassBak"),a.className=r});let n=e.querySelector(".immersive-translate-target-wrapper");n&&n.classList.remove("immersive-translate-state-dual")}function gl(e){return e?e[e.length-1].nextSibling:null}function gi(e){(e||[]).forEach(t=>t.parentNode?.removeChild(t))}function kr(e,t,n){let a=e;t&&(a?n.forEach(r=>{a.parentNode?.insertBefore(r,a)}):n.forEach(r=>{t.appendChild(r)}))}var Rb=At(hl,300);async function Du(e,t,n=!1){if(e.interruptEffectDOM)return;let a=t.commonAncestorContainer;if(a instanceof ShadowRoot||Ib(t.rootNodes)||t.stepState>=2)return;t.stepState=2,or&&it(a,"onParseParagraph",e.id);let{ctx:r}=e,{rule:u}=r,o=lr(r),i=di(t.flatNodes,{isPreWhitespace:t.isPreWhitespace||!1,delimiters:o,stayOriginalSelectors:r.rule.stayOriginalTags.concat(r.rule.stayOriginalTags).map(l=>l.toLowerCase()).concat(r.rule.stayOriginalSelectors).concat(r.rule.additionalStayOriginalSelectors)});if(!i)return;t.variables=i?.variables||{},t.text=i?.text;let s=await bl(t,{excludeLanguages:r?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:r.state.isDetectParagraphLanguage,targetLanguage:r.targetLanguage,noTranslateRegexp:r.rule.noTranslateRegexp,delimiters:ni(r.config.translationServices[r.translationService]?.placeholderDelimiters),minTextCount:n||r.state.translationArea==="body"?2:u.paragraphMinTextCount,minWordCount:n||r.state.translationArea==="body"?1:u.paragraphMinWordCount,ignoreZhCNandZhTW:r.rule.ignoreZhCNandZhTW});if(s){if(A.debug("on paragraph",s.text,s),a.paragraphs=a.paragraphs||[],a.paragraphs.includes(s))return;a.paragraphs.push(s),e.immediateTranslateCapacity>0||n?(Ob(e,t.text),fl(e,t)):(or&&it(a,"observeParagraph",e.id),e.observeParagraphs.push(s),e.paragraphVisibleObserver?.observe(a))}return s}function Ib(e){if(!e)return!1;let t=e[e.length-1].nextSibling;return t?Mn(t)&&t.classList.contains(rn):!1}function Ob(e,t){e.ctx.state.translationStartMode!=="immediate"&&(e.immediateTranslateCapacity-=t?.length||0)}function fl(e,t){if(e.interruptEffectDOM||t.stepState>=3)return;t.stepState=3;let n=e.autoIncreaseParagraphId++;t.id=n.toString(),e.paragraphEntities[n]=t,e.paragraphQueue.push(n.toString()),or&&it(t.commonAncestorContainer,"consumeParagraph",e.id),Rb.call(e,e.ctx)}async function hl(e){if(this.interruptEffectDOM)return;let t=this.paragraphQueue;this.paragraphQueue=[];let n=[];for(let a=0;a0)try{await _n(a,t,(r,u,o)=>{let i=o.id,s=Nb(e,i.toString());s&&Ub.call(null,r,u,o,s,t,n)})}catch(r){A.error("translateCurrentQueue error",r);return}}function Nb(e,t){return e.find(n=>n.id===t)}function Ub(e,t,n,a,r,u){let o=!1;a.id=="1"&&setTimeout(()=>{let s=document.querySelector(`.${X}-tooltip-content`);s&&(s.style="display:block")},500);let i=a;if(Tr(i.commonAncestorContainer,n.id)?.remove(),i&&(e||!t)){e||(A.error("translate error",n,e,t),e=new Error("no response from server"));let{rule:s}=r,l=n.id,c=document.createElement(s.targetWrapperTag);it(c,Tg,l.toString()),c.classList.add("notranslate",rn,rn+"-error"),c.setAttribute("translate","no"),c.setAttribute("lang",r.targetLanguage);let g=a.rootNodes[a.rootNodes.length-1].nextSibling;kr(g,a.commonAncestorContainer,[c]);let m=e.message.replaceAll(` +`,"");if(m=m.replaceAll('"',"""),i&&(i.error=new Error(m)),c){let p=Ia(an,"retryAllParagraphs",r.config.interfaceLanguage,"zh-CN"),f=Ia(an,"errorTooltipTitle",r.config.interfaceLanguage,"zh-CN"),S=`<${s.targetWrapperTag} class="${X}-error notranslate"><${s.targetWrapperTag} class="${X}-error-wrapper">\u{1F504}  \u2753`;c.innerHTML=_e.sanitize(S)}}else if(a){i.error=void 0,a.targetText=t?.text||"";let s=m3(a,r),l=document.createElement(r.rule.targetWrapperTag);l.classList.add("notranslate",rn),l.setAttribute("lang",r.targetLanguage),l.setAttribute(Ln,"1");let c=Bb.sanitize(s);l.innerHTML=c,a.targetNodes=[l],pl(a,u),o=!0}else A.error("paragraph not found",n.id);document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:o}})}))}async function bl(e,t){let{text:n}=e,a=await lt({text:n||"",minLength:10}),{targetLanguage:r}=t;if(!Km({text:n||"",delimiters:t.delimiters,minWordCount:t.minWordCount,minTextCount:t.minTextCount,noTranslateRegexp:t.noTranslateRegexp}))return null;let o=t.excludeLanguages||[],i="auto";t.isDetectParagraphLanguage||(i=yr());let s=Pn(),l=a;l==="auto"&&(l=s),e.languageByLocal=l,e.languageByClient=i;let c=i!=="auto"?i:l;return sa(c,r,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW})||o.length>0&&o.some(p=>sa(c,p,{ignoreZhCNandZhTW:t.ignoreZhCNandZhTW}))?null:e}var jb=[];function h3(e){jb.push(e)}function b3(e){let t=document.querySelector("title"),n;return t&&(n=new MutationObserver(function(a){a.length>0&&(a[0].target.text.includes(So)||yl(e).catch(u=>{A.error("translateTitle error:",u.name,u.message,u.details||"")}))}),n.observe(t,{subtree:!0,characterData:!0,childList:!0})),n}var fi="";async function yl(e){let t=document.title;if(!t||t.includes(So))return;fi!==t&&(fi=t);let n=await bn(e,t);if(!ai(e,n))try{let a=await ha({id:0,url:e.url,text:t,from:n,to:e.targetLanguage,fromByClient:n},e);a&&a.text&&(document.title=fi+So+a.text)}catch(a){throw a}}function y3(e){e.rule.isTranslateTitle&&(document.title=fi)}var Tl="Original";function Ke(){return Tl}function Nt(e){Tl=e,T3(Tl)}var El;function E3(e){let t=e.ctx.rule.aiRule;if(A.debug("aiRule",t),!t||Object.keys(t).length===0)return;let a=ln(e.ctx),r=a.excludeSelectors.indexOf(`${t.messageWrapperSelector} *`);a.excludeSelectors.splice(r,1);let u,o;document.querySelectorAll(`${t.messageWrapperSelector} > *`).forEach(l=>{hi(e,l,a)}),El=new MutationObserver(l=>{l.forEach(function(c){if(Mn(c.target)){if(o==u&&c.target===u&&c.type==="attributes"){s();return}if(c.removedNodes.length>0&&o&&o!=u){c.removedNodes?.forEach(g=>{g===u&&s()});return}if(i(c.target),o&&c.target==o&&t.streamingSelector.indexOf(t.messageWrapperSelector)>=0&&o!==u){if(o.translated)return;o.translated=!0,A.debug("\u4E0D\u4E00\u6837\u9700\u8981\u5EF6\u8FDF\u7FFB\u8BD1",o),hi(e,o,a);return}t.streamingChange&&u&&(c.target===o||c.target.parentNode===o)&&c.addedNodes.forEach(g=>{let m=g.previousSibling;!m||m.translated||(m.translated=!0,setTimeout(()=>{m.childNodes[0]?.translated||(A.debug("\u7FFB\u8BD1\u4E0A\u4E00\u4E2A\u6BB5\u843D",m),hi(e,m,a))},100))})}})}),El.observe(document.body,{attributes:!0,childList:!0,subtree:!0});function i(l){$n(l,[t.streamingSelector])&&(u=l,A.debug("streamingNode",u)),$n(l,[t.messageWrapperSelector])&&(o=l,A.debug("markdownNode",o))}function s(){o.childNodes.forEach(l=>l.translated=!1),A.debug("\u7ED3\u675F\u7FFB\u8BD1\u5168\u90E8",o),hi(e,o,a),u=void 0,o=null}}function hi(e,t,n){ma({id:e.id,container:t,filterRule:n,force:!0,onParagraph:a=>{Du(e,a,!0)},onFrame:()=>{},onIgnoreElement:()=>{}})}function x3(){El?.disconnect()}var J=null;function yi(){return J||null}function Ti(e){zb(e),Gb(e),qb(e),Vb(e),ua(document,e),Nt("Translated"),Kb(J),$b(J),h3(ba),Hb(J)}function zb(e){e.rule.initialSelectorGlobalAttributes&&Zm(document.body,e.rule.initialSelectorGlobalAttributes,e.rule.asideMaxTextCount,e.rule.asideMaxWordCount,e.rule.asideMaxTextCountPerParagraph,e.rule.asideMaxWordCountPerParagraph)}function Hb(e){E3(e)}function Wb(){x3()}function $b(e){e.ctx.isMutationTranslationExcludeUrl||e.dynamicContainerObserver?.observe(document.body,{subtree:!0,childList:!0});let t=[];e.ctx.rule.mainFrameSelector&&(t=[...document.querySelectorAll(e.ctx.rule.mainFrameSelector||"")]),t.length<=0&&(t=[document.body]),t.forEach(n=>{Sr(n,e)})}async function qb(e){if(!e.state.isAutoTranslate&&e.config.tempTranslateDomainMinutes>0){let t=Date.now(),a=new URL(e.url).hostname,r=e.localConfig.tempTranslationUrlMatches||[],u=r.findIndex(i=>i.match===a&&i.expiredAt>t),o=!1;u>-1||(r.push({match:a,expiredAt:t+e.config.tempTranslateDomainMinutes*60*1e3}),o=!0),o&&await Wn({...e.localConfig,tempTranslationUrlMatches:[...r]})}}function Kb(e){e.ctx.rule.isTranslateTitle&&(yl(e.ctx),e.titleDynamicObserver=b3(e.ctx))}function Vb(e){if(e.rule.normalizeBody&&document.querySelector(e.rule.normalizeBody)){let n=document.body.innerHTML;document.body.innerHTML="",document.body.innerHTML=n}}function Gb(e){let t=Zt();J&&(t=J.id),J=J||{},J.ctx=e,J.id=t,J.paragraphQueue=J.paragraphQueue||[],J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.containerRule={pageHeight:screen.availHeight,selectors:J.rule.selectors},J.paragraphEntities=J.paragraphEntities||{},J.autoIncreaseParagraphId=J.autoIncreaseParagraphId||1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.immediateTranslateCapacity=e.state.immediateTranslationTextCount,J.observeContainers=J.observeContainers||[],J.observeParagraphs=J.observeParagraphs||[],J.dynamicContainerObserver=J.dynamicContainerObserver||Qb(J),J.ignoreResizeObserver=J.ignoreResizeObserver||ey(J),J.containerVisibleObserver=J.containerVisibleObserver||Yb(J),J.paragraphVisibleObserver=J.paragraphVisibleObserver||Xb(J),J.injectCssToDocument=bi,J.walkContainer=ma,J.translateState=e.state.translationMode||e.config.translationMode||"dual",J.allInlineWindows=[window],window.onerror=Jb(J,e),window.immersiveTranslateSwitchTranslateState=Cl.bind(J)}function v3(e,t){t.getRootNode()instanceof ShadowRoot?bi(t.getRootNode(),e):bi(t.ownerDocument,e),xl(e)}function xl(e){J||(J={},J.ctx=e,J.id=Zt(),J.paragraphQueue=[],J.injectCssToDocument=bi,J.rule={excludeSelectors:ln(e).excludeSelectors,selectors:e.rule.selectors},J.currentUrl=window.location.href,J.paragraphEntities={},J.autoIncreaseParagraphId=1,J.interruptEffectDOM=!1,J.urlChangeDelay=e.rule.urlChangeDelay,J.translateState=e.config.translationMode||"dual",J.observeContainers=[],J.observeParagraphs=[],J.allInlineWindows=[window],window.switchTranslateState=Cl.bind(J))}function ba(e=!0){J&&(Nt("Original"),Wb(),J.interruptEffectDOM=!0,J.ignoreResizeObserver?.disconnect(),J.dynamicContainerObserver?.disconnect(),J.containerVisibleObserver?.disconnect(),J.paragraphVisibleObserver?.disconnect(),J.titleDynamicObserver?.disconnect(),y3(J.ctx),Wm(),$m(),e&&Cl.call(J,"original"),Object.values(J.paragraphEntities).forEach(t=>{t.commonAncestorContainer.paragraphs=null}),J=null)}function Jb(e,t){e.interruptEffectDOM=!1;let n;return function(a){let r=a.message,u=!1;return r?.indexOf("Minified React error")>=0&&(u=!0),u&&(clearTimeout(n),ba(),n=setTimeout(()=>{Ti(t)},e.urlChangeDelay||2e3)),!0}}function Yb(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{a.intersectionRatio>0&&(mi(e,a.target),n.unobserve(a.target))})})}function Xb(e){return new IntersectionObserver((t,n)=>{e.interruptEffectDOM||t.forEach(a=>{if(a.intersectionRatio>0){let r=a.target;(r.paragraphs||[]).forEach(o=>{fl(e,o)}),n.unobserve(r)}})})}var C3;function Zb(e){if(e.urlChangeDelay<=0)return!1;let n=(window.location.href||"").split("#")[0];return e.currentUrl.split("#")[0]!=n?(clearTimeout(C3),e.translateState=="original"?!1:(ba(e.urlChangeDelay>20),C3=setTimeout(()=>{let r=e.ctx;Ti(r)},e.urlChangeDelay),!0)):!1}function Qb(e){return new MutationObserver(t=>{if(!Zb(e)&&!e.interruptEffectDOM)for(let n of t){if((n.addedNodes||[]).length<=0||n.target.nodeType!==Node.ELEMENT_NODE||!qt.isSkipMarkEle(n.target)&&!qt.isMarked(n.target,e.id))continue;let r=(n.target?.paragraphs||[]).reduce((u,o)=>{let i=o.rootNodes||[],s=o.targetNodes||[];return[...u,...i,...s]},[]);if(n.addedNodes.length>0&&n.addedNodes.length===n.target.childNodes.length&&$n(n.target,e.ctx.rule.mutationObserverContainerSelectors)){qt.clearMark(n.target),n.target.paragraphs=void 0,mi(e,n.target);return}n.addedNodes.forEach((u,o)=>{u.nodeType===Node.ELEMENT_NODE&&(r.includes(u)||Sr(u,e))})}})}function ey(e){return new ResizeObserver((t,n)=>{if(!e.interruptEffectDOM)for(let a of t){if(a.target.nodeType!==Node.ELEMENT_NODE)return;let r=a.target,u=globalThis.getComputedStyle(r);rl(u)||(n.unobserve(a.target),Sr(r,e))}})}function Cl(e){this.translateState=e,Object.values(this.paragraphEntities).forEach(t=>{pl(t,e)}),e=="original"&&document.querySelectorAll(`.${rn}`).forEach(t=>t.remove())}function bi(e,t){if(e instanceof HTMLIFrameElement){ua(e.contentDocument,t);return}ua(e,t)}async function w3(e){let t=Ct(),n="auto";if(le()){let a="";e.rule.isEbook||e.rule.isEbookBuilder?a=I0(e.mainFrame):a=ir(e.mainFrame).slice(0,1e3),n=await lt({text:a})}else if(t)n=await lt({text:ir(e.mainFrame).slice(0,1e3)});else if(e.rule.isEbook||e.rule.isEbookBuilder){let a="";a=I0(e.mainFrame),n=await lt({text:a})}else n=await S3();return n==="auto"&&(n=await c3()),ti(n),n}async function k3(){if(!J)return;document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let e=J.paragraphEntities,t=Object.keys(e);for(let n of t){let a=e[n];if(a.error){J.paragraphQueue.push(n);let u=a.commonAncestorContainer.querySelector(`[${vo}='${n}']`);u&&u.remove()}}hl.call(J,J.ctx)}var A3={"zh-CN":{"languages.en":"\u82F1\u8BED","languages.ja":"\u65E5\u8BED","languages.ko":"\u97E9\u8BED","languages.es":"\u897F\u73ED\u7259\u8BED","languages.fr":"\u6CD5\u8BED","languages.de":"\u5FB7\u8BED","languages.it":"\u610F\u5927\u5229\u8BED","languages.pt":"\u8461\u8404\u7259\u8BED","languages.ru":"\u4FC4\u8BED","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"},"zh-TW":{"languages.en":"\u82F1\u8A9E","languages.ja":"\u65E5\u8A9E","languages.ko":"\u97D3\u8A9E","languages.es":"\u897F\u73ED\u7259\u8A9E","languages.fr":"\u6CD5\u8A9E","languages.de":"\u5FB7\u8A9E","languages.it":"\u610F\u5927\u5229\u8A9E","languages.pt":"\u8461\u8404\u7259\u8A9E","languages.ru":"\u4FC4\u8A9E","languages.wyw":"\u6587\u8A00\u6587","languages.":"\u5168\u90E8"}},D3={...an,"zh-CN":{...A3["zh-CN"],...an["zh-CN"]},"zh-TW":{...A3["zh-TW"],...an["zh-TW"]}},Ar=D3;function ya(e,t,n){return Ia(D3,e,t,Ao,n)}var Ei=()=>Xt.filter(e=>e!=="auto"),kt=(e,t,n,a)=>{let r=Dg[e]||e,u=Lg[e],o=Pg[e],i={"zh-CN":u,"zh-TW":o,en:r};if(n)return i[e]?i[e]:r;if(i[t]){let s=i[t];return a||e==="auto"||e==="placeholder"?s:`${s} (${r})`}else return r};function Dr(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(a=>{A.error("send content message request failed",e,a)}),document.querySelectorAll("iframe").forEach(a=>{a.contentWindow&&a.contentWindow.postMessage({author:xo,payload:e},"*")});let n=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(n)}function vl(e){let t=e.shortcuts||{},a=Object.keys(t).reduce((u,o)=>(u[t[o]]=o,u),{}),r=Object.keys(a);for(let u of r){let o=u.replace(/MacCtrl/ig,"Ctrl");o&&Ne(o,i=>{i.preventDefault(),Dr({method:a[u]})})}}var St=class{constructor(t){this.strictTicks=[];this.options=t,this.setOptions(t)}setOptions(t){t&&(t.interval!==void 0&&(this.options.interval=Number(t.interval)),t.limit!==void 0&&(this.options.limit=Number(t.limit)))}wait(){return new Promise((t,n)=>{setTimeout(t,this.getDelay())})}getDelay(){let t=this.strictTicks,n=this.options.limit,a=this.options.interval,r=Date.now();if(t.length=u?(t.push(r),0):(t.push(u),u-r)}};function Ta(e){return e!=null}function M3(e,t,n){return`${e.type}#${t}#${n}`}function F3(e,t,n,a,r){return{body:r,id:a,type:M3(e,t,n)}}function ty(e,t,n,a){return{id:n,response:a,type:M3(e,"ask",t)}}function _3(e,t,n,a){if(Ta(a)){let r=a.type;if(Ta(r)&&Ta(a.body)){let[u,o,i]=r.split("#");return u===e.type&&o===t&&i===n}else return!1}else return!1}function ny(e,t,n){if(Ta(n)){let a=n.type;if(Ta(a)&&Ta(n.response)){let[r,u,o]=a.split("#");return r===e.type&&u==="ask"&&o===t}else return!1}else return!1}function ay(e){e.forEach(([t,n])=>t.removeEventListener("message",n)),e.length=0}function ry(e,t,n,a){return new Promise(r=>{let u=o=>{let i=o.data;ny(t,n,i)&&i.id===a&&(e.removeEventListener("message",u),r(i.response))};e.addEventListener("message",u)})}function uy(e,t,n,a){let r=u=>{let o=u.data;_3(t,"tell",n,o)&&a(o.body)};return e.addEventListener("message",r),[e,r]}function L3(e,t,n,a,r,u){let o=async i=>{let s=i.data;if(_3(n,"ask",a,s)){let l=await u(s.body);t=i.source,t.postMessage(ty(n,a,s.id,l),i.origin)}};return e.addEventListener("message",o),[e,o]}function oy(e,t,n,a,r){let u=Math.random().toString();return e.postMessage(F3(t,"tell",n,u,a),r)}async function P3(e,t,n,a,r,u,o){let i=Math.random().toString(),s=new Promise(async(l,c)=>{let g=setTimeout(()=>c(new Error(`Failed to get response within ${o}ms`)),o),m=await ry(e,n,a,i);clearTimeout(g),l(m)});return t.postMessage(F3(n,"ask",a,i,r),u),s}var Bn=class{constructor(t,n,a=window,r="*"){this.protocol=t;this.targetWindow=n;this.thisWindow=a;this.targetOrigin=r;this.listeners=[];L3(a,n,this.getSystemProtocol("ping"),"ping",r,()=>Promise.resolve({}))}static async connect(t,n=10,a=500){for(let r=0;r<=n;r++)try{return await t.ping({timeout:a}),t}catch{continue}throw new Error(`Could not connect on protocol ${t.protocol.type} after ${n*a}ms`)}static parent(t,n,a="*",r=window){let u=n.contentWindow;if(Ta(u))return new Bn(t,u,r,a);throw new Error("iframe.contentWindow was null")}static iframe(t,n="*",{thisWindow:a=window,targetWindow:r=window.parent}={}){return new Bn(t,r,a,n)}static rootIframe(t,n="*",{thisWindow:a=window}={}){return new Bn(t,null,a,n)}getSystemProtocol(t){return{type:`system|${t}`}}async ping({timeout:t=1e4}){await P3(this.thisWindow,this.targetWindow,this.getSystemProtocol("ping"),"ping",{data:{},payload:{}},this.targetOrigin,t)}handleTell(t,n){this.listeners.push(uy(this.thisWindow,this.protocol,t,n))}tell(t,n){oy(this.targetWindow,this.protocol,t,n,this.targetOrigin)}handleAsk(t,n){this.listeners.push(L3(this.thisWindow,this.targetWindow,this.protocol,t,this.targetOrigin,n))}ask(t,n,a=1e4){if(this.targetWindow)return P3(this.thisWindow,this.targetWindow,this.protocol,t,n,this.targetOrigin,a);throw new Error("target window is requried")}destroy(){ay(this.listeners)}};var iy;function xi(){return iy}var sy=new St({limit:7,interval:1250}),ly={tencent:new St({limit:3,interval:1350}),baidu:new St({limit:1,interval:1550}),strict:new St({limit:1,interval:1050}),d:new St({limit:1,interval:1050}),youdao:new St({limit:5,interval:1050}),you:new St({limit:5,interval:1050}),cai:new St({limit:5,interval:1050}),google:new St({limit:10,interval:1050}),deepl:new St({limit:10,interval:1050}),transmart:new St({limit:30,interval:1050}),papago:new St({limit:3,interval:1150}),openai:new St({limit:10,interval:1300}),chatgpt:new St({limit:1,interval:1350})};function Lu(e){return ly[e]||sy}async function B3(e){if(Ct()){let n=xi();if(n)try{return(await n.ask("getRateLimitDelay",{key:e})).value}catch(a){return A.error("can not comunicate with root frame, use strict limiter",a),Lu("strict").getDelay()}else return Lu("strict").getDelay()}else return Lu(e).getDelay()}async function R3(e,t){if(!Ct()){let a=Lu(e);t&&a.setOptions(t)}}async function I3(e){let t=e.key;return{value:Lu(t).getDelay()}}var Ci=new Map;async function wl(e){let t=e.url;if(e.method&&(t+=e.method),e.body&&(t+=ca(e.body)),Ci.has(t))return Ci.get(t);let n=ue(e);Ci.set(t,n);try{return await n}catch(a){throw a}finally{setTimeout(()=>{Ci.delete(t)},3e4)}}async function O3(e){return wl(e)}async function Pu(e){if(Ct()){let n=xi();if(n)try{return await n.ask("throttleRequest",e)}catch(a){throw A.error("can not comunicate with root frame, use strict limiter",a),a}else return wl(e)}else return wl(e)}var Pr={},cy={root:"",lang:"en",fallbackLang:"en"};function kl(e,t){let n=Object.assign({},cy,e);Pr=t||Pr;let[a,r]=H(n.lang),[u,o]=H(Pr),[i,s]=H(!1),l=g=>{if(u.hasOwnProperty(g))return;s(!1);let m=d3(n.root||"",g);n.getUrl&&(m=n.getUrl(n.root||"",g),fetch(m).then(p=>p.json()).then(p=>{Pr[g]=p,o({...Pr}),s(!0)}).catch(p=>{o({...Pr}),s(!0)}))};return ke(()=>{l(n.fallbackLang||"en"),l(a)},[a]),{lang:a,setLang:r,t:(g,m)=>{if(!u.hasOwnProperty(a))return g;let p=Au(u,a,g);return p===g&&a!==n.fallbackLang&&(p=Au(u,n.fallbackLang,g)),ll(p,m)},isReady:i}}var Al=Ju(null),Sl={root:"assets",lang:"en",fallbackLang:"en"},vi=e=>{let{t,setLang:n,lang:a,isReady:r}=kl({root:e.root||Sl.root,lang:e.lang||Sl.lang,fallbackLang:e.fallbackLang||Sl.fallbackLang,getUrl:e.getUrl},e.translations);return d(Al.Provider,{value:{t,setLang:n,lang:a,isReady:r},children:e.children})};function N3(e,t,n){let a=[];n||(n={}),t!=="auto"&&!n[t]&&(n[t]={matches:[],excludeMatches:[]}),a=t!=="auto"?n[t].matches:[];let r={},u=Object.keys(n);for(let l of u){let g=n[l].matches;for(let m of g)r[m]||(r[m]=[]),r[m].push(l)}let o=r[e];if(o&&o.length>0)for(let l of o)n[l].matches.indexOf(e)>-1&&(n[l]={...n[l],matches:n[l].matches.filter(g=>g!==e)});let i=new Set(a);if(t==="auto")return{...n};i.add(e);let s=Array.from(i);return{...n,[t]:{...n[t],matches:s}}}function Mu(e,t=2e3){return n=>{let a,r=0;return u=>{++r==e&&(n(u),r=0),clearTimeout(a),a=setTimeout(()=>r=0,t)}}}function U3(e){let t;try{t=new URL(e)}catch{return!1}let n=j3(),a="";try{a=new URL(n).hostname}catch{}return a&&t.hostname===a?!0:!(dy(e)||t.protocol!=="http:"&&t.protocol!=="https:"&&t.protocol!=="file:"&&t.protocol!=="data:")}function dy(e){try{return new URL(e)?.pathname.toLowerCase().endsWith(".pdf")}catch{return!1}}function z3(e){let t=e.split(".");return t.length>2?(t[0]="*",t.join(".")):null}function H3(e){let t=e.indexOf("#");return t===-1?e:e.slice(0,t)}function qn(e){let{items:t,maxWidth:n}=e;return n=n||128,d("select",{autoComplete:"off",class:"min-select",style:{maxWidth:`${n}px`},value:t.find(a=>a.selected)?.value,onChange:a=>{let r=a.target.value,u=t.find(o=>o.value===r);u&&u.onSelected(u)},children:t.map((a,r)=>d("option",{value:a.value,selected:a.selected,children:a.label},"selectlink"+r))})}function W3(e){let{items:t,maxWidth:n,isInput:a,value:r}=e;return n=n||128,a?d("input",{value:r,onChange:u=>{e.onChange(u.target.value)}}):d("select",{autoComplete:"off",style:{maxWidth:`${n}px`},value:t.find(u=>u.selected)?.value,onChange:u=>{let o=u.target.value,i=t.find(s=>s.value===o);i&&i.onSelected(i)},children:t.map((u,o)=>d("option",{value:u.value,selected:u.selected,children:u.label},"selectlink"+o))})}var wi="DROP_DOWN_DEFAULT_VALUE";function Dl(e){let{showArrow:t,onSelected:n,className:a,menus:r,maxWidth:u}=e;a=a||"",t=t??!0,u=u||70;let o=kn(null);return d("select",{ref:o,autoComplete:"off",class:`min-select ${t?"":"min-select-no-arrow"} ${a||""}`,value:wi,style:{maxWidth:`${u}px`},onChange:i=>{i.preventDefault();let s=i.target.value;if(o.current&&s!==wi){o.current.value=wi,o.current?.dispatchEvent(new Event("change"));let l=r.find(c=>c.value===s);l&&n(l)}},children:[{value:wi,label:e.label}].concat(r).map((i,s)=>d("option",{value:i.value,children:i.label},"option-"+s))})}function he(){return Qu(Al)}function Ll(e){let{field:t,onChange:n,value:a}=e;a=a||t.default||"";let{t:r}=he(),u=t.name;return t.label&&(u=t.label),t.labelKey&&(u=r(t.labelKey)),t.type==="select"?d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[u,"\uFF1A"]}),d(qn,{items:t.options.map(o=>({label:`${o.label?r(o.label):o.value}`,value:o.value,selected:a===o.value,onSelected:()=>{n(o.value)}}))})]}):null}function Ea(e,t){return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})>=0}var gy=({date:e})=>{let{t}=he(),[n,a]=H(!1);return ke(()=>{setTimeout(()=>{a(!0)},5e3)},[]),n?null:d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},my=({minVersion:e})=>{let{t}=he();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},py=()=>{let{t:e}=he();return d("p",{class:"text-sm",dangerouslySetInnerHTML:{__html:e("badUserscriptBrowser",{1:"https://immersivetranslate.com/docs/installation/"})}})},fy=({message:e,handleSyncing:t,date:n})=>{let{t:a}=he();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function Pl(e){let{isShowError:t,request:n}=e,[a,r]=H(null),{t:u}=he(),[o,i]=H(null),[s,l]=H(null),[c,g]=H(""),[m,p]=H(!1),[f,S]=H(!1),[v,h]=H(!1),[k,F]=H(null),[M,D]=H(null),P=da(),w=async()=>{g("");let x=o;if(o===null)try{let b=await n({url:aa});b?(i(b),x=b,p(!0)):(g(u("unknownError")),l(null))}catch(b){l(null),g(b.message);return}x!==null?(e.setStorageBuildinConfig(x),l(!1),r(x.buildinConfigUpdatedAt)):(g(u("canNotFetchRemoteRule")),l(null))};return ke(()=>{ze().then(x=>{let b=x.buildinConfigUpdatedAt;F(x);let E=new Date(b);if(r(b),P==="0.0.0"){h(!0);return}n({url:aa}).then(I=>{let L=I,W=L.minVersion,_=P;i(L);let B=L.latestVersion;if(B&&(Ea(_,B)?D(!0):D(!1)),Ea(_,W)){let G=L.buildinConfigUpdatedAt;new Date(G)>E?(l(!0),w()):l(!1)}else S(!0),l(null)}).catch(I=>{l(null),g(I.message)})})},[]),ke(()=>{ze().then(x=>{F(x)})},[a]),k?d("div",{class:"text-sm mt-2",style:{maxWidth:218},children:v?d(py,{}):c?t===!1?null:d(fy,{handleSyncing:w,message:c,date:a||""}):f?t===!1?null:d(my,{minVersion:o.minVersion}):s===null||s===!0?null:m?d(gy,{date:a}):null}):null}function Ml(e){let t=da(),{onTranslateTheMainPage:n,onUserConfigChange:a,request:r,onTranslateLocalHtmlFile:u,onSwitchTranslationMode:o,onTranslateLocalSubtitleFile:i,onSetBuildinConfig:s,pageStatus:l,openEbookBuilderPage:c,openEbookViewerPage:g,config:m,openAboutPage:p,onTranslateTheWholePage:f,onToggleEnabled:S,openOptionsPage:v,ontranslateToThePageEndImmediately:h,onSetPageLanguage:k,onToggleTranslate:F,onTranslateLocalPdfFile:M,onTranslatePdf:D,onRestorePage:P,ctx:w,currentUrl:x,currentLang:b,onClose:E,onTranslatePage:I,onSetLocalConfig:L,onMouseTriggerChanged:W,errorMsg:_,disabledButton:B,noPermissionPDF:G}=e,re=a,[ye,V]=H(""),[ge,de]=H(_),{t:C,lang:z}=he(),Z=60;z.startsWith("zh")||(Z=65);let pe=null,se=null,R=null,O=null,ae=null,ee=null,ne=null,te=null,oe=null,Y=null,ce=null,Le=null,Oe=!0;if(m){Dt()&&m&&(Oe=m.generalRule.showSponsorOnSafari);let{translationService:U,translationServices:me,translationUrlPattern:Be}=m;hn[U]&&(te=q0(U,w)),me&&me[U]?Le=me[U]||{}:Le={};try{oe=new URL(x||"")}catch{}if(x&&U3(x)){Y=z3(oe.hostname),ce=H3(x);let{matches:Se,excludeMatches:De}=Be;se=Se.includes(Y),pe=Se.includes(oe.hostname),O=De.includes(Y),R=De.includes(oe.hostname),ee=Se.includes(ce),ne=De.includes(ce)}}if(m&&b&&b!=="auto"){let{translationLanguagePattern:U}=m,{matches:me}=U;me.includes(b)?ae=!0:ae=!1}let fe=U=>{U.preventDefault(),v()},Xe=U=>{re(me=>(me.alpha?V("Success disable alpha!"):V("Success enable alpha!"),{...me,alpha:!me.alpha}))},pt=U=>{re(me=>({...me,translationMode:U})),o(U)},We=()=>{re(U=>({...U,translationArea:"body"})),f()},$e=()=>{re(U=>({...U,translationArea:"main"})),n()},qe=(U,me,Be,Se)=>{if(U==="default"){re(Et=>{let Pe={...Et.translationUrlPattern};return{...Et,translationUrlPattern:{...Et.translationUrlPattern,matches:Ye([oe?.hostname,Y,x],Pe.matches),excludeMatches:Ye([oe?.hostname,Y,x],Pe.excludeMatches)}}});return}let De=U,Ge=De==="matches"?"excludeMatches":"matches";oe&&re(Et=>{let Pe={...Et.translationUrlPattern};return Pe[De]=un(me,Pe[De]),Se.length>0&&(Pe[De]=Ye(Se,Pe[De])),Pe[Ge]=Ye(Be,Pe[Ge]),{...Et,translationUrlPattern:{...Et.translationUrlPattern,...Pe}}}),De==="matches"&&l==="Original"?setTimeout(()=>{I(),E()},100):De==="excludeMatches"&&l==="Translated"&&setTimeout(()=>{P(),E()},100)},Ht=U=>{if(!U){re(Se=>{let De={...Se.translationLanguagePattern};return{...Se,translationLanguagePattern:{...Se.translationLanguagePattern,matches:Ye(b,De.matches),excludeMatches:Ye(b,De.excludeMatches)}}});return}let me=U,Be=me==="matches"?"excludeMatches":"matches";b&&re(Se=>{let De={...Se.translationLanguagePattern};return De[me]=un(b,De[me]),De[Be]=Ye(b,De[Be]),{...Se,translationLanguagePattern:{...Se.translationLanguagePattern,...De}}}),me==="matches"&&l==="Original"&&setTimeout(()=>{I(),E()},100)},Jn=oe?.pathname.toLowerCase().endsWith(".pdf"),Ze=C("translate");l==="Translated"||l==="Error"?Ze=C("show-original"):l==="Original"?Jn?Fa()&&oe.protocol==="file:"||G?Ze=C("translate-firefox-local-pdf"):le()?Ze=C("noSupportTranslate-pdf"):Ze=C("translate-pdf"):Ze=C("translate"):Ze=C(l);let wn=C("translateToThePageEndImmediately");(l==="Original"||l==="Translated")&&(m.shortcuts.toggleTranslatePage&&(mr()&&w.rule.fingerCountToToggleTranslagePageWhenTouching>=2?Ze+=` (${C(`fingers.${w.rule.fingerCountToToggleTranslagePageWhenTouching}`)})`:Ze+=` (${m.shortcuts.toggleTranslatePage})`),m.shortcuts.toggleTranslateToThePageEndImmediately&&(wn+=` (${m.shortcuts.toggleTranslateToThePageEndImmediately})`));let dn=[];w&&(dn=$o(w));let ft=U=>{U.preventDefault(),E()},Vt=Mr(w.config.translationService,w.config.targetLanguage);return d("div",{class:"p-3",children:[d("div",{class:"text-sm",children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[C("popupSourceLanguage"),"\uFF1A"]}),d(qn,{items:Xt.map(U=>({label:kt(U,m.interfaceLanguage),value:U,selected:U===w.sourceLanguage,onSelected:me=>{k(me.value)}}))})]}),m&&m.targetLanguage&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[C("popupTarget"),"\uFF1A"]}),d(qn,{items:Vt.filter(U=>U!=="auto").map(U=>({label:kt(U,m.interfaceLanguage),value:U,selected:U===m.targetLanguage,onSelected:me=>{re(Be=>({...Be,targetLanguage:me.value}))}}))})]}),te&&dn.length>0&&d(rt,{children:[d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[C("popupService"),"\uFF1A"]}),d(qn,{items:dn.map(U=>({label:`${C("translationServices."+U.id)}${U.ok?"":" "+C("needAction")}`,value:U.id,selected:U.selected,onSelected:me=>{let Be=dn.find(Se=>Se.id===me.value);Be.ok?(re(Se=>({...Se,translationService:Be.id})),Be.props.length===0?setTimeout(()=>{I()},1):setTimeout(()=>{P()},1)):(re(Se=>({...Se,translationService:Be.id})),setTimeout(()=>{v()},100))}}))})]}),Le&&te.props.length>0&&te.props.map((U,me)=>d("div",{class:"pl-4 text-sm",children:d(Ll,{field:U,value:Le[U.name],onChange:Be=>{re(Se=>{let De=Se.translationServices||{},Ge=De[te.id]||{};return setTimeout(()=>{P()},1),{...Se,translationServices:{...De,[te.id]:{...Ge,[U.name]:Be}}}})}},"field-"+me)},"service"+me))]}),oe&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:C("forThisSite")}),d(qn,{items:[{label:C("default"),value:"default",selected:pe===!1&&R===!1&&!se&&!O&&!ee&&!ne,onSelected:()=>{qe("default",oe.hostname,[],[]);let U=oe.hostname,me=w.localConfig.tempTranslationUrlMatches||[],Be=me.filter(De=>De.match!==U),Se=!1;Be.length!==me.length&&(Se=!0),Se&&L({...w.localConfig,tempTranslationUrlMatches:[...Be]})}},ce&&{label:C("alwaysTranslateSomeSite",{hostname:C("currentUrl")}),value:"matchesUrl",selected:ee,onSelected:()=>{qe("matches",ce,[ce],[])}},{label:C("alwaysTranslateSomeSite",{hostname:oe.hostname}),value:"matches",selected:pe,onSelected:U=>{qe(U.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:C("alwaysTranslateSomeSite",{hostname:Y}),value:"matchesWild",selected:se,onSelected:()=>{qe("matches",Y,[ce,oe.hostname,Y],[oe.hostname])}},ce&&{label:C("neverTranslateSomeSite",{hostname:C("currentUrl")}),value:"excludeMatchesUrl",selected:ne,onSelected:()=>{qe("excludeMatches",ce,[ce],[])}},{label:C("neverTranslateSomeSite",{hostname:oe.hostname}),value:"excludeMatches",selected:R,onSelected:U=>{qe(U.value,oe.hostname,[oe.hostname,Y,ce],[Y])}},Y&&{label:C("neverTranslateSomeSite",{hostname:Y}),value:"excludeMatchesWild",selected:O,onSelected:()=>{qe("excludeMatches",Y,[oe.hostname,ce,Y],[oe.hostname])}}].filter(Boolean)})]}),W&&_a()&&d("div",{class:"flex justify-between mb-2",children:[d("label",{class:"inline-block",children:[C("mouse-translate"),"\uFF1A"]}),d(qn,{items:Lo.filter(U=>!(Lo.includes(m.generalRule.mouseHoverHoldKey)&&U==="OtherCustom")).map(U=>{let me=C("mouseHoldKey",{key:U}),Be=Lo.includes(m.generalRule.mouseHoverHoldKey),Se=U===m.generalRule.mouseHoverHoldKey;return U==="Auto"?me=C("mouseHoldKeyAuto"):U==="Off"?me=C("mouseHoldKeyOff"):U==="OtherCustom"?me=Be?C("mouseHoldKeyOther"):C("mouseHoldKeyCustomKey",{key:m.generalRule.mouseHoverHoldKey}):U==="Other"&&(me=C("mouseHoldKeyOther")),Be||U==="OtherCustom"&&(Se=!0),{label:me,value:U,selected:Se,onSelected:De=>{De.value==="Other"?v("#interface"):W(De.value)}}})})]})]}),d("div",{class:"",children:d("button",{class:"py-2 mt-1 mb-2 main-button ",onClick:()=>{Jn?D&&D():F()},"aria-busy":l==="Translating",disabled:B||l==="Translating",children:Ze})}),d("div",{class:"text-sm",children:ye}),d("div",{class:"text-sm",children:ge}),d("div",{class:"flex justify-between flex-wrap",children:[b&&b!=="auto"?d("label",{for:"alwaysTranslateThisLanugage",class:"text-sm",children:[d("input",{type:"checkbox",id:"alwaysTranslateThisLanugage",name:"alwaysTranslateThisLanugage",checked:!!ae,onChange:U=>{let me=U.target.checked;Ht(me?"matches":void 0)}}),C("alwaysTranslateSomeLanguage",{language:kt(b,m.interfaceLanguage,!1,!0)})]}):d("span",{}),d("div",{class:"flex flex-end flex-grow",children:d(Dl,{label:C("more"),showArrow:!0,maxWidth:Z,onSelected:U=>{U.value==="changeToOnlyTranslationMode"?pt("translation"):U.value==="changeToDualTranslationMode"?pt("dual"):U.value==="translateTheWholePage"?f():U.value==="translateToThePageEndImmediately"?h():U.value==="translateTheMainPage"?n():U.value==="showTranslationOnly"||(U.value==="translateLocalPdfFile"?M&&M():U.value==="translateLocalHtmlFile"?u&&u():U.value==="translateLocalSubtitleFile"?i&&i():U.value==="donate"?(globalThis.open(m.donateUrl),E()):U.value==="feedback"?(globalThis.open(m.feedbackUrl),E()):U.value==="options"?(v(),E()):U.value==="changeToTranslateTheWholePage"?We():U.value==="changeToTranslateTheMainPage"?$e():U.value==="about"?p():U.value==="toggleEnabled"?S():U.value==="openEbookViewer"?g():U.value==="openEbookBuilder"&&c())},menus:[m.translationMode==="dual"&&{label:"1\uFE0F\u20E3 "+C("changeToOnlyTranslationMode"),value:"changeToOnlyTranslationMode"},m.translationMode==="translation"&&{label:"2\uFE0F\u20E3 "+C("changeToDualTranslationMode"),value:"changeToDualTranslationMode"},m.translationArea==="main"&&{label:"\u{1F480} "+C("changeToTranslateTheWholePage"),value:"changeToTranslateTheWholePage"},m.translationArea==="body"&&{label:"\u{1F4D6} "+C("changeToTranslateTheMainPage"),value:"changeToTranslateTheMainPage"},{label:"\u26A1 "+wn,value:"translateToThePageEndImmediately"},{label:"\u{1F4D8} "+C("browser.openEbookViewer"),value:"openEbookViewer"},{label:"\u{1F4DA} "+C("browser.openEbookBuilder"),value:"openEbookBuilder"},!le()&&{label:"\u{1F4C1} "+C("browser.translateLocalPdfFile"),value:"translateLocalPdfFile"},!le()&&{label:"\u{1F310} "+C("browser.translateLocalHtmlFile"),value:"translateLocalHtmlFile"},{label:"\u{1F4FA} "+C("browser.translateLocalSubtitleFile"),value:"translateLocalSubtitleFile"},{label:(m.enabled?"\u{1F6AB} ":"\u{1F44B} ")+(m.enabled?C("clickToDisableExtension"):C("clickToEnableExtension")),value:"toggleEnabled"},{label:"\u2764\uFE0F "+C(Oe?"aboutLabel":"aboutLabelWithoutSponsor"),value:"about"}].filter(Boolean)})})]}),d("footer",{children:[d(Pl,{isShowError:!1,request:r,setStorageBuildinConfig:s}),d("div",{class:"mt-3 text-sm flex justify-between",children:[d("a",{href:"#",class:"secondary",onClick:fe,children:C("options")}),le()&&d("a",{href:"#",class:"secondary",onClick:ft,children:C("close")}),d("span",{class:"immersive-translate-no-select muted",onClick:Mu(7)(Xe),children:["V",t,m.enabled?null:d("a",{href:"#",onClick:S,children:[" ","(",C("hasBeenDisabled"),")"]})]})]})]})]})}async function $3(e){try{let t=new Date;A.debug("cron task start, next will run at",new Date(t.getTime()+e).toLocaleString()),await j.storage.local.set({[Cg]:t.toISOString()}),await hy(),le()||await q3()}catch(t){A.error("run cron task failed",t)}}async function hy(){try{let e=await En(),t=await ue({url:aa}),n=e.buildinConfigUpdatedAt,a=new Date(n),r=t.buildinConfigUpdatedAt,u=new Date(r),o=t.minVersion,i=j.runtime.getManifest().version;Ea(i,o)?u>a?(await j.storage.local.set({buildinConfig:t}),A.info(`sync remote rules success, latest: ${new Date(r).toLocaleString()}`)):A.debug(`no need to sync rules, latest: ${a}`):A.info(`local version is too old, please update to ${o} or later`)}catch(e){A.error("sync rules error: ",e)}}function _l(e){let{onClose:t}=e,[n,a]=H("Original"),[r,u,o,i]=bt(()=>{setTimeout(()=>{F("updateGlobalContext",!1)()},250)}),[s,l]=H(null),[c,g]=H(globalThis.location.href),[m,p]=H("auto"),[f,S]=H(null),v=B=>{a(B.detail)},h=B=>{p(B);let G=N3(c,B,s.sourceLanguageUrlPattern);u(re=>({...re,sourceLanguageUrlPattern:G})),sn(B)},k=()=>{g(globalThis.location.href)};ke(()=>(document.addEventListener(Co,v,!1),En().then(B=>{l(B);let G=Pn();p(G);let re=Ke();a(re),$3(B.interval)}),document.addEventListener("urlChange",k),()=>{document.removeEventListener("pageTranslatedStatus",v),document.removeEventListener("urlChange",k)}),[]),ke(()=>{En().then(B=>{l(B)})},[r]),ke(()=>{c&&s&&wt({url:c,config:s}).then(B=>{S(B)})},[c,s]);let F=(B,G,re={})=>()=>{Dr({method:B,data:re||{}}),G&&t()},M=()=>{t()},D=()=>{u(B=>({...B,enabled:!B.enabled})),setTimeout(()=>{M()},50)},P=()=>{Fl(),setTimeout(()=>{M()},50)},w=()=>{Fl(),setTimeout(()=>{M()},50)},x=(B="")=>{Si(!0,B),setTimeout(()=>{t()},50)},b=()=>{Ai(),setTimeout(()=>{t()},50)},E=()=>{Di(),setTimeout(()=>{t()},50)},I=()=>{V3(),setTimeout(()=>{t()},50)},L=()=>{Li(),setTimeout(()=>{t()},50)},W=()=>{G3(),setTimeout(()=>{t()},50)},_=B=>{u(G=>({...G,generalRule:{...G.generalRule,mouseHoverHoldKey:B}}))};return!s||!f?null:d(Ml,{openEbookViewerPage:E,openEbookBuilderPage:L,onSwitchTranslationMode:B=>{F("switchTranslationMode",!0,{mode:B})()},onTranslateLocalHtmlFile:I,onTranslateLocalSubtitleFile:W,request:ue,onClose:M,onToggleEnabled:D,onTranslateTheWholePage:F("translateTheWholePage",!0),openOptionsPage:x,onToggleTranslate:F("toggleTranslatePage",!0),onTranslateTheMainPage:F("translateTheMainPage",!0),ontranslateToThePageEndImmediately:F("translateToThePageEndImmediately",!0),onTranslatePage:F("translatePage",!0),onRestorePage:F("restorePage",!1),onTranslatePdf:P,openAboutPage:b,onTranslateLocalPdfFile:w,onSetPageLanguage:h,onUserConfigChange:u,config:s,pageStatus:n,ctx:f,currentUrl:c,currentLang:m,onSetLocalConfig:ki,onSetBuildinConfig:K3,onMouseTriggerChanged:_})}function by(e,t){for(let n of t){if(le()&&!Fa()&&typeof GM!==void 0&&GM.addElement){GM.addElement(e,"style",{textContent:n});continue}e.appendChild(document.createElement("style")).textContent=n}}var Bl={position:"right",right:0,top:335},Ut={...Bl},Fi=!1,Oa=null,Rn=null,_i=null,Rl=null,Fr=null,Il=null,J3=6,Pi,Mi,X3=null,Z3=null;async function Q3(){let e=tt();Il=await np(),Ut=Il.pagePopupConfig||Ut;let t=document.createElement("div");t.id="immersive-translate-popup",t.setAttribute("style","all: initial"),document.documentElement.appendChild(t);let n=t.attachShadow({mode:"open"});Rl=n;let a=[e.IMMERSIVE_TRANSLATE_PICO_CSS,e.IMMERSIVE_TRANSLATE_COMMON_CSS,e.IMMERSIVE_TRANSLATE_POPUP_CSS,e.IMMERSIVE_TRANSLATE_PAGE_POPUP_CSS].join(` +`);by(n,[a]);let r=document.createElement("div");r.innerHTML=_e.sanitize(e.IMMERSIVE_TRANSLATE_POPUP_HTML),n.appendChild(r),Oa=n.querySelector("#immersive-translate-popup-container");let o=n.querySelector("#immersive-translate-popup-btn");Rn=o,_i=n.querySelector("#mount"),Oa.setAttribute("style",Ol(Ut)),zl(),o.addEventListener("mousedown",ep),o.addEventListener("touchstart",Ey),globalThis.addEventListener("resize",s=>{Oa.setAttribute("style",Ol(Ut))})}function yy(){ka(null,_i),_i.style.display="none",Rn.style.display="block",Fr=setTimeout(()=>{zl(!0)},2e3)}function Y3(e){let t=e.querySelector("#mount"),n=()=>{yy()},a=r=>{r&&r.target&&r.target.id==="immersive-translate-popup-overlay"&&n()};(async()=>{let r=await En();ka(d(vi,{lang:r.interfaceLanguage,fallbackLang:"zh-CN",translations:Ar,children:d("div",{onClick:a,id:"immersive-translate-popup-overlay",class:"immersive-translate-popup-overlay",children:d("div",{class:"immersive-translate-popup-wrapper",style:Ty(),children:d(_l,{onClose:n})})})}),t)})().then(()=>{Rn.style.display="none",_i.style.display="block"})}function Ty(){let e=Nl(),t=e.height,{position:n,top:a,left:r}=Ut,u={position:"fixed"},o=300,i=300,s=100;return Rg()&&(n=Bl.position,a=Bl.top),n==="right"||n==="left"?(u.top=a-s,u.top+o>=t?(u.bottom=30,delete u.top):u.top<=10&&(u.top=10),n==="right"?u.right=0:n==="left"&&(u.left=0)):(n==="top"||n==="bottom")&&(u.left=r-s,u.left+i>=e.width?(u.right=0,delete u.left):u.left<=10&&(u.left=0),n==="top"?u.top=0:n==="bottom"&&(u.bottom=0)),u}function Nl(){return{width:Math.max(document.documentElement.clientWidth,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight,window.innerHeight||0)}}function ep(e){Z3=Oa.getAttribute("style"),Pi=e.pageX,Mi=e.pageY,Fr&&clearTimeout(Fr),Fi=!1,Rn.style.opacity="1",Rn.style.transform="none",X3=Rn.getAttribute("style"),globalThis.addEventListener("mousemove",Ul),globalThis.addEventListener("mouseup",jl),globalThis.addEventListener("touchmove",tp),globalThis.addEventListener("touchend",Bi),globalThis.addEventListener("touchcancel",Bi)}function Ey(e){e.preventDefault&&e.preventDefault(),ep(e.changedTouches[0])}function tp(e){Ul(e.changedTouches[0])}function Bi(e){e.preventDefault&&e.preventDefault(),jl(e.changedTouches[0])}function Ul(e){e.preventDefault&&e.preventDefault(),Fi=!0,Oa.setAttribute("style",`left:${e.clientX}px;top:${e.clientY}px;transform:scale(1.6);`)}function jl(e){e.preventDefault&&e.preventDefault(),Cy(),Fr&&clearTimeout(Fr),Pi=Pi||0,Mi=Mi||0;let t=Math.abs(e.pageX-Pi),n=Math.abs(e.pageY-Mi);t{zl(!0)},2e3)}function zl(e=!1){Rn.style.opacity="0.4";let t="";Ut.position==="left"?t="translateX(-40%)":Ut.position==="right"?t="translateX(40%)":Ut.position==="top"?t="translateY(-40%)":Ut.position==="bottom"&&(t="translateY(40%)"),Rn.style.transform=t,e&&(Rn.style.transition="transform 0.2s ease-in-out, opacity 0.2s ease-in-out")}function Cy(){globalThis.removeEventListener("mousemove",Ul),globalThis.removeEventListener("mouseup",jl),globalThis.removeEventListener("touchmove",tp),globalThis.removeEventListener("touchend",Bi),globalThis.removeEventListener("touchcancel",Bi)}function Ol(e){let t=vy(e);return Object.keys(t).map(n=>typeof t[n]=="number"?`${n}:${t[n]}px;`:"").join("")}function vy(e){let{position:t,...n}=e,a=Nl(),r={};return t==="left"?(r.left=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="right"?(r.right=0,n.top>a.height?r.top=a.height-100:r.top=n.top):t==="top"?(r.top=0,n.left>a.width?r.left=a.width-100:r.left=n.left):t==="bottom"&&(r.bottom=0,n.left>a.width?r.left=a.width-100:r.left=n.left),r}var ap=!1;async function rp(){ap||(ap=!0,Q3().catch(e=>{A.error("init popup error",e)}))}var up=!1,sp=[()=>{Ne.unbind()}],Wl=[...sp],wy=At(async()=>{await Si()},50),ky=At(async()=>{await Ai()},50),Sy=At(async()=>{await Li()},50),Ay=At(async()=>{await Di()},50),lp=At(e=>{Dr({method:e})},50),Dy=At(()=>{Ri();let e=new CustomEvent(na,{detail:{method:"toggleTranslatePage"}});globalThis.document.dispatchEvent(e)},200),Ly=At(()=>{Ni();let e=new CustomEvent(na,{detail:{method:"toggleOnlyTranslation"}});globalThis.document.dispatchEvent(e)},200),Py=At(()=>{Oi();let e=new CustomEvent(na,{detail:{method:"toggleTranslationMask"}});globalThis.document.dispatchEvent(e)},200);function My(e,t){let n=e.document;if(up)return;if(up=!0,le()||mp(),n.addEventListener("securitypolicyviolation",zy),n.addEventListener("immersiveTranslateEbookLoaded",jy),n.addEventListener(dg,Uy),n.addEventListener("click",r=>{Ry(r,t)}),le()&&(globalThis.top!=globalThis.self?e.addEventListener("message",_y,!1):n.addEventListener(na,Fy)),globalThis.top===globalThis.self){let r=Bn.rootIframe(M0);r.handleAsk("getRateLimitDelay",I3),r.handleAsk("throttleRequest",O3)}}function cp(e,t){Hy(),My(t,e);let n=t.document,a=By.bind(null,e);e.rule.fingerCountToToggleTranslagePageWhenTouching>=2&&n.addEventListener("touchstart",a),Wl.push(()=>{n.removeEventListener("touchstart",a)}),le()&&globalThis.top===globalThis.self&&(vl(e.config),Wy(e.config)),Dt()&&vl(e.config)}function Fy(e){rp()}function _y(e){let t=e;t&&t.data&&t.data.payload&&t.data.author===xo&&Lr(t.data.payload,{tab:{id:1,url:"https://www.fake-iframe.com",active:!0}})}function By(e,t){let n=t;n.touches.length==e.rule.fingerCountToToggleTranslagePageWhenTouching?Dy():n.touches.length===e.rule.fingerCountToToggleTranslationMaskWhenTouching?Py():n.touches.length===e.rule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching&&Ly()}function Ry(e,t){let n=e.target;if(!n||!n.getAttribute){Hl(n);return}let a=n.getAttribute("data-immersive-translate-event");a&&st(a,[{name:a}],{...t,sourceLanguage:"none"});let r=n.getAttribute(`data-${X}-action`);if(r)if(r==="retry"){e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),Ii(),Hl(n,!0);return}else if(r=="toast-error"){let u=n.getAttribute(`data-${X}-tooltip-text`);ip(Oy.bind(null,t,u||""))}else r=="close-search"&&(e.preventDefault(),typeof e.stopPropagation=="function"&&e.stopPropagation(),ip(Iy.bind(null,t)));Hl(n)}async function op(e=!1){let t=document.querySelector(`.${X}-search-recomend`);if(!t||(t.remove(),!e))return;let n=await fp();n.generalRule||(n.generalRule={}),n.generalRule.enableSearchEnhancement=!1,await pp(n)}function ip(e){let t=`${X}-modal`,n=`${X}-modal-title`,a=`${X}-modal-body`,r=`${X}-modal-footer`,u=document.querySelector(`.${t}`);if(u){let o=u.querySelector(`.${n}`),i=u.querySelector(`.${r}`),s=u.querySelector(`.${a}`);e(u,o,s,i)}else{u=document.createElement("div"),u.className=t+" notranslate",u.id=t;let o=document.createElement("div");o.className=X+"-modal-content notranslate",u.appendChild(o);let i=document.createElement("span");i.textContent="\xD7",i.className=X+"-close",o.appendChild(i);let s=document.createElement("div");s.className=n+" notranslate",o.appendChild(s);let l=document.createElement("div");l.className=a+" notranslate",o.appendChild(l);let c=document.createElement("div");c.className=r,o.appendChild(c),document.body.appendChild(u),i.onclick=function(){u.style.display="none"},window.onclick=function(g){g.target==u&&(u.style.display="none")},e(u,s,l,c)}setTimeout(()=>{Ny()},100)}function Iy(e,t,n,a,r){let u=dp.bind(null,e);n.innerHTML=`
${Bg} ${u("disableConfirm")}
`,a.innerHTML="";let o=document.querySelector(`div[data-${X}-cancel-desc]`),i=document.createElement("p");i.innerHTML=o?_e.sanitize(o.textContent||""):_e.sanitize(u("searchEnhancementNotes")),i.style.cssText="margin-bottom:12px",a.appendChild(i);let s=[{id:"enable-search-enhancement",value:"enable",text:u("enableSearchEnhancement")},{id:"disable-once",value:"once",text:u("disableOnce")},{id:"disable-global",value:"global",text:u("disableGlobal")}];for(let p=0;p${u("option")}`})),a.appendChild(l);let c=a.querySelector(`.${X}-open-enhancement`);c&&(c.onclick=function(){hp(!0)});let g=document.createElement("button");g.innerText=u("closeModal"),g.className=`${X}-btn ${X}-cancel-btn`;let m=document.createElement("button");m.className=`${X}-btn`,m.innerText=u("saveSettings"),r.innerHTML="",r.appendChild(g),r.appendChild(m),g.onclick=function(){t.style.display="none"},m.onclick=function(){let p=a.getElementsByTagName("input"),f="";for(let S=0;S{gp()},10)}function zy(e){ve.HAS_CSP_ERROR="1"}function Hy(){Wl.forEach(e=>{e()}),Wl=sp}function Wy(e){if(le()&&typeof GM<"u"&&GM&&GM.registerMenuCommand){let t=Xo.commands,r=[...Object.keys(t).filter(u=>u==="toggleTranslatePage").map(u=>{let o=t[u].description,i=o;return o.startsWith("__MSG_")&&o.endsWith("__")&&(i=ya(`browser.${o.slice(6,-2)}`,e.interfaceLanguage)),{id:u,title:i}}),{id:gu,title:ya("browser.openEbookViewer",e.interfaceLanguage),key:"e"},{id:mu,title:ya("browser.openEbookBuilder",e.interfaceLanguage),key:"m"},{id:du,title:ya("browser.openOptionsPage",e.interfaceLanguage),key:"o"},{id:k0,title:ya("browser.openAboutPage",e.interfaceLanguage),key:"a"}];for(let u of r)GM.registerMenuCommand(u.title,()=>{u.id===du?wy():u.id===k0?ky():u.id===mu?Sy():u.id===gu?Ay():lp(u.id)},u.key)}}function $y(e){Lr(e,{tab:{id:1,url:"https://www.fake.com",active:!0}}).catch(n=>{A.error("send content message request failed",e,n)});let t=new CustomEvent(na,{detail:e});globalThis.document.dispatchEvent(t)}function yp(e,t){let n=e.pageWidth*e.scale,a=e.prevPageParagraphs||[];if(a.length<=0||t.length<=0)return{};let r=a[a.length-1];if(!r)return{};let u=n-r.right,o=t.find(i=>Ve(i.left,u)&&Ve(i.width,r.width));return{prevP:r,curP:o}}function $l(e){return!!(!e||/^[\d\.:%\(\),%\s\-]+$/.test(e)||!/\w+/.test(e)&&e.length<=2||/^_{6,}$/.test(e)||e.length<2)}function Tp(e){return e?e==e[0].repeat(e.length):!0}function Ve(e,t,n=5){return Math.abs(e-t)<=n}var ql=[",","\\.","\uFF0C","\u3002"];function Ep(e,t){let n=e.prevGroup;if(!n)return!1;let a=n[n.length-1],r=t[0];return Ve(a.left,r.left,7)&&Ve(a.nextTop,r.top,10)&&Ui(a,r)}function xp({prevLineP:e,justify:t},n){return t&&n.left>e.left&&n.bottomt.right}function kp(e,t){let n=e.justify;return n?t.top>n.top&&t.left>n.left&&t.right<=n.right+1&&t.fontSize<=n.fontSize+1:!1}function Sp({prevLineP:e,prevP:t},n){return Ve(e.left,n.left,1)&&Ve(e.right,t.right,1)&&t.mergedTimes>=1}function Kl(e,t){let{prevLineP:n}=e;return kp(e,t)&&(Ve(n.bottom,t.bottom)||Ve(n.nextTop,t.top)&&Ve(n.left,t.left))}function Ap(e,t){let{prevLineP:n,prevP:a,scale:r}=e;return kp(e,t)&&n.width0&&a/r<.1&&n.left!$l(u.str)).filter(u=>u.translateStatus!="success"&&u.translateStatus!="pending").map(u=>(u.translateStatus="pending",u));if(n.length<=0)return;let a=await lt({text:n.map(u=>u.str).join(` +`).slice(0,1e3)});ti(a);let r=n.map((u,o)=>({text:u.str,id:o,from:a,to:e.targetLanguage,url:"https://google.com",fromByClient:"auto"}));await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=n[s];u?(l.translatedStr=u.message,l.translateStatus="error"):o&&(l.translatedStr=o.text,l.translateStatus="success"),Ky(l)})}var Gl={};async function qy(){let e=document.getElementsByClassName("translate-retry");for(let n of e)n.classList.remove("translate-retry"),n.classList.add("translate-pending");let t=Object.values(Gl).filter(n=>!!n);await ji(Fp,t)}function Ky(e){let t=document.getElementById(e.id);t&&(t.classList.remove("translate-pending","translate-retry"),e.translateStatus=="error"?(Gl[e.id]=e,t.classList.add("translate-retry"),t.addEventListener("click",qy)):e.translateStatus=="success"&&(Gl[e.id]=void 0,t.innerHTML=_e.sanitize(e.translatedStr)))}function _p(e,t){let n=[],a=Gy(e,t);return Jy(e,a).forEach(u=>{if(!(u.length<=0)){if(u.length==1){Mp(e,n,u[0],!0);return}n.push(`
`),n.push('
'),n.push('
'),u.forEach(o=>{Mp(e,n,o,!1)}),n.push("
")}}),`
${n.join("")} -
`}function Ap(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:r,pageHeight:u,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(r*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(r*o)+1).toFixed(2)}%`:"auto",g=`${(l.left*100/(r*o)).toFixed(2)}%`,m=`${(l.top*100/(u*o)).toFixed(2)}%`,p=No()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,S=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${g};top: ${m};width:${c};max-width:${s};`,!p&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let v=Wl(l.str)?"":"translate-pending",h=l.str;l.translateStatus=="success"&&(h=l.translatedStr,v=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${h}

`),t.push("
")})}function zy(e,t){let{pageWidth:n,pageHeight:a,scale:r}=e,u=t[0][0],o=u.width,i=u.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(m=>{m[0].width>o&&(o=m[0].width)});let l=`${(o*100/(n*r)).toFixed(2)}%`,c=`${(u.left*100/(n*r)).toFixed(2)}%`,g=`${(u.top*100/(a*r)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${g};height:${s-i}px;overflow:auto;`}function Hy(e,t){let n=[];return t.forEach((a,r)=>{if(r==0){n.push([a]);return}let u=n[n.length-1][0];if(e.prevLineP=u,Kl(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function Wy(e,t){let n=[];return t.forEach((a,r)=>{if(r==0||a.length>1){n.push([a]);return}let u=n[n.length-1];if(e.prevGroup=u[u.length-1],hp(e,a)){u.push(a);return}n.push([a])}),n}var Pp="immersive-translate",_r,Kn=[];async function _p(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(nt("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await Mp(1);await ji(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Kn=[],_r=void 0,Gy(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let r=await Mp(a);await ji(e,r||[])})}}function $y(e){if(_r)return{..._r,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let u=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(u),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return _r={...i},i}async function Mp(e){let t=$y(e);if(!t)return;Kn[e]||(Kn[e]=await qy(t,e,Kn[e-1]||[]));let n=Kn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),r=document.querySelector(`.${Pp}-page[data-page-number="${e}"]`);if(!a||r)return;r=document.createElement("div"),r.setAttribute("style",a.getAttribute("style")||""),r.setAttribute("data-page-number",e+""),r.classList.add("page"),r.classList.add(`${Pp}-page`);let u=Lp(t,n);return r.innerHTML=Oe.sanitize(u,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(r):a.parentNode?.insertBefore(r,a.nextSibling),n}async function qy(e,t,n){let a=await e.pdfDocument.getPage(t),r=await a.getTextContent(),[u,o,i,s]=a._pageInfo.view;_r.pageWidth=i,_r.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=Vy(e,r);e.origLineParagraphs=l;let{prevP:c,curP:g}=pp(e,l);return g&&Bp(c,void 0,g),Ky(e,l)}function Ky(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,Tp(e,o)){if(Ep(e,o)){u(l,o);return}if(Cp(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},u(l,o);return}if(vp(e,o)){u(l,o);return}if(ql(e,o)){u(l,o);return}if(wp(e,o)){u(l,o),o.left{let o=u.str;if(!o.trim())return;let i=u.transform[4],s=u.transform[5],l=u.width*n,c=t.styles[u.fontName].fontFamily,g=u.transform[3],m=t.styles[u.fontName].descent,f=(1+(1-t.styles[u.fontName].ascent)+m)*g;isNaN(f)&&(f=g);let S=i*n,v=S+l,h=(a-s-f)*n,k=h+g*n,F=k+g*n*.2,M=v+g*n*.3,A={str:o,left:S,nextLeft:M,top:h,nextTop:F,id:`pageNum-${Zt()}`,width:l,originFontName:u.fontName,fontName:c,fontSize:g,right:v,bottom:k,attachList:[],mergedTimes:0,translatedStr:""};if(r.length==0)r.push(A);else{let P=r[r.length-1];if(e.prevLineP=P,kp(e,A)){yp(e,A)?P.str+=o:P.str+=" "+o,P.right=v,P.fontName=c,P.width=Math.max(P.width+l,v-P.left),P.nextLeft=M;return}if(Sp(e,A)){P.width=Math.max(P.width+l,v-P.left),P.right=v,P.nextLeft=M,P.attachList.push(A);return}r.push(A)}}),r}function Bp(e,t,n){if(!Ui(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function Gy(e){setTimeout(()=>{let t="";for(let n=1;n<=Kn.length;n++){let a=!1;if(Kn[n]){for(let r=0;r1e3){a=!0;break}}if(a)break}}lt({text:t}).then(n=>{nt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var Na={};async function Gl(e){let n=[...document.querySelectorAll(".source-text")].map(r=>r.textContent).join(""),a=await Pn(e,n,1e3);return sn(a),a}async function Rp(e){Nt("Translating");let t=Ln(),n=yr(),a=[...document.querySelectorAll(".source-text")];if(ai(e,t))return;let r=a.filter(u=>u.innerText?.trim()).map((u,o)=>{let i=u.parentElement?.parentElement?.querySelector(".target-text");return st(u,"id",o+""),i&&(Tr(i,o)?.remove(),i.appendChild(ku(e,o))),{text:u.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=Tr(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),u?(c.innerHTML=Oe.sanitize(`${u.message}`),Na[s]={ok:!1,sentence:i}):o&&(c.innerHTML=Oe.sanitize(o.text),Na[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Nt("Translated")}}async function Ip(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Na),n=[],a=[];for(let r of t){let u=Na[r];if(!u.ok){let i=document.querySelector(`#error-id-${r}`);if(i){let s=i.parentElement;i.remove(),s&&(delete Na[r],s.appendChild(ku(e,r)),a.push(u.sentence))}}}try{await _n({sentences:a},e,(r,u,o)=>{let i=o.id,s=Tr(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),r?(l.innerHTML=Oe.sanitize(`${r.message}`),Na[i]={ok:!1,sentence:o}):u&&(l.innerHTML=Oe.sanitize(u.text),Na[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Nt("Translated")}}function Jl(){Nt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Yl={};async function Op(e){let t=[...document.querySelectorAll("iframe")],n="";for(let r of t){let u=r.contentDocument;if(!u)continue;let o=u.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await Pn(e,n,1e3);return sn(a),a}async function Np(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Yl),n=[];for(let a of t){let r=Yl[a];if(r.error){let o=r.commonAncestorContainer.querySelector(`[${vo}='${a}']`);o&&o.remove(),n.push(r)}}try{await pi(n,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}function Up(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+rn);for(let r of a)r.remove()}Nt("Original")}async function jp(e){Nt("Translating");let t=Zt(),n=[...document.querySelectorAll("iframe")],a=[],r=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ua(s,e);let l=s.body;if(!l)continue;let c=ln(e);c.isModifyImage=!1,ma({id:t,container:l,filterRule:c,onParagraph:g=>{a.push(g)}})}let u=ni(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=di(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:u,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await hl(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:u,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(r.push(l),Yl[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await pi(r,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}var Jy=new AbortController,{signal:Yy}=Jy,tc=0,nc=0,Xl=!1,Zl=0,Fu=!1,Ua,zp=0,ja=[];function zi(e,t){Xy();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,r=a.config,u=r.generalRule.mouseHoverHoldKey==="Off",o=r.generalRule.mouseHoverHoldKey==="Auto",i=At(g=>{if(Xl==!1&&Math.abs(g.clientX-tc)+Math.abs(g.clientY-nc)>3&&(Zl<2?Zl+=1:Xl=!0),tc=g.clientX,nc=g.clientY,o||Fu&&!Ua){let m=Kp(a.rule,t);if(m){if(ac(m))return;Wp(a,m)}}},o?700:300),s=g=>{let m=g.target;ac(m)||Wp(a)},l=g=>{let m=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",p=Ne.getPressedKeyCodes();if(p.length>1&&Ne[m]&&(zp=Date.now(),Fu=!1),p.length===1&&Ne[m]){let f=Date.now();Fu=!0,Ua&&clearTimeout(Ua),Ua=setTimeout(()=>{let S=zp-f;S>0&&S<=150?Fu=!1:s(g),Ua=void 0},150)}};if(ja.push(()=>{Ua&&clearTimeout(Ua)}),u)return;Ql("mousemove",i,t),ja.push(()=>{t.removeEventListener("mousemove",i)});function c(){Xl=!1,Zl=0,i.cancel()}if(o)Ql("blur",c,t),ja.push(()=>{t.removeEventListener("blur",c)});else{let g=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=["ctrl","alt","shift","cmd","command","option","control"];Ql("keyup",Hp,t),ja.push(()=>{t.removeEventListener("keyup",Hp)}),m.includes(g)?Ne("*","mouseHover",l):Ne(r.generalRule.mouseHoverHoldKey,"mouseHover",s),Ne.setScope("mouseHover"),ja.push(()=>{Ne.deleteScope("mouseHover")})}}function Xy(){ja.forEach(e=>e()),ja=[]}function Hp(e){Fu=!1}function Ql(e,t,n=window){return n.addEventListener(e,t,{signal:Yy})}function Wp(e,t,n=window){if(t=t||Kp(e.rule,n),!t){L.debug("can not find selection part!");return}if(ac(t)){L.debug("exclude dom");return}T3(e,t);let a=yi();a?.currentUrl!==window.location.href&&(ba(),El(e)),a&&(a.setupMouseHoverListener=zi);let r=ln(e);r.excludeSelectors=[],r.selectors=[];let u=!1;ma({id:a.id,container:t,filterRule:r,force:!0,onParagraph:o=>{Du(a,o,!0).then(i=>{if(i&&!u){u=!0;let s=Date.now();mt(dg,s),nt("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function Kp(e,t){return Zy(tc,nc,e,t)}function Zy(e,t,n,a){let r=Wg(e,t,n,a);if(r==null)return;let u=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=$g(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:qp(l,n)},o=()=>{try{r.setStartBefore(r.startContainer),r.setEndAfter(r.startContainer)}catch(l){L.debug("get mouse over word fail",l)}let s=r.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let r={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},u=0,o=Date.now();Hi&&self.removeEventListener("keydown",Hi),Hi=i,self.addEventListener("keydown",Hi);function i(l){if(Br)return;let c=l,g=c.target||c.srcElement,m=g?.tagName;(g?.isContentEditable||m=="INPUT"||m=="SELECT"||m=="TEXTAREA")&&(pT(l,r.triggerKey,r.codePrefixAlias)?s(l):u=0)}function s(l){Date.now()-o=r.triggerTimes&&(nT(e,r),u=0)}}function Qy({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],r=n[e]||[];r.includes(e)||r.unshift(e);for(let u of r){let o=t.map(i=>{let s=u+i;return r.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function Vp(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Rr;function eT(e){let t=e.parentElement;if(!t)return;Rr=document.createElement("div"),Rr.className=X+"-input",Rr.innerHTML=`
`,t.appendChild(Rr);let n=t,a=!1;do{let r=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(r)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function tT(){Rr&&Rr.remove()}async function nT(e,t){if(!Br)try{let g=function(){o=e.config.inputTargetLanguage;let p=u.split(" ")[0];p&&p[0]&&(p=p[0].toLowerCase()+p.slice(1)),p.trim()&&t.flatAlias.includes(p)?(o=Vp(p,t.codeAlias),r=u.slice(p.length+1)):r=u},m=function(){o="";let p=Qy(t),f=u.split(p);if(f.length<2)return;if(r=f[f.length-1],a=f[0],f.length>2){let v=u.lastIndexOf(r),h=u.slice(0,v).lastIndexOf(f[f.length-2]);a=u.slice(0,h+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let S=u.slice(a.length+1,u.indexOf(r)).trim();if(o=Vp(S,t.codeAlias),!o){L.warn("not found alias",S);return}},n=document.activeElement;Br=!0,eT(n);let a="",r="",u=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?g():(m(),o||g()),mT(e);let i=aT(r,t),s=await Pn(e,i);L.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;mt(gg,Date.now());let c=await ha(l,e);gT(n,a+c.text),Br=!1}catch(n){throw Br=!1,n}finally{Br=!1,tT()}}function aT(e,t){let{triggerTimes:n,triggerKey:a}=t,r=0,u=" ";a.length==1?(r=n,u=a):a.toLowerCase()=="space"&&(r=n);let o=e.length;for(let i=e.length-1;i>=e.length-r;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],u].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function rT(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function Gp(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function za(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function uT(e,t,n){await za(10);let a=new DataTransfer;e.forEach(r=>{r==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await za(10)}async function oT(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await za(10))}async function iT(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await za(20),(t.value||t.value==="")&&(t.value=e.text)}async function sT(e,t){Yp(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await za(20))}var lT=[uT.bind(null,["plain"])];function cT(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function Yp(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function dT(e){if(Yp(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function gT(e,t){await dT(e),await za(50);let n=rT(t,e);cT(e),L.debug("clearContnet",_u(e)),await za(50);for(let a of[...lT,sT,iT,oT])if(await a(n,e),L.debug("setContent",a.name,Gp(n,e),_u(e),n),Gp(n,e))break}function mT(e){nt("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function pT(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let r="";e&&e.key&&(r=e.key.toLowerCase());let u=e.keyCode,o=n[t]||[];return u===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(r)||a===t||r===t)}async function ef(e){if(Ma().any||!e.rule.enableSearchEnhancement||!/https:\/\/www\.google\..+\/search/.test(e.url))return;let t=TT(e.url);if(!t)return;let n=await Pn(e,t);if(nt("detect_search_action",[{name:"detect_search_action"}],{...e,sourceLanguage:n}),!["zh-CN","zh-TW"].includes(n))return;L.debug("use dual search");let a=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")a=!0;else if(!Qp(document.body))return;let u=document.querySelector(e.rule.searchEnhancementSelector);if(!u){let o=document.querySelector("#rcnt");if(!o)return;let i=o.children;if(i&&i.length>1)u=i[1];else{let s=i[0];u=document.createElement("div"),u.id="rhs",u.style.maxWidth="372px",u.style.marginLeft="50px",o.insertBefore(u,s.nextSibling)}}if(a||Qp(document.body)){L.debug("find story");let o=await ET(e,t,n);L.debug("enKeyword",o);let i=await hT(o);if(L.debug("news list",i),i&&i.length<=0)return;let s=await yT(i,t,o);if(!s)return;nt("show_search_enhancement",[{name:"show_search_enhancement"}],{...e,sourceLanguage:"search_enhancement"}),fT(e,s,n),u.insertBefore(s,u?.firstChild)}}async function fT(e,t,n){let a=t.querySelectorAll('[translate="true"]');return xT(e,[...a],n),t}async function hT(e){let n=(await ue({url:bT(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,r=new DOMParser().parseFromString(n,"text/xml"),u=[],o=r.querySelectorAll("item");for(let i=0;i\u82F1\u6587\u641C\u7D22 ${n} \u7684\u76F8\u5173\u65B0\u95FB:
-
${u}
`,{ADD_ATTR:["target"]});let i=a.querySelector(`.${X}-search-more`);return i&&(i.onclick=()=>{let s=a.querySelector(`.${X}-expand-items`);s.style.display=="none"?(s.style.display="block",i.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(Xp(n))}),a}function Zp(e){return e.map((t,n)=>{let a=t.title||"",r=t.source||"",u=a.split("-");return u.length>1&&(r=u[u.length-1].trim(),u=u.slice(0,u.length-1)),a=u.join("-"),a=a.trim(),`
${r}
`}function Mp(e,t,n,a=!0){if(n.length<=0)return;let{pageWidth:r,pageHeight:u,scale:o}=e,i=a?"":"position:relative;",s=`${(100-n[0].left*100/(r*o)).toFixed(2)}%`;n.forEach(l=>{if(!l.str)return;let c=l.mergedTimes>0?`${(l.width*100/(r*o)+1).toFixed(2)}%`:"auto",g=`${(l.left*100/(r*o)).toFixed(2)}%`,m=`${(l.top*100/(u*o)).toFixed(2)}%`,p=No()&&l.fontSize<7?` transform: scale(${l.fontSize/7}); `:"",f=`calc(var(--scale-factor)*${Math.min(l.fontSize-1,24)}px)`,S=`${l.originFontName},${l.fontName},serif`;a&&(i=`position: absolute;left: ${g};top: ${m};width:${c};max-width:${s};`,!p&&l.mergedTimes>1&&(i+=`height:${(l.bottom-l.top)*1.05}px;overflow:auto;`));let v=$l(l.str)?"":"translate-pending",h=l.str;l.translateStatus=="success"&&(h=l.translatedStr,v=""),t.push(`
`),a&&(t.push('
'),t.push('
')),t.push(`

${h}

`),t.push("
")})}function Vy(e,t){let{pageWidth:n,pageHeight:a,scale:r}=e,u=t[0][0],o=u.width,i=u.top,s=t[t.length-1][t[t.length-1].length-1].bottom;t.forEach(m=>{m[0].width>o&&(o=m[0].width)});let l=`${(o*100/(n*r)).toFixed(2)}%`,c=`${(u.left*100/(n*r)).toFixed(2)}%`,g=`${(u.top*100/(a*r)).toFixed(2)}%`;return`position:absolute;width:${l};left:${c};top:${g};height:${s-i}px;overflow:auto;`}function Gy(e,t){let n=[];return t.forEach((a,r)=>{if(r==0){n.push([a]);return}let u=n[n.length-1][0];if(e.prevLineP=u,Vl(e,a)){n[n.length-1].push(a);return}n.push([a])}),n}function Jy(e,t){let n=[];return t.forEach((a,r)=>{if(r==0||a.length>1){n.push([a]);return}let u=n[n.length-1];if(e.prevGroup=u[u.length-1],Ep(e,a)){u.push(a);return}n.push([a])}),n}var Bp="immersive-translate",_r,Kn=[];async function Op(e){let t=globalThis.PDFViewerApplication;if(!t)return;if(st("open_pdf_page",[{name:"open_pdf_page"}],{...e}),t&&t.eventBus){if(n(),t&&t.pagesCount>0){let a=await Rp(1);await ji(e,a||[])}}else await t.initializedPromise,n();function n(){t.eventBus.on("pagesdestroy",()=>{Kn=[],_r=void 0,eT(e)}),t.eventBus.on("textlayerrendered",async({pageNumber:a})=>{let r=await Rp(a);await ji(e,r||[])})}}function Yy(e){if(_r)return{..._r,pageNum:e,prevLineP:{},prevP:{}};let t=globalThis.PDFViewerApplication;if(!t)return;let n=t.pagesCount,a=document.getElementById("viewer");if(!a)return;let u=getComputedStyle(a).getPropertyValue("--scale-factor"),i={scale:Number(u),pageNum:e,pagesCount:n,pageWidth:0,pageHeight:0,prevLineP:{},prevP:{},pdfDocument:t.pdfDocument};return _r={...i},i}async function Rp(e){let t=Yy(e);if(!t)return;Kn[e]||(Kn[e]=await Xy(t,e,Kn[e-1]||[]));let n=Kn[e],a=document.querySelector(`.page[data-page-number="${e}"]`),r=document.querySelector(`.${Bp}-page[data-page-number="${e}"]`);if(!a||r)return;r=document.createElement("div"),r.setAttribute("style",a.getAttribute("style")||""),r.setAttribute("data-page-number",e+""),r.classList.add("page"),r.classList.add(`${Bp}-page`);let u=_p(t,n);return r.innerHTML=_e.sanitize(u,{ADD_ATTR:["contenteditable","target"]}),e==t.pagesCount?a.parentNode?.appendChild(r):a.parentNode?.insertBefore(r,a.nextSibling),n}async function Xy(e,t,n){let a=await e.pdfDocument.getPage(t),r=await a.getTextContent(),[u,o,i,s]=a._pageInfo.view;_r.pageWidth=i,_r.pageHeight=s,Object.assign(e,{prevPageParagraphs:n,pageWidth:i,pageHeight:s});let l=Qy(e,r);e.origLineParagraphs=l;let{prevP:c,curP:g}=yp(e,l);return g&&Np(c,void 0,g),Zy(e,l)}function Zy(e,t){let n=[];return t.forEach((o,i)=>{if(i==0){a(o);return}let s=t[i-1],l=n[n.length-1];if(e.prevLineP=s,e.prevP=l,vp(e,o)){if(wp(e,o)){u(l,o);return}if(Sp(e,o)){e.justify={left:s.left,right:s.right,width:s.width,top:s.top,str:s.str,fontSize:s.fontSize},u(l,o);return}if(Ap(e,o)){u(l,o);return}if(Kl(e,o)){u(l,o);return}if(Dp(e,o)){u(l,o),o.left{let o=u.str;if(!o.trim())return;let i=u.transform[4],s=u.transform[5],l=u.width*n,c=t.styles[u.fontName].fontFamily,g=u.transform[3]||u.height,m=t.styles[u.fontName].descent,f=(1+(1-t.styles[u.fontName].ascent)+m)*g;isNaN(f)&&(f=g);let S=i*n,v=S+l,h=(a-s-f)*n,k=h+g*n,F=k+g*n*.2,M=v+g*n*.3,D={str:o,left:S,nextLeft:M,top:h,nextTop:F,id:`pageNum-${Zt()}`,width:l,originFontName:u.fontName,fontName:c,fontSize:g,right:v,bottom:k,attachList:[],mergedTimes:0,translatedStr:""};if(r.length==0)r.push(D);else{let P=r[r.length-1];if(e.prevLineP=P,Lp(e,D)){Cp(e,D)?P.str+=o:P.str+=" "+o,P.right=v,P.fontName=c,P.width=Math.max(P.width+l,v-P.left),P.nextLeft=M;return}if(Pp(e,D)){P.width=Math.max(P.width+l,v-P.left),P.right=v,P.nextLeft=M,P.attachList.push(D);return}r.push(D)}}),r}function Np(e,t,n){if(!Ui(e,n)||e.width+1(o=s,"")),t&&t.str==e.str&&!o&&(o=e.str,e.str=""),o&&(o.endsWith("-")?o=o.replace("-",""):o+=" "),n.str=o.trimStart()+n.str}}function eT(e){setTimeout(()=>{let t="";for(let n=1;n<=Kn.length;n++){let a=!1;if(Kn[n]){for(let r=0;r1e3){a=!0;break}}if(a)break}}lt({text:t}).then(n=>{st("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:n})})},2e3)}var Na={};async function Jl(e){let n=[...document.querySelectorAll(".source-text")].map(r=>r.textContent).join(""),a=await bn(e,n,1e3);return sn(a),a}async function Up(e){Nt("Translating");let t=Pn(),n=yr(),a=[...document.querySelectorAll(".source-text")];if(ai(e,t))return;let r=a.filter(u=>u.innerText?.trim()).map((u,o)=>{let i=u.parentElement?.parentElement?.querySelector(".target-text");return it(u,"id",o+""),i&&(Tr(i,o)?.remove(),i.appendChild(ku(e,o))),{text:u.innerText||"",id:o,from:t,to:e.targetLanguage,url:"https://google.com",fromByClient:n}});document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await _n({sentences:r},e,(u,o,i)=>{let s=i.id,l=Tr(document.body,s);if(!l)return;let c=l.parentElement;c&&(l.remove(),u?(c.innerHTML=_e.sanitize(`${u.message}`),Na[s]={ok:!1,sentence:i}):o&&(c.innerHTML=_e.sanitize(o.text),Na[s]={ok:!0,sentence:i}),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!u}})})))})}catch(u){throw u}finally{Nt("Translated")}}async function jp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Na),n=[],a=[];for(let r of t){let u=Na[r];if(!u.ok){let i=document.querySelector(`#error-id-${r}`);if(i){let s=i.parentElement;i.remove(),s&&(delete Na[r],s.appendChild(ku(e,r)),a.push(u.sentence))}}}try{await _n({sentences:a},e,(r,u,o)=>{let i=o.id,s=Tr(document.body,i);if(!s)return;let l=s.parentElement;l&&(s.remove(),r?(l.innerHTML=_e.sanitize(`${r.message}`),Na[i]={ok:!1,sentence:o}):u&&(l.innerHTML=_e.sanitize(u.text),Na[i]={ok:!0,sentence:o}),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"paragraphTranslated",payload:{ok:!r}})})))})}catch(r){throw r}finally{Nt("Translated")}}function Yl(){Nt("Original"),document.querySelectorAll(".target-text").forEach(e=>{e.innerHTML=""})}var Xl={};async function zp(e){let t=[...document.querySelectorAll("iframe")],n="";for(let r of t){let u=r.contentDocument;if(!u)continue;let o=u.body;if(o&&(n=n+o.innerText||"",n.length>1e3))break}let a=await bn(e,n,1e3);return sn(a),a}async function Hp(e){Nt("Translating"),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"retryFailedParagraphsStart",payload:{}})}));let t=Object.keys(Xl),n=[];for(let a of t){let r=Xl[a];if(r.error){let o=r.commonAncestorContainer.querySelector(`[${vo}='${a}']`);o&&o.remove(),n.push(r)}}try{await pi(n,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}function Wp(){let e=[...document.querySelectorAll("iframe")];for(let t of e){let n=t.contentDocument;if(!n)continue;let a=n.querySelectorAll("."+rn);for(let r of a)r.remove()}Nt("Original")}async function $p(e){Nt("Translating");let t=Zt(),n=[...document.querySelectorAll("iframe")],a=[],r=[];for(let i of n){let s=i.contentDocument;if(!s)continue;ua(s,e);let l=s.body;if(!l)continue;let c=ln(e);c.isModifyImage=!1,ma({id:t,container:l,filterRule:c,onParagraph:g=>{a.push(g)}})}let u=ni(e.config.translationServices[e.translationService]?.placeholderDelimiters),o=1;for(let i of a){let s=di(i.flatNodes,{isPreWhitespace:i.isPreWhitespace||!1,delimiters:u,stayOriginalSelectors:e.rule.stayOriginalTags.concat(e.rule.stayOriginalTags).map(c=>c.toLowerCase()).concat(e.rule.stayOriginalSelectors).concat(e.rule.additionalStayOriginalSelectors)});if(!s)continue;i.variables=s?.variables||{},i.text=s?.text,i.id=(o++).toString();let l=await bl(i,{excludeLanguages:e?.config?.translationLanguagePattern?.excludeMatches||[],isDetectParagraphLanguage:e.state.isDetectParagraphLanguage,targetLanguage:e.targetLanguage,delimiters:u,noTranslateRegexp:e.rule.noTranslateRegexp,minTextCount:2,minWordCount:1,ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW});l&&(r.push(l),Xl[l.id]=l)}a=[],document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"totalParagraphsCount",payload:{totalParagraphsCount:r.length}})}));try{await pi(r,e,e.config.translationMode)}catch{}finally{Nt("Translated")}}var tT=new AbortController,{signal:nT}=tT,nc=0,ac=0,Zl=!1,Ql=0,Fu=!1,Ua,qp=0,ja=[];function zi(e,t){aT();let n={url:e.url,config:e.config,state:{...e.state,translationArea:"body"}},a=e,r=a.config,u=r.generalRule.mouseHoverHoldKey==="Off",o=r.generalRule.mouseHoverHoldKey==="Auto",i=At(g=>{if(Zl==!1&&Math.abs(g.clientX-nc)+Math.abs(g.clientY-ac)>3&&(Ql<2?Ql+=1:Zl=!0),nc=g.clientX,ac=g.clientY,o||Fu&&!Ua){let m=Yp(a.rule,t);if(m){if(rc(m))return;Vp(a,m)}}},o?700:300),s=g=>{let m=g.target;rc(m)||Vp(a)},l=g=>{let m=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",p=Ne.getPressedKeyCodes();if(p.length>1&&Ne[m]&&(qp=Date.now(),Fu=!1),p.length===1&&Ne[m]){let f=Date.now();Fu=!0,Ua&&clearTimeout(Ua),Ua=setTimeout(()=>{let S=qp-f;S>0&&S<=150?Fu=!1:s(g),Ua=void 0},150)}};if(ja.push(()=>{Ua&&clearTimeout(Ua)}),u)return;ec("mousemove",i,t),ja.push(()=>{t.removeEventListener("mousemove",i)});function c(){Zl=!1,Ql=0,i.cancel()}if(o)ec("blur",c,t),ja.push(()=>{t.removeEventListener("blur",c)});else{let g=r?.generalRule?.mouseHoverHoldKey?.toLowerCase()||"alt",m=["ctrl","alt","shift","cmd","command","option","control"];ec("keyup",Kp,t),ja.push(()=>{t.removeEventListener("keyup",Kp)}),m.includes(g)?Ne("*","mouseHover",l):Ne(r.generalRule.mouseHoverHoldKey,"mouseHover",s),Ne.setScope("mouseHover"),ja.push(()=>{Ne.deleteScope("mouseHover")})}}function aT(){ja.forEach(e=>e()),ja=[]}function Kp(e){Fu=!1}function ec(e,t,n=window){return n.addEventListener(e,t,{signal:nT})}function Vp(e,t,n=window){if(t=t||Yp(e.rule,n),!t){A.debug("can not find selection part!");return}if(rc(t)){A.debug("exclude dom");return}v3(e,t);let a=yi();a?.currentUrl!==window.location.href&&(ba(),xl(e)),a&&(a.setupMouseHoverListener=zi);let r=ln(e);r.excludeSelectors=[],r.selectors=[];let u=!1;ma({id:a.id,container:t,filterRule:r,force:!0,onParagraph:o=>{Du(a,o,!0).then(i=>{if(i&&!u){u=!0;let s=Date.now();mt(fg,s),st("mouse_hover_translate",[{name:"mouse_hover_translate"}],{...e,sourceLanguage:"mouseHover"})}})},onFrame:()=>{},onIgnoreElement:()=>{}})}function Yp(e,t){return rT(nc,ac,e,t)}function rT(e,t,n,a){let r=Vg(e,t,n,a);if(r==null)return;let u=()=>{let s=a.document.elementFromPoint(e,t);if(!s)return;let l=Gg(s,e,t);return l===s?s.nodeName==="BUTTON"?s:void 0:Jp(l,n)},o=()=>{try{r.setStartBefore(r.startContainer),r.setEndAfter(r.startContainer)}catch(l){A.debug("get mouse over word fail",l)}let s=r.getBoundingClientRect();if(!(s.left>e||s.rightt||s.bottomn[l]=[l,...n[l]||[]]);let a=t.inputStartingTriggerKeyAlias[t.inputStartingTriggerKey]||[];a.includes(t.inputStartingTriggerKey)||a.unshift(t.inputStartingTriggerKey),n[t.inputTargetLanguage]=[...a,...n[t.inputTargetLanguage]];let r={triggerTimes:t.inputTrailingTriggerKeyRepeatTimes,triggerKey:t.inputTrailingTriggerKey,triggerTimeout:t.inputTrailingTriggerKeyTimeout,codePrefix:t.inputStartingTriggerKey,codeAlias:n,flatAlias:Object.values(n).flat(),codePrefixAlias:t.inputStartingTriggerKeyAlias},u=0,o=Date.now();Hi&&self.removeEventListener("keydown",Hi),Hi=i,self.addEventListener("keydown",Hi);function i(l){if(Br)return;let c=l,g=c.target||c.srcElement,m=g?.tagName;(g?.isContentEditable||m=="INPUT"||m=="SELECT"||m=="TEXTAREA")&&(ET(l,r.triggerKey,r.codePrefixAlias)?s(l):u=0)}function s(l){Date.now()-o=r.triggerTimes&&(sT(e,r),u=0)}}function uT({codePrefix:e,flatAlias:t,codePrefixAlias:n}){let a=[],r=n[e]||[];r.includes(e)||r.unshift(e);for(let u of r){let o=t.map(i=>{let s=u+i;return r.includes(i)||(s+=" "),s});a.push(...o)}return new RegExp(a.join("|"))}function Xp(e,t){for(let[n,a]of Object.entries(t))if(a.includes(e))return n;return""}var Rr;function oT(e){let t=e.parentElement;if(!t)return;Rr=document.createElement("div"),Rr.className=X+"-input",Rr.innerHTML=`
`,t.appendChild(Rr);let n=t,a=!1;do{let r=getComputedStyle(n).position;if(["fixed","absolute","relative"].includes(r)){a=!0;break}n=n.parentElement}while(n);if(n=t,!a)do{if(getComputedStyle(n).position==="static"){n.style.position="relative";break}n=n?.parentElement||null}while(n)}function iT(){Rr&&Rr.remove()}async function sT(e,t){if(!Br)try{let g=function(){o=e.config.inputTargetLanguage;let p=u.split(" ")[0];p&&p[0]&&(p=p[0].toLowerCase()+p.slice(1)),p.trim()&&t.flatAlias.includes(p)?(o=Xp(p,t.codeAlias),r=u.slice(p.length+1)):r=u},m=function(){o="";let p=uT(t),f=u.split(p);if(f.length<2)return;if(r=f[f.length-1],a=f[0],f.length>2){let v=u.lastIndexOf(r),h=u.slice(0,v).lastIndexOf(f[f.length-2]);a=u.slice(0,h+f[f.length-2].length)}if(a.endsWith(t.codePrefix))return;let S=u.slice(a.length+1,u.indexOf(r)).trim();if(o=Xp(S,t.codeAlias),!o){A.warn("not found alias",S);return}},n=document.activeElement;Br=!0,oT(n);let a="",r="",u=_u(n)||"",o=e.config.inputTargetLanguage;t.codePrefix==="none"?g():(m(),o||g()),TT(e);let i=lT(r,t),s=await bn(e,i);A.debug("translateContent",i,s);let l={text:i||"",id:0,from:s,to:o,url:"https://google.com",fromByClient:s};if(!l.text)return;mt(hg,Date.now());let c=await ha(l,e);yT(n,a+c.text),Br=!1}catch(n){throw Br=!1,n}finally{Br=!1,iT()}}function lT(e,t){let{triggerTimes:n,triggerKey:a}=t,r=0,u=" ";a.length==1?(r=n,u=a):a.toLowerCase()=="space"&&(r=n);let o=e.length;for(let i=e.length-1;i>=e.length-r;i--){if([10,8629].includes(e[i].charCodeAt(0))){o--;continue}if(![...t.codePrefixAlias[a]||[],u].includes(e[i]))break;o--}return e.length-o<3&&[".","\u3002"].includes(e[o-1])&&o--,e.slice(0,o)}function cT(e,t){let n=t.innerHTML,a=_u(t);return{html:n.replace(a,e),text:e}}function Zp(e,t,n=!1){let a=_u(t);return n?a.trim().endsWith(e.text.trim()):a.trim()==e.text.trim()}function _u(e){return e.value||e.innerText||e.textContent}async function za(e){await new Promise((t,n)=>{setTimeout(()=>{t("")},e)})}async function dT(e,t,n){await za(10);let a=new DataTransfer;e.forEach(r=>{r==="plain"&&a.setData("text/plain",t.text)}),n.dispatchEvent(new ClipboardEvent("paste",{clipboardData:a,bubbles:!0,cancelable:!0})),a.clearData(),await za(10)}async function gT(e,t){let n=document.createEvent("TextEvent");n.initTextEvent&&(n.initTextEvent("textInput",!0,!0,window,e.text),t.dispatchEvent(n),await za(10))}async function mT(e,t){t.value&&t.select(),document.execCommand("insertHTML",!1,e.html),await za(20),(t.value||t.value==="")&&(t.value=e.text)}async function pT(e,t){ef(t)&&(t.value=e.text,t.dispatchEvent(new Event("input",{bubbles:!0})),await za(20))}var fT=[dT.bind(null,["plain"])];function hT(e){let t=new KeyboardEvent("keydown",{bubbles:!0,cancelable:!0,keyCode:8,which:8,location:0,key:"Backspace"});return e.dispatchEvent(t)}function ef(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"}function bT(e){if(ef(e))return;e.focus();let t=window.getSelection();if(t&&t.type==="Caret"&&t.anchorNode&&t.anchorNode.textContent){let n=t.anchorNode,a=document.createRange();n.parentNode?.firstChild?a.setStart(n.parentNode?.firstChild,0):a.setStart(n,0),n.nodeType==Node.TEXT_NODE?a.setEnd(n,n.textContent.length):a.setEnd(n,n.childNodes.length),t.removeAllRanges(),t.addRange(a)}}async function yT(e,t){await bT(e),await za(50);let n=cT(t,e);hT(e),A.debug("clearContnet",_u(e)),await za(50);for(let a of[...fT,pT,mT,gT])if(await a(n,e),A.debug("setContent",a.name,Zp(n,e),_u(e),n),Zp(n,e))break}function TT(e){st("translate_input",[{name:"translate_input",params:{input_trailing_trigger_key:e.config.inputTrailingTriggerKey,input_starting_trigger_key:e.config.inputStartingTriggerKey,input_target_language:e.config.inputTargetLanguage}}],e)}function ET(e,t,n){let a="";e&&e.code&&(a=e.code.toLowerCase());let r="";e&&e.key&&(r=e.key.toLowerCase());let u=e.keyCode,o=n[t]||[];return u===229&&t!=="space"?!1:!!(o.includes(a)||o.includes(r)||a===t||r===t)}async function af(e,t,n){return(await ha({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}function xT(e,t,n,a){let r=[],u="en";for(let o of n)r.push({text:o.textContent||"",id:r.length,from:u,to:a,url:"https://google.com",fromByClient:u});return new Promise((o,i)=>{_n({sentences:r},{...e,translationService:"google"},(s,l,c)=>{if(s)return o([]);let g=l?.id||0,m=n[g];m&&m.className==X+"-search-title-wrapper"&&(m.innerHTML+=_e.sanitize(`
${l?.text}
`,{ADD_ATTR:["target"]}))})})}function Wi(e,t,n){t&&st(t.key,[{name:t.key}],{...e,sourceLanguage:t.sourceLanguage||n})}function uc(e,t,n,a){let r=n.querySelectorAll('[translate="true"]');return xT(e,t,[...r],a),n}async function oc(e,t){let a=(await ue({url:CT(e),method:"GET",responseType:"raw",headers:{"cache-control":"no-cache","content-type":"application/xml","Sec-Fetch-Site":"none",accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).body,u=new DOMParser().parseFromString(a,"text/xml"),o=[],i=u.querySelectorAll("item");for(let s=0;s${e.cancelDescription}
`:""} +

\u82F1\u6587\u641C\u7D22 + ${n} \u7684\u76F8\u5173\u65B0\u95FB:
+

+
${o}
+ + `.replaceAll(` +`,""),{ADD_ATTR:["target"]});let l=r.querySelector(`.${X}-search-more`);return l&&(l.onclick=()=>{let c=r.querySelector(`.${X}-expand-items`);c.style.display=="none"?(c.style.display="block",l.innerText="\u66F4\u591A\u76F8\u5173\u65B0\u95FB"):window.open(tf(n))}),r}function nf(e,t){let n=e.style;return t.map((a,r)=>{let u=a.title||"",o=a.source||"",i=u.split("-");return i.length>1&&(o=i[i.length-1].trim(),i=i.slice(0,i.length-1)),u=i.join("-"),u=u.trim(),`
${o}
+
+ ${a}
${$m(t.pubDate||"")}
+ >${u} +
+
${Gm(a.pubDate||"")}
`}).join(` -`)}function Qp(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}function TT(e){let n=new URL(e).searchParams.get("q");return n||""}async function ET(e,t,n){return(await ha({text:t||"",id:0,from:n,to:"en",url:"https://google.com",fromByClient:n},{...e,translationService:"google"})).text}async function xT(e,t,n){let a=[],r="en";for(let u of t)a.push({text:u.textContent||"",id:a.length,from:r,to:n,url:"https://google.com",fromByClient:r});return new Promise((u,o)=>{_n({sentences:a},{...e,translationService:"google"},(i,s,l)=>{if(i)return u([]);let c=s?.id||0,g=t[c];g&&g.className==X+"-search-title-wrapper"&&(g.innerHTML+=Oe.sanitize(`
${s?.text}
`,{ADD_ATTR:["target"]}))})})}var Ce=null,Wi={},Ir,$i;async function Ri(){if(Ke()==="Original"){let e={};$i&&(e.translationMode=$i),Ir&&(e.translationTheme=Ir),Ce&&(e={...Ce.state,...e}),await jt(vt(),e),await En(Ce)}else(Ke()==="Translated"||Ke()==="Error")&&Ha()}async function Ii(){if(Ce=await jt(vt(),{}),Ce.rule.isEbookBuilder)return Np(Ce);if(Ce.rule.isSubtitleBuilder)return Ip(Ce);x3()}async function Oi(){if(Ke()==="Original")Ce=await jt(vt(),{}),Ir||(Ir=Ce.state.translationTheme),Ce=await jt(vt(),{translationTheme:"mask"}),await En(Ce);else if(Ke()==="Translated"){let e=zm().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[Ce.mainFrame,...e],n=Ce?.state.translationTheme;for(let a of t){let r=sr(a,rr,!0);n==="mask"?r!=="none"?st(a,rr,"none",!0):st(a,rr,"mask",!0):r!=="mask"?st(a,rr,"mask",!0):st(a,rr,"none",!0)}}}async function rc(){let e=await jt(vt(),{});return e.rule.isSubtitleBuilder?Gl(e):E3(e)}function CT(e){Ke()==="Original"?Rp(e):Jl()}function vT(e){Ke()==="Original"?Ti(e):ba()}async function Ha(){let e=await jt(vt(),{});if(e.rule.isSubtitleBuilder){Jl();return}else e.rule.isEbookBuilder&&Up();ba()}async function En(e){if(Ke()!=="Original"&&await Ha(),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),Wi[e.translationService]||(Wi[e.translationService]=!0,Ct()||oc(e).catch(t=>{L.warn("init translation engine error",t)})),nt("translage_page_daily",[{name:"translage_page_daily"}],e),nt("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:Ln()}),e.rule.isSubtitleBuilder)return CT(e);if(e.rule.isEbookBuilder)return jp(e);e.rule.isPdf||vT(e)}async function tf(){Ke()==="Original"?await qi():(Ke()==="Translated"||Ke()==="Error")&&(Ce=await jt(vt(),{}),Ce.state.translationArea!=="main"?await qi():Ha())}async function qi(){Ce=await jt(vt(),{translationArea:"main"}),await En(Ce)}async function uc(){Ce=await jt(vt(),{translationArea:"body"}),await En(Ce)}async function Ni(){if(Ke()==="Original"){let e=await jt(vt(),{translationMode:"translation"});await En(e)}else(Ke()==="Translated"||Ke()==="Error")&&await Ha()}async function nf(e){if(Ce=await jt(vt(),{}),nt("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...Ce,sourceLanguage:"unknown"}),Ke()==="Original"){En(Ce);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function af(){if(Ke()==="Original")await uc();else if(Ke()==="Translated"||Ke()==="Error"){let e={};Ce&&Ce.state&&(e=Ce.state),Ce=await jt(vt(),e),Ce.state.translationArea!=="body"?(Ce.state.translationArea="body",Ce=await jt(vt(),Ce.state),await En(Ce)):Ha()}}async function rf(){Ce=await jt(vt(),{translationStartMode:"immediate"}),await En(Ce)}async function sp(){let e=await jt(vt(),{});if(L.debug("init page ctx",e),e.rule.isSubtitleBuilder){Gl(e);return}if(e.rule.isEbookBuilder){Op(e);return}if(e.rule.isPdf){await _p(e);return}if(ef(e),$i||($i=e.state.translationMode),Ir||(Ir=e.state.translationTheme),e.rule.urlChangeDelay&&await Qn(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await wT(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=of(),r=document.createElement("meta");r.name="immersive-translate-options-url",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){L.warn("inject options url failed",u)}}if(e.rule.isInjectVersion){let a=da(),r=document.createElement("meta");r.name="immersive-translate-version",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){L.warn("inject version failed",u)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(r=>{let u=document.createElement("meta");u.name=r,u.content=e.rule.globalMeta[r],document.head.appendChild(u)}),e.rule.initialGlobalAttributes&&Vm(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await rc():sn(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(L.debug(`detect page language: ${e.url} ${t}`),sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||Im(t,e.config.translationLanguagePattern)&&(n=!0,L.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&_a()&&zi(e,window),n)Ce.state.isAutoTranslate=!0,En(Ce);else if(L.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&(Wi[e.translationService]||(Wi[e.translationService]=!0,Ct()||oc(e).catch(a=>{L.warn("init translation engine error",a)})))}}async function jt(e,t){let n=Object.keys(t);if(Ce){let a={url:e,config:Ce.config,state:{...Ce.state,...t}};Ce=await wt(a)}else{let a=await Tn(),r=t;n.length===0&&(r=void 0),Ce=await wt({url:e,config:a,state:r})}return Ce}async function uf(){let e=await Tn(),t;Ce&&Ce.state&&(t=Ce.state);let n={url:vt(),config:e,state:t},a=await wt(n);Ce=a;let r=yi(),u=[];return r?u=r.allInlineWindows||[window]:u=[window],u.forEach(o=>{op(a,o),_a()&&zi(a,o),Jp(a)}),a}function wT(e,t=3e3){return new Promise((n,a)=>{let r=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,u=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(u),r&&clearTimeout(r),n(null))},50)})}var Bu=new Map,Wa=class{constructor(t,n=!1){this.logger=new hu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),j.runtime.onMessage.addListener((a,r,u)=>{let o=a.from,i=a.to,s,l,c;r.tab&&r.tab.id&&(s=r.tab.id,o=`${o}:${s}`,l=r.tab.url,c=r.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let g=sc(i),{type:m,name:p}=g;if(m!==t)return!1;let f=sc(o),v=Bu.get(m).get(p);if(!v)return this.logger.debug(`no message handler for ${m}:${i}, but it's ok`),!1;let{messageHandler:h,sync:k}=v,F={type:t,name:f.name,id:s,url:l,active:c};if(k){try{let M=h(a.payload,F);u({ok:!0,data:M})}catch(M){u({ok:!1,errorName:M.name,errorMessage:M.message,errorDetails:M.details})}return!1}else return h(a.payload,F).then(M=>{u({ok:!0,data:M})}).catch(M=>{u({ok:!1,errorName:M.name,errorMessage:M.message,errorDetails:M.details})}),!0}))}getConnection(t,n,a){let r=!1;a&&a.sync&&(r=!0);let u=this.fromType,o=Bu.get(u);if(o.has(t))return o.get(t).connectionInstance;{let i=new ic(`${u}:${t}`,this.logger);return Bu.get(u).set(t,{messageHandler:n,sync:r,connectionInstance:i}),i}}},ic=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=sc(t),{type:r,id:u}=a;if(r!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await j.runtime.sendMessage(o);return sf(o,i,this.logger)}catch(i){if(r==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await j.tabs.sendMessage(u,o);return sf(o,i,this.logger)}}};function sf(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new gt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new gt("noResponse","Unknown error")}function sc(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Lr=async function(e,t){let{method:n,data:a}=e,r=await uf(),u=Date.now();L.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await uc(),mt(jn,u)):n==="translateTheMainPage"?(await qi(),mt(jn,u)):n==="translateToThePageEndImmediately"?(await rf(),mt(jn,u)):n==="toggleTranslatePage"?(await Ri(),mt(jn,u)):n==="toggleTranslateTheWholePage"?(await af(),mt(jn,u)):n==="toggleTranslateTheMainPage"?(await tf(),mt(jn,u)):n==="toggleOnlyTransation"?(await Ni(),mt(jn,u)):n==="translatePage"?(await En(r),mt(jn,u)):n==="toggleTranslationMask"?await Oi():n==="restorePage"?Ha():n==="setCurrentPageLanguageByClient"?sn(a):n==="retryFailedParagraphs"?Ii():n==="switchTranslationMode"&&a&&a.mode&&nf(a.mode)},kT=function(e,t){let{method:n,data:a}=e;if(L.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ke();if(n==="getCurrentPageLanguage"){let r=Ln();return rc().catch(u=>{L.warn("detectCurrentPageLanguage failed",u)}),r}},Ki,Vi;function lp(){let e=Gi();Ct()||ST(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Gi(){return Ki||(Ki=new Wa("content_script",!1).getConnection("main",Lr),Ki)}function ST(){return Vi||(Vi=new Wa("content_script",!1).getConnection("main_sync",kT,{sync:!0}),Vi)}var Ru=new Map;function lf(){document.addEventListener(sg,e=>{let t=e;if(t&&t.detail){let n;try{n=JSON.parse(t.detail),Ru.has(n.id)&&(n.ok?Ru.get(n.id)(null,n.data):Ru.get(n.id)(new Error(n.errorMessage),null),Ru.delete(n.id))}catch{}}})}function cf(e){let t=AT(64),n=new CustomEvent(og,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,r)=>{Ru.set(t,(u,o)=>{u?r(u):a(o)})})}function AT(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r{})}function df(e){return le()?Y0(e):at({method:"queryParagraphCache",data:e})}async function gf(e){if(le()){await J0(e);return}return at({method:"setParagraphCache",data:e})}async function mf(){if(le())return Promise.resolve();await at({method:"mockRequest"})}function Si(e=!1,t=""){return le()?(j.runtime.openOptionsPage(e,t),Promise.resolve()):at({method:"openOptionsPage"})}function of(e=""){return le()||Dt()?tt().OPTIONS_URL:j.runtime.getURL("options.html")}function I3(e=""){return j&&j.runtime&&j.runtime.getURL?j.runtime.getURL("options.html"):""}function Ai(e=!1){return le()?(j.extra.openAboutPage(e),Promise.resolve()):at({method:"openAboutPage"})}function gp(e=!1){return le()?(j.extra.openSearchEnhancement(e),Promise.resolve()):at({method:"openSearchEnhancement"})}function Di(e=!1){return le()?(j.extra.openEbookViewerPage(e),Promise.resolve()):at({method:"openEbookViewerPage"})}function W3(e=!1){return le()?Promise.resolve():at({method:"openHtmlViewerPage"})}function Li(e=!1){return le()?(j.extra.openEbookBuilderPage(e),Promise.resolve()):at({method:"openEbookBuilderPage"})}function mp(e){Dt()}function Ml(e=!1){return le()?(alert("it's not support in userscript"),Promise.resolve()):at({method:"openPdfViewerPage"})}function $3(e=!1){return le()?(j.extra.openSubtitleBuilderPage(e),Promise.resolve()):at({method:"openSubtitleBuilderPage"})}function z3(){return le()?(L.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):at({method:"autoSyncLatestConfig"})}var be=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:r}=t,u=[],o=null,i=new Set;for(let v of r)v.from&&v.from!=="auto"&&i.add(v.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{u=cm(r,l,c)}catch(v){if(a)for(let h=0;hv));let g=[],m=[],p=(v,h,k)=>{let F=h.translatedTexts[0];m[v]||(m[v]=h,m[v].translatedTexts=Array(h.sentenceTotalParts).fill(null)),m[v].translatedTexts[h.partIndex]=F;let M=m[v],A=0;for(let P=0;P{let M=await P3(this.translationOptions.translationService);await Qn(M||0);let A=h.from;if(s&&(A="auto"),h.fromByClient&&h.fromByClient!=="auto"&&(A=h.fromByClient),this.isSupportList)return{...await this.translateList({text:h.tempSentences.map(w=>w.text),from:A,to:h.to,url:k,options:n}),sourceTempSentences:h.tempSentences};{let P=Tg;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(P=this.serviceConfig.translationTextSeparator);let w=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(w=this.serviceConfig.newlinePlaceholderDelimiters);let x="";w&&w.length>=2?x=h.tempSentences.map((W,_)=>_===h.tempSentences.length-1?W.text:W.text+w[0]+(_+1)+w[1]).join(""):x=h.tempSentences.map(W=>W.text).join(P);let b=await this.translate({text:x,from:A,to:h.to,url:k,options:n}),{text:E}=b,I=[];if(w&&w.length>=2){let W=`${w[0]}\\d+${w[1]}`;w&&w.length>=3&&(W=w[2]);let _=new RegExp(W,"g");I=E.split(_)}else I=E.split(P);let D=[];if(I.length>h.tempSentences.length){for(let W=0;W{let{text:A,sourceTempSentences:P}=M;for(let w=0;w{if(a){for(let A=0;A({...v.sentence,text:v.translatedTexts.join("")}))}}detectLanguageLocally(t){return lt({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};be.langMap=new Map;var pf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],xn=class extends be{constructor(n,a,r){super(n,a,r);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),r=`${n.getUTCMonth()+1}`.padStart(2,"0"),u=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${r}-${u}`}async translate(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:xn.langMap.get(r)||"auto",SourceText:a,Target:xn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:xn.langMapReverse.get(i.Response.Source)||r,to:xn.langMapReverse.get(i.Response.Target)||u}}async translateList(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:xn.langMap.get(r)||"auto",SourceTextList:a,Target:xn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:xn.langMapReverse.get(i.Response.Source)||r,to:xn.langMapReverse.get(i.Response.Target)||u}}async signedRequest({secretId:n,secretKey:a,action:r,payload:u,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),g=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await yn(u)].join(` -`),m=xn.getUTCDate(l),p=["TC3-HMAC-SHA256",c,`${m}/${o}/tc3_request`,await yn(g)].join(` -`),f=await r3(m,`TC3${a}`),S=await li(o,f),v=await li("tc3_request",S),h=await li(p,v),k=await ue({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":r,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${m}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${h}`},body:u});if(k instanceof Error)throw k;if(k.Response&&k.Response.Error&&k.Response.Error.Message)throw new Error(k.Response.Error.Message);return k}},$a=xn;$a.langMap=new Map(pf),$a.langMapReverse=new Map(pf.map(([n,a])=>[a,n]));var ff=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],DT={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Ji=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=new URLSearchParams({source:r,target:u,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await ue({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:DT});return{text:i.targetText,from:Ji.langMapReverse.get(i.source)||r,to:Ji.langMapReverse.get(i.target)||u}}},qa=Ji;qa.langMap=new Map(ff),qa.langMapReverse=new Map(ff.map(([n,a])=>[a,n]));var hf=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],xa=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=xa.langMap.get(r)||"auto",i=xa.langMap.get(u)||u,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:xa.langMapReverse.get(s.data[2])||"auto",to:u}}async translateXml(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=xa.langMap.get(r)||"auto",i=xa.langMap.get(u)||u,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:xa.langMapReverse.get(s.data[2])||"auto",to:u}}async fetchXmlWithoutToken(n,a,r){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}).toString();return{data:await ue({retry:2,url:o})}}async fetchWithoutToken(n,a,r){let u=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}),o=this.apiUrl+"?"+u.toString();return{data:await ue({retry:2,url:o})}}},Vn=xa;Vn.langMap=new Map(hf),Vn.langMapReverse=new Map(hf.map(([n,a])=>[a,n]));function LT(e,t){return t?e+(t-e%t):e}function PT(e,t){return e.split(t).length-1}function lc(e){let t=Date.now(),n=1;for(let a of e)n+=PT(a,"i");return LT(t,n)}function MT(e,t){return Math.floor(Math.random()*(t-e+1))+e}function cc(){return MT(1e6,1e8)}var dc="https://www2.deepl.com/jsonrpc",gc="auto",bf=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function FT(e=bf){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function mc(e){return FT()[e.toLowerCase()]}var _T={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function BT(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function RT(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function IT(e,t,n,a,r,u,o){let i=cc(),s=RT(a,n),l=[];t.forEach(m=>{l.push({text:m,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=lc(t);let c=await ue({retry:2,method:"POST",url:e,body:BT(s),headers:_T}),g={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(m=>{g.text.push(m.text)}),g}async function yf(e,t,n,a=gc,r,u,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:IT(e,t,mc(n),mc(a)??"auto",r,u,o):{text:[],from:a,to:n}}var Tf=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Or=class extends be{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=dc;n&&n.apiUrl&&(this.API_URL=on(dc,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:r,from:u}=n,o=await yf(this.API_URL,a,Or.langMap.get(r)||r,Or.langMap.get(u)||"auto");return{text:o.text,from:Or.langMapReverse.get(o.from),to:Or.langMapReverse.get(o.to)}}},Ca=Or;Ca.langMap=new Map(Tf),Ca.langMapReverse=new Map(Tf.map(([n,a])=>[a,n]));var Ef=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],pc="https://transmart.qq.com/api/imt",Ka=class extends be{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:r}=n,u=await this.detectLanguage(a),o=Ka.langMap.get(u)||u,i=Ka.langMap.get(r)||r;if(u===r)return{text:a,from:u,to:r};let s=tt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=xf());let g=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),m=await ue({url:pc,body:g,method:"POST",retry:2});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:u||"auto",to:r}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:r,to:u}=n,o=tt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=xf()),r.length===1){let f=await this.translate({from:a,text:r[0],to:u,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(r.join(` -`));if(l===u)return{text:r,from:l,to:u};let c=Ka.langMap.get(l)||l,g=Ka.langMap.get(u)||u,m=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:r,lang:c,orig_url:i},target:{lang:g},type:"plain"}),p=await ue({url:pc,body:m,method:"POST"});if(p.header.ret_code!=="succ")throw new Error(p.message||p.header.ret_code);return{text:p.auto_translation,from:l||"auto",to:u}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},r=await ue({url:pc,method:"POST",body:JSON.stringify(a)});if(r.header.ret_code!=="succ")throw new Error(r.message||r.header.ret_code);let u=r.language,o=Ka.langMapReverse.get(u);return o||u}},Va=Ka;Va.langMap=new Map(Ef),Va.langMapReverse=new Map(Ef.map(([n,a])=>[a,n]));function xf(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function Cf(){return Math.random()>=0}var Nr=class extends be{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,r=a.match(/^\s*/)[0].length;return{text:a.slice(0,r)+"\u6A21\u62DF\uFF1A"+a.slice(r,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:r,to:u}=n;if(await mf(),!Cf())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:r,to:u,text:[""]}:{from:r,to:u,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var wf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],fc=new Map(wf),vf=new Map(wf.map(([e,t])=>[t,e])),hc=class extends be{constructor(n,a,r){super(n,a,r);this.apikey="";this.codename=hc.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:r,to:u}=n,o=await ue({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:fc.get(r)||"auto",target_lang:fc.get(u)||u})});if(o.status){let i=o;return i.result&&u=="zh-TW",{text:i.result,from:vf.get(i.source_lang),to:vf.get(i.target_lang)}}else throw new Error(o.msg)}},Iu=hc;Iu.langMap=fc,Iu.DEFAULT_CODENAME="deepl";var Yi=Iu;var Kt=null,kf=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],bc=new Map(kf),OT=new Map(kf.map(([e,t])=>[t,e])),Xi=class extends be{constructor(n,a,r){super(n,a,r);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=on(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=on(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=on(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=on(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(u=>u.trim())}static async clearState(){Kt=null,await j.storage.local.remove(fn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Kt){Kt={};let a=await j.storage.local.get(fn);a&&a[fn]&&(Kt=a[fn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new mo(n,{state:Kt,onFetch:(r,u)=>{let i=new URL(r).pathname;return i==="/refresh_token"||i==="/oidc/token"?Pu({url:r,...u}):ue({url:r,...u})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:r=>{Kt=r,j.storage.local.set({[fn]:Kt})}});await a.updateToken(),Kt=a.getState(),a.getIsStateChanged()&&await j.storage.local.set({[fn]:Kt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:r,text:u}=n,o={source_lang:bc.get(a)||"",target_lang:bc.get(r)||r},i=this.getRandomKey(),s=new URLSearchParams(o);u.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let g;if(i.startsWith("immersive_")){let f=new mo(i,{state:Kt,onFetch:(S,v)=>{let k=new URL(S).pathname;return k==="/refresh_token"||k==="/oidc/token"?Pu({url:S,...v}):ue({url:S,...v})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:S=>{Kt=S,j.storage.local.set({[fn]:Kt})}});g=await f.translateApi(l),f.getIsStateChanged()&&(Kt=f.getState(),await j.storage.local.set({[fn]:Kt}))}else g=await ue({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:m}=g,p=m.map(f=>f.text);if(r==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let v=await new Vn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:m.map(h=>h.text).join(` +`)}function rf(e,t){if(!e.keyword)return;let n=e.keyword.value||"";for(let a=0;anew RegExp(a.urlMatch).test(t))}async function of(e){if(Ma().any)return;if(!e.rule.enableSearchEnhancement){A.debug("enable is false");return}let t=vT(e.rule.searchEnhancementConfig||[],e.url);if(!t){A.debug("not found siteConfig",e.url);return}let n=rf(t,e.url);if(!n){A.debug("not found keyword",e.url);return}t.id=="google"?kT(e,t,n):wT(e,t,n)}async function wT(e,t,n){let a=await bn(e,document.title);t.selector&&setTimeout(async()=>{let r=document.querySelector(t.selector);if(!r){A.debug("selector node not found",t.selector);return}let u=await oc(n,t.showCount);if(u&&u.length<=0){A.debug("list not found");return}let o=await ic(t,u,n,t.showCount);if(!o){A.debug("getInseredNode none");return}o.style.cssText=t.style.container||"";let i=t.selectorAction||"appendChild";i=="insertBefore"?r.parentElement?.insertBefore(o,r):i=="appendChild"?r.appendChild(o):i=="replace"&&r?.replaceWith(o),uc(e,t,o,a),Wi(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a)},t.delayTime||0)}async function kT(e,t,n){let a=await bn(e,n);if(Wi(e,{key:"detect_search_action"},a),!["zh-CN","zh-TW"].includes(a))return;A.debug("use dual search");let r=!1;if(new URL(e.url).searchParams.get("tbm")==="nws")r=!0;else if(!uf(document.body))return;let o=document.querySelector("#rhs");if(!o){let i=document.querySelector("#rcnt");if(!i)return;let s=i.children;if(s&&s.length>1)o=s[1];else{let l=s[0];o=document.createElement("div"),o.id="rhs",o.style.maxWidth="372px",o.style.marginLeft="50px",i.insertBefore(o,l.nextSibling)}}if(r||uf(document.body)){A.debug("find story");let i=await af(e,n,a);A.debug("enKeyword",i);let s=await oc(i,t.showCount);if(A.debug("news list",s),s&&s.length<=0)return;let l=await ic(t,s,i,t.showCount);if(!l)return;Wi(e,{key:"show_search_enhancement",sourceLanguage:"search_enhancement"},a),uc(e,t,l,a),o.insertBefore(l,o?.firstChild)}}function uf(e){let t=e.querySelectorAll("[aria-level='2'][role=heading]");if(!t)return!1;for(let n of t){let a=(n?.textContent||"").trim();if(a.indexOf("\u7126\u70B9\u65B0\u95FB")>=0||a.indexOf("\u7126\u9EDE\u65B0\u805E")>=0||a.indexOf("Top stories")>=0)return!0}return!1}var Ce=null,$i={},Ir,qi;async function Ri(){if(Ke()==="Original"){let e={};qi&&(e.translationMode=qi),Ir&&(e.translationTheme=Ir),Ce&&(e={...Ce.state,...e}),await jt(vt(),e),await xn(Ce)}else(Ke()==="Translated"||Ke()==="Error")&&Ha()}async function Ii(){if(Ce=await jt(vt(),{}),Ce.rule.isEbookBuilder)return Hp(Ce);if(Ce.rule.isSubtitleBuilder)return jp(Ce);k3()}async function Oi(){if(Ke()==="Original")Ce=await jt(vt(),{}),Ir||(Ir=Ce.state.translationTheme),Ce=await jt(vt(),{translationTheme:"mask"}),await xn(Ce);else if(Ke()==="Translated"){let e=qm().filter(a=>a.contentDocument?.body).map(a=>a.contentDocument.body),t=[Ce.mainFrame,...e],n=Ce?.state.translationTheme;for(let a of t){let r=sr(a,rr,!0);n==="mask"?r!=="none"?it(a,rr,"none",!0):it(a,rr,"mask",!0):r!=="mask"?it(a,rr,"mask",!0):it(a,rr,"none",!0)}}}async function sc(){let e=await jt(vt(),{});return e.rule.isSubtitleBuilder?Jl(e):w3(e)}function ST(e){Ke()==="Original"?Up(e):Yl()}function AT(e){Ke()==="Original"?Ti(e):ba()}async function Ha(){let e=await jt(vt(),{});if(e.rule.isSubtitleBuilder){Yl();return}else e.rule.isEbookBuilder&&Wp();ba()}async function xn(e){if(Ke()!=="Original"&&await Ha(),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"translateStart",payload:{}})})),document.dispatchEvent(new CustomEvent(Ot,{detail:JSON.stringify({type:"targetLanguage",payload:{targetLanguage:e.targetLanguage}})})),$i[e.translationService]||($i[e.translationService]=!0,Ct()||cc(e).catch(t=>{A.warn("init translation engine error",t)})),st("translage_page_daily",[{name:"translage_page_daily"}],e),st("translate_page",[{name:"translate_page"}],{...e,sourceLanguage:Pn()}),e.rule.isSubtitleBuilder)return ST(e);if(e.rule.isEbookBuilder)return $p(e);e.rule.isPdf||AT(e)}async function sf(){Ke()==="Original"?await Ki():(Ke()==="Translated"||Ke()==="Error")&&(Ce=await jt(vt(),{}),Ce.state.translationArea!=="main"?await Ki():Ha())}async function Ki(){Ce=await jt(vt(),{translationArea:"main"}),await xn(Ce)}async function lc(){Ce=await jt(vt(),{translationArea:"body"}),await xn(Ce)}async function Ni(){if(Ke()==="Original"){let e=await jt(vt(),{translationMode:"translation"});await xn(e)}else(Ke()==="Translated"||Ke()==="Error")&&await Ha()}async function lf(e){if(Ce=await jt(vt(),{}),st("switch_translation_mode",[{name:"switch_translation_mode",params:{mode:e}}],{...Ce,sourceLanguage:"unknown"}),Ke()==="Original"){xn(Ce);return}window.immersiveTranslateSwitchTranslateState&&window.immersiveTranslateSwitchTranslateState(e)}async function cf(){if(Ke()==="Original")await lc();else if(Ke()==="Translated"||Ke()==="Error"){let e={};Ce&&Ce.state&&(e=Ce.state),Ce=await jt(vt(),e),Ce.state.translationArea!=="body"?(Ce.state.translationArea="body",Ce=await jt(vt(),Ce.state),await xn(Ce)):Ha()}}async function df(){Ce=await jt(vt(),{translationStartMode:"immediate"}),await xn(Ce)}async function gp(){let e=await jt(vt(),{});if(A.debug("init page ctx",e),e.rule.isSubtitleBuilder){Jl(e);return}if(e.rule.isEbookBuilder){zp(e);return}if(e.rule.isPdf){await Op(e);return}if(of(e),qi||(qi=e.state.translationMode),Ir||(Ir=e.state.translationTheme),e.rule.urlChangeDelay&&await Qn(e.rule.urlChangeDelay),e.rule.waitForSelectors&&e.rule.waitForSelectors.length>0&&await DT(e.rule.waitForSelectors,e.rule.waitForSelectorsTimeout),e.rule.isInjectOptionsUrl){let a=mf(),r=document.createElement("meta");r.name="immersive-translate-options-url",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){A.warn("inject options url failed",u)}}if(e.rule.isInjectVersion){let a=da(),r=document.createElement("meta");r.name="immersive-translate-version",r.content=a;try{document.head&&document.head.appendChild&&document.head.appendChild(r)}catch(u){A.warn("inject version failed",u)}}e.rule.globalMeta&&Object.keys(e.rule.globalMeta).forEach(r=>{let u=document.createElement("meta");u.name=r,u.content=e.rule.globalMeta[r],document.head.appendChild(u)}),e.rule.initialGlobalAttributes&&Xm(document.body,e.rule.initialGlobalAttributes);let t=e.sourceLanguage;t==="auto"?t=await sc():sn(t);let n=e.state.isAutoTranslate||e.isTranslateUrl||e.rule.isPdf;if(!n&&!e.isTranslateExcludeUrl&&(A.debug(`detect page language: ${e.url} ${t}`),sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto"||jm(t,e.config.translationLanguagePattern)&&(n=!0,A.debug(`match language pattern ${t}, auto translate`))),e.rule.isEbookBuilder&&(n=!1),!e.rule.isPdf&&_a()&&zi(e,window),n)Ce.state.isAutoTranslate=!0,xn(Ce);else if(A.debug("do not auto translate",e),e.rule.initTranslationServiceAsSoonAsPossible&&e.translationService==="deepl"){if(sa(t,e.targetLanguage,{ignoreZhCNandZhTW:e.rule.ignoreZhCNandZhTW})||t==="auto")return;e.config&&e.config.translationServices&&e.config.translationServices.deepl&&e.config.translationServices.deepl.authKey&&typeof e.config.translationServices.deepl.authKey=="string"&&e.config.translationServices.deepl.authKey.startsWith("immersive_")&&($i[e.translationService]||($i[e.translationService]=!0,Ct()||cc(e).catch(a=>{A.warn("init translation engine error",a)})))}}async function jt(e,t){let n=Object.keys(t);if(Ce){let a={url:e,config:Ce.config,state:{...Ce.state,...t}};Ce=await wt(a)}else{let a=await En(),r=t;n.length===0&&(r=void 0),Ce=await wt({url:e,config:a,state:r})}return Ce}async function gf(){let e=await En(),t;Ce&&Ce.state&&(t=Ce.state);let n={url:vt(),config:e,state:t},a=await wt(n);Ce=a;let r=yi(),u=[];return r?u=r.allInlineWindows||[window]:u=[window],u.forEach(o=>{cp(a,o),_a()&&zi(a,o),Qp(a)}),a}function DT(e,t=3e3){return new Promise((n,a)=>{let r=t?setTimeout(()=>{n(new Error("timeout"))},t):void 0,u=setInterval(()=>{e.every(i=>document.querySelector(i)!==null)&&(clearInterval(u),r&&clearTimeout(r),n(null))},50)})}var Bu=new Map,Wa=class{constructor(t,n=!1){this.logger=new hu,n&&this.logger.setLevel("debug"),this.fromType=t,Bu.has(t)||(Bu.set(t,new Map),j.runtime.onMessage.addListener((a,r,u)=>{let o=a.from,i=a.to,s,l,c;r.tab&&r.tab.id&&(s=r.tab.id,o=`${o}:${s}`,l=r.tab.url,c=r.tab.active),this.logger.debug(`${a.to} received message [${a.payload.method}] from ${a.from}`,a.payload.data?a.payload.data:" ");let g=gc(i),{type:m,name:p}=g;if(m!==t)return!1;let f=gc(o),v=Bu.get(m).get(p);if(!v)return this.logger.debug(`no message handler for ${m}:${i}, but it's ok`),!1;let{messageHandler:h,sync:k}=v,F={type:t,name:f.name,id:s,url:l,active:c};if(k){try{let M=h(a.payload,F);u({ok:!0,data:M})}catch(M){u({ok:!1,errorName:M.name,errorMessage:M.message,errorDetails:M.details})}return!1}else return h(a.payload,F).then(M=>{u({ok:!0,data:M})}).catch(M=>{u({ok:!1,errorName:M.name,errorMessage:M.message,errorDetails:M.details})}),!0}))}getConnection(t,n,a){let r=!1;a&&a.sync&&(r=!0);let u=this.fromType,o=Bu.get(u);if(o.has(t))return o.get(t).connectionInstance;{let i=new dc(`${u}:${t}`,this.logger);return Bu.get(u).set(t,{messageHandler:n,sync:r,connectionInstance:i}),i}}},dc=class{constructor(t,n){this.from=t,this.logger=n}async sendMessage(t,n){let a=gc(t),{type:r,id:u}=a;if(r!=="content_script"){let o={to:t,from:this.from,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");try{let i=await j.runtime.sendMessage(o);return pf(o,i,this.logger)}catch(i){if(r==="popup"){let s=`popup ${t} is not active, so the message does not send, ignore this error, ${JSON.stringify(n)}`;return this.logger.debug(s,n,t,i),Promise.resolve({message:s})}else throw i}}else{let o={from:this.from,to:t,payload:n};this.logger.debug(`${o.from} send message [${o.payload.method}] to ${o.to}`,o.payload.data?o.payload.data:" ");let i=await j.tabs.sendMessage(u,o);return pf(o,i,this.logger)}}};function pf(e,t,n){if(t){if(t.ok)return n.debug(`${e.from} received response from ${e.to}:`,t.data?t.data:" "),t.data;throw new gt(t.errorName||"UnknownError",t.errorMessage||"Unknown error",t.errorDetails)}else throw new gt("noResponse","Unknown error")}function gc(e){let t=e.split(":");if(t.length<2)throw new Error("not a valid to string");let n={type:t[0],name:t[1]};if(t[0]==="content_script"){let a=parseInt(t[2]);if(!isNaN(a))n.id=a;else throw new Error("tab id not a valid number")}return n}var Lr=async function(e,t){let{method:n,data:a}=e,r=await gf(),u=Date.now();A.debug(`content script received message: ${n}`,a||" "),n==="translateTheWholePage"?(await lc(),mt(jn,u)):n==="translateTheMainPage"?(await Ki(),mt(jn,u)):n==="translateToThePageEndImmediately"?(await df(),mt(jn,u)):n==="toggleTranslatePage"?(await Ri(),mt(jn,u)):n==="toggleTranslateTheWholePage"?(await cf(),mt(jn,u)):n==="toggleTranslateTheMainPage"?(await sf(),mt(jn,u)):n==="toggleOnlyTransation"?(await Ni(),mt(jn,u)):n==="translatePage"?(await xn(r),mt(jn,u)):n==="toggleTranslationMask"?await Oi():n==="restorePage"?Ha():n==="setCurrentPageLanguageByClient"?sn(a):n==="retryFailedParagraphs"?Ii():n==="switchTranslationMode"&&a&&a.mode&&lf(a.mode)},LT=function(e,t){let{method:n,data:a}=e;if(A.debug(`content script received sync message: ${n}`,a||" "),n==="ping")return"pong";if(n==="getPageStatus")return Ke();if(n==="getCurrentPageLanguage"){let r=Pn();return sc().catch(u=>{A.warn("detectCurrentPageLanguage failed",u)}),r}},Vi,Gi;function mp(){let e=Ji();Ct()||PT(),e.sendMessage("popup:main_sync",{method:"ready"}).catch(n=>{})}function Ji(){return Vi||(Vi=new Wa("content_script",!1).getConnection("main",Lr),Vi)}function PT(){return Gi||(Gi=new Wa("content_script",!1).getConnection("main_sync",LT,{sync:!0}),Gi)}var Ru=new Map;function ff(){document.addEventListener(gg,e=>{let t=e;if(t&&t.detail){let n;try{n=JSON.parse(t.detail),Ru.has(n.id)&&(n.ok?Ru.get(n.id)(null,n.data):Ru.get(n.id)(new Error(n.errorMessage),null),Ru.delete(n.id))}catch{}}})}function hf(e){let t=MT(64),n=new CustomEvent(cg,{detail:JSON.stringify({...e,type:"ask",id:t})});return document.dispatchEvent(n),new Promise((a,r)=>{Ru.set(t,(u,o)=>{u?r(u):a(o)})})}function MT(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r{})}function bf(e){return le()?X0(e):nt({method:"queryParagraphCache",data:e})}async function yf(e){if(le()){await Y0(e);return}return nt({method:"setParagraphCache",data:e})}async function Tf(){if(le())return Promise.resolve();await nt({method:"mockRequest"})}function Si(e=!1,t=""){return le()?(j.runtime.openOptionsPage(e,t),Promise.resolve()):nt({method:"openOptionsPage"})}function mf(e=""){return le()||Dt()?tt().OPTIONS_URL:j.runtime.getURL("options.html")}function j3(e=""){return j&&j.runtime&&j.runtime.getURL?j.runtime.getURL("options.html"):""}function Ai(e=!1){return le()?(j.extra.openAboutPage(e),Promise.resolve()):nt({method:"openAboutPage"})}function hp(e=!1){return le()?(j.extra.openSearchEnhancement(e),Promise.resolve()):nt({method:"openSearchEnhancement"})}function Di(e=!1){return le()?(j.extra.openEbookViewerPage(e),Promise.resolve()):nt({method:"openEbookViewerPage"})}function V3(e=!1){return le()?Promise.resolve():nt({method:"openHtmlViewerPage"})}function Li(e=!1){return le()?(j.extra.openEbookBuilderPage(e),Promise.resolve()):nt({method:"openEbookBuilderPage"})}function bp(e){Dt()}function Fl(e=!1){return le()?(alert("it's not support in userscript"),Promise.resolve()):nt({method:"openPdfViewerPage"})}function G3(e=!1){return le()?(j.extra.openSubtitleBuilderPage(e),Promise.resolve()):nt({method:"openSubtitleBuilderPage"})}function q3(){return le()?(A.warn("autoSyncLatestConfig is not support in monkey"),Promise.resolve()):nt({method:"autoSyncLatestConfig"})}var be=class{constructor(t,n,a){this.maxTextLength=1800;this.isSupportList=!0;this.maxTextGroupLength=200;this.serviceConfig=t,this.generalConfig=n,this.translationOptions=a}async init(){}getMaxTextGroupLength(){return this.maxTextGroupLength}getDefaultRateLimit(){return null}translate(t){throw new Error("Not implemented")}translateList(t){throw new Error("Not implemented")}async multipleTranslate(t,n,a){if(t.sentences.length===0)return{sentences:[]};let{sentences:r}=t,u=[],o=null,i=new Set;for(let v of r)v.from&&v.from!=="auto"&&i.add(v.from);let s=!1;i.size>1&&(s=!0);let l=this.maxTextLength;this.serviceConfig&&this.serviceConfig.maxTextLengthPerRequest&&(l=this.serviceConfig.maxTextLengthPerRequest);let c=this.maxTextGroupLength;this.serviceConfig&&this.serviceConfig.maxTextGroupLengthPerRequest&&(c=this.serviceConfig.maxTextGroupLengthPerRequest);try{u=pm(r,l,c)}catch(v){if(a)for(let h=0;hv));let g=[],m=[],p=(v,h,k)=>{let F=h.translatedTexts[0];m[v]||(m[v]=h,m[v].translatedTexts=Array(h.sentenceTotalParts).fill(null)),m[v].translatedTexts[h.partIndex]=F;let M=m[v],D=0;for(let P=0;P{let M=await B3(this.translationOptions.translationService);await Qn(M||0);let D=h.from;if(s&&(D="auto"),h.fromByClient&&h.fromByClient!=="auto"&&(D=h.fromByClient),this.isSupportList)return{...await this.translateList({text:h.tempSentences.map(w=>w.text),from:D,to:h.to,url:k,options:n}),sourceTempSentences:h.tempSentences};{let P=vg;this.serviceConfig&&this.serviceConfig.translationTextSeparator&&(P=this.serviceConfig.translationTextSeparator);let w=null;this.serviceConfig&&this.serviceConfig.newlinePlaceholderDelimiters&&(w=this.serviceConfig.newlinePlaceholderDelimiters);let x="";w&&w.length>=2?x=h.tempSentences.map((W,_)=>_===h.tempSentences.length-1?W.text:W.text+w[0]+(_+1)+w[1]).join(""):x=h.tempSentences.map(W=>W.text).join(P);let b=await this.translate({text:x,from:D,to:h.to,url:k,options:n}),{text:E}=b,I=[];if(w&&w.length>=2){let W=`${w[0]}\\d+${w[1]}`;w&&w.length>=3&&(W=w[2]);let _=new RegExp(W,"g");I=E.split(_)}else I=E.split(P);let L=[];if(I.length>h.tempSentences.length){for(let W=0;W{let{text:D,sourceTempSentences:P}=M;for(let w=0;w{if(a){for(let D=0;D({...v.sentence,text:v.translatedTexts.join("")}))}}detectLanguageLocally(t){return lt({text:t,minLength:18})}detectLanguageRemotely(t){return Promise.resolve("auto")}detectLanguage(t){return t.length>=50?this.detectLanguageLocally(t):this.detectLanguageRemotely(t)}};be.langMap=new Map;var Ef=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],Cn=class extends be{constructor(n,a,r){super(n,a,r);this.secretId="";this.secretKey="";this.isSupportList=!0;if(!n||!n.secretId||!n.secretKey)throw new Error("secretId and secretKey are required");this.secretId=n.secretId?.trim(),this.secretKey=n.secretKey?.trim()}static getUTCDate(n){let a=n.getUTCFullYear(),r=`${n.getUTCMonth()+1}`.padStart(2,"0"),u=`${n.getUTCDate()}`.padStart(2,"0");return`${a}-${r}-${u}`}async translate(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:Cn.langMap.get(r)||"auto",SourceText:a,Target:Cn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslate",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetText,from:Cn.langMapReverse.get(i.Response.Source)||r,to:Cn.langMapReverse.get(i.Response.Target)||u}}async translateList(n){let{text:a,from:r,to:u}=n,o=JSON.stringify({ProjectId:0,Source:Cn.langMap.get(r)||"auto",SourceTextList:a,Target:Cn.langMap.get(u)||u}),i=await this.signedRequest({secretId:this.secretId,secretKey:this.secretKey,action:"TextTranslateBatch",payload:o,service:"tmt",version:"2018-03-21"});return{text:i.Response.TargetTextList,from:Cn.langMapReverse.get(i.Response.Source)||r,to:Cn.langMapReverse.get(i.Response.Target)||u}}async signedRequest({secretId:n,secretKey:a,action:r,payload:u,service:o,version:i}){let s=`${o}.tencentcloudapi.com`,l=new Date,c=`${new Date().valueOf()}`.slice(0,10),g=["POST","/","","content-type:application/json; charset=utf-8",`host:${s}`,"","content-type;host",await Tn(u)].join(` +`),m=Cn.getUTCDate(l),p=["TC3-HMAC-SHA256",c,`${m}/${o}/tc3_request`,await Tn(g)].join(` +`),f=await s3(m,`TC3${a}`),S=await li(o,f),v=await li("tc3_request",S),h=await li(p,v),k=await ue({retry:1,url:`https://${o}.tencentcloudapi.com`,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8",Host:s,"X-TC-Action":r,"X-TC-Timestamp":c,"X-TC-Region":"ap-beijing","X-TC-Version":i,Authorization:`TC3-HMAC-SHA256 Credential=${n}/${m}/${o}/tc3_request, SignedHeaders=content-type;host, Signature=${h}`},body:u});if(k instanceof Error)throw k;if(k.Response&&k.Response.Error&&k.Response.Error.Message)throw new Error(k.Response.Error.Message);return k}},$a=Cn;$a.langMap=new Map(Ef),$a.langMapReverse=new Map(Ef.map(([n,a])=>[a,n]));var xf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","jp"],["ko","kr"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],FT={"content-type":"application/json",Host:"wxapp.translator.qq.com","User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.32(0x18002035) NetType/WIFI Language/zh_TW",Referer:"https://servicewechat.com/wxb1070eabc6f9107e/117/page-frame.html"},Yi=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=new URLSearchParams({source:r,target:u,sourceText:a,platform:"WeChat_APP",candidateLangs:"en|zh",guid:"oqdgX0SIwhvM0TmqzTHghWBvfk22"}).toString(),i=await ue({url:`https://wxapp.translator.qq.com/api/translate?${o}`,retry:1,method:"GET",headers:FT});return{text:i.targetText,from:Yi.langMapReverse.get(i.source)||r,to:Yi.langMapReverse.get(i.target)||u}}},qa=Yi;qa.langMap=new Map(xf),qa.langMapReverse=new Map(xf.map(([n,a])=>[a,n]));var Cf=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["sa","sa"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["fil","tl"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],xa=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.apiUrl="https://translate.googleapis.com/translate_a/single";n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl))}getDefaultRateLimit(){return{limit:10,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=xa.langMap.get(r)||"auto",i=xa.langMap.get(u)||u,s=await this.fetchWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:xa.langMapReverse.get(s.data[2])||"auto",to:u}}async translateXml(n){let{text:a,from:r,to:u}=n;if(!a)return{...n};let o=xa.langMap.get(r)||"auto",i=xa.langMap.get(u)||u,s=await this.fetchXmlWithoutToken(a,o,i);if(!s)throw new Error("google translate NETWORK_ERROR");if(!s.data[0]||s.data[0].length<=0)throw new Error("google translate API_SERVER_ERROR");return{text:s.data[0].map(c=>c[0]).filter(Boolean).join(""),from:xa.langMapReverse.get(s.data[2])||"auto",to:u}}async fetchXmlWithoutToken(n,a,r){let o="https://translate.googleapis.com/translate_a/t?"+new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}).toString();return{data:await ue({retry:2,url:o})}}async fetchWithoutToken(n,a,r){let u=new URLSearchParams({client:"gtx",dt:"t",sl:a,tl:r,q:n}),o=this.apiUrl+"?"+u.toString();return{data:await ue({retry:2,url:o})}}},Vn=xa;Vn.langMap=new Map(Cf),Vn.langMapReverse=new Map(Cf.map(([n,a])=>[a,n]));function _T(e,t){return t?e+(t-e%t):e}function BT(e,t){return e.split(t).length-1}function mc(e){let t=Date.now(),n=1;for(let a of e)n+=BT(a,"i");return _T(t,n)}function RT(e,t){return Math.floor(Math.random()*(t-e+1))+e}function pc(){return RT(1e6,1e8)}var fc="https://www2.deepl.com/jsonrpc",hc="auto",vf=[{code:"BG",language:"Bulgarian"},{code:"ZH",language:"Chinese"},{code:"CS",language:"Czech"},{code:"DA",language:"Danish"},{code:"NL",language:"Dutch"},{code:"EN",language:"English"},{code:"ET",language:"Estonian"},{code:"FI",language:"Finnish"},{code:"FR",language:"French"},{code:"DE",language:"German"},{code:"EL",language:"Greek"},{code:"HU",language:"Hungarian"},{code:"IT",language:"Italian"},{code:"JA",language:"Japanese"},{code:"LV",language:"Latvian"},{code:"LT",language:"Lithuanian"},{code:"PL",language:"Polish"},{code:"PT",language:"Portuguese"},{code:"RO",language:"Romanian"},{code:"RU",language:"Russian"},{code:"SK",language:"Slovak"},{code:"SL",language:"Slovenian"},{code:"ES",language:"Spanish"},{code:"SV",language:"Swedish"}];function IT(e=vf){return e.reduce((t,n)=>(t[n.code.toLowerCase()]=n.code,t[n.language.toLowerCase()]=n.code,t),{})}function bc(e){return IT()[e.toLowerCase()]}var OT={Accept:"*/*","Accept-Language":"en-US;q=0.8,en;q=0.7","Content-Type":"application/json",Origin:"https://www.deepl.com",Referer:"https://www.deepl.com/translator","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-site"};function NT(e){return JSON.stringify(e).replace('"method":"',()=>{let t=e;return(t.id+3)%13===0||(t.id+5)%29===0?'"method" : "':'"method": "'})}function UT(e,t){return{id:1,jsonrpc:"2.0",method:"LMT_handle_texts",params:{timestamp:0,texts:[{text:"",requestAlternatives:3}],splitting:"newlines",lang:{source_lang_user_selected:e,target_lang:t}}}}async function jT(e,t,n,a,r,u,o){let i=pc(),s=UT(a,n),l=[];t.forEach(m=>{l.push({text:m,requestAlternatives:3})}),s.id=i,s.params.texts=l,s.params.timestamp=mc(t);let c=await ue({retry:2,method:"POST",url:e,body:NT(s),headers:OT}),g={from:c.result.lang,to:n,text:[]};return c.result.texts.forEach(m=>{g.text.push(m.text)}),g}async function wf(e,t,n,a=hc,r,u,o){return t?t&&t.length===1&&t[0]===""?{text:[""],from:a,to:n}:jT(e,t,bc(n),bc(a)??"auto",r,u,o):{text:[],from:a,to:n}}var kf=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Or=class extends be{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=3;this.maxTextLength=800;this.isSupportList=!0;this.API_URL=fc;n&&n.apiUrl&&(this.API_URL=on(fc,n.apiUrl))}getDefaultRateLimit(){return{limit:1,interval:1050}}async translateList(n){let{text:a,to:r,from:u}=n,o=await wf(this.API_URL,a,Or.langMap.get(r)||r,Or.langMap.get(u)||"auto");return{text:o.text,from:Or.langMapReverse.get(o.from),to:Or.langMapReverse.get(o.to)}}},Ca=Or;Ca.langMap=new Map(kf),Ca.langMapReverse=new Map(kf.map(([n,a])=>[a,n]));var Sf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh-TW"],["de","de"],["en","en"],["es","es"],["fr","fr"],["id","id"],["it","it"],["ja","ja"],["ko","ko"],["ms","ms"],["pt","pt"],["ru","ru"],["th","th"],["tr","tr"],["vi","vi"]],yc="https://transmart.qq.com/api/imt",Ka=class extends be{constructor(n,a,r){super(n,a,r);this.maxTextGroupLength=25;this.maxTextLength=1e3;this.isSupportList=!1;this.clientKey=btoa("transmart_crx_"+navigator.userAgent).slice(0,100)}async translate(n){let{text:a,to:r}=n,u=await this.detectLanguage(a),o=Ka.langMap.get(u)||u,i=Ka.langMap.get(r)||r;if(u===r)return{text:a,from:u,to:r};let s=tt(),l=n.url;s.INSTALL_FROM==="firefox_store"&&(l=Af());let g=JSON.stringify({header:{fn:"auto_translation_block",client_key:this.clientKey},source:{text_block:a,lang:o,orig_url:l},target:{lang:i}}),m=await ue({url:yc,body:g,method:"POST",retry:2});if(m.header.ret_code!=="succ")throw new Error(m.message||m.header.ret_code);return{text:m.auto_translation,from:u||"auto",to:r}}getDefaultRateLimit(){return{limit:30,interval:1050}}async translateList(n){let{from:a,text:r,to:u}=n,o=tt(),i=n.url;if(o.INSTALL_FROM==="firefox_store"&&(i=Af()),r.length===1){let f=await this.translate({from:a,text:r[0],to:u,url:i,options:n.options});return{text:[f.text],from:f.from,to:f.to}}let l=await this.detectLanguage(r.join(` +`));if(l===u)return{text:r,from:l,to:u};let c=Ka.langMap.get(l)||l,g=Ka.langMap.get(u)||u,m=JSON.stringify({header:{fn:"auto_translation",client_key:this.clientKey},source:{text_list:r,lang:c,orig_url:i},target:{lang:g},type:"plain"}),p=await ue({url:yc,body:m,method:"POST"});if(p.header.ret_code!=="succ")throw new Error(p.message||p.header.ret_code);return{text:p.auto_translation,from:l||"auto",to:u}}detectLanguageLocally(n){return this.detectLanguageRemotely(n)}async detectLanguageRemotely(n){let a={header:{fn:"text_analysis",client_key:this.clientKey},text:n.slice(0,280)},r=await ue({url:yc,method:"POST",body:JSON.stringify(a)});if(r.header.ret_code!=="succ")throw new Error(r.message||r.header.ret_code);let u=r.language,o=Ka.langMapReverse.get(u);return o||u}},Va=Ka;Va.langMap=new Map(Sf),Va.langMapReverse=new Map(Sf.map(([n,a])=>[a,n]));function Af(){let e=new Date;return e.setMinutes(e.getMinutes()-e.getMinutes()%5),e.setSeconds(0),e.setMilliseconds(0),`https://google.com/search?q=google&_t=${e.getTime()/1e3}`}function Df(){return Math.random()>=0}var Nr=class extends be{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1200;this.maxTextGroupLength=25}async translate(n){let{text:a}=n,r=a.match(/^\s*/)[0].length;return{text:a.slice(0,r)+"\u6A21\u62DF\uFF1A"+a.slice(r,-6),from:n.from,to:n.to}}async translateList(n){let{text:a,from:r,to:u}=n;if(await Tf(),!Df())throw new Error("\u6A21\u62DF\u9519\u8BEF");return a.length===0?{from:r,to:u,text:[""]}:{from:r,to:u,text:a.map(o=>{let i=o.match(/^\s*/)[0].length;return o.slice(0,i)+"\u6A21\u62DF\uFF1A"+o.slice(i,-6)})}}};var Pf=[["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ja","ja"],["de","de"],["fr","fr"],["it","it"],["es","es"],["nl","nl"],["pl","pl"],["pt","pt"],["ru","ru"]],Tc=new Map(Pf),Lf=new Map(Pf.map(([e,t])=>[t,e])),Ec=class extends be{constructor(n,a,r){super(n,a,r);this.apikey="";this.codename=Ec.DEFAULT_CODENAME;this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.apikey)throw new Error("apikey are required");this.apikey=n.apikey?.trim(),n.codename&&(this.codename=n.codename)}async translate(n){let{text:a,from:r,to:u}=n,o=await ue({retry:2,url:`https://api.openl.club/services/${this.codename}/translate`,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({apikey:this.apikey,text:a,source_lang:Tc.get(r)||"auto",target_lang:Tc.get(u)||u})});if(o.status){let i=o;return i.result&&u=="zh-TW",{text:i.result,from:Lf.get(i.source_lang),to:Lf.get(i.target_lang)}}else throw new Error(o.msg)}},Iu=Ec;Iu.langMap=Tc,Iu.DEFAULT_CODENAME="deepl";var Xi=Iu;var Kt=null,Mf=[["auto",""],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],xc=new Map(Mf),zT=new Map(Mf.map(([e,t])=>[t,e])),Zi=class extends be{constructor(n,a,r){super(n,a,r);this.authKey="";this.maxTextLength=1800;this.freeApiUrl="https://api-free.deepl.com/v2/translate";this.proApiUrl="https://api.deepl.com/v2/translate";this.immersiveTranslateApiUrl="https://deepl.immersivetranslate.com/v2/translate";this.immersiveTranslateDeeplTokenUrl="https://api.immersivetranslate.com";this.apiKeys=[];if(!n||!n.authKey)throw new Error("authKey are required");n&&n.freeApiUrl&&(this.freeApiUrl=on(this.freeApiUrl,n.freeApiUrl)),n&&n.proApiUrl&&(this.proApiUrl=on(this.proApiUrl,n.proApiUrl)),n&&n.immersiveTranslateApiUrl&&(this.immersiveTranslateApiUrl=on(this.immersiveTranslateApiUrl,n.immersiveTranslateApiUrl)),n&&n.immersiveTranslateDeeplTokenUrl&&(this.immersiveTranslateDeeplTokenUrl=on(this.immersiveTranslateDeeplTokenUrl,n.immersiveTranslateDeeplTokenUrl)),this.authKey=n.authKey?.trim(),this.apiKeys=this.authKey.split(",").map(u=>u.trim())}static async clearState(){Kt=null,await j.storage.local.remove(fn)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async init(){if(!Kt){Kt={};let a=await j.storage.local.get(fn);a&&a[fn]&&(Kt=a[fn])}let n=this.getRandomKey();if(n.startsWith("immersive_")){let a=new mo(n,{state:Kt,onFetch:(r,u)=>{let i=new URL(r).pathname;return i==="/refresh_token"||i==="/oidc/token"?Pu({url:r,...u}):ue({url:r,...u})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:r=>{Kt=r,j.storage.local.set({[fn]:Kt})}});await a.updateToken(),Kt=a.getState(),a.getIsStateChanged()&&await j.storage.local.set({[fn]:Kt})}}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{from:a,to:r,text:u}=n,o={source_lang:xc.get(a)||"",target_lang:xc.get(r)||r},i=this.getRandomKey(),s=new URLSearchParams(o);u.forEach(f=>{s.append("text",f)});let l=s.toString(),c=this.freeApiUrl;i.endsWith(":im")?c=this.immersiveTranslateApiUrl:i.endsWith(":fx")||(c=this.proApiUrl);let g;if(i.startsWith("immersive_")){let f=new mo(i,{state:Kt,onFetch:(S,v)=>{let k=new URL(S).pathname;return k==="/refresh_token"||k==="/oidc/token"?Pu({url:S,...v}):ue({url:S,...v})},refreshTokenEndpoint:this.immersiveTranslateDeeplTokenUrl,onStateChange:S=>{Kt=S,j.storage.local.set({[fn]:Kt})}});g=await f.translateApi(l),f.getIsStateChanged()&&(Kt=f.getState(),await j.storage.local.set({[fn]:Kt}))}else g=await ue({retry:2,url:c,method:"POST",body:l,headers:{Authorization:"DeepL-Auth-Key "+i,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},extra:{overrideMimeType:"application/json; charset=utf-8"}});let{translations:m}=g,p=m.map(f=>f.text);if(r==="zh-TW"){let f=this.serviceConfig||{};f&&f.googleApiUrl&&(f.apiUrl=f.googleApiUrl);let v=await new Vn(this.serviceConfig,this.generalConfig,this.translationOptions).translate({from:"zh-CN",to:"zh-TW",text:m.map(h=>h.text).join(` `),url:"",options:{}});v&&v.text&&(p=v.text.split(` -`))}return{text:p,from:m[0]&&OT.get(m[0].detected_source_language)||a,to:r}}};Xi.langMap=bc;var Sf=Xi;var NT=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],yc=new Map(NT),Zi=class extends be{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:r,to:u}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:yc.get(r)||r,to:yc.get(u)||u,apikey:this.APIKEY})},s=await ue(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` -`)&&(l=l.slice(0,-1)),{text:l,from:r,to:u}}else throw new Error(JSON.stringify(s))}};Zi.langMap=yc;var Af=Zi;var UT=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Tc=new Map(UT),Qi=class extends be{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:[]};let o={"api-version":"3.0",to:Tc.get(u)||u};r!=="auto"&&(o.from=Tc.get(r)||r);let i=new URLSearchParams(o),s=JSON.stringify(a.map(g=>({text:g}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await ue(l);if(c.length===0)throw new Error("server response invalid");return{from:r,to:u,text:c.map(g=>g.translations.map(p=>p.text).join(" "))}}};Qi.langMap=Tc;var Df=Qi;var jT=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Ou=new Map(jT),Ec=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n,o;if(a.length===0)return{from:r,to:u,text:[]};let i=` +`))}return{text:p,from:m[0]&&zT.get(m[0].detected_source_language)||a,to:r}}};Zi.langMap=xc;var Ff=Zi;var HT=[["auto","auto"],["zh-CN","zh"],["zh-TW","cht"],["en","en"],["ja","ja"],["ko","ko"],["es","es"],["de","de"],["fr","fra"],["pt","pt"],["ru","ru"],["ar","ara"],["it","it"],["ms","ms"],["id","id"],["vi","vie"],["th","th"],["ur","ur"],["yue","yue"],["bo","bo"],["wyw","wyw"],["be","be"],["bg","bul"],["bn","bn"],["ca","ca"],["cs","cs"],["da","da"],["el","el"],["et","et"],["fa","fa"],["fi","fi"],["gu","gu"],["he","he"],["hi","hi"],["hr","hr"],["hu","hu"],["hy","hye"],["is","is"],["ka","ka"],["km","km"],["kn","kn"],["lt","lt"],["lv","lv"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["pa","pa"],["pl","pl"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sq","sq"],["sr","sr"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["tr","tr"],["ug","ug"],["uk","uk"],["uz","uz"]],Cc=new Map(HT),Qi=class extends be{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.isSupportList=!1;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim()}async translate(n){let{text:a,from:r,to:u}=n,i={url:"https://api.niutrans.com/NiuTransServer/translation",retry:2,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({src_text:a,from:Cc.get(r)||r,to:Cc.get(u)||u,apikey:this.APIKEY})},s=await ue(i);if(s.tgt_text){let l=s.tgt_text;return l.endsWith(` +`)&&(l=l.slice(0,-1)),{text:l,from:r,to:u}}else throw new Error(JSON.stringify(s))}};Qi.langMap=Cc;var _f=Qi;var WT=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],vc=new Map(WT),es=class extends be{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.region="eastasia";this.isSupportList=!0;if(!n||!n.APIKEY)throw new Error("APIKEY are required");this.APIKEY=n.APIKEY?.trim(),n.region&&(this.region=n.region)}async translateList(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:[]};let o={"api-version":"3.0",to:vc.get(u)||u};r!=="auto"&&(o.from=vc.get(r)||r);let i=new URLSearchParams(o),s=JSON.stringify(a.map(g=>({text:g}))),l={url:"https://api.cognitive.microsofttranslator.com/translate?"+i.toString(),retry:2,method:"POST",headers:{"Ocp-Apim-Subscription-Key":this.APIKEY,"Ocp-Apim-Subscription-Region":this.region,"content-type":"application/json"},body:s},c=await ue(l);if(c.length===0)throw new Error("server response invalid");return{from:r,to:u,text:c.map(g=>g.translations.map(p=>p.text).join(" "))}}};es.langMap=vc;var Bf=es;var $T=[["auto","auto"],["zh-CN","zh-CN"],["zh-TW","zh-TW"],["en","en"],["ja","ja"],["ru","ru"],["es","es"],["de","de"],["ko","ko"],["fr","fr"],["th","th"],["vi","vi"],["id","id"]],Ou=new Map($T),wc=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!0;this.maxTextGroupLength=25;this.maxTextLength=1200}getDefaultRateLimit(){return{limit:3,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n,o;if(a.length===0)return{from:r,to:u,text:[]};let i=`
-`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};r==="auto"||!Ou.get(r)?(o=(await ue({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Ou.get(r)||r,target:Ou.get(u)||u})):l.body=JSON.stringify({text:s,source:Ou.get(r),target:Ou.get(u)||u});let c=await ue(l);if(c.translatedText==="")throw new Error("server response invalid");let g=c.translatedText.split("
").map(m=>m.trim());return{from:r,to:u,text:g}}},Lf=Ec;var zT=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],Nu=new Map(zT),es=class extends be{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: +`,s=a.join(i),l={url:"https://api.papago-chrome.com/v2/translate/openapi",retry:2,method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:""};r==="auto"||!Ou.get(r)?(o=(await ue({url:"https://api.papago-chrome.com/v2/translate/detect",method:"POST",headers:{authority:"api.papago-chrome.com","content-type":"application/json"},body:s})).langCode,l.body=JSON.stringify({text:s,source:o||Ou.get(r)||r,target:Ou.get(u)||u})):l.body=JSON.stringify({text:s,source:Ou.get(r),target:Ou.get(u)||u});let c=await ue(l);if(c.translatedText==="")throw new Error("server response invalid");let g=c.translatedText.split("
").map(m=>m.trim());return{from:r,to:u,text:g}}},Rf=wc;var qT=[["auto","auto"],["zh-CN","Simplified Chinese"],["zh-TW","Traditional Chinese"],["en","English"],["yue","Cantonese"],["bo","\u85CF\u8BED"],["wyw","Classical Chinese"],["ja","Japanese"],["ko","Korean"],["fr","French"],["de","German"],["es","Spanish"],["it","Italian"],["ru","Russian"],["pt","Portuguese"],["nl","Dutch"],["pl","Polish"],["ar","Arabic"],["af","Afrikaans"],["am","Amharic"],["az","Azerbaijani"],["be","Belarusian"],["bg","Bulgarian"],["bn","Bengali"],["bs","Bosnian"],["ca","Catalan"],["ceb","Cebuano"],["co","Corsican"],["cs","Czech"],["cy","Welsh"],["da","Danish"],["el","Greek"],["eo","Esperanto"],["et","Estonian"],["eu","Basque"],["fa","Persian"],["fi","Finnish"],["fj","Fijian"],["fy","Western Frisian"],["ga","Irish"],["gd","Scottish Gaelic"],["gl","Galician"],["gu","Gujarati"],["ha","Hausa"],["haw","Hawaiian"],["he","Hebrew"],["hi","Hindi"],["hmn","Hmong"],["hr","Croatian"],["ht","Haitian Creole"],["hu","Hungarian"],["hy","Armenian"],["id","Indonesian"],["ig","Igbo"],["is","Icelandic"],["jw","Javanese"],["ka","Georgian"],["kk","Kazakh"],["km","Khmer"],["kn","Kannada"],["ku","Kurdish"],["ky","Kyrgyz"],["la","Lao"],["lb","Luxembourgish"],["lo","Lao"],["lt","Lithuanian"],["lv","Latvian"],["mg","Malagasy"],["mi","Maori"],["mk","Macedonian"],["ml","Malayalam"],["mn","Mongolian"],["mr","Marathi"],["ms","Malay"],["mt","Maltese"],["my","Burmese"],["pa","Punjabi"],["ps","Pashto"],["ro","Romanian"],["si","Sinhala"],["sk","Slovak"],["sl","Slovene"],["sa","Sanskrit"],["sm","Samoan"],["sn","Shona"],["so","Somali"],["sq","Albanian"],["sr","Serbian"],["sr-Cyrl","Serbian (Cyrillic)"],["sr-Latn","Serbian (Latin)"],["st","Southern Sotho"],["su","Sundanese"],["sv","Swedish"],["sw","Swahili"],["ta","Tamil"],["te","Telugu"],["tg","Tajik"],["th","Thai"],["tr","Turkish"],["ug","Uyghur"],["uk","Ukrainian"],["ur","Urdu"],["uz","Uzbek"],["vi","Vietnamese"],["xh","Xhosa"],["yi","Yiddish"],["yo","Yoruba"],["zu","Zulu"]],Nu=new Map(qT),ts=class extends be{constructor(n,a,r){super(n,a,r);this.APIKEY="";this.apiKeys=[];this.isSupportList=!1;this.maxTextLength=1200;this.maxTextGroupLength=1;this.systemPrompt="You are a professional translation engine, please translate the text into a colloquial, professional, elegant and fluent content, without the style of machine translation. You must only translate the text content, never interpret it.";this.prompt=`Translate the text to {{to}}, please do not explain any sentences, just translate or leave them as they are.: -{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(u=>u.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=on(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=Nu.get(r)||r,i=Nu.get(u)||u,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let p=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:p})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},g=this.getRandomKey();g&&(c.headers.Authorization="Bearer "+g,c.headers["api-key"]=g,g.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let m=await ue(c);if(m&&m.choices&&m.choices.length>0&&m.choices[0].message&&m.choices[0].message.content){let p=m.choices[0].message.content.trim();return p.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(p=""),!a.includes(".")&&(p.endsWith("\u3002")||p.endsWith("."))&&(p=p.slice(0,-1)),{from:r,to:u,text:p}}else throw new Error("server response invalid: "+JSON.stringify(m))}async translate3(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=this.prompt.replace(/{{to}}/g,Nu.get(u)||u).replace(/{{text}}/g,a).replace(/{{from}}/g,Nu.get(r)||r),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await ue(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:r,to:u,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};es.langMap=Nu;var Pf=es;var ts=xe+"CacheKey_";function ns(e,t){let n=ts+e;return j.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:r,expired:u}=a[n];return u&&ua.startsWith(ts));if(n.length>0)return j.storage.local.remove(n)}}var HT=[["auto","auto"],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"],["en","en"],["yue","\u7CA4\u8BED"],["wyw","\u53E4\u6587"],["en","en"],["ja","ja"],["ko","ko"],["fr","fr"],["de","de"],["es","es"],["it","it"],["ru","ru"],["pt","pt"],["nl","nl"],["pl","pl"],["ar","ar"],["af","af"],["am","am"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["el","el"],["eo","eo"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ku","ku"],["ky","ky"],["la","lo"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["no","no"],["ny","ny"],["pa","pa"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["sr-Cyrl","sr"],["sr-Latn","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],us=new Map(HT),xc="chatgptWebAccessToken";async function Ff(){let e=await ns(xc);if(e)return e;let t=await ue({url:"https://chat.openai.com/api/auth/session",method:"get",responseType:"json"});if(!t.accessToken)throw new Error("UNAUTHORIZED");return await as(xc,t.accessToken,10*60*1e3),t.accessToken}var Ur,os=class{constructor(){r4(this,Ur,Promise.resolve());return os.instance||(os.instance=this),this}enqueue(t){return u4(this,Ur,vs(this,Ur).then(()=>t())),vs(this,Ur)}},Cc=os;Ur=new WeakMap;var vc=new Cc;Object.freeze(vc);var Uu=class extends be{constructor(n,a,r){super(n,a,r);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: +{{text}}`;this.model="gpt-3.5-turbo-0613";this.apiUrl="https://api.openai.com/v1/chat/completions";this.immersiveApiUrl="https://openai-api.immersivetranslate.com/v1/chat/completions";n||(n={}),n.APIKEY&&(this.APIKEY=n.APIKEY?.trim(),this.apiKeys=this.APIKEY.split(",").map(u=>u.trim())),n.prompt&&(this.prompt=n.prompt),n.model&&(this.model=n.model),n&&n.apiUrl&&(this.apiUrl=on(this.apiUrl,n.apiUrl)),n&&n.immersiveApiUrl&&(this.immersiveApiUrl=on(this.immersiveApiUrl,n.immersiveApiUrl)),n&&n.systemPrompt&&(this.systemPrompt=n.systemPrompt)}getDefaultRateLimit(){return{limit:10,interval:1300}}translate(n){return this.model.includes("003")?(this.maxTextGroupLength=1,this.translate3(n)):this.translate3_5(n)}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translate3_5(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=Nu.get(r)||r,i=Nu.get(u)||u,s=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o),l=[];if(this.systemPrompt){let p=this.systemPrompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);l.push({role:"system",content:p})}this.prompt&&l.push({role:"user",content:s}),this.prompt.indexOf("{{text}}")===-1&&l.push({role:"user",content:a});let c={url:this.apiUrl,method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,temperature:0,messages:l})},g=this.getRandomKey();g&&(c.headers.Authorization="Bearer "+g,c.headers["api-key"]=g,g.startsWith("immersiveopenai_")&&(c.url=this.immersiveApiUrl));let m=await ue(c);if(m&&m.choices&&m.choices.length>0&&m.choices[0].message&&m.choices[0].message.content){let p=m.choices[0].message.content.trim();return p.includes("\u65E0\u6CD5\u7FFB\u8BD1")&&(p=""),!a.includes(".")&&(p.endsWith("\u3002")||p.endsWith("."))&&(p=p.slice(0,-1)),{from:r,to:u,text:p}}else throw new Error("server response invalid: "+JSON.stringify(m))}async translate3(n){let{text:a,from:r,to:u}=n;if(a.length===0)return{from:r,to:u,text:""};let o=this.prompt.replace(/{{to}}/g,Nu.get(u)||u).replace(/{{text}}/g,a).replace(/{{from}}/g,Nu.get(r)||r),i={url:"https://api.openai.com/v1/completions",method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.APIKEY},body:JSON.stringify({model:this.model,prompt:o,temperature:0})},s=await ue(i);if(s&&s.choices&&s.choices.length>0&&s.choices[0].text){let l=s.choices[0].text.trim();return{from:r,to:u,text:l}}else throw new Error("server response invalid: "+JSON.stringify(s))}};ts.langMap=Nu;var If=ts;var ns=xe+"CacheKey_";function as(e,t){let n=ns+e;return j.storage.local.get(n).then(a=>{if(a[n]===void 0)return t;let{value:r,expired:u}=a[n];return u&&ua.startsWith(ns));if(n.length>0)return j.storage.local.remove(n)}}var KT=[["auto","auto"],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"],["en","en"],["yue","\u7CA4\u8BED"],["wyw","\u53E4\u6587"],["en","en"],["ja","ja"],["ko","ko"],["fr","fr"],["de","de"],["es","es"],["it","it"],["ru","ru"],["pt","pt"],["nl","nl"],["pl","pl"],["ar","ar"],["af","af"],["am","am"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["ceb","ceb"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["el","el"],["eo","eo"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["haw","haw"],["he","he"],["hi","hi"],["hmn","hmn"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["jw","jw"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ku","ku"],["ky","ky"],["la","lo"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["no","no"],["ny","ny"],["pa","pa"],["ps","ps"],["ro","ro"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["sr-Cyrl","sr"],["sr-Latn","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tr","tr"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zu","zu"]],os=new Map(KT),kc="chatgptWebAccessToken";async function Nf(){let e=await as(kc);if(e)return e;let t=await ue({url:"https://chat.openai.com/api/auth/session",method:"get",responseType:"json"});if(!t.accessToken)throw new Error("UNAUTHORIZED");return await rs(kc,t.accessToken,10*60*1e3),t.accessToken}var Ur,is=class{constructor(){s4(this,Ur,Promise.resolve());return is.instance||(is.instance=this),this}enqueue(t){return l4(this,Ur,ws(this,Ur).then(()=>t())),ws(this,Ur)}},Sc=is;Ur=new WeakMap;var Ac=new Sc;Object.freeze(Ac);var Uu=class extends be{constructor(n,a,r){super(n,a,r);this.accessToken="";this.customChatGptWebApiUrl="https://chat.openai.com";this.customChatGptWebApiPath="/backend-api/conversation";this.maxTextGroupLength=1;this.maxTextLength=1200;this.isStream=!1;this.isSupportList=!1;this.prompt=`You are a translation engine, you can only translate text and cannot interpret it, and do not explain.Translate the text below to {{to}}: -{{text}}`}throttleDebounce(n,a,r){let u=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{u=s,n.apply(l,i)};s-u>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},r))}}async deleteConversation(n){if(n){let a=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return L.debug("delete conversation res:",a),a}}async translate(n){return await vc.enqueue(async()=>{let{text:a,from:r,to:u}=n;if(a.length===0)return Promise.resolve({from:r,to:u,text:""});let o=us.get(r)||r,i=us.get(u)||u;if(this.accessToken=await Ff(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:Zt()})});return L.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:r,to:u,text:c?.message?.content?.parts?.[0]})}catch(c){throw L.debug("post chatgpt error:",c),await rs(xc),c}})}async translateStream(n,a){let{text:r,from:u,to:o}=n;if(r.length===0){a(null,{from:u,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:g}=s;a(null,{from:l,to:c,text:g})},300,200);await vc.enqueue(async()=>{let s="chatgpt"+Zt(),l=j.runtime.connect({name:s}),c,g;l.onMessage.addListener(v=>{if(!(!v||v==="")){if(v==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{g=JSON.parse(v)}catch(h){L.debug("chatgpt json error",h,v);return}c=g?.conversation_id,g?.message?.author?.role==="assistant"&&i({from:u,to:o,text:g?.message?.content?.parts?.[0]})}});let m=us.get(u)||u,p=us.get(o)||o;if(this.accessToken=await Ff(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let S=this.prompt.replace(/{{to}}/g,p).replace(/{{text}}/g,r).replace(/{{from}}/g,m);ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[S]}}],model:f,parent_message_id:Zt()})}).catch(v=>{L.debug("chatgpt error",v),l.disconnect(),this.deleteConversation(c),a(v,{from:u,to:o,text:""})})})}};var WT=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],rt={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},wc=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},kc=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=wc(t);if(a)return Array.isArray(n)?`${a}=${n.map(wc).sort().join(`&${a}=`)}`:`${a}=${wc(n)}`}).filter(t=>t).join("&"),jr=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let r=t[a];return typeof r<"u"&&r!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],r=this.credentialString(n);return a.push(`${rt.algorithm} Credential=${t.accessKeyId}/${r}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),r={...this.request.params},u=this.request.params,o=this.request.headers;t.sessionToken&&(r[rt.tokenHeader]=t.sessionToken),r[rt.dateHeader]=a,r[rt.notSignBody]="",r[rt.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,r[rt.algorithmKey]=rt.algorithm,r[rt.signHeadersKey]="",r[rt.signQueriesKey]=void 0,r[rt.signatureKey]=void 0,r=this.sortParams(r),this.request.params=r,this.request.headers={};let i=await this.signature(t,a);return this.request.params=u,this.request.headers=o,r[rt.signQueriesKey]=Object.keys(r).sort().join(";"),r[rt.signatureKey]=i,kc(r)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[rt.dateHeader]=n,t.sessionToken&&(this.request.headers[rt.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[rt.contentSha256Header]=await yn(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return si(await fa(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push(rt.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` -`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=kc(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} +{{text}}`}throttleDebounce(n,a,r){let u=0,o;return(...i)=>{let s=Date.now(),l=this,c=()=>{u=s,n.apply(l,i)};s-u>=a?(clearTimeout(o),c()):(clearTimeout(o),o=setTimeout(()=>{c()},r))}}async deleteConversation(n){if(n){let a=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}/${n}`,method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({is_visible:!1})});return A.debug("delete conversation res:",a),a}}async translate(n){return await Ac.enqueue(async()=>{let{text:a,from:r,to:u}=n;if(a.length===0)return Promise.resolve({from:r,to:u,text:""});let o=os.get(r)||r,i=os.get(u)||u;if(this.accessToken=await Nf(),!this.accessToken||this.accessToken==="")throw new Error("token error");let s="text-davinci-002-render-sha-mobile";if(!s)throw new Error("No available model");let l=this.prompt.replace(/{{to}}/g,i).replace(/{{text}}/g,a).replace(/{{from}}/g,o);try{let c=await ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"stream",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[l]}}],model:s,parent_message_id:Zt()})});return A.debug("get chatgpt res:",c),await this.deleteConversation(c?.conversation_id),Promise.resolve({from:r,to:u,text:c?.message?.content?.parts?.[0]})}catch(c){throw A.debug("post chatgpt error:",c),await us(kc),c}})}async translateStream(n,a){let{text:r,from:u,to:o}=n;if(r.length===0){a(null,{from:u,to:o,text:""});return}let i=this.throttleDebounce(function(s){let{from:l,to:c,text:g}=s;a(null,{from:l,to:c,text:g})},300,200);await Ac.enqueue(async()=>{let s="chatgpt"+Zt(),l=j.runtime.connect({name:s}),c,g;l.onMessage.addListener(v=>{if(!(!v||v==="")){if(v==="[DONE]"){l.disconnect(),this.deleteConversation(c);return}try{g=JSON.parse(v)}catch(h){A.debug("chatgpt json error",h,v);return}c=g?.conversation_id,g?.message?.author?.role==="assistant"&&i({from:u,to:o,text:g?.message?.content?.parts?.[0]})}});let m=os.get(u)||u,p=os.get(o)||o;if(this.accessToken=await Nf(),!this.accessToken||this.accessToken==="")throw new Error("token error");let f="text-davinci-002-render-sha";if(!f)throw new Error("No available model");let S=this.prompt.replace(/{{to}}/g,p).replace(/{{text}}/g,r).replace(/{{from}}/g,m);ue({url:`${this.customChatGptWebApiUrl}${this.customChatGptWebApiPath}`,method:"POST",responseType:"realStream",extra:{portName:s},headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.accessToken}`},body:JSON.stringify({action:"next",messages:[{id:Zt(),role:"user",content:{content_type:"text",parts:[S]}}],model:f,parent_message_id:Zt()})}).catch(v=>{A.debug("chatgpt error",v),l.disconnect(),this.deleteConversation(c),a(v,{from:u,to:o,text:""})})})}};var VT=["authorization","content-type","content-length","user-agent","presigned-expires","expect"],at={algorithm:"HMAC-SHA256",v4Identifier:"request",dateHeader:"X-Date",tokenHeader:"X-Security-Token",contentSha256Header:"X-Content-Sha256",notSignBody:"X-NotSignBody",kDatePrefix:"",credential:"X-Credential",algorithmKey:"X-Algorithm",signHeadersKey:"X-SignedHeaders",signQueriesKey:"X-SignedQueries",signatureKey:"X-Signature"},Dc=e=>{try{return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g,escape).replace(/[*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}catch{return""}},Lc=e=>Object.keys(e).map(t=>{let n=e[t];if(typeof n>"u"||n===null)return;let a=Dc(t);if(a)return Array.isArray(n)?`${a}=${n.map(Dc).sort().join(`&${a}=`)}`:`${a}=${Dc(n)}`}).filter(t=>t).join("&"),jr=class{constructor(t,n,a){this.request=t,this.request.headers=t.headers||{},this.serviceName=n,a=a||{},this.bodySha256=a.bodySha256,this.request.params=this.sortParams(this.request.params)}sortParams(t){let n={};return t&&Object.keys(t).filter(a=>{let r=t[a];return typeof r<"u"&&r!==null}).sort().map(a=>{n[a]=t[a]}),n}async addAuthorization(t,n){let a=this.getDateTime(n);await this.addHeaders(t,a),this.request.headers.Authorization=await this.authorization(t,a)}async authorization(t,n){let a=[],r=this.credentialString(n);return a.push(`${at.algorithm} Credential=${t.accessKeyId}/${r}`),a.push(`SignedHeaders=${this.signedHeaders()}`),a.push(`Signature=${await this.signature(t,n)}`),a.join(", ")}async getSignUrl(t,n){let a=this.getDateTime(n),r={...this.request.params},u=this.request.params,o=this.request.headers;t.sessionToken&&(r[at.tokenHeader]=t.sessionToken),r[at.dateHeader]=a,r[at.notSignBody]="",r[at.credential]=`${t.accessKeyId}/${this.credentialString(a)}`,r[at.algorithmKey]=at.algorithm,r[at.signHeadersKey]="",r[at.signQueriesKey]=void 0,r[at.signatureKey]=void 0,r=this.sortParams(r),this.request.params=r,this.request.headers={};let i=await this.signature(t,a);return this.request.params=u,this.request.headers=o,r[at.signQueriesKey]=Object.keys(r).sort().join(";"),r[at.signatureKey]=i,Lc(r)}getDateTime(t){return this.iso8601(t).replace(/[:\-]|\.\d{3}/g,"")}async addHeaders(t,n){if(this.request.headers[at.dateHeader]=n,t.sessionToken&&(this.request.headers[at.tokenHeader]=t.sessionToken),this.request.body){let a=this.request.body;this.request.headers[at.contentSha256Header]=await Tn(a)}}async signature(t,n){let a=await this.getSigningKey(t,n.substr(0,8),this.request.region,this.serviceName);return si(await fa(await this.stringToSign(n),a))}async stringToSign(t){let n=[];n.push(at.algorithm),n.push(t),n.push(this.credentialString(t));let a=await this.canonicalString();return n.push(await this.hexEncodedHash(a)),n.join(` +`)}async canonicalString(){let t=[],n=this.request.pathname||"/";t.push(this.request.method.toUpperCase()),t.push(n);let a=Lc(this.request.params)||"";return t.push(a),t.push(`${this.canonicalHeaders()} `),t.push(this.signedHeaders()),t.push(await this.hexEncodedBodyHash()),t.join(` `)}canonicalHeaders(){let t=[];Object.keys(this.request.headers).forEach(a=>{t.push([a,this.request.headers[a]])}),t.sort((a,r)=>a[0].toLowerCase(){let r=a[0].toLowerCase();if(this.isSignableHeader(r)){let u=a[1];if(typeof u>"u"||u===null||typeof u.toString!="function")throw new Error(`Header ${r} contains invalid value`);n.push(`${r}:${this.canonicalHeaderValues(u.toString())}`)}}),n.join(` -`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await yn(t)}async hexEncodedBodyHash(){return this.request.headers[rt.contentSha256Header]?this.request.headers[rt.contentSha256Header]:this.request.body?await this.hexEncodedHash(kc(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return WT.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,r){let u=await fa(n,`${rt.kDatePrefix}${t.secretKey}`),o=await fa(a,u),i=await fa(r,o);return fa(rt.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,rt.v4Identifier].join("/")}};var _f=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Sc=new Map(_f),$T=new Map(_f.map(([e,t])=>[t,e])),is=class extends be{constructor(n,a,r){super(n,a,r);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let r={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},u=new jr(r,"translate");await u.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(r.params),i=await ue({retry:2,url:"https://open.volcengineapi.com"+r.pathname+"?"+o.toString(),headers:u.request.headers,method:r.method,body:r.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new gt(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new gt(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:r,to:u}=n,o=Sc.get(r),i={TargetLanguage:Sc.get(u)||u,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` -`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new jr(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),g=await ue({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(g.TranslationList){let m=g.TranslationList.map(f=>f.Translation),p=r;return g.TranslationList.length>0&&g.TranslationList[0].DetectedSourceLanguage&&(p=$T.get(g.TranslationList[0].DetectedSourceLanguage)||r),{text:m,from:p,to:u}}else if(g.ResponseMetadata&&g.ResponseMetadata.Error){let m=g.ResponseMetadata.Error;throw new gt(m.Code,m.Message)}else if(g.ResponseMetaData&&g.ResponseMetaData.Error){let m=g.ResponseMetaData.Error;throw new gt(m.Code,m.Message)}else throw new Error("response: "+JSON.stringify(g))}};is.langMap=Sc;var Bf=is;var Rf=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Ac=new Map(Rf),qT=new Map(Rf.map(([e,t])=>[t,e])),zr=class extends be{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=Ac.get(r)||"detect",i=Ac.get(u)||u,l=await ue({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,g=r;return l.detected_language&&(g=qT.get(l.detected_language)||r),{text:c,from:g,to:u}}else{let c=l.base_resp;throw new gt(c.status_code.toString(),c.status_message)}}};zr.langMap=Ac;var KT=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Dc=new Map(KT),Hr=class extends be{constructor(n,a,r){super(n,a,r);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:r,to:u}=n,i=await ue({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:Dc.get(r)||r,target_lang:Dc.get(u)||u,text:a})});if(i.code===200)return{text:i.data,from:r,to:u};throw new Error(i.message||i.message||"API Error")}};Hr.langMap=Dc;var Lc="https://{s}bing.com",jf=Lc+"/translator",VT=Lc+"/ttranslatev3",GT=Lc+"/tspellcheckv3",ss="bingGlobalConfig",zf=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],If=new Map(zf),Of=new Map(zf.map(([e,t])=>[t,e])),Nf=1e3,Cn,Wr;function Pc(e,t){return e.replace("{s}",t?t+".":"")}async function JT(){if(!Cn){let n=await j.storage.local.get(ss);return n&&(Cn=n[ss]),!0}let{tokenTs:e,tokenExpiryInterval:t}=Cn;return Date.now()-e>t}async function Uf(){let e,t,n,a,r,u,o,i,s,l;try{let c=Pc(jf,e),g=await ue({retry:2,url:c,responseType:"raw"}),{body:m,headers:p,url:f}=g;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=p["set-cookie"],t=m.match(/IG:"([^"]+)"/)[1],n=m.match(/data-iid="([^"]+)"/)[1],[r,a,u,o,i,s]=JSON.parse(m.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return Cn={subdomain:e,IG:t,IID:n,key:r,token:a,tokenTs:r,tokenExpiryInterval:u,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await j.storage.local.set({[ss]:Cn}),Cn}function YT(e){let{IG:t,IID:n,subdomain:a,isVertical:r}=Cn;return Pc(e?GT:VT,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+Cn.count++:"")}function XT(e,t,n,a){let{token:r,key:u}=Cn,o={fromLang:n,text:t,token:r,key:u};return!e&&a&&(o.to=a),o}async function Hf(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>Nf)throw new Error(`The supported maximum length of text is ${Nf}. Please shorten the text.`);Wr||(Wr=Uf()),await Wr,await JT()&&(Wr=Uf(),await Wr),t=t||"auto",n=n||"zh-CN",t=If.get(t)||t,n=If.get(n)||n;let r=YT(!1),u=XT(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Pc(jf,Cn.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(u),s=r,l=i.toString(),c=await ue({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(Cn=null,Wr=null,await j.storage.local.remove(ss),c.ShowCaptcha)throw new Error(` +`)}canonicalHeaderValues(t){return t.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")}signedHeaders(){let t=[];return Object.keys(this.request.headers).forEach(n=>{n=n.toLowerCase(),this.isSignableHeader(n)&&t.push(n)}),t.sort().join(";")}signedQueries(){return Object.keys(this.request.params).join(";")}credentialString(t){return this.createScope(t.substr(0,8),this.request.region,this.serviceName)}async hexEncodedHash(t){return await Tn(t)}async hexEncodedBodyHash(){return this.request.headers[at.contentSha256Header]?this.request.headers[at.contentSha256Header]:this.request.body?await this.hexEncodedHash(Lc(this.request.body)):await this.hexEncodedHash("")}isSignableHeader(t){return VT.indexOf(t)<0}iso8601(t){return t===void 0&&(t=new Date),t.toISOString().replace(/\.\d{3}Z$/,"Z")}async getSigningKey(t,n,a,r){let u=await fa(n,`${at.kDatePrefix}${t.secretKey}`),o=await fa(a,u),i=await fa(r,o);return fa(at.v4Identifier,i)}createScope(t,n,a){return[t.substr(0,8),n,a,at.v4Identifier].join("/")}};var Uf=[["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Pc=new Map(Uf),GT=new Map(Uf.map(([e,t])=>[t,e])),ss=class extends be{constructor(n,a,r){super(n,a,r);this.accessKeyId="";this.secretAccessKey="";this.maxTextGroupLength=8;if(!n||!n.accessKeyId||!n.secretAccessKey)throw new Error("accessKeyId and secretAccessKey are required");this.accessKeyId=n.accessKeyId?.trim(),this.secretAccessKey=n.secretAccessKey?.trim()}async remoteDetectLanguage(n){let r={region:"cn-north-1",method:"POST",params:{Action:"LangDetect",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify({TextList:[n]})},u=new jr(r,"translate");await u.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let o=new URLSearchParams(r.params),i=await ue({retry:2,url:"https://open.volcengineapi.com"+r.pathname+"?"+o.toString(),headers:u.request.headers,method:r.method,body:r.body});if(i.DetectedLanguageList&&i.DetectedLanguageList.length>0)return i.DetectedLanguageList[0].Language;if(i.ResponseMetadata&&i.ResponseMetadata.Error){let s=i.ResponseMetadata.Error;throw new gt(s.Code,s.Message)}else if(i.ResponseMetaData&&i.ResponseMetaData.Error){let s=i.ResponseMetaData.Error;throw new gt(s.Code,s.Message)}else throw new Error("response: "+JSON.stringify(i))}async translateList(n){let{text:a,from:r,to:u}=n,o=Pc.get(r),i={TargetLanguage:Pc.get(u)||u,TextList:a};o?i.SourceLanguage=o:i.SourceLanguage=await this.remoteDetectLanguage(a.join(` +`).slice(0,1e3));let s={region:"cn-north-1",method:"POST",params:{Action:"TranslateText",Version:"2020-06-01"},pathname:"/",headers:{"Content-Type":"application/json",host:"open.volcengineapi.com"},body:JSON.stringify(i)},l=new jr(s,"translate");await l.addAuthorization({accessKeyId:this.accessKeyId,secretKey:this.secretAccessKey});let c=new URLSearchParams(s.params),g=await ue({retry:2,url:"https://open.volcengineapi.com"+s.pathname+"?"+c.toString(),headers:l.request.headers,method:s.method,body:s.body});if(g.TranslationList){let m=g.TranslationList.map(f=>f.Translation),p=r;return g.TranslationList.length>0&&g.TranslationList[0].DetectedSourceLanguage&&(p=GT.get(g.TranslationList[0].DetectedSourceLanguage)||r),{text:m,from:p,to:u}}else if(g.ResponseMetadata&&g.ResponseMetadata.Error){let m=g.ResponseMetadata.Error;throw new gt(m.Code,m.Message)}else if(g.ResponseMetaData&&g.ResponseMetaData.Error){let m=g.ResponseMetaData.Error;throw new gt(m.Code,m.Message)}else throw new Error("response: "+JSON.stringify(g))}};ss.langMap=Pc;var jf=ss;var zf=[["auto","detect"],["af","af"],["am","am"],["ar","ar"],["az","az"],["be","be"],["bg","bg"],["bn","bn"],["bs","bs"],["ca","ca"],["co","co"],["cs","cs"],["cy","cy"],["da","da"],["de","de"],["el","el"],["en","en"],["eo","eo"],["es","es"],["et","et"],["eu","eu"],["fa","fa"],["fi","fi"],["fj","fj"],["fr","fr"],["fy","fy"],["ga","ga"],["gd","gd"],["gl","gl"],["gu","gu"],["ha","ha"],["he","he"],["hi","hi"],["hr","hr"],["ht","ht"],["hu","hu"],["hy","hy"],["id","id"],["ig","ig"],["is","is"],["it","it"],["ja","ja"],["ka","ka"],["kk","kk"],["km","km"],["kn","kn"],["ko","ko"],["ku","ku"],["ky","ky"],["la","la"],["lb","lb"],["lo","lo"],["lt","lt"],["lv","lv"],["mg","mg"],["mi","mi"],["mk","mk"],["ml","ml"],["mn","mn"],["mr","mr"],["ms","ms"],["mt","mt"],["my","my"],["ne","ne"],["nl","nl"],["no","no"],["ny","ny"],["pa","pa"],["pl","pl"],["ps","ps"],["pt","pt"],["ro","ro"],["ru","ru"],["sd","sd"],["si","si"],["sk","sk"],["sl","sl"],["sm","sm"],["sn","sn"],["so","so"],["sq","sq"],["sr","sr"],["st","st"],["su","su"],["sv","sv"],["sw","sw"],["ta","ta"],["te","te"],["tg","tg"],["th","th"],["tn","tn"],["to","to"],["tr","tr"],["ty","ty"],["ug","ug"],["uk","uk"],["ur","ur"],["uz","uz"],["vi","vi"],["xh","xh"],["yi","yi"],["yo","yo"],["zh-CN","zh"],["zh-TW","zh-Hans"],["zu","zu"]],Mc=new Map(zf),JT=new Map(zf.map(([e,t])=>[t,e])),zr=class extends be{constructor(){super(...arguments);this.maxTextGroupLength=50;this.isSupportList=!1}async translate(n){let{text:a,from:r,to:u}=n,o=Mc.get(r)||"detect",i=Mc.get(u)||u,l=await ue({url:"https://translate.volcengine.com/crx/translate/v1/",method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source_language:o,target_language:i,text:a})});if(l.base_resp&&l.base_resp.status_code===0){let c=l.translation,g=r;return l.detected_language&&(g=JT.get(l.detected_language)||r),{text:c,from:g,to:u}}else{let c=l.base_resp;throw new gt(c.status_code.toString(),c.status_message)}}};zr.langMap=Mc;var YT=[["auto","auto"],["en","EN"],["ja","JA"],["pl","PL"],["zh-CN","ZH"],["zh-TW","ZH"],["ja","JA"],["ko","KO"],["es","ES"],["de","DE"],["fr","FR"],["pt","PT"],["ru","RU"],["it","IT"],["id","ID"],["nl","NL"],["pl","PL"],["bg","BG"],["cs","CS"],["da","DA"],["el","EL"],["et","ET"],["fi","FI"],["hu","HU"],["lt","LT"],["lv","LV"],["ro","RO"],["sk","SK"],["sl","SL"],["sv","SV"],["tr","TR"],["uk","UK"]],Fc=new Map(YT),Hr=class extends be{constructor(n,a,r){super(n,a,r);this.url="";this.isSupportList=!1;this.maxTextGroupLength=1;if(!n||!n.url)throw new Error("deeplx custom url are required, please check your settings.");this.url=n.url}async translate(n){let{text:a,from:r,to:u}=n,i=await ue({retry:2,url:this.url,headers:{"content-type":"application/json"},method:"POST",body:JSON.stringify({source_lang:Fc.get(r)||r,target_lang:Fc.get(u)||u,text:a})});if(i.code===200)return{text:i.data,from:r,to:u};throw new Error(i.message||i.message||"API Error")}};Hr.langMap=Fc;var _c="https://{s}bing.com",Kf=_c+"/translator",XT=_c+"/ttranslatev3",ZT=_c+"/tspellcheckv3",ls="bingGlobalConfig",Vf=[["auto","auto-detect"],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["yue","yua"],["vi","vi"],["ku","ku"],["km","kmr"]],Hf=new Map(Vf),Wf=new Map(Vf.map(([e,t])=>[t,e])),$f=1e3,vn,Wr;function Bc(e,t){return e.replace("{s}",t?t+".":"")}async function QT(){if(!vn){let n=await j.storage.local.get(ls);return n&&(vn=n[ls]),!0}let{tokenTs:e,tokenExpiryInterval:t}=vn;return Date.now()-e>t}async function qf(){let e,t,n,a,r,u,o,i,s,l;try{let c=Bc(Kf,e),g=await ue({retry:2,url:c,responseType:"raw"}),{body:m,headers:p,url:f}=g;e=f.match(/^https?:\/\/(\w+)\.bing\.com/)[1],l=p["set-cookie"],t=m.match(/IG:"([^"]+)"/)[1],n=m.match(/data-iid="([^"]+)"/)[1],[r,a,u,o,i,s]=JSON.parse(m.match(/params_AbusePreventionHelper\s?=\s?([^\]]+\])/)[1])}catch(c){throw c}return vn={subdomain:e,IG:t,IID:n,key:r,token:a,tokenTs:r,tokenExpiryInterval:u,isVertical:o,frontDoorBotClassification:i,isSignedInOrCorporateUser:s,cookie:l,count:0},await j.storage.local.set({[ls]:vn}),vn}function eE(e){let{IG:t,IID:n,subdomain:a,isVertical:r}=vn;return Bc(e?ZT:XT,a)+"?isVertical=1"+(t&&t.length?"&IG="+t:"")+(n&&n.length?"&IID="+n+"."+vn.count++:"")}function tE(e,t,n,a){let{token:r,key:u}=vn,o={fromLang:n,text:t,token:r,key:u};return!e&&a&&(o.to=a),o}async function Gf(e,t,n){if(!e||!(e=e.trim()))return;if(e.length>$f)throw new Error(`The supported maximum length of text is ${$f}. Please shorten the text.`);Wr||(Wr=qf()),await Wr,await QT()&&(Wr=qf(),await Wr),t=t||"auto",n=n||"zh-CN",t=Hf.get(t)||t,n=Hf.get(n)||n;let r=eE(!1),u=tE(!1,e,t,n==="auto-detect"?"zh-Hans":n),o={referer:Bc(Kf,vn.subdomain),"content-type":"application/x-www-form-urlencoded"},i=new URLSearchParams(u),s=r,l=i.toString(),c=await ue({retry:2,url:s,headers:o,method:"POST",body:l});if(c.ShowCaptcha||c.StatusCode===401||c.statusCode){if(vn=null,Wr=null,await j.storage.local.remove(ls),c.ShowCaptcha)throw new Error(` Sorry that bing translator seems to be asking for the captcha, Please take care not to request too frequently. The response code is ${c.StatusCode}. `);if(c.StatusCode===401)throw new Error(` Max count of translation exceeded. Please try it again later. The response code is 401. - `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let g=c[0].translations[0],m=c[0].detectedLanguage;return{text:g.text,from:Of.get(m.language),to:Of.get(g.to)}}function Wf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Ga=null,ZT=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Mc=new Map(ZT),$r=class extends be{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Ga=null,await rs(yo)}async translate(n){let{text:a,from:r,to:u}=n;return a?await Hf(a,r,u):{...n}}async init(){if(!Ga){Ga={};let n=await ns(yo);n&&(Ga=n)}await $f(Ga)}async translateList(n){let{from:a,to:r,text:u}=n,o=Mc.get(a)||"auto",i=Mc.get(r)||r;o==="auto"&&(o="");let s=await $f(Ga),l=[];for(let p of u)l.push({Text:p});let c=JSON.stringify(l),g=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,m=await ue({url:g,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(m&&m.length>0&&m[0].translations&&m[0].translations.length>0)return{text:m.map(p=>p.translations[0]?.text||""),from:a,to:r};throw new Error("Microsoft translate error "+JSON.stringify(m))}};$r.langMap=Mc;async function $f(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return qf().catch(r=>{L.error(r)}),e}return qf()}async function qf(){let e=await Pu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=Wf(e),n=t.accessTokenExpiresAt,r=new Date(n).getTime()-Date.now();return Ga=t,await as(yo,t,r-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var Kf=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Fc=new Map(Kf),QT=new Map(Kf.map(([e,t])=>[t,e])),ls=class extends be{constructor(n,a,r){super(n,a,r);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:r}=this,{appid:u,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Fc.get(s)||"auto",to:Fc.get(l)||l,q:i,salt:a,appid:u,sign:ca(u+i+a+o)}),g=new URL(r);g.search=c.toString();let m=await ue({url:g.toString()});if(m.error_code)throw new gt("API_SERVER_ERROR",m.error_msg);let{trans_result:p,from:f}=m,S=p.map(({dst:h})=>h);return{from:QT.get(f)||f,to:l,text:S.join(` -`)}}};ls.langMap=Fc;var Vf=ls;var eE=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],cs=new Map(eE),ds=class extends be{constructor(n,a,r){super(n,a,r);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(u=>u.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:r,to:u}=n;if(!cs.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${cs.get(r)||"auto"}2${cs.get(u)}`})})).target,from:r,to:u}}};ds.langMap=cs;var Gf=ds;var tE=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],gs=new Map(tE),ms=class extends be{constructor(n,a,r){super(n,a,r);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n;if(!gs.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a;return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${gs.get(r)||"auto"}2${gs.get(u)}`})})).target,from:r,to:u}}};ms.langMap=gs;var Jf=ms;var Yf=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],_c=new Map(Yf),nE=new Map(Yf.map(([e,t])=>[t,e]));function aE(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var ps=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o=rE(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+aE(a)+o+i+this.appSecret,l=await yn(s),c={q:a,appKey:this.appId,salt:o.toString(),from:_c.get(r)||"auto",to:_c.get(u)||u,sign:l,signType:"v3",curtime:i.toString()},g=new URLSearchParams(c),p=await ue({url:"https://openapi.youdao.com/api",method:"POST",body:g.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!p.translation)throw new Error(JSON.stringify(p));let f=p.l,[S,v]=f.split("2");return{text:p.translation.join(` -`),from:nE.get(S),to:u}}};ps.langMap=_c;function rE(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r[t,e]));var fs=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o={q:a,from:Bc.get(r)||"auto",to:Bc.get(u)||u},i=new URLSearchParams(o),s=await ue({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` -`),from:r,to:u};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};fs.langMap=Bc;var Qf=fs;var uE={mock:Nr,mock2:Nr,google:Vn,transmart:Va,deepl:Sf,volc:Bf,volcAlpha:zr,bing:$r,tencent:$a,tenAlpha:qa,baidu:Vf,caiyun:Gf,cai:Jf,openl:Yi,youdao:Xf,you:Qf,d:Ca,dpro:Ca,deeplx:Hr,niu:Af,azure:Df,openai:Pf,chatgpt:Uu,papago:Lf},Gn={};Object.keys(hn).forEach(e=>{Gn[e]={...hn[e],class:uE[e]}});function Mr(e,t){let n=Xt;if(Gn[e]&&Gn[e].class&&Gn[e].class.langMap&&Gn[e].class.langMap.size>0){let a=Gn[e].class.langMap,r=n.filter(u=>a.get(u));return r.includes(t)||r.unshift("placeholder"),r}else return Xt}function eh(e,t){let n=Gn[e],a=t.config.translationServices[e]||{},r=!0,u=n.allProps||[],o=[],i=[];if(u.length>0){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,explicitProps:o||[],optionalProps:i||[]}}async function ha(e,t){if(!e.text)return e;let n=await _n({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new gt("translateFailed","translate failed")}async function oc(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,r=t.translationServices,u=n,o=r[u]||{},i=new Gn[u].class(o,a,{translationService:u}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await M3(u,o),await i.init()}async function _n(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:r,state:u}=t,o=a.translationGeneralConfig,i=a.translationServices,s=r,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(h=>({...h,from:"auto"})));let c=[],g={sentences:Array(e.sentences.length)},m=e.sentences.length,p=-1;if(u.cache)for(let h of e.sentences){p++;let k=s;s==="openl"&&(k=s+"-"+l.codename||Yi.DEFAULT_CODENAME);let F=null;try{F=await oo(df({originalText:h.text,from:h.from,to:h.to,service:k}),1e3)}catch(M){L.warn("query cache DB error, but it's ok",M)}if(F){let M={...h,text:F.translatedText};g.sentences[p]=M,n&&n(null,M,h)}else c.push(h)}else c.push(...e.sentences);let f=c.length;if(m-f>0&&L.debug(`use ${m-f} sentences from cache`),!c.length)return g;let S;try{S=new Gn[s].class(l,o,{translationService:s}),await S.init()}catch(h){if(n)for(let k of c)n(h,null,k);throw h}let v=await S.multipleTranslate({sentences:c},l,(h,k,F)=>{if(n&&n(h,k,F),!h&&k&&!s.startsWith("mock")&&u.cache){let M=s;s==="openl"&&(M=s+"-"+l.codename||Yi.DEFAULT_CODENAME),u.cache&&oo(gf({translatedText:k.text,from:F.from,to:F.to,detectedFrom:k.from,key:ca(F.text),service:M}),3e3).catch(A=>{L.warn("set cache DB error",A)})}});for(let h of v.sentences){let k=g.sentences.findIndex(F=>!F);if(k===-1)throw new gt("translateFailed","can not match the result");g.sentences[k]=h}return g}function Fe(e){return d("div",{class:"nav-left",children:[d("div",{class:"title",children:e.title}),d("div",{class:"description",children:e.description})]})}function qr(e){let{t}=he(),n={};e.width&&(n={width:`${e.width}px`});let[a,r]=H(e.value),{field:u,onFinish:o}=e,i=u.name;u.label&&(i=u.label),u.labelKey&&(i=t(u.labelKey));let s={};return u.descriptionLink1&&(s[1]=u.descriptionLink1),d("div",{class:"mt-3",children:[d("label",{for:e.field.name,class:"mb-[var(--spacing)]",children:[i,"\uFF1A"]}),e.field.type==="textarea"?d(ut,{children:[d("textarea",{style:n,autoComplete:"off",required:e.field.required,placeholder:e.field.placeholder||e.field.name,class:"input",value:a,type:e.type,onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]}):d(ut,{children:[d("input",{style:n,required:e.field.required,placeholder:e.field.placeholder||e.field.name,value:a,type:e.type,disabled:e.field.disabled||!1,name:e.field.name,autoComplete:"off",onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{(e.type==="text"||e.type==="password")&&o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]})]})}function Kr(e){let{t}=he(),[n,a]=H(!0),[r,u]=H(!1),{onFinish:o,field:i,onChange:s,value:l}=e;l=l===void 0?i.default||"":l,ke(()=>{i.options&&(i.options.some(m=>m.value===l)||u(!0))},[]);let c=i.name;if(i.label&&(c=i.label),i.labelKey&&(c=t(i.labelKey)),i.type==="select")return d("div",{class:"flex flex-col mt-5 mb-6",children:[d("label",{class:"text-16 mb-2",children:[c,"\uFF1A"]}),d(U3,{maxWidth:200,items:i.options.map(g=>({label:`${g.label?t(g.label):g.value}`,value:g.value,selected:l===g.value,onSelected:()=>{s(g.value)}})),onChange:s,isInput:r,value:l}),d("label",{for:"customContent",class:"text-sm",onClick:()=>{u(!r)},children:[d("input",{type:"checkbox",id:"customContent",name:"customContent",checked:r}),t("customContent")]})]});if(i.type==="text")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="textarea")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="number")return d("div",{children:d(qr,{field:i,value:l,type:i.type,width:196,onChange:s})});if(i.type==="password")return d("div",{children:[d(qr,{field:i,value:l,type:n?i.type:"text",onChange:s,onFinish:o}),d("label",{for:"translate",onClick:()=>{a(!n)},children:[d("input",{type:"checkbox",id:"translate",name:"translate"}),t("show password")]})]});if(i.type==="color"){let g=l,m="";return g||(g="#FFFFFF",m="#FFFFFF"),d("div",{children:d("label",{class:"flex items-center",for:i.name,children:[d("span",{class:"mr-2",children:i.label||i.name}),d("input",{type:"text",id:i.name,class:"border-color-text mr-2",placeholder:m||"",value:l,onInput:p=>{s(p.target.value)}}),d("input",{id:i.name,type:"color",name:i.name,value:g,onInput:p=>{s(p.target.value)}})]})})}else return null}function hs(e){let{t,lang:n}=he();return d("details",{role:"list",class:"nav-right",children:[d("summary",{"aria-haspopup":"listbox",children:t("edit")}),d("ul",{role:"listbox",class:"option-list",children:e.options.map((a,r)=>{let u=kt(a.value,n);return d("li",{children:d("label",{children:[d("input",{type:"checkbox",onChange:()=>{e.onToggleAlwaysLangs(!a.checked,a.value)},value:a.value,checked:a.checked}),u]})},"language-"+r)})})]})}function va(e){let{t}=he();return d("div",{children:e.urls.map((n,a)=>d("div",{class:"url-list",children:[d("div",{class:"url-left",children:d("div",{class:"url-name height-tight",children:n})}),d("nav",{children:d("ul",{children:d("li",{children:d("details",{role:"list",dir:"rtl",children:[d("summary",{"aria-haspopup":"listbox",role:"link"}),d("ul",{class:"delete",role:"listbox",children:[d("li",{children:d("a",{onClick:r=>{e.onEditUrl(n,e.type,a)},children:t("edit")})}),d("li",{children:d("a",{onClick:r=>{e.onDeleteUrl(n,e.type)},children:t("delete")})})]})]})})})})]},"menu"+a))})}function wa(e){let{t}=he(),n=wn(null),{toggleModal:a}=e;return d("dialog",{id:"immersive-translate-overlay",onClick:u=>{u.target&&u.target.id==="immersive-translate-overlay"&&a(u)},open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:e.toggleModal}),d("div",{class:"add-text",children:t("add url")}),d("input",{placeholder:"URL",ref:n,value:e.urlValue}),d("blockquote",{children:d("p",{class:"text-sm",children:t("addUrlDescription")})}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:e.toggleModal,children:t("cancel")})}),d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:u=>{if(u.preventDefault(),n.current&&n.current.value){if(e.onSubmitAddUrl){if(e.urlValue!==""){e.onSubmitAddUrl(n.current.value,e.index,e.type,"edit");return}e.onSubmitAddUrl(n.current.value,e.index,e.type);return}else if(e.onAddInterfaceUrl){if(e.urlValue!==""){e.onAddInterfaceUrl(n.current.value,"edit");return}e.onAddInterfaceUrl(n.current.value)}}},children:t("confirm")})})]})]})})}async function Vr(){let e=["bingGlobalConfig","baiduGlobalConfig",fn,An];for(let t of e)await j.storage.local.remove(t);le()||await Mm(),await Mf()}function th(){return le()?Promise.resolve("0 B"):Z0()}var nh=Ei();function bs(){let{t:e}=he(),[t,n,a,r,u]=bt(),[o,i]=H(null),[s,l]=H(null),[c,g]=H(0),[m,p]=H(!1),[f,S]=H(""),[v,h]=H(""),[k,F]=H(!1),[M,A]=H(!1),[P,w]=H(""),x=[];s&&(x=$o(s));let b=null,E=null,I=[],D=[];if(o&&s){let{translationService:R,translationServices:O}=o;hn[R]&&(E=eh(R,s)),O&&O[R]?b=Object.assign({},O[R]||{}):b={},I=nh.concat("").map(ae=>o.translationLanguagePattern&&o.translationLanguagePattern.matches&&o.translationLanguagePattern.matches.includes(ae)?{checked:!0,value:ae}:{checked:!1,value:ae}),D=nh.map(ae=>o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&o.translationLanguagePattern.excludeMatches.includes(ae)?{checked:!0,value:ae}:{checked:!1,value:ae})}ke(()=>(Ne("esc",()=>{F(!1),A(!1)}),ze().then(R=>{i(R),L.debug("current config",R)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(R=>{i(R)})},[t]),ke(()=>{o&&wt({url:"http://localhost",config:o,state:{cache:!1}}).then(R=>{l(R)})},[o]);let W=R=>{n(O=>({...O,translationService:R}))},_=R=>{n(()=>({...R}))},B=R=>{R.preventDefault(),confirm(e("confirmResetConfig"))&&(u(Ba()),ia().catch(O=>{L.error("clean local config error",O)}),pr().catch(O=>{L.error("clean buildin config error",O)}),Vr().catch(O=>{L.error("clean cache error",O)}),Je(e("resetSuccess")))},G=R=>{n(O=>({...O,targetLanguage:R}))},re=(R,O)=>{if(!R){n(ne=>{let te={...ne.translationLanguagePattern};return{...ne,translationLanguagePattern:{...ne.translationLanguagePattern,matches:Ye(O,te.matches),excludeMatches:Ye(O,te.excludeMatches)}}});return}let ae=R,ee=ae==="matches"?"excludeMatches":"matches";O&&n(ne=>{let te={...ne.translationLanguagePattern};return te[ae]=un(O,te[ae]),te[ee]=Ye(O,te[ee]),{...ne,translationLanguagePattern:{...ne.translationLanguagePattern,...te}}})},ye=(R,O)=>{re(R?"matches":void 0,O)},V=(R,O)=>{re(R?"excludeMatches":void 0,O)},ge=R=>{R==="matches"?F(!k):A(!M)},de=(R,O,ae,ee)=>{ge(ae),n(ne=>{let te=t.translationUrlPattern,oe=[],Y=[];te&&te.matches&&te.excludeMatches&&(oe=te.matches,Y=te.excludeMatches);let ce=[...oe],Le=[...Y];return ee==="edit"&&(ae==="matches"?ce[O]=R:Le[O]=R),ae==="matches"?(ce=un(R,ce),Le=Ye(R,Y)):(ce=Ye(R,oe),Le=un(R,Le)),{...ne,translationUrlPattern:{...ne.translationUrlPattern,matches:ce,excludeMatches:Le}}})},C=(R,O)=>{n(ae=>{let ee=t.translationUrlPattern,ne=[];O==="matches"?ee&&ee.matches&&(ne=ee.matches):ee&&ee.excludeMatches&&(ne=ee.excludeMatches);let te=[...ne];return te=Ye(R,te),{...ae,translationUrlPattern:{...ae.translationUrlPattern,[O]:te}}})},z=(R,O,ae)=>{ge(O),w(R),g(ae)};if(!o)return d("div",{children:"loading"});let Z=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.matches&&(Z=o.translationLanguagePattern.matches);let pe=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&(pe=o.translationLanguagePattern.excludeMatches);let se=Mr(o.translationService,o.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:[d("strong",{class:"text-lg",children:e("general")}),d("a",{class:"text-sm",href:"#",onClick:B,children:e("reset")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("target"),description:e("translate other languages into specific language")}),d("select",{class:"select",onChange:R=>{R.preventDefault(),G(R.target.value)},children:se.filter(R=>R!=="auto").map((R,O)=>d("option",{value:R,selected:R===o.targetLanguage,children:kt(R,o.interfaceLanguage)},"language"+O))})]}),d("div",{class:"nav",children:[d(Fe,{title:e("service"),description:e("select translation service")}),d("select",{class:"select",onChange:R=>{R.preventDefault(),S(""),h(""),W(R.target.value)},children:x.map((R,O)=>d("option",{value:R.id,selected:R.id===o.translationService,children:`${e("translationServices."+R.id)}${R.ok?"":" "+e("needActionForOptions")}`},"service-item="+O))})]}),E&&E.docUrl?d("div",{children:[d("a",{target:"_blank",class:"pb-1 docUrl",href:E.homepage,children:e(`translationServices.${E.id}`)}),"\xA0",d("span",{class:"description pb-1",children:e("please refer to")}),"\xA0",d("a",{target:"_blank",class:"pb-1 docUrl",href:E.docUrl,children:e("KeyAndConfigurationTutorial")})]}):null,b&&E&&E.explicitProps.length>0&&E.explicitProps.map((R,O)=>d("div",{class:"mt-2",children:d(Kr,{field:R,value:b[R.name],onChange:ae=>{n(ee=>{let ne=ee.translationServices||{},te=ne[E.id]||{};return{...ee,translationServices:{...ne,[E.id]:{...te,[R.name]:ae}}}})},onFinish:()=>{Je(e("saved"))}},R.name+O)},"service-item-prop-"+R.name+O)),b&&E&&E.optionalProps&&E.optionalProps.length>0&&d("details",{class:"pt-2 border-none",children:[d("summary",{style:{lineHeight:"1rem"},children:[e("moreOptions"),"\xA0\u{1F449}"]}),d("div",{children:E.optionalProps.map((R,O)=>{let ae=b[R.name];return R.name==="apiUrl"&&E&&E.id==="openai"&&b&&b.APIKEY&&b.APIKEY.startsWith("immersiveopenai_")&&(R={...R,disabled:!0},ae="https://openai-api.immersivetranslate.com/v1/chat/completions"),d("div",{class:"mt-2",children:d(Kr,{field:R,value:ae,onChange:ee=>{n(ne=>{let te=ne.translationServices||{},oe=te[E.id]||{};return{...ne,translationServices:{...te,[E.id]:{...oe,[R.name]:ee}}}})},onFinish:()=>{Je(e("saved"))}},R.name+O)},"service-item-optional-prop-"+R.name+O)})}),d("a",{href:"#",class:"secondary",onClick:R=>{R.preventDefault(),n(O=>{let ae=O.translationServices||{};return{...O,translationServices:{...ae,[E.id]:{}}}}),setTimeout(()=>{window.location.reload()},100)},children:e("resetToDefaultSettings")})]}),b&&E&&d("div",{class:"text-right",children:[v&&d("span",{class:"verified text-green-500 mr-2",children:e("verified")}),f&&d("span",{class:"verified text-red-500 mr-2",children:f}),d("a",{"aria-busy":m,href:"#",class:"secondary",onClick:async R=>{R.preventDefault();try{S(""),h(""),p(!0),await Qn(500);let O=E.class;O&&O.clearState&&await O.clearState(),await ha({id:1e6,text:"Hello world",from:"en",to:"zh-CN",url:"https://google.com",fromByClient:"auto"},s),h("verified")}catch(O){S(O.message)}finally{p(!1)}},children:e("verifyService")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("always languages"),description:e("always translate the following languages")}),d(hs,{options:I,onToggleAlwaysLangs:ye})]}),d("div",{class:"langs-list",children:Z.map((R,O)=>d("div",{class:"lang-card",children:[d("div",{id:`${R}`,children:kt(R,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${R}`,onClick:ae=>{ae.preventDefault(),ye(!1,Z[O])}})]},"lang-"+O))}),d("div",{class:"nav",children:[d(Fe,{title:e("neverTranslateLanguagesLabel"),description:e("neverTranslateTheFollowingLanguagesDescription")}),d(hs,{options:D,onToggleAlwaysLangs:V})]}),d("div",{class:"langs-list",children:pe.map((R,O)=>d("div",{class:"lang-card",children:[d("div",{id:`${R}`,children:kt(R,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${R}`,onClick:ae=>{ae.preventDefault(),V(!1,pe[O])}})]},"never-lang-"+O))}),d("div",{class:"nav",children:[d(Fe,{title:e("always sites"),description:e("always translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:R=>{R.preventDefault(),ge("matches")},children:e("add")})}),k?d(wa,{toggleModal:R=>{R.preventDefault(),ge("matches")},onSubmitAddUrl:de,type:"matches",urlValue:P,index:c}):null]}),d(va,{urls:o.translationUrlPattern.matches,type:"matches",onDeleteUrl:C,onEditUrl:z}),d("div",{class:"nav",children:[d(Fe,{title:e("never sites"),description:e("never translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:R=>{R.preventDefault(),ge("excludeMatches")},children:e("add")})}),M?d(wa,{toggleModal:R=>{R.preventDefault(),ge("excludeMatches")},onSubmitAddUrl:de,type:"excludeMatches",urlValue:P,index:c}):null]}),d(va,{urls:o.translationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:C,onEditUrl:z})]})}var zt={};Po.forEach(e=>{e.labelKey&&(zt[e.key]=e.labelKey)});var OO=Ei();function Rc(){let e=fr(),[t,n,a,r]=bt(),[u,o]=H(null),{t:i}=he(),[s,l]=H(0),[c,g]=H("");ke(()=>{ze().then(b=>{wt({config:b,url:globalThis.location.href}).then(E=>{o(E)})})},[t]);let[m,p]=H(!1),f=b=>{p(!m)},S=(b,E,I)=>{f(E),g(b),l(I)},v=(b,E)=>{n(I=>{let D=t.inputTranslationUrlPattern,W=[];E==="matches"?D&&D.matches&&(W=D.matches):D&&D.excludeMatches&&(W=D.excludeMatches);let _=[...W];return _=Ye(b,_),{...I,inputTranslationUrlPattern:{...I.inputTranslationUrlPattern,[E]:_}}})},h=b=>{n(E=>({...E,translationTheme:b}))},k=b=>{n(E=>({...E,interfaceLanguage:b}))},F=b=>{n(E=>({...E,inputTargetLanguage:b}))},M=b=>{n(E=>({...E,inputStartingTriggerKey:b}))},A=(b,E,I,D)=>{f(I),n(W=>{let _=t.inputTranslationUrlPattern,B=[],G=[];_&&_.matches&&_.excludeMatches&&(B=_.matches,G=_.excludeMatches);let re=[...B],ye=[...G];return D==="edit"&&(I==="matches"?re[E]=b:ye[E]=b),I==="matches"?(re=un(b,re),ye=Ye(b,G)):(re=Ye(b,B),ye=un(b,ye)),{...W,inputTranslationUrlPattern:{...W.inputTranslationUrlPattern,matches:re,excludeMatches:ye}}})},P=b=>{n(E=>({...E,inputTrailingTriggerKey:b}))};if(!u)return d("div",{children:"loading"});let w=u.config,x=Mr(w.translationService,w.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("inputOptions")})}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslation"),description:w.enableInputTranslationWithoutTriggerKey?i("enableInputTranslationDescriptionForNoneKey",{inputTargetLanguage:kt(w.inputTargetLanguage,w.interfaceLanguage),trailingKey:zt[w.inputTrailingTriggerKey]?i(zt[w.inputTrailingTriggerKey]):w.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:w.inputTrailingTriggerKeyRepeatTimes}):i("enableInputTranslationDescription",{inputTargetLanguage:kt(w.inputTargetLanguage,w.interfaceLanguage),startingKey:zt[w.inputStartingTriggerKey]?i(zt[w.inputStartingTriggerKey]):w.inputStartingTriggerKey,trailingKey:zt[w.inputTrailingTriggerKey]?i(zt[w.inputTrailingTriggerKey]):w.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:w.inputTrailingTriggerKeyRepeatTimes})}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let E=b.target.checked;n(I=>({...I,enableInputTranslation:!!E}))},checked:w.enableInputTranslation})})]}),d("details",{class:"mt-3",children:[d("summary",{children:[i("clickToSeeQuickDemo")," \u{1F447}\u{1F447}"]}),d("video",{controls:!0,src:"https://s.immersivetranslate.com/videos/immpersive-translate-input-translation-demo-202307044.mp4"})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTargetLanguage"),description:w.enableInputTranslationWithoutTriggerKey?i("inputTargetLanguageDescriptionForNoneKey"):i("inputTargetLanguageDescription",{startingKey:zt[w.inputStartingTriggerKey]?i(zt[w.inputStartingTriggerKey]):w.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),F(b.target.value)},children:x.filter(b=>b!=="auto").map((b,E)=>d("option",{value:b,selected:b===w.inputTargetLanguage,children:kt(b,w.interfaceLanguage)},"language"+E))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslationWithoutTriggerKeyTitle",{trailingKey:zt[w.inputTrailingTriggerKey]?i(zt[w.inputTrailingTriggerKey]):w.inputTrailingTriggerKey,inputTargetLanguage:kt(w.inputTargetLanguage,w.interfaceLanguage)}),description:""}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let E=b.target.checked;n(I=>({...I,enableInputTranslationWithoutTriggerKey:!!E}))},checked:w.enableInputTranslationWithoutTriggerKey})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputStartingTriggerKeyTitle"),description:w.inputStartingTriggerKey==="none"?i("inputStartingTriggerKeyDescriptionForNoneKey"):i("inputStartingTriggerKeyDescription",{startingKey:zt[w.inputStartingTriggerKey]?i(zt[w.inputStartingTriggerKey]):w.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),M(b.target.value)},children:Po.filter(b=>b.skipForStarting!==!0).map((b,E)=>d("option",{value:b.key,selected:b.key===w.inputStartingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+E))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTrailingTriggerKeyTitle"),description:i("inputTrailingTriggerKeyDescription",{trailingKey:zt[w.inputTrailingTriggerKey]?i(zt[w.inputTrailingTriggerKey]):w.inputTrailingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),P(b.target.value)},children:Po.filter(b=>b.skipForTrailing!==!0).map((b,E)=>d("option",{value:b.key,selected:b.key===w.inputTrailingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+E))})]}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:i("inputHelperInfo",{1:"https://immersivetranslate.com/docs/input/"})}}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTranslationBlockUrlsTitle"),description:i("inputTranslationBlockUrlsDescription")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:b=>{b.preventDefault(),f("excludeMatches")},children:i("add")})}),m?d(wa,{toggleModal:b=>{b.preventDefault(),f("excludeMatches")},onSubmitAddUrl:A,type:"excludeMatches",urlValue:c,index:s}):null]}),d(va,{urls:w.inputTranslationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:v,onEditUrl:S})]})}function Ic(e){let{t}=he(),{corfirmText:n,fingerCountToToggleTranslagePageWhenTouching:a,fingerCountToToggleTranslationMaskWhenTouching:r,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:u,onChange:o,onClose:i,shortcuts:s,mouseHoverHoldKey:l}=e,c={mouseHoverHoldKey:wn(null)},g=wn(null);for(let p=0;p{p.target&&p.target.id==="immersive-translate-overlay"&&i()};return ke(()=>{},[]),d("dialog",{id:"immersive-translate-overlay",onClick:m,open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()}}),s.map((p,f)=>{let{name:S,description:v,shortcut:h}=p;return d("div",{class:"flex justify-between items-center",children:[d("label",{class:"mb-2 text-sm",for:S,children:[v,":"]}),d("input",{type:"text",class:"!w-36",ref:c[S],disabled:p.disabled,id:S,name:S,value:h})]},`key-${f}`)}),_a()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("mouseHoverHoldKey")}),d("input",{type:"text",class:"!w-36",ref:c.mouseHoverHoldKey,id:"mouseHoverHoldKey",name:"mouseHoverHoldKey",value:l})]}),mr()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslatePageWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",ref:g,onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslagePageWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===a,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("fingerCountToToggleTranslagePageOnlyTranslationWhenTouching")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===u,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslationMaskWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslationMaskWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===r,children:`${t("fingers."+p)}`},"finger-"+f))})]}),e.note&&d(e.note,{}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()},children:t("cancel")})}),n&&d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:p=>{p.preventDefault();let f=[];for(let v=0;v{throw u});t.push(...r),n=a||""}while(n);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(n){return L.error("get config error, use default",n),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,n=Eo){let a=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:n,parents:["appDataFolder"],mimeType:"application/json"},a)}updateConfig(t,n){let a=new Blob([JSON.stringify(n,null,2)],{type:"application/json"});return this.updateContent(t,a)}async upload(t,n){let a=new FormData;a.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),a.append("file",n);let r=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:a});return r.ok?await r.json():Promise.reject(r.text())}async list(t,n){let a=new URL("https://www.googleapis.com/drive/v3/files");t&&a.searchParams.append("pageToken",t),n&&a.searchParams.append("q",n),a.searchParams.append("spaces","appDataFolder"),a.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),a.searchParams.append("pageSize","100"),a.searchParams.append("orderBy","createdTime desc");try{return L.debug("list api:",a.toString(),this.accessToken),await(await fetch(a.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){throw L.error("fetch google ip error",r),r}}async updateContent(t,n){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:n})).text()}};function rh(e,t){let n=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${To}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(n.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function uh(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function Oc(e,t,n,a,r,u,o){L.debug(`autoSyncStrategy accessToken: ${e}`);let i=new In(e);try{let s=(await i.findByName(Eo)).files;L.debug("files",s);let l=s[0]?.id,c=null;if(l&&(c=await i.getConfig(l).then(g=>({fileId:l,config:g}))),c){let{config:g,fileId:m}=c,p=g.updatedAt?new Date(g.updatedAt):new Date(0),f=t.updatedAt?new Date(t.updatedAt):new Date(0);if(L.debug("remoteUpdatedAt",p,"localUpdatedAt",f),p>f)L.debug("remote is newer, update local config",g),n(g),u&&u(!0);else if(p.getTime()===f.getTime())L.debug("remote and local are the same, do nothing"),u&&u(!1);else if(p(await cn.removeAuthInfo(),bu()&&globalThis.location.reload(),a))}static async getAuthInfo(){let t=await j.storage.local.get(An);if(t[An])return t[An]}static async removeAuthInfo(){return await j.storage.local.remove(An)}static setAuthInfo(t){return j.storage.local.set({[An]:t})}async auth(t=!1){let n=await cn.getAuthInfo();if(L.debug(this.CLASSNAME,"token from cache:",n),n&&n.access_token&&await oh(n.access_token).then(u=>!0).catch(u=>!1))return Promise.resolve(n);let a=rh(this._state,this._redirectUrl);return L.debug(this.CLASSNAME,"auth url: "+a),bu()?this.userscriptAuthWorkflow(a,t):this.extensionAuthWorkflow(a).then(r=>(cn.setAuthInfo(r),r))}async userscriptAuthWorkflow(t,n){return n&&await j.storage.local.set({[cu]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let n,a=!1;return new Promise((r,u)=>{let o=()=>{j.tabs.onUpdated.removeListener(i),j.tabs.onRemoved.removeListener(s)},i=(m,p,f)=>{if(L.debug(this.CLASSNAME,"create tab onUpdated: "+f.url),n===m){let S=new URL(f.url||""),v=uh(f.url);S.pathname.startsWith("/auth-done")&&v?.access_token&&(L.debug(this.CLASSNAME,"auth done: "+f.url),r({access_token:v.access_token}),a=!0,j.tabs.remove(m),o())}},s=(m,p)=>{L.debug(this.CLASSNAME,"create tab onRemoved: "+m),(m===n||!a)&&(o(),u(new Error("auth failed")))},l=Math.min(500,screen.availWidth),c=Math.min(650,screen.availHeight),g;j.windows===void 0?g=j.tabs.create({url:t}).then(m=>{n=m.id}):g=j.windows.create({url:t,type:"popup",width:l,height:c,left:Math.round((screen.width-l)/2),top:Math.round((screen.height-c)/2)}).then(m=>{n=m.tabs[0].id}),g.then(()=>{j.tabs.onUpdated.addListener(i),j.tabs.onRemoved.addListener(s)}).catch(m=>{L.debug(this.CLASSNAME,"create tab failed: "+m),u(m)})})}};var sE="https://www.googleapis.com/oauth2/v3/tokeninfo",lE=To,cE=tt().REDIRECT_URL;function oh(e){if(!e)throw"Authorization failure";let t=`${sE}?access_token=${e}`,n=new Request(t,{method:"GET"});function a(r){return new Promise((u,o)=>{r.status!=200&&o("Token validation error"),r.json().then(i=>{i.aud&&i.aud===lE?u(e):o("Token validation error")})})}return fetch(n).then(a)}function ih(e,t=!1){let n=cE;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let r=window.location.hostname,u=window.location.port;n=`${window.location.protocol}//${r}${u?`:${u}`:""}/auth-done/`}return new cn(e,n).auth(t)}function Nc(e,t=!1){return ih(e,t).then(n=>n.access_token||null)}var ju=No()?["action"]:["browser_action","page_action"],dE=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...ju]},{id:du,contexts:ju},{id:gu,contexts:ju},{id:mu,contexts:ju},{id:cg,contexts:ju}];async function ys(e){e=e||await ze(),L.debug("update ContextMenu",e);for(let t of dE){let n=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(n=!1);let a=ya(`browser.${t.id}`,e.interfaceLanguage);j.contextMenus.update(t.id,{title:a,visible:n})}}var gE=Object.keys(Ar),mE=e=>{let t=e.translationTheme;return!e.translationThemePatterns[t]||!e.translationThemePatterns[t].matches?[]:[...e.translationThemePatterns[t].matches]};function Uc(e){let t=[];return fu[e]&&(t=t.concat(fu[e])),t.push({name:"textColor",type:"color",required:!1}),t.push({name:"zoom",type:"number",default:100,required:!1}),t}function jc(){let[e,t,n,a]=bt(),[r,u]=H(!1),[o,i]=H(!1),[s,l]=H(0),[c,g]=H(null),{t:m,setLang:p}=he(),[f,S]=H("");ke(()=>(Ne("esc",()=>{u(!1),i(!1)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(x=>{wt({config:x,url:globalThis.location.href}).then(b=>{g(b)})})},[e]);let v=x=>{t(b=>{let E={matches:[],excludeMatches:[]};return b&&b.translationThemePatterns&&b.translationThemePatterns[x]&&(E=b.translationThemePatterns[x]),dr(document,x,E),{...b,translationTheme:x}})},h=x=>{t(b=>({...b,interfaceLanguage:x}))},k=(x,b,E)=>{u(!r),t(I=>{let D=I.translationThemePatterns||{},W=D[b]||{},_=W.matches||[],B=[..._];return E==="edit"&&(B=Ye(f,_)),B=un(x,B),{...I,translationThemePatterns:{...D,[b]:{...W,matches:B}}}})},F=(x,b)=>{t(E=>{let I=E.translationThemePatterns||{},D=I[b]||{},_=[...D.matches||[]];return _=Ye(x,_),{...E,translationThemePatterns:{...I,[b]:{...D,matches:_}}}})},M=(x,b,E)=>{u(!r),S(x),l(E)};if(!c)return d("div",{children:"loading"});let A=c.config,P=m("confirm"),w=()=>d("blockquote",{class:"text-sm",children:[m("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Command+C"}),"\xA0 ",d("kbd",{children:"Ctrl+Shift+D"})," "]});return le()||(Fa()?(w=()=>d("blockquote",{class:"text-sm",children:[m("browserShortcutsNoteForFirefox")," ",d("a",{target:"_blank",href:"https://support.mozilla.org/zh-CN/kb/%E7%AE%A1%E7%90%86Firefox%E7%9A%84%E6%89%A9%E5%B1%95%E5%BF%AB%E6%8D%B7%E6%96%B9%E5%BC%8F",children:[m("help"),"?"]}),d("br",{}),d("br",{}),m("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Cmd+C"}),"\xA0 ",d("kbd",{children:"Ctrl"}),"\xA0",d("kbd",{children:"D"})," "]}),P=m("confirm")):(w=()=>d("blockquote",{class:"text-sm",children:[m("browserShortcutsNoteForChrome"),"\xA0",d("a",{href:"#",onClick:x=>{x.preventDefault(),j.tabs.create({url:"chrome://extensions/shortcuts"})},children:m("goSettings")})]}),P=m("confirm"))),d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:m("interface")})}),d("div",{class:"nav",children:[d(Fe,{title:m("interface language")}),d("select",{class:"select",onChange:x=>{p(x.target.value),h(x.target.value),le()||setTimeout(()=>{ys()},200)},children:gE.map((x,b)=>d("option",{value:x,selected:x===A.interfaceLanguage,children:kt(x,A.interfaceLanguage,!0)},"locale"+b))})]}),d("div",{class:"nav",children:[d(Fe,{title:m("keyboard shortcuts")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:x=>{x.preventDefault(),i(!o)},children:m("modify")})})]}),d("div",{class:"nav",children:[d(Fe,{title:m("enableLineBreak"),description:m("enableLineBreakDescription")}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:x=>{let b=x.target.checked;t(E=>{let I=E.generalRule||{};return{...E,generalRule:{...I,lineBreakMaxTextCount:b?280:0}}})},checked:c.rule.lineBreakMaxTextCount>0,id:"switch",name:"switch",role:"switch"})})]}),c.rule.lineBreakMaxTextCount>0&&d("div",{class:"nav",children:[d(Fe,{title:m("lineBreakMaxTextCount")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:x=>{let b=x.target.value;t(E=>{let I=E.generalRule||{};return{...E,generalRule:{...I,lineBreakMaxTextCount:parseInt(b)}}})},name:"count",value:c.rule.lineBreakMaxTextCount,placeholder:"Text Length",required:!0})})]}),(Ma().any||le())&&d("div",{class:"nav",children:[d(Fe,{title:m("enableUserscriptPagePopup"),description:m("enableUserscriptPagePopupDescription",{touch:m("fingers."+A.generalRule.fingerCountToToggleTranslagePageWhenTouching)})}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:x=>{let b=x.target.checked;t(E=>{let I=E.generalRule||{};return{...E,generalRule:{...I,isShowUserscriptPagePopup:b}}})},checked:c.rule.isShowUserscriptPagePopup,id:"switch",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:m("translation display"),description:m("select diplay style")}),d("select",{class:"select",onChange:x=>{v(x.target.value)},children:D0.map((x,b)=>d("option",{value:x,selected:x===A.translationTheme,children:m(`translationTheme.${x}`)},"theme"+b))})]}),d("div",{class:"pt-2 text-sm",children:d("p",{children:[Lg,d("div",{class:"pt-2"}),d("font",{class:vr(A.translationTheme,!1,[],!1,!1).join(" "),children:d("font",{class:wr(A.translationTheme).join(" "),children:L0})}),A.translationTheme&&Uc(A.translationTheme).length>0?d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:m("customTheme")}),d("div",{class:"flex flex-col items-end",children:[Uc(A.translationTheme).map((x,b)=>{x.label=m(`customThemeLabel.${x.name}`);let E=A.translationThemePatterns||{},I=A.translationTheme,D=E[I]||{},W=`theme-${I}-${x.name}`,_=ah(W)||void 0,B=D[x.name]||_;return d(Kr,{field:x,value:B,onChange:G=>{t(re=>{let ye=re.translationThemePatterns||{},ge={...ye[A.translationTheme]||{},[x.name]:G},de={...re,translationThemePatterns:{...ye,[A.translationTheme]:ge}};return dr(document,A.translationTheme,ge),de})}},"theme-prop"+b)}),d("a",{href:"#",class:"text-sm secondary",onClick:x=>{x.preventDefault(),t(b=>{let E=b.translationThemePatterns||{},I={...E[A.translationTheme]};Uc(A.translationTheme).forEach(W=>{delete I[W.name]});let D={...b,translationThemePatterns:{...E,[A.translationTheme]:I}};return dr(document,A.translationTheme,{matches:[],excludeMatches:[]},!0),D})},children:m("resetToDefaultColor")})]})]}):null,d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:m("previewAllThemes")}),D0.map((x,b)=>d("div",{class:"pt-2",children:d("label",{children:[d("div",{class:"flex justify-between",children:d("div",{children:[d("input",{type:"radio",name:"theme",value:x,checked:x===A.translationTheme,onChange:E=>{v(E.target.value)}}),m(`translationTheme.${x}`)]})}),d("p",{children:d("font",{class:vr(x,!1,[],!1,!1).join(" "),children:d("font",{class:wr(x).join(" "),children:L0})})})]})},"theme-index-"+b))]})]})}),d("div",{class:"nav",children:[d(Fe,{title:"",description:m("useAboveStyleForTheseSites",{theme:m(`translationTheme.${A.translationTheme}`)})}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:x=>{x.preventDefault(),u(!r)},children:m("add")})})]}),r?d(wa,{toggleModal:x=>{x.preventDefault(),u(!r)},onAddInterfaceUrl:(x,b)=>{k(x,A.translationTheme,b)},urlValue:f,index:s}):null,d(va,{urls:mE(A),type:"matches",onDeleteUrl:x=>{F(x,A.translationTheme)},onEditUrl:M}),o?d(Ic,{note:w,corfirmText:P,fingerCountToToggleTranslagePageWhenTouching:A.generalRule.fingerCountToToggleTranslagePageWhenTouching,fingerCountToToggleTranslationMaskWhenTouching:A.generalRule.fingerCountToToggleTranslationMaskWhenTouching,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:A.generalRule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching,mouseHoverHoldKey:A.generalRule.mouseHoverHoldKey,shortcuts:Ag.map(x=>({name:x,shortcut:A.shortcuts[x],description:m(`browser.${x}`),disabled:!le()})),onChange:x=>{if(x){let{shortcuts:b,fingerCountToToggleTranslagePageWhenTouching:E,fingerCountToToggleTranslationMaskWhenTouching:I,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D,mouseHoverHoldKey:W}=x;le()?t(_=>{b=b||[];let B=b.reduce((re,ye)=>(re[ye.name]=ye.shortcut,re),{..._.shortcuts}),G={..._,shortcuts:B};return E!==void 0&&(G.generalRule={...G.generalRule,fingerCountToToggleTranslagePageWhenTouching:E}),I!==void 0&&(G.generalRule={...G.generalRule,fingerCountToToggleTranslationMaskWhenTouching:I}),D!==void 0&&(G.generalRule={...G.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),W&&(G.generalRule={...G.generalRule,mouseHoverHoldKey:W}),G}):(E!==void 0||I!==void 0||W||D!==void 0)&&t(_=>{let B={..._};return E!==void 0&&(B.generalRule={...B.generalRule,fingerCountToToggleTranslagePageWhenTouching:E}),I!==void 0&&(B.generalRule={...B.generalRule,fingerCountToToggleTranslationMaskWhenTouching:I}),D!==void 0&&(B.generalRule={...B.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D}),W&&(B.generalRule={...B.generalRule,mouseHoverHoldKey:W}),B}),x&&x.isClose&&i(!1)}else i(!1),j.tabs.create({url:"chrome://extensions/shortcuts"})},onClose:()=>{i(!1)}}):null]})}function zc(){let[e,t,n,a]=bt(),[r,u]=H(null),{t:o}=he(),[i,s]=H({}),[l,c]=H({});ke(()=>{ze().then(P=>{u(P)}),j.storage.sync.get(null).then(P=>{s(P),j.storage.local.get(null).then(w=>{c(w)})})},[e]);let g=P=>{t(w=>({...w,debug:P}))},m=P=>{t(w=>({...w,beta:P}))},p=P=>{t(()=>({...P}))},f=P=>{try{let w=P.target.value,x={...e};if(!w)delete x.rules;else{let b=JSON.parse(w);if(!Array.isArray(b)){Lt("Invalid rules, rules must be an array");return}x.rules=b}p(x),Je(o("saved"))}catch(w){Lt(`Invalid JSON ${w.message}`)}},S=P=>{let w={...e};w.generalRule||(w.generalRule={}),w.generalRule={...w.generalRule,injectedCss:P.target.value||""},p(w),Je(o("saved"))},v=P=>{try{let w=JSON.parse(P.target.value);p(w),Je(o("saved"))}catch(w){Lt(`Invalid JSON ${w.message}`)}},h=P=>{P.preventDefault()},k=P=>{P.preventDefault(),confirm(o("confirmResetConfig"))&&(p(Ba()),ia().catch(w=>{L.error("clean local config error",w)}),pr().catch(w=>{L.error("clean buildin config error",w)}),Vr().catch(w=>{L.error("clean cache error",w)}),Je(o("resetSuccess")))},F=P=>{P.preventDefault();let w={...e};delete w.rules,p(w),Je(o("resetThisSuccess"))},M=P=>{P.preventDefault();let w={...e};w.generalRule||(w.generalRule={}),w.generalRule={...w.generalRule},delete w.generalRule.injectedCss,p(w),Je(o("resetThisSuccess"))},A=`[{ + `);if(c.statusCode)throw new Error(`Something went wrong! The response is ${JSON.stringify(c)}.`)}let g=c[0].translations[0],m=c[0].detectedLanguage;return{text:g.text,from:Wf.get(m.language),to:Wf.get(g.to)}}function Jf(e){let t=e.split(".");if(t.length<=1)throw new Error("invlaid token");let n=t[1];if(!n)throw new Error("invalid base64 url token");let a=n.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(globalThis.atob(a).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join("")),u=JSON.parse(r),o=new Date(u.exp*1e3);return{accessToken:e,accessTokenExpiresAt:o.toISOString()}}var Ga=null,nE=[["auto",""],["ar","ar"],["ga","ga"],["et","et"],["bg","bg"],["is","is"],["pl","pl"],["bs","bs-Latn"],["fa","fa"],["da","da"],["de","de"],["ru","ru"],["fr","fr"],["zh-TW","zh-Hant"],["fil","fil"],["fj","fj"],["fi","fi"],["gu","gu"],["kk","kk"],["ht","ht"],["ko","ko"],["nl","nl"],["ca","ca"],["zh-CN","zh-Hans"],["cs","cs"],["kn","kn"],["otq","otq"],["tlh","tlh"],["hr","hr"],["lv","lv"],["lt","lt"],["ro","ro"],["mg","mg"],["mt","mt"],["mr","mr"],["ml","ml"],["ms","ms"],["mi","mi"],["bn","bn-BD"],["hmn","mww"],["af","af"],["pa","pa"],["pt","pt"],["ps","ps"],["ja","ja"],["sv","sv"],["sm","sm"],["sr-Latn","sr-Latn"],["sr-Cyrl","sr-Cyrl"],["no","nb"],["sk","sk"],["sl","sl"],["sw","sw"],["ty","ty"],["te","te"],["ta","ta"],["th","th"],["to","to"],["tr","tr"],["cy","cy"],["ur","ur"],["uk","uk"],["es","es"],["he","iw"],["el","el"],["hu","hu"],["it","it"],["hi","hi"],["id","id"],["en","en"],["yua","yua"],["bo","bo"]],Rc=new Map(nE),$r=class extends be{constructor(){super(...arguments);this.isSupportList=!0;this.maxTextLength=1800}static async clearState(){Ga=null,await us(yo)}async translate(n){let{text:a,from:r,to:u}=n;return a?await Gf(a,r,u):{...n}}async init(){if(!Ga){Ga={};let n=await as(yo);n&&(Ga=n)}await Yf(Ga)}async translateList(n){let{from:a,to:r,text:u}=n,o=Rc.get(a)||"auto",i=Rc.get(r)||r;o==="auto"&&(o="");let s=await Yf(Ga),l=[];for(let p of u)l.push({Text:p});let c=JSON.stringify(l),g=`https://api-edge.cognitive.microsofttranslator.com/translate?from=${o}&to=${i}&api-version=3.0&includeSentenceLength=true`,m=await ue({url:g,headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5",authorization:"Bearer "+s.accessToken,"cache-control":"no-cache","content-type":"application/json",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","Referrer-Policy":"strict-origin-when-cross-origin"},body:c,method:"POST"});if(m&&m.length>0&&m[0].translations&&m[0].translations.length>0)return{text:m.map(p=>p.translations[0]?.text||""),from:a,to:r};throw new Error("Microsoft translate error "+JSON.stringify(m))}};$r.langMap=Rc;async function Yf(e){if(e&&e.accessToken&&e.accessTokenExpiresAt){let t=Date.now(),a=new Date(e.accessTokenExpiresAt).getTime();if(a-t>30*1e3)return e;if(a-t>3e3)return Xf().catch(r=>{A.error(r)}),e}return Xf()}async function Xf(){let e=await Pu({responseType:"text",url:"https://edge.microsoft.com/translate/auth",headers:{accept:"*/*","accept-language":"zh-TW,zh;q=0.9,ja;q=0.8,zh-CN;q=0.7,en-US;q=0.6,en;q=0.5","cache-control":"no-cache",pragma:"no-cache","sec-ch-ua":'"Microsoft Edge";v="113", "Chromium";v="113", "Not-A.Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","sec-mesh-client-arch":"x86_64","sec-mesh-client-edge-channel":"beta","sec-mesh-client-edge-version":"113.0.1774.23","sec-mesh-client-os":"Windows","sec-mesh-client-os-version":"10.0.19044","sec-mesh-client-webview":"0",Referer:"https://appsumo.com/","Referrer-Policy":"strict-origin-when-cross-origin"},body:null,method:"GET"}),t=Jf(e),n=t.accessTokenExpiresAt,r=new Date(n).getTime()-Date.now();return Ga=t,await rs(yo,t,r-1e3),{accessToken:e,accessTokenExpiresAt:t.accessTokenExpiresAt}}var Zf=[["auto","auto"],["zh-CN","zh"],["en","en"],["yue","yue"],["wyw","wyw"],["ja","jp"],["ko","kor"],["fr","fra"],["es","spa"],["th","th"],["ar","ara"],["ru","ru"],["pt","pt"],["de","de"],["it","it"],["el","el"],["nl","nl"],["pl","pl"],["bg","bul"],["et","est"],["da","dan"],["fi","fin"],["cs","cs"],["ro","rom"],["sl","slo"],["sv","swe"],["hu","hu"],["zh-TW","cht"],["vi","vie"]],Ic=new Map(Zf),aE=new Map(Zf.map(([e,t])=>[t,e])),cs=class extends be{constructor(n,a,r){super(n,a,r);this.endpoint="https://api.fanyi.baidu.com/api/trans/vip/translate";this.appid="";this.key="";this.isSupportList=!1;this.maxTextGroupLength=20;if(!n||!n.appid||!n.key)throw new Error("appid and key are required");this.appid=n.appid?.trim(),this.key=n.key?.trim()}getDefaultRateLimit(){return{limit:1,interval:1550}}async translate(n){let a=Date.now().toString(),{endpoint:r}=this,{appid:u,key:o}=this,{text:i,from:s,to:l}=n,c=new URLSearchParams({from:Ic.get(s)||"auto",to:Ic.get(l)||l,q:i,salt:a,appid:u,sign:ca(u+i+a+o)}),g=new URL(r);g.search=c.toString();let m=await ue({url:g.toString()});if(m.error_code)throw new gt("API_SERVER_ERROR",m.error_msg);let{trans_result:p,from:f}=m,S=p.map(({dst:h})=>h);return{from:aE.get(f)||f,to:l,text:S.join(` +`)}}};cs.langMap=Ic;var Qf=cs;var rE=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ds=new Map(rE),gs=class extends be{constructor(n,a,r){super(n,a,r);this.token="";this.apiKeys=[];if(!n||!n.token)throw new Error("token are required");this.token=n.token?.trim(),this.apiKeys=this.token.split(",").map(u=>u.trim())}getRandomKey(){let n=Math.floor(Math.random()*this.apiKeys.length);return this.apiKeys[n]}async translateList(n){let{text:a,from:r,to:u}=n;if(!ds.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a,s=this.getRandomKey();return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+s},method:"POST",body:JSON.stringify({source:i,trans_type:`${ds.get(r)||"auto"}2${ds.get(u)}`})})).target,from:r,to:u}}};gs.langMap=ds;var eh=gs;var uE=[["auto","auto"],["zh-CN","zh"],["en","en"],["ja","ja"]],ms=new Map(uE),ps=class extends be{constructor(n,a,r){super(n,a,r);this.token="ssdj273ksdiwi923bsd9"}getDefaultRateLimit(){return{limit:5,interval:1050}}async translateList(n){let{text:a,from:r,to:u}=n;if(!ms.get(u))throw new Error(`Unsupported language: ${u}`);r==="auto"&&(r=await lt({text:a.join(" "),minLength:10}));let i=a;return{text:(await ue({retry:2,url:"https://api.interpreter.caiyunai.com/v1/translator",headers:{"content-type":"application/json","x-authorization":"token "+this.token},method:"POST",body:JSON.stringify({source:i,trans_type:`${ms.get(r)||"auto"}2${ms.get(u)}`})})).target,from:r,to:u}}};ps.langMap=ms;var th=ps;var nh=[["auto","auto"],["en","en"],["ru","ru"],["pt","pt"],["es","es"],["zh-CN","zh-CHS"],["ja","ja"],["ko","ko"],["fr","fr"],["ar","ar"],["id","id"],["vi","vi"],["it","it"]],Oc=new Map(nh),oE=new Map(nh.map(([e,t])=>[t,e]));function iE(e){let t=e.length;return t<=20?e:e.substring(0,10)+t+e.substring(t-10,t)}var fs=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.throttleLimit=5;if(!n||!n.appId||!n.appSecret)throw new Error("appId and appSecret are required");this.appId=n.appId?.trim(),this.appSecret=n.appSecret?.trim()}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o=sE(32),i=Math.round(new Date().getTime()/1e3),s=this.appId+iE(a)+o+i+this.appSecret,l=await Tn(s),c={q:a,appKey:this.appId,salt:o.toString(),from:Oc.get(r)||"auto",to:Oc.get(u)||u,sign:l,signType:"v3",curtime:i.toString()},g=new URLSearchParams(c),p=await ue({url:"https://openapi.youdao.com/api",method:"POST",body:g.toString(),headers:{"Content-Type":"application/x-www-form-urlencoded"}});if(!p.translation)throw new Error(JSON.stringify(p));let f=p.l,[S,v]=f.split("2");return{text:p.translation.join(` +`),from:oE.get(S),to:u}}};fs.langMap=Oc;function sE(e){let t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=n.length,r=0;for(;r[t,e]));var hs=class extends be{constructor(n,a,r){super(n,a,r);this.isSupportList=!1;this.appId="";this.appSecret="";this.maxTextLength=800}getDefaultRateLimit(){return{limit:5,interval:1050}}async translate(n){let{text:a,from:r,to:u}=n,o={q:a,from:Nc.get(r)||"auto",to:Nc.get(u)||u},i=new URLSearchParams(o),s=await ue({url:"https://aidemo.youdao.com/trans",method:"POST",body:i.toString(),headers:{"content-type":"application/x-www-form-urlencoded; charset=UTF-8","user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"}});if(s&&s.translation)return{text:s.translation.join(` +`),from:r,to:u};throw new Error("Youdao translation failed: "+JSON.stringify(s))}};hs.langMap=Nc;var uh=hs;var lE={mock:Nr,mock2:Nr,google:Vn,transmart:Va,deepl:Ff,volc:jf,volcAlpha:zr,bing:$r,tencent:$a,tenAlpha:qa,baidu:Qf,caiyun:eh,cai:th,openl:Xi,youdao:ah,you:uh,d:Ca,dpro:Ca,deeplx:Hr,niu:_f,azure:Bf,openai:If,chatgpt:Uu,papago:Rf},Gn={};Object.keys(hn).forEach(e=>{Gn[e]={...hn[e],class:lE[e]}});function Mr(e,t){let n=Xt;if(Gn[e]&&Gn[e].class&&Gn[e].class.langMap&&Gn[e].class.langMap.size>0){let a=Gn[e].class.langMap,r=n.filter(u=>a.get(u));return r.includes(t)||r.unshift("placeholder"),r}else return Xt}function oh(e,t){let n=Gn[e],a=t.config.translationServices[e]||{},r=!0,u=n.allProps||[],o=[],i=[];if(u.length>0){let s=u.filter(l=>l.required);if(s.length>0){for(let l of s)if(!a[l.name]){r=!1;break}}u.forEach(l=>{l.optional?i.push(l):o.push(l)})}return{...n,id:e,selected:t.translationService===e,ok:r,config:a,props:n.props||[],allProps:u,explicitProps:o||[],optionalProps:i||[]}}async function ha(e,t){if(!e.text)return e;let n=await _n({sentences:[e]},t);if(n.sentences.length>0)return{...e,...n.sentences[0]};throw new gt("translateFailed","translate failed")}async function cc(e){let{config:t,translationService:n}=e,a=t.translationGeneralConfig,r=t.translationServices,u=n,o=r[u]||{},i=new Gn[u].class(o,a,{translationService:u}),s=i.getDefaultRateLimit();s&&(o&&!o.limit&&(o.limit=s.limit),o&&!o.interval&&(o.interval=s.interval)),await R3(u,o),await i.init()}async function _n(e,t,n){if(!e.sentences.length)return{...e};let{config:a,translationService:r,state:u}=t,o=a.translationGeneralConfig,i=a.translationServices,s=r,l=i[s]||{};s==="openai"&&(e.sentences=e.sentences.map(h=>({...h,from:"auto"})));let c=[],g={sentences:Array(e.sentences.length)},m=e.sentences.length,p=-1;if(u.cache)for(let h of e.sentences){p++;let k=s;s==="openl"&&(k=s+"-"+l.codename||Xi.DEFAULT_CODENAME);let F=null;try{F=await oo(bf({originalText:h.text,from:h.from,to:h.to,service:k}),1e3)}catch(M){A.warn("query cache DB error, but it's ok",M)}if(F){let M={...h,text:F.translatedText};g.sentences[p]=M,n&&n(null,M,h)}else c.push(h)}else c.push(...e.sentences);let f=c.length;if(m-f>0&&A.debug(`use ${m-f} sentences from cache`),!c.length)return g;let S;try{S=new Gn[s].class(l,o,{translationService:s}),await S.init()}catch(h){if(n)for(let k of c)n(h,null,k);throw h}let v=await S.multipleTranslate({sentences:c},l,(h,k,F)=>{if(n&&n(h,k,F),!h&&k&&!s.startsWith("mock")&&u.cache){let M=s;s==="openl"&&(M=s+"-"+l.codename||Xi.DEFAULT_CODENAME),u.cache&&oo(yf({translatedText:k.text,from:F.from,to:F.to,detectedFrom:k.from,key:ca(F.text),service:M}),3e3).catch(D=>{A.warn("set cache DB error",D)})}});for(let h of v.sentences){let k=g.sentences.findIndex(F=>!F);if(k===-1)throw new gt("translateFailed","can not match the result");g.sentences[k]=h}return g}function Fe(e){return d("div",{class:"nav-left",children:[d("div",{class:"title",children:e.title}),d("div",{class:"description",children:e.description})]})}function qr(e){let{t}=he(),n={};e.width&&(n={width:`${e.width}px`});let[a,r]=H(e.value),{field:u,onFinish:o}=e,i=u.name;u.label&&(i=u.label),u.labelKey&&(i=t(u.labelKey));let s={};return u.descriptionLink1&&(s[1]=u.descriptionLink1),d("div",{class:"mt-3",children:[d("label",{for:e.field.name,class:"mb-[var(--spacing)]",children:[i,"\uFF1A"]}),e.field.type==="textarea"?d(rt,{children:[d("textarea",{style:n,autoComplete:"off",required:e.field.required,placeholder:e.field.placeholder||e.field.name,class:"input",value:a,type:e.type,onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]}):d(rt,{children:[d("input",{style:n,required:e.field.required,placeholder:e.field.placeholder||e.field.name,value:a,type:e.type,disabled:e.field.disabled||!1,name:e.field.name,autoComplete:"off",onInput:l=>{r(l.target.value),e.onChange(l.target.value)},onChange:()=>{(e.type==="text"||e.type==="password")&&o&&o()}}),e.field.descriptionKey?d("small",{dangerouslySetInnerHTML:{__html:t(e.field.descriptionKey,s)}}):null]})]})}function Kr(e){let{t}=he(),[n,a]=H(!0),[r,u]=H(!1),{onFinish:o,field:i,onChange:s,value:l}=e;l=l===void 0?i.default||"":l,ke(()=>{i.options&&(i.options.some(m=>m.value===l)||u(!0))},[]);let c=i.name;if(i.label&&(c=i.label),i.labelKey&&(c=t(i.labelKey)),i.type==="select")return d("div",{class:"flex flex-col mt-5 mb-6",children:[d("label",{class:"text-16 mb-2",children:[c,"\uFF1A"]}),d(W3,{maxWidth:200,items:i.options.map(g=>({label:`${g.label?t(g.label):g.value}`,value:g.value,selected:l===g.value,onSelected:()=>{s(g.value)}})),onChange:s,isInput:r,value:l}),d("label",{for:"customContent",class:"text-sm",onClick:()=>{u(!r)},children:[d("input",{type:"checkbox",id:"customContent",name:"customContent",checked:r}),t("customContent")]})]});if(i.type==="text")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="textarea")return d("div",{children:d(qr,{field:i,value:l,type:i.type,onChange:s,onFinish:o})});if(i.type==="number")return d("div",{children:d(qr,{field:i,value:l,type:i.type,width:196,onChange:s})});if(i.type==="password")return d("div",{children:[d(qr,{field:i,value:l,type:n?i.type:"text",onChange:s,onFinish:o}),d("label",{for:"translate",onClick:()=>{a(!n)},children:[d("input",{type:"checkbox",id:"translate",name:"translate"}),t("show password")]})]});if(i.type==="color"){let g=l,m="";return g||(g="#FFFFFF",m="#FFFFFF"),d("div",{children:d("label",{class:"flex items-center",for:i.name,children:[d("span",{class:"mr-2",children:i.label||i.name}),d("input",{type:"text",id:i.name,class:"border-color-text mr-2",placeholder:m||"",value:l,onInput:p=>{s(p.target.value)}}),d("input",{id:i.name,type:"color",name:i.name,value:g,onInput:p=>{s(p.target.value)}})]})})}else return null}function bs(e){let{t,lang:n}=he();return d("details",{role:"list",class:"nav-right",children:[d("summary",{"aria-haspopup":"listbox",children:t("edit")}),d("ul",{role:"listbox",class:"option-list",children:e.options.map((a,r)=>{let u=kt(a.value,n);return d("li",{children:d("label",{children:[d("input",{type:"checkbox",onChange:()=>{e.onToggleAlwaysLangs(!a.checked,a.value)},value:a.value,checked:a.checked}),u]})},"language-"+r)})})]})}function va(e){let{t}=he();return d("div",{children:e.urls.map((n,a)=>d("div",{class:"url-list",children:[d("div",{class:"url-left",children:d("div",{class:"url-name height-tight",children:n})}),d("nav",{children:d("ul",{children:d("li",{children:d("details",{role:"list",dir:"rtl",children:[d("summary",{"aria-haspopup":"listbox",role:"link"}),d("ul",{class:"delete",role:"listbox",children:[d("li",{children:d("a",{onClick:r=>{e.onEditUrl(n,e.type,a)},children:t("edit")})}),d("li",{children:d("a",{onClick:r=>{e.onDeleteUrl(n,e.type)},children:t("delete")})})]})]})})})})]},"menu"+a))})}function wa(e){let{t}=he(),n=kn(null),{toggleModal:a}=e;return d("dialog",{id:"immersive-translate-overlay",onClick:u=>{u.target&&u.target.id==="immersive-translate-overlay"&&a(u)},open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:e.toggleModal}),d("div",{class:"add-text",children:t("add url")}),d("input",{placeholder:"URL",ref:n,value:e.urlValue}),d("blockquote",{children:d("p",{class:"text-sm",children:t("addUrlDescription")})}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:e.toggleModal,children:t("cancel")})}),d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:u=>{if(u.preventDefault(),n.current&&n.current.value){if(e.onSubmitAddUrl){if(e.urlValue!==""){e.onSubmitAddUrl(n.current.value,e.index,e.type,"edit");return}e.onSubmitAddUrl(n.current.value,e.index,e.type);return}else if(e.onAddInterfaceUrl){if(e.urlValue!==""){e.onAddInterfaceUrl(n.current.value,"edit");return}e.onAddInterfaceUrl(n.current.value)}}},children:t("confirm")})})]})]})})}async function Vr(){let e=["bingGlobalConfig","baiduGlobalConfig",fn,Dn];for(let t of e)await j.storage.local.remove(t);le()||await Rm(),await Of()}function ih(){return le()?Promise.resolve("0 B"):Q0()}var sh=Ei();function ys(){let{t:e}=he(),[t,n,a,r,u]=bt(),[o,i]=H(null),[s,l]=H(null),[c,g]=H(0),[m,p]=H(!1),[f,S]=H(""),[v,h]=H(""),[k,F]=H(!1),[M,D]=H(!1),[P,w]=H(""),x=[];s&&(x=$o(s));let b=null,E=null,I=[],L=[];if(o&&s){let{translationService:R,translationServices:O}=o;hn[R]&&(E=oh(R,s)),O&&O[R]?b=Object.assign({},O[R]||{}):b={},I=sh.concat("").map(ae=>o.translationLanguagePattern&&o.translationLanguagePattern.matches&&o.translationLanguagePattern.matches.includes(ae)?{checked:!0,value:ae}:{checked:!1,value:ae}),L=sh.map(ae=>o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&o.translationLanguagePattern.excludeMatches.includes(ae)?{checked:!0,value:ae}:{checked:!1,value:ae})}ke(()=>(Ne("esc",()=>{F(!1),D(!1)}),ze().then(R=>{i(R),A.debug("current config",R)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(R=>{i(R)})},[t]),ke(()=>{o&&wt({url:"http://localhost",config:o,state:{cache:!1}}).then(R=>{l(R)})},[o]);let W=R=>{n(O=>({...O,translationService:R}))},_=R=>{n(()=>({...R}))},B=R=>{R.preventDefault(),confirm(e("confirmResetConfig"))&&(u(Ba()),ia().catch(O=>{A.error("clean local config error",O)}),pr().catch(O=>{A.error("clean buildin config error",O)}),Vr().catch(O=>{A.error("clean cache error",O)}),Je(e("resetSuccess")))},G=R=>{n(O=>({...O,targetLanguage:R}))},re=(R,O)=>{if(!R){n(ne=>{let te={...ne.translationLanguagePattern};return{...ne,translationLanguagePattern:{...ne.translationLanguagePattern,matches:Ye(O,te.matches),excludeMatches:Ye(O,te.excludeMatches)}}});return}let ae=R,ee=ae==="matches"?"excludeMatches":"matches";O&&n(ne=>{let te={...ne.translationLanguagePattern};return te[ae]=un(O,te[ae]),te[ee]=Ye(O,te[ee]),{...ne,translationLanguagePattern:{...ne.translationLanguagePattern,...te}}})},ye=(R,O)=>{re(R?"matches":void 0,O)},V=(R,O)=>{re(R?"excludeMatches":void 0,O)},ge=R=>{R==="matches"?F(!k):D(!M)},de=(R,O,ae,ee)=>{ge(ae),n(ne=>{let te=t.translationUrlPattern,oe=[],Y=[];te&&te.matches&&te.excludeMatches&&(oe=te.matches,Y=te.excludeMatches);let ce=[...oe],Le=[...Y];return ee==="edit"&&(ae==="matches"?ce[O]=R:Le[O]=R),ae==="matches"?(ce=un(R,ce),Le=Ye(R,Y)):(ce=Ye(R,oe),Le=un(R,Le)),{...ne,translationUrlPattern:{...ne.translationUrlPattern,matches:ce,excludeMatches:Le}}})},C=(R,O)=>{n(ae=>{let ee=t.translationUrlPattern,ne=[];O==="matches"?ee&&ee.matches&&(ne=ee.matches):ee&&ee.excludeMatches&&(ne=ee.excludeMatches);let te=[...ne];return te=Ye(R,te),{...ae,translationUrlPattern:{...ae.translationUrlPattern,[O]:te}}})},z=(R,O,ae)=>{ge(O),w(R),g(ae)};if(!o)return d("div",{children:"loading"});let Z=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.matches&&(Z=o.translationLanguagePattern.matches);let pe=[];o&&o.translationLanguagePattern&&o.translationLanguagePattern.excludeMatches&&(pe=o.translationLanguagePattern.excludeMatches);let se=Mr(o.translationService,o.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:[d("strong",{class:"text-lg",children:e("general")}),d("a",{class:"text-sm",href:"#",onClick:B,children:e("reset")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("target"),description:e("translate other languages into specific language")}),d("select",{class:"select",onChange:R=>{R.preventDefault(),G(R.target.value)},children:se.filter(R=>R!=="auto").map((R,O)=>d("option",{value:R,selected:R===o.targetLanguage,children:kt(R,o.interfaceLanguage)},"language"+O))})]}),d("div",{class:"nav",children:[d(Fe,{title:e("service"),description:e("select translation service")}),d("select",{class:"select",onChange:R=>{R.preventDefault(),S(""),h(""),W(R.target.value)},children:x.map((R,O)=>d("option",{value:R.id,selected:R.id===o.translationService,children:`${e("translationServices."+R.id)}${R.ok?"":" "+e("needActionForOptions")}`},"service-item="+O))})]}),E&&E.docUrl?d("div",{children:[d("a",{target:"_blank",class:"pb-1 docUrl",href:E.homepage,children:e(`translationServices.${E.id}`)}),"\xA0",d("span",{class:"description pb-1",children:e("please refer to")}),"\xA0",d("a",{target:"_blank",class:"pb-1 docUrl",href:E.docUrl,children:e("KeyAndConfigurationTutorial")})]}):null,b&&E&&E.explicitProps.length>0&&E.explicitProps.map((R,O)=>d("div",{class:"mt-2",children:d(Kr,{field:R,value:b[R.name],onChange:ae=>{n(ee=>{let ne=ee.translationServices||{},te=ne[E.id]||{};return{...ee,translationServices:{...ne,[E.id]:{...te,[R.name]:ae}}}})},onFinish:()=>{Je(e("saved"))}},R.name+O)},"service-item-prop-"+R.name+O)),b&&E&&E.optionalProps&&E.optionalProps.length>0&&d("details",{class:"pt-2 border-none",children:[d("summary",{style:{lineHeight:"1rem"},children:[e("moreOptions"),"\xA0\u{1F449}"]}),d("div",{children:E.optionalProps.map((R,O)=>{let ae=b[R.name];return R.name==="apiUrl"&&E&&E.id==="openai"&&b&&b.APIKEY&&b.APIKEY.startsWith("immersiveopenai_")&&(R={...R,disabled:!0},ae="https://openai-api.immersivetranslate.com/v1/chat/completions"),d("div",{class:"mt-2",children:d(Kr,{field:R,value:ae,onChange:ee=>{n(ne=>{let te=ne.translationServices||{},oe=te[E.id]||{};return{...ne,translationServices:{...te,[E.id]:{...oe,[R.name]:ee}}}})},onFinish:()=>{Je(e("saved"))}},R.name+O)},"service-item-optional-prop-"+R.name+O)})}),d("a",{href:"#",class:"secondary",onClick:R=>{R.preventDefault(),n(O=>{let ae=O.translationServices||{};return{...O,translationServices:{...ae,[E.id]:{}}}}),setTimeout(()=>{window.location.reload()},100)},children:e("resetToDefaultSettings")})]}),b&&E&&d("div",{class:"text-right",children:[v&&d("span",{class:"verified text-green-500 mr-2",children:e("verified")}),f&&d("span",{class:"verified text-red-500 mr-2",children:f}),d("a",{"aria-busy":m,href:"#",class:"secondary",onClick:async R=>{R.preventDefault();try{S(""),h(""),p(!0),await Qn(500);let O=E.class;O&&O.clearState&&await O.clearState(),await ha({id:1e6,text:"Hello world",from:"en",to:"zh-CN",url:"https://google.com",fromByClient:"auto"},s),h("verified")}catch(O){S(O.message)}finally{p(!1)}},children:e("verifyService")})]}),d("div",{class:"nav",children:[d(Fe,{title:e("always languages"),description:e("always translate the following languages")}),d(bs,{options:I,onToggleAlwaysLangs:ye})]}),d("div",{class:"langs-list",children:Z.map((R,O)=>d("div",{class:"lang-card",children:[d("div",{id:`${R}`,children:kt(R,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${R}`,onClick:ae=>{ae.preventDefault(),ye(!1,Z[O])}})]},"lang-"+O))}),d("div",{class:"nav",children:[d(Fe,{title:e("neverTranslateLanguagesLabel"),description:e("neverTranslateTheFollowingLanguagesDescription")}),d(bs,{options:L,onToggleAlwaysLangs:V})]}),d("div",{class:"langs-list",children:pe.map((R,O)=>d("div",{class:"lang-card",children:[d("div",{id:`${R}`,children:kt(R,o.interfaceLanguage)}),d("a",{href:"#close",class:"close",target:"_blank","aria-label":"Close","data-target":`${R}`,onClick:ae=>{ae.preventDefault(),V(!1,pe[O])}})]},"never-lang-"+O))}),d("div",{class:"nav",children:[d(Fe,{title:e("always sites"),description:e("always translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:R=>{R.preventDefault(),ge("matches")},children:e("add")})}),k?d(wa,{toggleModal:R=>{R.preventDefault(),ge("matches")},onSubmitAddUrl:de,type:"matches",urlValue:P,index:c}):null]}),d(va,{urls:o.translationUrlPattern.matches,type:"matches",onDeleteUrl:C,onEditUrl:z}),d("div",{class:"nav",children:[d(Fe,{title:e("never sites"),description:e("never translate the following sites")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:R=>{R.preventDefault(),ge("excludeMatches")},children:e("add")})}),M?d(wa,{toggleModal:R=>{R.preventDefault(),ge("excludeMatches")},onSubmitAddUrl:de,type:"excludeMatches",urlValue:P,index:c}):null]}),d(va,{urls:o.translationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:C,onEditUrl:z})]})}var zt={};Po.forEach(e=>{e.labelKey&&(zt[e.key]=e.labelKey)});var VO=Ei();function Uc(){let e=fr(),[t,n,a,r]=bt(),[u,o]=H(null),{t:i}=he(),[s,l]=H(0),[c,g]=H("");ke(()=>{ze().then(b=>{wt({config:b,url:globalThis.location.href}).then(E=>{o(E)})})},[t]);let[m,p]=H(!1),f=b=>{p(!m)},S=(b,E,I)=>{f(E),g(b),l(I)},v=(b,E)=>{n(I=>{let L=t.inputTranslationUrlPattern,W=[];E==="matches"?L&&L.matches&&(W=L.matches):L&&L.excludeMatches&&(W=L.excludeMatches);let _=[...W];return _=Ye(b,_),{...I,inputTranslationUrlPattern:{...I.inputTranslationUrlPattern,[E]:_}}})},h=b=>{n(E=>({...E,translationTheme:b}))},k=b=>{n(E=>({...E,interfaceLanguage:b}))},F=b=>{n(E=>({...E,inputTargetLanguage:b}))},M=b=>{n(E=>({...E,inputStartingTriggerKey:b}))},D=(b,E,I,L)=>{f(I),n(W=>{let _=t.inputTranslationUrlPattern,B=[],G=[];_&&_.matches&&_.excludeMatches&&(B=_.matches,G=_.excludeMatches);let re=[...B],ye=[...G];return L==="edit"&&(I==="matches"?re[E]=b:ye[E]=b),I==="matches"?(re=un(b,re),ye=Ye(b,G)):(re=Ye(b,B),ye=un(b,ye)),{...W,inputTranslationUrlPattern:{...W.inputTranslationUrlPattern,matches:re,excludeMatches:ye}}})},P=b=>{n(E=>({...E,inputTrailingTriggerKey:b}))};if(!u)return d("div",{children:"loading"});let w=u.config,x=Mr(w.translationService,w.targetLanguage);return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("inputOptions")})}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslation"),description:w.enableInputTranslationWithoutTriggerKey?i("enableInputTranslationDescriptionForNoneKey",{inputTargetLanguage:kt(w.inputTargetLanguage,w.interfaceLanguage),trailingKey:zt[w.inputTrailingTriggerKey]?i(zt[w.inputTrailingTriggerKey]):w.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:w.inputTrailingTriggerKeyRepeatTimes}):i("enableInputTranslationDescription",{inputTargetLanguage:kt(w.inputTargetLanguage,w.interfaceLanguage),startingKey:zt[w.inputStartingTriggerKey]?i(zt[w.inputStartingTriggerKey]):w.inputStartingTriggerKey,trailingKey:zt[w.inputTrailingTriggerKey]?i(zt[w.inputTrailingTriggerKey]):w.inputTrailingTriggerKey,inputTrailingTriggerKeyRepeatTimes:w.inputTrailingTriggerKeyRepeatTimes})}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let E=b.target.checked;n(I=>({...I,enableInputTranslation:!!E}))},checked:w.enableInputTranslation})})]}),d("details",{class:"mt-3",children:[d("summary",{children:[i("clickToSeeQuickDemo")," \u{1F447}\u{1F447}"]}),d("video",{controls:!0,src:"https://s.immersivetranslate.com/videos/immpersive-translate-input-translation-demo-202307044.mp4"})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTargetLanguage"),description:w.enableInputTranslationWithoutTriggerKey?i("inputTargetLanguageDescriptionForNoneKey"):i("inputTargetLanguageDescription",{startingKey:zt[w.inputStartingTriggerKey]?i(zt[w.inputStartingTriggerKey]):w.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),F(b.target.value)},children:x.filter(b=>b!=="auto").map((b,E)=>d("option",{value:b,selected:b===w.inputTargetLanguage,children:kt(b,w.interfaceLanguage)},"language"+E))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableInputTranslationWithoutTriggerKeyTitle",{trailingKey:zt[w.inputTrailingTriggerKey]?i(zt[w.inputTrailingTriggerKey]):w.inputTrailingTriggerKey,inputTargetLanguage:kt(w.inputTargetLanguage,w.interfaceLanguage)}),description:""}),d("label",{for:"enableInputTranslation",children:d("input",{type:"checkbox",id:"enableInputTranslation",name:"switch",role:"switch",onChange:b=>{let E=b.target.checked;n(I=>({...I,enableInputTranslationWithoutTriggerKey:!!E}))},checked:w.enableInputTranslationWithoutTriggerKey})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputStartingTriggerKeyTitle"),description:w.inputStartingTriggerKey==="none"?i("inputStartingTriggerKeyDescriptionForNoneKey"):i("inputStartingTriggerKeyDescription",{startingKey:zt[w.inputStartingTriggerKey]?i(zt[w.inputStartingTriggerKey]):w.inputStartingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),M(b.target.value)},children:Po.filter(b=>b.skipForStarting!==!0).map((b,E)=>d("option",{value:b.key,selected:b.key===w.inputStartingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+E))})]}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTrailingTriggerKeyTitle"),description:i("inputTrailingTriggerKeyDescription",{trailingKey:zt[w.inputTrailingTriggerKey]?i(zt[w.inputTrailingTriggerKey]):w.inputTrailingTriggerKey})}),d("select",{class:"select",onChange:b=>{b.preventDefault(),P(b.target.value)},children:Po.filter(b=>b.skipForTrailing!==!0).map((b,E)=>d("option",{value:b.key,selected:b.key===w.inputTrailingTriggerKey,children:b.labelKey?i(b.labelKey):b.key},"startingkey-"+E))})]}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:i("inputHelperInfo",{1:"https://immersivetranslate.com/docs/input/"})}}),d("div",{class:"nav",children:[d(Fe,{title:i("inputTranslationBlockUrlsTitle"),description:i("inputTranslationBlockUrlsDescription")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:b=>{b.preventDefault(),f("excludeMatches")},children:i("add")})}),m?d(wa,{toggleModal:b=>{b.preventDefault(),f("excludeMatches")},onSubmitAddUrl:D,type:"excludeMatches",urlValue:c,index:s}):null]}),d(va,{urls:w.inputTranslationUrlPattern.excludeMatches,type:"excludeMatches",onDeleteUrl:v,onEditUrl:S})]})}function jc(e){let{t}=he(),{corfirmText:n,fingerCountToToggleTranslagePageWhenTouching:a,fingerCountToToggleTranslationMaskWhenTouching:r,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:u,onChange:o,onClose:i,shortcuts:s,mouseHoverHoldKey:l}=e,c={mouseHoverHoldKey:kn(null)},g=kn(null);for(let p=0;p{p.target&&p.target.id==="immersive-translate-overlay"&&i()};return ke(()=>{},[]),d("dialog",{id:"immersive-translate-overlay",onClick:m,open:!0,children:d("article",{class:"add-modal",children:[d("a",{href:"#close","aria-label":"Close",class:"close","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()}}),s.map((p,f)=>{let{name:S,description:v,shortcut:h}=p;return d("div",{class:"flex justify-between items-center",children:[d("label",{class:"mb-2 text-sm",for:S,children:[v,":"]}),d("input",{type:"text",class:"!w-36",ref:c[S],disabled:p.disabled,id:S,name:S,value:h})]},`key-${f}`)}),_a()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("mouseHoverHoldKey")}),d("input",{type:"text",class:"!w-36",ref:c.mouseHoverHoldKey,id:"mouseHoverHoldKey",name:"mouseHoverHoldKey",value:l})]}),mr()&&d("div",{class:"flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslatePageWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",ref:g,onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslagePageWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===a,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("fingerCountToToggleTranslagePageOnlyTranslationWhenTouching")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===u,children:`${t("fingers."+p)}`},"finger-"+f))})]}),mr()&&d("div",{class:"mt-2 flex justify-between items-center",children:[d("label",{for:"switch",class:"text-sm mb-2",children:t("toggleTranslationMaskWhenThreeFingersOnTheScreen")}),d("select",{class:"select !w-36",onChange:p=>{p.preventDefault();let f=p.target.value,S={fingerCountToToggleTranslationMaskWhenTouching:parseInt(f)};o(S)},children:[0,2,3,4,5].map((p,f)=>d("option",{value:p,selected:p===r,children:`${t("fingers."+p)}`},"finger-"+f))})]}),e.note&&d(e.note,{}),d("div",{class:"flex",children:[d("div",{class:"footer-button",children:d("a",{href:"#cancel",role:"button",class:"full-button secondary margin-right","data-target":"modal-example",onClick:p=>{p.preventDefault(),i()},children:t("cancel")})}),n&&d("div",{class:"footer-button",children:d("a",{href:"#confirm",role:"button",class:"full-button margin-left","data-target":"modal-example",onClick:p=>{p.preventDefault();let f=[];for(let v=0;v{throw u});t.push(...r),n=a||""}while(n);return t}async getConfig(t){try{return await(await fetch(`https://www.googleapis.com/drive/v3/files/${t}?alt=media`,{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(n){return A.error("get config error, use default",n),{}}}async delete(t){await fetch(`https://www.googleapis.com/drive/v3/files/${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.accessToken}`}})}findByName(t){return this.list(void 0,`name = '${t}'`)}uploadConfig(t,n=Eo){let a=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});return this.upload({name:n,parents:["appDataFolder"],mimeType:"application/json"},a)}updateConfig(t,n){let a=new Blob([JSON.stringify(n,null,2)],{type:"application/json"});return this.updateContent(t,a)}async upload(t,n){let a=new FormData;a.append("metadata",new Blob([JSON.stringify(t)],{type:"application/json; charset=UTF-8"})),a.append("file",n);let r=await fetch("https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart",{method:"POST",headers:{Authorization:`Bearer ${this.accessToken}`},body:a});return r.ok?await r.json():Promise.reject(r.text())}async list(t,n){let a=new URL("https://www.googleapis.com/drive/v3/files");t&&a.searchParams.append("pageToken",t),n&&a.searchParams.append("q",n),a.searchParams.append("spaces","appDataFolder"),a.searchParams.append("fields","files(id,name,createdTime,modifiedTime,size)"),a.searchParams.append("pageSize","100"),a.searchParams.append("orderBy","createdTime desc");try{return A.debug("list api:",a.toString(),this.accessToken),await(await fetch(a.toString(),{headers:{Authorization:`Bearer ${this.accessToken}`}})).json()}catch(r){throw A.error("fetch google ip error",r),r}}async updateContent(t,n){return await(await fetch(`https://www.googleapis.com/upload/drive/v3/files/${t}?uploadType=media`,{method:"PATCH",headers:{Authorization:`Bearer ${this.accessToken}`},body:n})).text()}};function ch(e,t){let n=["https://www.googleapis.com/auth/drive.appdata"];return`https://accounts.google.com/o/oauth2/v2/auth?client_id=${To}&response_type=token&redirect_uri=${encodeURIComponent(t)}&scope=${encodeURIComponent(n.join(" "))}&state=${encodeURIComponent(JSON.stringify(e))}`}function dh(e){let t=e.match(/[#?](.*)/);return!t||t.length<1?null:{access_token:new URLSearchParams(t[1].split("#")[0]).get("access_token")}}async function zc(e,t,n,a,r,u,o){A.debug(`autoSyncStrategy accessToken: ${e}`);let i=new In(e);try{let s=(await i.findByName(Eo)).files;A.debug("files",s);let l=s[0]?.id,c=null;if(l&&(c=await i.getConfig(l).then(g=>({fileId:l,config:g}))),c){let{config:g,fileId:m}=c,p=g.updatedAt?new Date(g.updatedAt):new Date(0),f=t.updatedAt?new Date(t.updatedAt):new Date(0);if(A.debug("remoteUpdatedAt",p,"localUpdatedAt",f),p>f)A.debug("remote is newer, update local config",g),n(g),u&&u(!0);else if(p.getTime()===f.getTime())A.debug("remote and local are the same, do nothing"),u&&u(!1);else if(p(await cn.removeAuthInfo(),bu()&&globalThis.location.reload(),a))}static async getAuthInfo(){let t=await j.storage.local.get(Dn);if(t[Dn])return t[Dn]}static async removeAuthInfo(){return await j.storage.local.remove(Dn)}static setAuthInfo(t){return j.storage.local.set({[Dn]:t})}async auth(t=!1){let n=await cn.getAuthInfo();if(A.debug(this.CLASSNAME,"token from cache:",n),n&&n.access_token&&await gh(n.access_token).then(u=>!0).catch(u=>!1))return Promise.resolve(n);let a=ch(this._state,this._redirectUrl);return A.debug(this.CLASSNAME,"auth url: "+a),bu()?this.userscriptAuthWorkflow(a,t):this.extensionAuthWorkflow(a).then(r=>(cn.setAuthInfo(r),r))}async userscriptAuthWorkflow(t,n){return n&&await j.storage.local.set({[cu]:!0}),globalThis.open(t,"_self"),Promise.resolve({})}extensionAuthWorkflow(t){let n,a=!1;return new Promise((r,u)=>{let o=()=>{j.tabs.onUpdated.removeListener(i),j.tabs.onRemoved.removeListener(s)},i=(m,p,f)=>{if(A.debug(this.CLASSNAME,"create tab onUpdated: "+f.url),n===m){let S=new URL(f.url||""),v=dh(f.url);S.pathname.startsWith("/auth-done")&&v?.access_token&&(A.debug(this.CLASSNAME,"auth done: "+f.url),r({access_token:v.access_token}),a=!0,j.tabs.remove(m),o())}},s=(m,p)=>{A.debug(this.CLASSNAME,"create tab onRemoved: "+m),(m===n||!a)&&(o(),u(new Error("auth failed")))},l=Math.min(500,screen.availWidth),c=Math.min(650,screen.availHeight),g;j.windows===void 0?g=j.tabs.create({url:t}).then(m=>{n=m.id}):g=j.windows.create({url:t,type:"popup",width:l,height:c,left:Math.round((screen.width-l)/2),top:Math.round((screen.height-c)/2)}).then(m=>{n=m.tabs[0].id}),g.then(()=>{j.tabs.onUpdated.addListener(i),j.tabs.onRemoved.addListener(s)}).catch(m=>{A.debug(this.CLASSNAME,"create tab failed: "+m),u(m)})})}};var gE="https://www.googleapis.com/oauth2/v3/tokeninfo",mE=To,pE=tt().REDIRECT_URL;function gh(e){if(!e)throw"Authorization failure";let t=`${gE}?access_token=${e}`,n=new Request(t,{method:"GET"});function a(r){return new Promise((u,o)=>{r.status!=200&&o("Token validation error"),r.json().then(i=>{i.aud&&i.aud===mE?u(e):o("Token validation error")})})}return fetch(n).then(a)}function mh(e,t=!1){let n=pE;if(typeof window<"u"&&window.location.protocol.startsWith("http")){let r=window.location.hostname,u=window.location.port;n=`${window.location.protocol}//${r}${u?`:${u}`:""}/auth-done/`}return new cn(e,n).auth(t)}function Hc(e,t=!1){return mh(e,t).then(n=>n.access_token||null)}var ju=No()?["action"]:["browser_action","page_action"],fE=[{id:"toggleTranslatePage",contexts:["page","frame","selection",...ju]},{id:du,contexts:ju},{id:gu,contexts:ju},{id:mu,contexts:ju},{id:pg,contexts:ju}];async function Ts(e){e=e||await ze(),A.debug("update ContextMenu",e);for(let t of fE){let n=!0;e.isShowContextMenu===!1&&t.id==="toggleTranslatePage"&&(n=!1);let a=ya(`browser.${t.id}`,e.interfaceLanguage);j.contextMenus.update(t.id,{title:a,visible:n})}}var hE=Object.keys(Ar),bE=e=>{let t=e.translationTheme;return!e.translationThemePatterns[t]||!e.translationThemePatterns[t].matches?[]:[...e.translationThemePatterns[t].matches]};function Wc(e){let t=[];return fu[e]&&(t=t.concat(fu[e])),t.push({name:"textColor",type:"color",required:!1}),t.push({name:"zoom",type:"number",default:100,required:!1}),t}function $c(){let[e,t,n,a]=bt(),[r,u]=H(!1),[o,i]=H(!1),[s,l]=H(0),[c,g]=H(null),{t:m,setLang:p}=he(),[f,S]=H("");ke(()=>(Ne("esc",()=>{u(!1),i(!1)}),()=>{Ne.unbind("esc")}),[]),ke(()=>{ze().then(x=>{wt({config:x,url:globalThis.location.href}).then(b=>{g(b)})})},[e]);let v=x=>{t(b=>{let E={matches:[],excludeMatches:[]};return b&&b.translationThemePatterns&&b.translationThemePatterns[x]&&(E=b.translationThemePatterns[x]),dr(document,x,E),{...b,translationTheme:x}})},h=x=>{t(b=>({...b,interfaceLanguage:x}))},k=(x,b,E)=>{u(!r),t(I=>{let L=I.translationThemePatterns||{},W=L[b]||{},_=W.matches||[],B=[..._];return E==="edit"&&(B=Ye(f,_)),B=un(x,B),{...I,translationThemePatterns:{...L,[b]:{...W,matches:B}}}})},F=(x,b)=>{t(E=>{let I=E.translationThemePatterns||{},L=I[b]||{},_=[...L.matches||[]];return _=Ye(x,_),{...E,translationThemePatterns:{...I,[b]:{...L,matches:_}}}})},M=(x,b,E)=>{u(!r),S(x),l(E)};if(!c)return d("div",{children:"loading"});let D=c.config,P=m("confirm"),w=()=>d("blockquote",{class:"text-sm",children:[m("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Command+C"}),"\xA0 ",d("kbd",{children:"Ctrl+Shift+D"})," "]});return le()||(Fa()?(w=()=>d("blockquote",{class:"text-sm",children:[m("browserShortcutsNoteForFirefox")," ",d("a",{target:"_blank",href:"https://support.mozilla.org/zh-CN/kb/%E7%AE%A1%E7%90%86Firefox%E7%9A%84%E6%89%A9%E5%B1%95%E5%BF%AB%E6%8D%B7%E6%96%B9%E5%BC%8F",children:[m("help"),"?"]}),d("br",{}),d("br",{}),m("browserShortcutsSucks")," ",d("kbd",{children:"Ctrl+A"}),"\xA0",d("kbd",{children:"Alt+B"}),"\xA0",d("kbd",{children:"Cmd+C"}),"\xA0 ",d("kbd",{children:"Ctrl"}),"\xA0",d("kbd",{children:"D"})," "]}),P=m("confirm")):(w=()=>d("blockquote",{class:"text-sm",children:[m("browserShortcutsNoteForChrome"),"\xA0",d("a",{href:"#",onClick:x=>{x.preventDefault(),j.tabs.create({url:"chrome://extensions/shortcuts"})},children:m("goSettings")})]}),P=m("confirm"))),d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:m("interface")})}),d("div",{class:"nav",children:[d(Fe,{title:m("interface language")}),d("select",{class:"select",onChange:x=>{p(x.target.value),h(x.target.value),le()||setTimeout(()=>{Ts()},200)},children:hE.map((x,b)=>d("option",{value:x,selected:x===D.interfaceLanguage,children:kt(x,D.interfaceLanguage,!0)},"locale"+b))})]}),d("div",{class:"nav",children:[d(Fe,{title:m("keyboard shortcuts")}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:x=>{x.preventDefault(),i(!o)},children:m("modify")})})]}),d("div",{class:"nav",children:[d(Fe,{title:m("enableLineBreak"),description:m("enableLineBreakDescription")}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:x=>{let b=x.target.checked;t(E=>{let I=E.generalRule||{};return{...E,generalRule:{...I,lineBreakMaxTextCount:b?280:0}}})},checked:c.rule.lineBreakMaxTextCount>0,id:"switch",name:"switch",role:"switch"})})]}),c.rule.lineBreakMaxTextCount>0&&d("div",{class:"nav",children:[d(Fe,{title:m("lineBreakMaxTextCount")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:x=>{let b=x.target.value;t(E=>{let I=E.generalRule||{};return{...E,generalRule:{...I,lineBreakMaxTextCount:parseInt(b)}}})},name:"count",value:c.rule.lineBreakMaxTextCount,placeholder:"Text Length",required:!0})})]}),(Ma().any||le())&&d("div",{class:"nav",children:[d(Fe,{title:m("enableUserscriptPagePopup"),description:m("enableUserscriptPagePopupDescription",{touch:m("fingers."+D.generalRule.fingerCountToToggleTranslagePageWhenTouching)})}),d("label",{for:"switch",children:d("input",{type:"checkbox",onChange:x=>{let b=x.target.checked;t(E=>{let I=E.generalRule||{};return{...E,generalRule:{...I,isShowUserscriptPagePopup:b}}})},checked:c.rule.isShowUserscriptPagePopup,id:"switch",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:m("translation display"),description:m("select diplay style")}),d("select",{class:"select",onChange:x=>{v(x.target.value)},children:L0.map((x,b)=>d("option",{value:x,selected:x===D.translationTheme,children:m(`translationTheme.${x}`)},"theme"+b))})]}),d("div",{class:"pt-2 text-sm",children:d("p",{children:[_g,d("div",{class:"pt-2"}),d("font",{class:vr(D.translationTheme,!1,[],!1,!1).join(" "),children:d("font",{class:wr(D.translationTheme).join(" "),children:P0})}),D.translationTheme&&Wc(D.translationTheme).length>0?d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:m("customTheme")}),d("div",{class:"flex flex-col items-end",children:[Wc(D.translationTheme).map((x,b)=>{x.label=m(`customThemeLabel.${x.name}`);let E=D.translationThemePatterns||{},I=D.translationTheme,L=E[I]||{},W=`theme-${I}-${x.name}`,_=lh(W)||void 0,B=L[x.name]||_;return d(Kr,{field:x,value:B,onChange:G=>{t(re=>{let ye=re.translationThemePatterns||{},ge={...ye[D.translationTheme]||{},[x.name]:G},de={...re,translationThemePatterns:{...ye,[D.translationTheme]:ge}};return dr(document,D.translationTheme,ge),de})}},"theme-prop"+b)}),d("a",{href:"#",class:"text-sm secondary",onClick:x=>{x.preventDefault(),t(b=>{let E=b.translationThemePatterns||{},I={...E[D.translationTheme]};Wc(D.translationTheme).forEach(W=>{delete I[W.name]});let L={...b,translationThemePatterns:{...E,[D.translationTheme]:I}};return dr(document,D.translationTheme,{matches:[],excludeMatches:[]},!0),L})},children:m("resetToDefaultColor")})]})]}):null,d("details",{class:"pt-2 border-none",children:[d("summary",{class:"text-sm",style:{textAlign:"right",lineHeight:"1rem"},children:m("previewAllThemes")}),L0.map((x,b)=>d("div",{class:"pt-2",children:d("label",{children:[d("div",{class:"flex justify-between",children:d("div",{children:[d("input",{type:"radio",name:"theme",value:x,checked:x===D.translationTheme,onChange:E=>{v(E.target.value)}}),m(`translationTheme.${x}`)]})}),d("p",{children:d("font",{class:vr(x,!1,[],!1,!1).join(" "),children:d("font",{class:wr(x).join(" "),children:P0})})})]})},"theme-index-"+b))]})]})}),d("div",{class:"nav",children:[d(Fe,{title:"",description:m("useAboveStyleForTheseSites",{theme:m(`translationTheme.${D.translationTheme}`)})}),d("div",{class:"nav-right",children:d("a",{href:"#",role:"button",class:"add-button secondary outline",onClick:x=>{x.preventDefault(),u(!r)},children:m("add")})})]}),r?d(wa,{toggleModal:x=>{x.preventDefault(),u(!r)},onAddInterfaceUrl:(x,b)=>{k(x,D.translationTheme,b)},urlValue:f,index:s}):null,d(va,{urls:bE(D),type:"matches",onDeleteUrl:x=>{F(x,D.translationTheme)},onEditUrl:M}),o?d(jc,{note:w,corfirmText:P,fingerCountToToggleTranslagePageWhenTouching:D.generalRule.fingerCountToToggleTranslagePageWhenTouching,fingerCountToToggleTranslationMaskWhenTouching:D.generalRule.fingerCountToToggleTranslationMaskWhenTouching,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:D.generalRule.fingerCountToToggleTranslagePageOnlyTranslationWhenTouching,mouseHoverHoldKey:D.generalRule.mouseHoverHoldKey,shortcuts:Mg.map(x=>({name:x,shortcut:D.shortcuts[x],description:m(`browser.${x}`),disabled:!le()})),onChange:x=>{if(x){let{shortcuts:b,fingerCountToToggleTranslagePageWhenTouching:E,fingerCountToToggleTranslationMaskWhenTouching:I,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:L,mouseHoverHoldKey:W}=x;le()?t(_=>{b=b||[];let B=b.reduce((re,ye)=>(re[ye.name]=ye.shortcut,re),{..._.shortcuts}),G={..._,shortcuts:B};return E!==void 0&&(G.generalRule={...G.generalRule,fingerCountToToggleTranslagePageWhenTouching:E}),I!==void 0&&(G.generalRule={...G.generalRule,fingerCountToToggleTranslationMaskWhenTouching:I}),L!==void 0&&(G.generalRule={...G.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:L}),W&&(G.generalRule={...G.generalRule,mouseHoverHoldKey:W}),G}):(E!==void 0||I!==void 0||W||L!==void 0)&&t(_=>{let B={..._};return E!==void 0&&(B.generalRule={...B.generalRule,fingerCountToToggleTranslagePageWhenTouching:E}),I!==void 0&&(B.generalRule={...B.generalRule,fingerCountToToggleTranslationMaskWhenTouching:I}),L!==void 0&&(B.generalRule={...B.generalRule,fingerCountToToggleTranslagePageOnlyTranslationWhenTouching:L}),W&&(B.generalRule={...B.generalRule,mouseHoverHoldKey:W}),B}),x&&x.isClose&&i(!1)}else i(!1),j.tabs.create({url:"chrome://extensions/shortcuts"})},onClose:()=>{i(!1)}}):null]})}function qc(){let[e,t,n,a]=bt(),[r,u]=H(null),{t:o}=he(),[i,s]=H({}),[l,c]=H({});ke(()=>{ze().then(P=>{u(P)}),j.storage.sync.get(null).then(P=>{s(P),j.storage.local.get(null).then(w=>{c(w)})})},[e]);let g=P=>{t(w=>({...w,debug:P}))},m=P=>{t(w=>({...w,beta:P}))},p=P=>{t(()=>({...P}))},f=P=>{try{let w=P.target.value,x={...e};if(!w)delete x.rules;else{let b=JSON.parse(w);if(!Array.isArray(b)){Lt("Invalid rules, rules must be an array");return}x.rules=b}p(x),Je(o("saved"))}catch(w){Lt(`Invalid JSON ${w.message}`)}},S=P=>{let w={...e};w.generalRule||(w.generalRule={}),w.generalRule={...w.generalRule,injectedCss:P.target.value||""},p(w),Je(o("saved"))},v=P=>{try{let w=JSON.parse(P.target.value);p(w),Je(o("saved"))}catch(w){Lt(`Invalid JSON ${w.message}`)}},h=P=>{P.preventDefault()},k=P=>{P.preventDefault(),confirm(o("confirmResetConfig"))&&(p(Ba()),ia().catch(w=>{A.error("clean local config error",w)}),pr().catch(w=>{A.error("clean buildin config error",w)}),Vr().catch(w=>{A.error("clean cache error",w)}),Je(o("resetSuccess")))},F=P=>{P.preventDefault();let w={...e};delete w.rules,p(w),Je(o("resetThisSuccess"))},M=P=>{P.preventDefault();let w={...e};w.generalRule||(w.generalRule={}),w.generalRule={...w.generalRule},delete w.generalRule.injectedCss,p(w),Je(o("resetThisSuccess"))},D=`[{ "matches": "www.google.com", "selectors": [".title"] }, { "matches": "*.twitter.com", "selectors": [".text"], "excludeSelectors": ["footer"] -}]`;return r?d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:o("developer")})}),d("div",{dangerouslySetInnerHTML:{__html:o("developerDescription",{1:"https://immersivetranslate.com/docs/advanced/"})},class:"secondary text-xs text-gray-500 mb-4"}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{g(!r.debug)},checked:r.debug}),o("toggleDebug")]})}),d("fieldset",{class:"mt-2",children:[d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"beta",name:"beta",role:"switch",onChange:()=>{m(!r.beta)},checked:!!r.beta}),o("toggleBeta")]}),d("small",{class:"text-gray-500",dangerouslySetInnerHTML:{__html:o("betaDescription",{1:Do})}})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit User Rules"}),d("textarea",{class:"user-rule",rows:10,onChange:f,placeholder:A,spellcheck:!1,value:e.rules?JSON.stringify(e.rules||[],null,2):""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:F,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Injected CSS"}),d("textarea",{rows:10,onChange:S,spellcheck:!1,placeholder:".title { color: red }",value:e.generalRule&&e.generalRule.injectedCss?e.generalRule.injectedCss:""}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:M,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Edit Full User Config"}),d("textarea",{rows:10,onChange:v,spellcheck:!1,value:JSON.stringify(e,null,2)}),d("div",{children:[d("a",{href:"#",class:"mr-3 !py-2",onClick:h,role:"button",children:o("save")}),d("a",{class:"secondary text-sm mr-3",href:"https://immersivetranslate.com/docs/advanced/",children:[o("help"),"?"]}),d("a",{href:"#",onClick:k,class:"text-sm secondary mr-2",children:o("reset")})]})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the final config"}),d("pre",{children:d("code",{children:JSON.stringify(r,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the sync storage object"}),d("pre",{children:d("code",{children:JSON.stringify(i,null,2)})})]}),d("details",{class:"py-2",children:[d("summary",{children:"Click to expand the local storage object"}),d("pre",{children:d("code",{children:JSON.stringify(l,null,2)})})]})]}):d("div",{children:"loading"})}function Ts(){let e=new Date;return`${e.getFullYear()}-${e.getMonth()+1}-${e.getDate()}_${e.getHours()}-${e.getMinutes()}-${e.getSeconds()}`}function pE(e){let{t}=he(),{accessToken:n,id:a,listAllFiles:r}=e,[u,o]=H(!1);function i(s,l){s.preventDefault(),o(!0),new In(n).delete(l).catch(c=>{Lt(t("delete"))}).then(()=>r()).finally(()=>o(!1))}return d("a",{href:"#",className:"secondary margin-left text-sm",onClick:s=>i(s,a),"aria-busy":u,children:t("delete")})}function Hc(e){let{onClose:t,accessToken:n,authExpire:a}=e,{t:r}=he(),[u,o,i,s]=bt(),[l,c]=H([]),[g,m]=H(!0),[p,f]=H(!1),[S,v]=H({});ke(()=>{n&&k().then(()=>m(!1))},[n]);let h=w=>{w.target&&w.target.id==="immersive-translate-overlay"&&t()};function k(){return new In(n).listAll().then(x=>{c(x)}).catch(x=>a())}function F(w){if(w.preventDefault(),l.length>=10)return Lt(r("maxBackupFiles",{count:10}));f(!0);let x="immersive-translate-config-"+Ts()+".json";new In(n).uploadConfig(u,x).catch(b=>{Lt(r("uploadFail"))}).then(()=>k()).finally(()=>f(!1))}function M(w,x,b){w.preventDefault(),v({[b]:!0}),new In(n).getConfig(x).then(E=>{o(()=>({...E})),Je(r("importSuccess"))}).catch(E=>{L.error(E),Lt(r("importFail"))}).finally(()=>v({}))}function A(w,x){new In(n).getConfig(w).then(b=>{let E=document.createElement("a");E.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(JSON.stringify(b,null,2))),E.setAttribute("download",x),E.style.display="none",document.body.appendChild(E),E.click(),document.body.removeChild(E)}).catch(b=>{L.error("download google config file failed",b),Lt(r("downloadFail")+": "+b.message)})}function P(w){w.preventDefault(),o({...u,autoSync:!1}),cn.revoke(n).then(()=>t())}return d("dialog",{id:"immersive-translate-overlay",onClick:h,open:!0,children:d("article",{class:"md:w-[32rem] px-4",children:[d("a",{href:"#",title:r("clickToDownload"),"aria-label":"Close",className:"close","data-target":"modal-example",onClick:w=>{w.preventDefault(),t()}}),d("h4",{children:r("syncTitle")}),d("div",{className:"mb-4",children:l.map((w,x)=>d("div",{class:"flex flex-wrap justify-between",children:[d("div",{class:"mr-2 mb-2",children:[d("div",{children:d("a",{href:"#",onClick:b=>{b.preventDefault(),A(w.id,w.name)},class:"block truncate w-40 sm:w-auto",children:w.name.replace("immersive-translate-","")})}),d("div",{class:"text-xs text-gray-500",children:[new Date(w.modifiedTime).toLocaleString(),",\xA0",xu(parseInt(w.size))]})]}),d("div",{children:[d("a",{href:"#",role:"button",className:"margin-right secondary","aria-busy":S[x],disabled:S[x],onClick:b=>M(b,w.id,x),children:r("import_hint")}),d(pE,{accessToken:n,id:w.id,listAllFiles:k})]})]},"file"+x))}),d("div",{className:"flex items-center",children:[d("a",{href:"#",role:"button",className:"mr-4","data-target":"modal-example","aria-busy":p,onClick:F,disabled:g,children:r("create_new_backup")}),d("a",{href:"#",className:"secondary text-sm","data-target":"modal-example",onClick:P,disabled:g,children:r("revokeAuth")})]})]})})}function Wc(){let[e,t,n,a,r]=bt(),[u,o]=H(null),[i,s]=H(null),l=_=>{s(_),Wn(_)},{t:c,setLang:g}=he();ke(()=>{ze().then(_=>{o(_)}),Hn().then(_=>{l(_)})},[]);let m=_=>{t(()=>({..._}))},p=_=>{_.preventDefault();let B=document.createElement("input");B.setAttribute("type","file"),B.setAttribute("accept","text/plain"),B.style.display="none",document.body.appendChild(B),B.oninput=G=>{let re=G.target,ye=new FileReader;ye.onload=function(){try{let V=JSON.parse(ye.result);m(V),Je(c("successImportConfig"))}catch(V){Lt(`Invalid JSON ${V.message}`)}},ye.readAsText(re.files[0])},B.click(),document.body.removeChild(B)},f=_=>{_.preventDefault(),confirm(c("confirmResetConfig"))&&(r(Ba()),Je(c("resetSuccess")),setTimeout(()=>{j.storage.local.remove(An),ia().catch(B=>{L.error("clean local config error",B)})},500))},[S,v]=H(!1),[h,k]=H(!1),[F,M]=H(!1),[A,P]=H("");ke(()=>{if(bu()&&n){let _=localStorage.getItem(cu);if(localStorage.removeItem(cu),_){let B=globalThis.localStorage.getItem(v0);L.debug("import_export","rawAuthInfoStr",B);let G={},re={},ye="";if(B){globalThis.localStorage.removeItem(v0);try{G=JSON.parse(B),re=G.state||{},ye=G.access_token||""}catch(V){L.error("parse state error",V)}}if(ye&&re&&(cn.setAuthInfo({access_token:ye}),L.debug("import_export","Google OAuth:",G),G)){let V=G.state;L.debug("state",V),V?.mode==="auto"?(k(!0),D(ye)):(M(!0),E(ye))}}}},[n]);function w(){k(!0),Nc({source:globalThis.location.href,mode:"auto"},!0).then(_=>{L.debug("import_export","Google OAuth:"+_),_!==null&&D(_)}).catch(_=>{_&&_.message==="tokenValidateErrorRedirectToAuthUrl"?L.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):I(_)})}function x(){M(!0),v(!1),Nc({source:globalThis.location.href,mode:"manual"},!0).then(_=>{L.debug("import_export","Google OAuth:"+_),_!==null&&E(_)}).catch(_=>{_&&_.message==="tokenValidateErrorRedirectToAuthUrl"?L.debug("tokenValidateErrorRedirectToAuthUrl, ignore"):I(_)})}function b(){P(""),w()}function E(_){P(_),M(!1),v(!0)}function I(_){k(!1),M(!1),v(!1),t({...e,autoSync:!1}),L.error("import_export","Google OAuth error:"+_),Lt(c("authFail"))}function D(_){k(!0),L.debug("sync latest with drive",_,e),P(_),Oc(_,e,B=>{B.interfaceLanguage&&g(B.interfaceLanguage),r(B)},B=>l({...i,lastSyncedAt:B}),B=>t({...e,updatedAt:B}),B=>{B?Je(c("successSyncConfig")):Je(c("successSyncButNoChange"))},B=>Lt(c("syncFail")+B)).finally(()=>{k(!1)})}function W(_){t({...e,autoSync:_.checked}),_.checked&&w()}return u?d("div",{class:"pb-4",children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:c("import_export_title")})}),d("div",{class:"pb-2",children:[d("a",{class:"mr-2 secondary mb-2 !text-sm",onClick:p,href:"#",role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zm10-5.828L19.071 7.1l1.414 1.414L12 17 3.515 8.515 4.929 7.1 11 13.17V2h2v11.172z"})]}),c("import")]}),d("a",{href:"#",class:"secondary mr-2 mb-2 !text-sm",onClick:_=>{_.preventDefault();let B=new Blob([JSON.stringify(e,null,2)],{type:"text/plain;charset=utf-8"});au.saveAs(B,"immersive-translate-config-"+Ts()+".txt")},role:"button",children:[d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"18",height:"18",children:[d("path",{fill:"none",d:"M0 0h24v24H0z"}),d("path",{d:"M3 19h18v2H3v-2zM13 5.828V17h-2V5.828L4.929 11.9l-1.414-1.414L12 2l8.485 8.485-1.414 1.414L13 5.83z"})]}),c("export")]}),d("a",{href:"#",onClick:f,class:"secondary text-sm",children:c("reset")})]}),d("details",{class:"mt-4 mb-6",children:[d("summary",{children:c("clickToExpandConfig")}),d("pre",{children:d("code",{children:JSON.stringify(e,null,2)})})]}),d("hgroup",{class:"my-2",children:[d("h5",{children:c("syncToCloud")}),d("h6",{class:"!text-sm",children:c("syncToCloudDescription")})]}),d("div",{children:[d("a",{className:"mr-4 secondary mb-2 !text-sm ",onClick:_=>{_.preventDefault(),w()},"aria-busy":h,href:"#",role:"button",children:[h?d(ut,{}):d("svg",{class:"inline mr-1",xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",children:d("path",{fill:"currentColor",d:"M15.375 19.25q-.525.25-.95-.038q-.425-.287-.425-.937q0-.25.163-.487q.162-.238.412-.363q1.575-.75 2.5-2.225T18 11.95q0-1.125-.425-2.188Q17.15 8.7 16.25 7.8L16 7.55V9q0 .425-.287.712Q15.425 10 15 10t-.712-.288Q14 9.425 14 9V5q0-.425.288-.713Q14.575 4 15 4h4q.425 0 .712.287Q20 4.575 20 5t-.288.713Q19.425 6 19 6h-1.75l.4.35q1.225 1.225 1.788 2.662Q20 10.45 20 11.95q0 2.4-1.25 4.362q-1.25 1.963-3.375 2.938ZM5 20q-.425 0-.713-.288Q4 19.425 4 19t.287-.712Q4.575 18 5 18h1.75l-.4-.35q-1.225-1.225-1.788-2.662Q4 13.55 4 12.05q0-2.4 1.25-4.363Q6.5 5.725 8.625 4.75q.525-.25.95.037q.425.288.425.938q0 .25-.162.487q-.163.238-.413.363q-1.575.75-2.5 2.225T6 12.05q0 1.125.425 2.187Q6.85 15.3 7.75 16.2l.25.25V15q0-.425.288-.713Q8.575 14 9 14t.713.287Q10 14.575 10 15v4q0 .425-.287.712Q9.425 20 9 20Z"})}),c("syncToGoogleDrive")]}),d("a",{href:"#","aria-busy":F,onClick:_=>{_.preventDefault(),x()},class:"secondary text-sm",children:c("backupToCloud")})]}),d("div",{class:"text-xs text-gray-500",children:i?.lastSyncedAt&&c("lastSyncedAt",{date:new Date(i.lastSyncedAt).toLocaleString()})}),i?.lastSyncErrorMessage&&d("p",{class:"mt-2 text-xs text-red-500"}),S?d(Hc,{onClose:()=>v(!1),authExpire:b,accessToken:A}):null]}):null}var fE="buildinConfig",hE={},sh=om(fE,hE);var bE=({date:e})=>{let{t}=he();return d("p",{class:"text-sm",children:[t("The local rules are up to date")," ",new Date(e).toLocaleString()]})},yE=({date:e})=>{let{t}=he();return d("p",{class:"text-sm",children:[t("Successfully synchronized with the latest official rules:")," ",new Date(e).toLocaleString()]})},TE=()=>{let{t:e}=he();return d("p",{class:"text-sm","aria-busy":!0,children:[e("Checking for updates"),"..."]})},EE=()=>{let{t:e}=he();return d("p",{class:"text-sm",children:[e("Rules are being synchronized"),"..."]})},xE=({minVersion:e})=>{let{t}=he();return d("p",{class:"text-sm",children:t("localVersionIsTooOld",{minVersion:e})})},CE=({latestVersion:e})=>{let{t}=he();return d("p",{class:"text-sm",children:[t("foundNewVersion"),":"," ",d("a",{href:"https://github.com/immersive-translate/immersive-translate/releases",children:e})]})},vE=()=>{let{t:e}=he();return d("p",{class:"text-sm",children:e("theLocalExtensionIsUpToUpdate")})},wE=({message:e,handleSyncing:t,date:n})=>{let{t:a}=he();return d("p",{class:"text-sm",children:[a("failToSyncRules")," ",d("a",{onClick:t,children:a("retry")}),d("br",{}),a("failedReason"),"\uFF1A",e,d("br",{}),a("currentRuleVersion"),"\uFF1A",n]})};function $c(){let[e,t]=H(null),{t:n}=he(),[a,r]=H(n("calculating")+"..."),[u,o]=H(null),[i,s]=sh(),[l,c]=H(null),[g,m]=H(""),[p,f]=H(!1),[S,v]=H(!1),[h,k]=H(null),[F,M]=H(null),[A,P,w,x]=bt(),[b,E]=H(!1),I=Zo(),D=!0;Dt()&&h&&(D=h.generalRule.showSponsorOnSafari);let W=async()=>{m("");let V=u;if(u===null)try{let ge=await hr({url:aa});ge?(o(ge),V=ge,f(!0)):(m(n("unknownError")),c(null))}catch(ge){c(null),m(ge.message);return}V!==null?(s(V),c(!1),t(V.buildinConfigUpdatedAt)):(m(n("canNotFetchRemoteRule")),c(null))};ke(()=>{ze().then(V=>{let ge=V.buildinConfigUpdatedAt;k(V);let de=new Date(ge);t(ge),hr({url:aa}).then(C=>{let z=C.minVersion,Z=I;o(C);let pe=C.latestVersion;if(pe&&(Ea(Z,pe)?M(!0):M(!1)),Ea(Z,z)){let se=C.buildinConfigUpdatedAt;new Date(se)>de?(c(!0),W()):c(!1)}else v(!0),c(null)}).catch(C=>{c(null),m(C.message)})}),th().then(V=>{r(V)})},[]),ke(()=>{ze().then(V=>{k(V)})},[A,e]);let _=V=>{P(ge=>{let de=!ge.alpha;return de?Je(n("enableAlphaSuccess")):Je(n("disableAlphaSuccess")),{...ge,alpha:de}})},B=V=>{V.preventDefault(),V.stopPropagation(),E(!0),pr().catch(ge=>{L.error("clear build config failed:",ge)}),ia().catch(ge=>{L.error("clear local config failed:",ge)}),Vr().then(()=>{E(!1),Je("\u6E05\u7406\u6210\u529F"),r("0 B")}).catch(ge=>{E(!1),Lt(ge.message)})},G=V=>{P(ge=>({...ge,cache:V}))},re=V=>{P(ge=>({...ge,enabled:V}))},ye="aboutIntro";return D||(ye="aboutIntroWithoutSponsor"),h?d("div",{class:"text-sm",children:[d("div",{class:"nav",children:d("strong",{onClick:Mu(7)(_),class:"text-lg immersive-translate-no-select",children:n("about")})}),d("p",{onClick:Mu(7)(_),class:"mb-2 immersive-translate-no-select",children:["V",I]}),F===!1&&d(CE,{latestVersion:u?.latestVersion}),F===!0&&d(vE,{}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"enabled",name:"enabled",role:"switch",onChange:()=>{re(!h.enabled)},checked:h.enabled}),n("enabledExtension")]})}),d("fieldset",{children:d("label",{for:"switch",children:[d("input",{type:"checkbox",id:"cache",name:"cache",role:"switch",onChange:()=>{G(!h.cache)},checked:h.cache}),n("allowCacheTranslations")]})}),!le()&&a&&d("p",{class:"text-sm",children:[n("cacheSize"),"\xA0",a," \xA0 ",b?d("span",{children:[n("cleaning"),"..."]}):d("a",{class:"text-sm",href:"#",onClick:B,children:n("cleanCache")})]}),g?d(wE,{handleSyncing:W,message:g,date:e||""}):S?d(xE,{minVersion:u.minVersion}):l===null?d(TE,{}):l===!0?d(EE,{}):p?d(yE,{date:e}):d(bE,{date:e}),d("blockquote",{class:"text-sm",dangerouslySetInnerHTML:{__html:n(ye,{1:"https://immersivetranslate.com/docs/thanks/",2:"https://immersivetranslate.com/docs/donate/",3:"twitter.com/immersivetran",4:"https://t.me/immersivetranslate",5:"https://immersivetranslate.substack.com",6:"https://immersivetranslate.com/docs/services/deepL/"})}}),d("div",{class:"flex items-center justify-center",children:[d("div",{class:"flex flex-col items-center",children:[d("img",{width:"120",src:"https://immersivetranslate.com/assets/wechat-qrcode.jpg",alt:"wechat contact"}),d("div",{class:"text-sm",children:n("wechatPublicAccount")})]}),d("div",{class:"w-16"}),d("div",{class:"flex flex-col items-center",children:[d("img",{width:"125",src:"https://immersivetranslate.com/assets/qq-channel.png",alt:"qq channel contact"}),d("div",{class:"text-sm text-center",children:d("a",{target:"_blank",href:"https://pd.qq.com/s/260rd4u6r",children:n("qqCommunities")})})]})]}),d("ul",{class:"text-sm ml-4",children:[d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/issues",children:n("feedback")})}),d("li",{children:d("a",{class:"secondary",href:Do,children:n("joinTelegramGroup")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/docs/CHANGELOG/",children:n("changelog")})}),d("li",{children:d("a",{class:"secondary",href:"https://immersivetranslate.com/",children:n("projectHomepage")})}),d("li",{children:d("a",{class:"secondary",href:"https://github.com/immersive-translate/immersive-translate/",children:n("Github")})}),D&&!1]}),d("div",{class:"flex justify-center",children:d("iframe",{src:"https://immersivetranslate.substack.com/embed",width:"480",height:"320",style:"border:1px solid #EEE; background:white;",frameBorder:0,scrolling:"no"})})]}):null}function qc(){let e=fr(),[t,n,a,r]=bt(),[u,o]=H(null),{t:i}=he();ke(()=>{ze().then(g=>{wt({config:g,url:globalThis.location.href}).then(m=>{o(m)})})},[t]);let s=g=>{n(m=>({...m,translationTheme:g}))},l=g=>{n(m=>({...m,interfaceLanguage:g}))};if(!u)return d("div",{children:"loading"});let c=u.config;return d("div",{children:[d("div",{class:"nav",children:d("strong",{class:"text-lg",children:i("advanced")})}),d("div",{class:"nav",children:[d(Fe,{title:i("translate all areas of the page"),description:i("translationAreaDescription")}),d("label",{for:"translationAreaDescription",children:d("input",{type:"checkbox",id:"translationAreaDescription",name:"switch",role:"switch",onChange:g=>{let m=g.target.checked;n(p=>({...p,translationArea:m?"body":"main"}))},checked:c.translationArea==="body"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translate to the bottom of the page"),description:i("translateToThePageEndImmediatelyDescription")}),d("label",{for:"translateToThePageEndImmediatelyDescription",children:d("input",{type:"checkbox",onChange:g=>{let m=g.target.checked;n(p=>({...p,translationStartMode:m?"immediate":"dynamic"}))},checked:c.translationStartMode==="immediate",id:"translateToThePageEndImmediatelyDescription",name:"switch",role:"switch"})})]}),!le()&&d("div",{class:"nav",children:[d(Fe,{title:i("isShowContextMenu")}),d("label",{for:"isShowContextMenu",children:d("input",{type:"checkbox",onChange:g=>{let m=g.target.checked;ys({...u.config,isShowContextMenu:m}),n(p=>({...p,isShowContextMenu:m}))},checked:u.config.isShowContextMenu===!0,id:"isShowContextMenu",name:"switch",role:"switch"})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("isTranslateTitle"),description:i("isTranslateTitleDescription")}),d("label",{for:"isTranslateTitle",children:d("input",{type:"checkbox",id:"isTranslateTitle",name:"isTranslateTitle",role:"switch",onChange:g=>{let m=g.target.checked;n(p=>({...p,generalRule:{...p.generalRule,isTranslateTitle:m}}))},checked:c.generalRule.isTranslateTitle})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("enableSearchEnhancement"),description:i("enableSearchEnhancementDescription")}),d("label",{for:"enableSearchEnhancement",children:d("input",{type:"checkbox",id:"enableSearchEnhancement",name:"enableSearchEnhancement",role:"switch",onChange:g=>{let m=g.target.checked;n(p=>({...p,generalRule:{...p.generalRule,enableSearchEnhancement:m}}))},checked:c.generalRule.enableSearchEnhancement})})]}),d("div",{class:"nav",children:[d(Fe,{title:i("loadingThemeTitle"),description:i("loadingThemeDescription")}),d("select",{class:"select",onChange:g=>{n(m=>({...m,loadingTheme:g.target.value}))},children:[d("option",{value:"spinner",selected:c.loadingTheme==="spinner",children:i("loadingTheme.spinner")}),d("option",{value:"text",selected:c.loadingTheme==="text",children:i("loadingTheme.text")}),d("option",{value:"none",selected:c.loadingTheme==="none",children:i("loadingTheme.none")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("translationLineBreakSettingTitle"),description:i("translationLineBreakSettingDescription",{count:e.generalRule.blockMinTextCount})}),d("select",{class:"select",onChange:g=>{n(m=>{let p=m.generalRule||{};return parseInt(g.target.value)===0?p={...p,blockMinTextCount:0,blockMinWordCount:0}:p={...p,blockMinTextCount:e.generalRule.blockMinTextCount,blockMinWordCount:e.generalRule.blockMinWordCount},{...m,generalRule:p}})},children:[d("option",{value:32,selected:c.generalRule.blockMinTextCount>0,children:i("smartLineBreak")}),d("option",{value:0,selected:c.generalRule.blockMinTextCount===0,children:i("alwaysLineBreak")})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("tempTranslateDomainTitle"),description:i("tempTranslateDomainDescription")}),d("select",{class:"select",onChange:g=>{n(m=>({...m,tempTranslateDomainMinutes:parseInt(g.target.value)}))},children:[d("option",{value:0,selected:c.tempTranslateDomainMinutes===0,children:i("disabled")}),d("option",{value:5,selected:c.tempTranslateDomainMinutes===5,children:i("xMinutes",{count:5})}),d("option",{value:10,selected:c.tempTranslateDomainMinutes===10,children:i("xMinutes",{count:10})}),d("option",{value:15,selected:c.tempTranslateDomainMinutes===15,children:i("xMinutes",{count:15})}),d("option",{value:30,selected:c.tempTranslateDomainMinutes===30,children:i("xMinutes",{count:30})}),d("option",{value:60,selected:c.tempTranslateDomainMinutes===60,children:i("xMinutes",{count:60})})]})]}),d("div",{class:"nav",children:[d(Fe,{title:i("the number of characters to be translated first")}),d("label",{for:"count",children:d("input",{type:"number",id:"count",onChange:g=>{let m=g.target.value;n(p=>({...p,immediateTranslationTextCount:parseInt(m)}))},name:"count",value:c.immediateTranslationTextCount,placeholder:"Text Length",required:!0})})]})]})}var lh=tu({presets:[no(),ro()]});function ch(){let e=document.getElementById("mount");e&&(async()=>{Js(lh);let t=await ze();t.debug&&L.setLevel("debug"),globalThis.location.hash||(globalThis.location.hash="#general");let n=await wt({url:"http://localhost",config:t});nt("options_page_view",[{name:"options_page_view"}],{...n,sourceLanguage:globalThis.location.hash}),ua(document,n),ka(d(vi,{lang:t.interfaceLanguage,fallbackLang:"zh-CN",translations:Ar,children:d(kE,{donateUrl:t.donateUrl,config:t})}),e)})()}function kE(e){let t=O0(),{t:n}=he(),a=Zo(),{config:r}=e,u=[{name:n("general"),props:{href:"#general",className:"secondary"}},{name:n("interface"),props:{href:"#interface",className:"secondary"}},{name:n("inputOptions"),props:{href:"#input",className:"secondary"}},{name:n("advanced"),props:{href:"#advanced",className:"secondary"}},{name:n("import_export"),props:{href:"#import_export",className:"secondary"}},{name:n("about"),props:{href:"#about",className:"secondary"}}];u.forEach(i=>{t===i.props.href&&(i.props.className="primary",i.props["aria-current"]="page")});let o=!0;return Dt()&&(o=r.generalRule.showSponsorOnSafari),d(ut,{children:d("main",{class:"container-fluid",children:[d("aside",{children:d("nav",{class:"flex flex-col h-full justify-between",children:[d("div",{children:[d("hgroup",{class:"mb-2",children:[d("h4",{class:"cursor-pointer p-0 m-0",onClick:()=>{globalThis.location.hash="#general"},children:n("browser.brandName")}),d("h6",{class:"!text-sm",children:a})]}),d("ul",{class:"flex flex-wrap justify-between md:block text-sm md:text-base",children:u.map((i,s)=>d("li",{class:"li",children:d("a",{...i.props,children:i.name})},`nav-${s}`))})]}),d("div",{class:"m-0 p-0 flex flex-col",children:[o&&!1,d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/communities/",children:n("feedbackAndJoin")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"https://immersivetranslate.com/docs/",children:n("document")}),d("a",{class:"py-3 text-xs no-focus secondary",href:"#developer",children:n("developer")})]})]})}),d("div",{role:"main",children:d(I0,{value:t,defaultCase:d(bs,{}),cases:{"#general":d(bs,{}),"#input":d(Rc,{}),"#interface":d(jc,{}),"#import_export":d(Wc,{}),"#about":d($c,{}),"#advanced":d(qc,{}),"#developer":d(zc,{})}})})]})})}globalThis.__IS_IMMERSIVE_TRANSLATE_WEB_OPTIONS_PAGE__=!0;var Kc=!1;function SE(){if(Kc)return;if(lf(),!document.querySelector("meta[name=immersive-translate-options]"))throw new Error("Options meta element not found");let t=document.getElementById("immersive-translate-status");if(!t)throw new Error("Status element not found");let n=document.getElementById("immersive-translate-page-ready");if(!n)throw new Error("Page ready input element not found");function a(r){let u=r.target.value;u==="true"?(Kc=!0,t.innerText="",n.removeEventListener("change",a),ch()):t.innerText="Page Status: "+u}n.addEventListener("change",a),setTimeout(()=>{Kc||(t.innerHTML=`\u65E0\u6CD5\u68C0\u6D4B\u5230 \u6C89\u6D78\u5F0F\u7FFB\u8BD1 \u6269\u5C55. \u8BF7\u786E\u8BA4\u5DF2\u5B89\u88C5\u5E76\u542F\u7528\u6C89\u6D78\u5F0F\u6269\u5C55\uFF0C\u5E76\u6388\u6743\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u8BBF\u95EE\u6240\u6709\u7F51\u7AD9\u7684\u6743\u9650\u3002

\u5982\u679C\u4F60\u4F7F\u7528\u7684\u662FiOS Safari \u6D4F\u89C8\u5668\u6269\u5C55\uFF0C\u53EF\u4EE5\u53C2\u8003\u4EE5\u4E0B\u89C6\u9891\u542F\u7528\u6C89\u6D78\u5F0F\u7FFB\u8BD1\u6269\u5C55\uFF1A
`)},5e3)}PE();})(); /*! Bundled license information: bowser/src/bowser.js: diff --git a/docs/options/styles/input.css b/docs/options/styles/input.css index b869b0c45..a1a775ac3 100644 --- a/docs/options/styles/input.css +++ b/docs/options/styles/input.css @@ -71,6 +71,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -79,6 +82,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -213,6 +220,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); } diff --git a/docs/styles/input.css b/docs/styles/input.css index b869b0c45..a1a775ac3 100644 --- a/docs/styles/input.css +++ b/docs/styles/input.css @@ -71,6 +71,9 @@ position: relative; font-size: 16px; } +.immersive-translate-search-enhancement-en-title { + color: #4d5156; +} /* dark */ @media (prefers-color-scheme: dark) { .immersive-translate-search-recomend { @@ -79,6 +82,10 @@ .immersive-translate-close-action svg { fill: #bdc1c6; } + +.immersive-translate-search-enhancement-en-title { + color: #bdc1c6; +} } @@ -213,6 +220,7 @@ user-select: none; -webkit-user-drag: none; text-decoration: none; + color: #007bff; -webkit-tap-highlight-color: rgba(0, 0, 0, .1); }